Author: jonathan
Date: 2006-06-04 01:10:05 -0400 (Sun, 04 Jun 2006)
New Revision: 354
Modified:
trunk/daemon/Changelog
trunk/libspread/Makefile.in
Log:
Fix for build failure on x86-64/linux.
Change way libspread.so is linked so that it directly
includes the shared, thread-safe stdutil object files into the libspread.so
library instead of trying to extract them from the stdutil.a or stdutil.so libraries.
Modified: trunk/daemon/Changelog
===================================================================
--- trunk/daemon/Changelog 2006-05-24 16:36:53 UTC (rev 353)
+++ trunk/daemon/Changelog 2006-06-04 05:10:05 UTC (rev 354)
@@ -1,3 +1,12 @@
+Sun Jun 4 01:01:51 2006 Jonathan Stanton <[email protected]>
+
+ * Makefile.in (SHARED_STDUTIL): Change libspread.so target
+ to merge stdutil library objects directly by including the
+ object files rather then linking in the stdutil archive. This
+ fixes the linking problem for platforms which require -fPIC
+ for all shared library code. Specifically this fixes the build
+ failure on x86-64/linux.
+
Wed Mar 1 08:05:32 2006 Jonathan Stanton <[email protected]>
* libspread/sp.c, fl.c, include/sp.h, sp_func.h (SP_get_vs* memb_info()):
Modified: trunk/libspread/Makefile.in
===================================================================
--- trunk/libspread/Makefile.in 2006-05-24 16:36:53 UTC (rev 353)
+++ trunk/libspread/Makefile.in 2006-06-04 05:10:05 UTC (rev 354)
@@ -80,7 +80,13 @@
LIBTFL_SHOBJS= fl.tlo scatp.tlo alarm.tlo events.tlo memory.tlo sp.tlo
+# A bit of a hack to grab the -fPIC threaded object files to merge into the shared spread library
+# since the stdutil.so cannot be merged, and the stdutil.a is not compiled -fPIC
+# Can be fixed correctly if stdutil generates incremental shared library versions
+STDUTIL_DIR=../stdutil/src
+SHARED_STDUTIL= $(STDUTIL_DIR)/stdarr.lto $(STDUTIL_DIR)/stdcarr.lto $(STDUTIL_DIR)/stddll.lto $(STDUTIL_DIR)/stderror.lto $(STDUTIL_DIR)/stdfd.lto $(STDUTIL_DIR)/stdhash.lto $(STDUTIL_DIR)/stdit.lto $(STDUTIL_DIR)/stdskl.lto $(STDUTIL_DIR)/stdthread.lto $(STDUTIL_DIR)/stdtime.lto $(STDUTIL_DIR)/stdutil.lto
+
all: $(TARGETS)
.c.o:
@@ -156,7 +162,7 @@
(cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.$(LIBVERSION).dylib libspread.dylib)
libspread.so: $(LIBTFL_SHOBJS)
- $(SHLD) -o $@ $(LIBTFL_SHOBJS) $(SHLDFLAGS) $(SHLDCONVERTSTATIC) ../stdutil/lib/libstdutil-threaded-release.a $(SHLDCONVERTSTATICEND) $(SHLIBS) $(THLIBS)
+ $(SHLD) -o $@ $(LIBTFL_SHOBJS) $(SHLDFLAGS) $(SHARED_STDUTIL) $(SHLIBS) $(THLIBS)
install-libspread.so: libspread.so
$(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION)
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.