aboutsummaryrefslogblamecommitdiffstats
path: root/main/mandoc/shared-libmandoc.patch
blob: 0327138382a36b763d4acfa22930ee2f46f36b01 (plain) (tree)
1
2
3
4
5
6
7
8
9
10






                                               
 

                                







                                                                         
                                    




                                                                            
                                 
                                 
                                                     
                                                          







                                                             

                                                       

                                                                         
                                                                 
                                                                    

                                                         
 

                                                 
                                               
                                                                                
 

                                                                
                                  
                                                                 
 

                                                                         
 


                                                                   
                                                                    



                                                            
                                                             
 


                                                                    
                                                                     
 

                                             
 
diff --git a/Makefile b/Makefile
index f4e2954..d153224 100644
--- a/Makefile
+++ b/Makefile
@@ -367,9 +367,13 @@ WWW_INCS	 = eqn.h.html \
 		   tbl_int.h.html \
 		   tbl_parse.h.html
 
+LIBMANDOC        = libmandoc.so
+MANDOCLIB        = -L. -lmandoc
+
 # === USER CONFIGURATION ===============================================
 
 include Makefile.local
+CFLAGS           += -fPIC
 
 # === DEPENDENCY HANDLING ==============================================
 
@@ -392,7 +396,7 @@ distclean: clean
 	rm -f Makefile.local config.h config.h.old config.log config.log.old
 
 clean:
-	rm -f libmandoc.a $(LIBMANDOC_OBJS) $(COMPAT_OBJS)
+	rm -f $(LIBMANDOC) $(LIBMANDOC_OBJS) $(COMPAT_OBJS)
 	rm -f mandoc $(MAIN_OBJS)
 	rm -f man.cgi $(CGI_OBJS)
 	rm -f mandocd catman catman.o $(MANDOCD_OBJS)
@@ -431,11 +435,11 @@ base-install: mandoc demandoc soelim
 	$(INSTALL_MAN) makewhatis.8 \
 		$(DESTDIR)$(MANDIR)/man8/$(BINM_MAKEWHATIS).8
 
-lib-install: libmandoc.a
+lib-install: $(LIBMANDOC)
 	mkdir -p $(DESTDIR)$(LIBDIR)
 	mkdir -p $(DESTDIR)$(INCLUDEDIR)
 	mkdir -p $(DESTDIR)$(MANDIR)/man3
-	$(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR)
+	$(INSTALL_LIB) $(LIBMANDOC) $(DESTDIR)$(LIBDIR)
 	$(INSTALL_LIB) eqn.h man.h mandoc.h mandoc_aux.h mandoc_parse.h \
 		mdoc.h roff.h tbl.h $(DESTDIR)$(INCLUDEDIR)
 	$(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \
@@ -511,23 +515,23 @@ Makefile.local config.h: configure $(TESTSRCS)
 	@echo "$@ is out of date; please run ./configure"
 	@exit 1
 
-libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS)
-	ar rs $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS)
+libmandoc.so: $(COMPAT_OBJS) $(LIBMANDOC_OBJS)
+	$(CC) $(LDFLAGS) -shared -o $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS) $(LDADD)
 
-mandoc: $(MAIN_OBJS) libmandoc.a
-	$(CC) -o $@ $(LDFLAGS) $(MAIN_OBJS) libmandoc.a $(LDADD)
+mandoc: $(MAIN_OBJS) $(LIBMANDOC)
+	$(CC) -o $@ $(LDFLAGS) $(MAIN_OBJS) $(MANDOCLIB) $(LDADD)
 
 man.cgi: $(CGI_OBJS) libmandoc.a
 	$(CC) $(STATIC) -o $@ $(LDFLAGS) $(CGI_OBJS) libmandoc.a $(LDADD)
 
-mandocd: $(MANDOCD_OBJS) libmandoc.a
-	$(CC) -o $@ $(LDFLAGS) $(MANDOCD_OBJS) libmandoc.a $(LDADD)
+mandocd: $(MANDOCD_OBJS) $(LIBMANDOC)
+	$(CC) -o $@ $(LDFLAGS) $(MANDOCD_OBJS) $(LIBMANDOC) $(LDADD)
 
-catman: catman.o libmandoc.a
-	$(CC) -o $@ $(LDFLAGS) catman.o libmandoc.a $(LDADD)
+catman: catman.o $(LIBMANDOC)
+	$(CC) -o $@ $(LDFLAGS) catman.o $(LIBMANDOC) $(LDADD)
 
-demandoc: $(DEMANDOC_OBJS) libmandoc.a
-	$(CC) -o $@ $(LDFLAGS) $(DEMANDOC_OBJS) libmandoc.a $(LDADD)
+demandoc: $(DEMANDOC_OBJS) $(LIBMANDOC)
+	$(CC) -o $@ $(LDFLAGS) $(DEMANDOC_OBJS) $(LIBMANDOC) $(LDADD)
 
 soelim: $(SOELIM_OBJS)
 	$(CC) -o $@ $(LDFLAGS) $(SOELIM_OBJS)