From af526195646280e9a8273f347ca8b3469d2d8751 Mon Sep 17 00:00:00 2001 From: tron Date: Wed, 6 Jan 2010 21:01:09 +0000 Subject: Use "libtool" rules similar to those in version 1.13.1 of "libiconv" to build "preloadable_libiconv.so". This should fix the build under Linux, OSF1 and Solaris with any supported compiler. --- converters/libiconv/distinfo | 4 +-- converters/libiconv/patches/patch-af | 59 ++++++++++++++++++++++++++++-------- 2 files changed, 49 insertions(+), 14 deletions(-) (limited to 'converters') diff --git a/converters/libiconv/distinfo b/converters/libiconv/distinfo index a27ae17e410..0fc8a6d388e 100644 --- a/converters/libiconv/distinfo +++ b/converters/libiconv/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.31 2010/01/06 18:53:05 tron Exp $ +$NetBSD: distinfo,v 1.32 2010/01/06 21:01:09 tron Exp $ SHA1 (libiconv-1.12-cp932.patch.gz) = 7c433e19a61a15bd9585e01c0a6fbe2eb9129625 RMD160 (libiconv-1.12-cp932.patch.gz) = 33eb9758470f5e7ca0608fc478ea1342bf6bd0dc @@ -11,4 +11,4 @@ SHA1 (patch-ab) = d459b849adf870c345007d11a0a9dc790649adbc SHA1 (patch-ac) = a27e8ab5a776a2bc8b2c790eabff5c15985d9584 SHA1 (patch-ad) = e94da1c4423677b74f463d4b132c7714efc65815 SHA1 (patch-ae) = e18c4d9dd76b27e40c8dcd273f856fe5933f72bc -SHA1 (patch-af) = 08d1cc207ab246674e7f39064826d9cc5c08d760 +SHA1 (patch-af) = 83c65b3b2d8a7e8ed83246258523a8d2f2b49c41 diff --git a/converters/libiconv/patches/patch-af b/converters/libiconv/patches/patch-af index 8600f32f94a..3a7b7f3a25a 100644 --- a/converters/libiconv/patches/patch-af +++ b/converters/libiconv/patches/patch-af @@ -1,17 +1,53 @@ -$NetBSD: patch-af,v 1.4 2010/01/06 18:53:05 tron Exp $ +$NetBSD: patch-af,v 1.5 2010/01/06 21:01:09 tron Exp $ ---- lib/Makefile.in.orig Mon May 28 00:15:31 2007 -+++ lib/Makefile.in Wed Jan 6 19:44:49 2010 -@@ -82,7 +82,7 @@ +--- lib/Makefile.in.orig 2007-05-27 23:15:31.000000000 +0100 ++++ lib/Makefile.in 2010-01-06 20:53:18.000000000 +0000 +@@ -69,35 +69,15 @@ + libiconv.la : $(OBJECTS) + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) -o libiconv.la -rpath $(libdir) -version-info $(LIBICONV_VERSION_INFO) -no-undefined $(OBJECTS) - preloadable_libiconv_solaris.so : $(SOURCES) - if test -n "@GCC@"; then \ +-preloadable_libiconv.so : preloadable_libiconv_@OS@.so +- $(RM) preloadable_libiconv.so +- $(LN_S) preloadable_libiconv_@OS@.so preloadable_libiconv.so +- +-preloadable_libiconv_linux.so : $(SOURCES) +- if test -n "@GCC@"; then \ +- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \ +- else \ +- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \ +- fi +- +-preloadable_libiconv_solaris.so : $(SOURCES) +- if test -n "@GCC@"; then \ - $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_solaris.so; \ -+ $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_solaris.so; \ - else \ - $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -G -o preloadable_libiconv_solaris.so; \ - fi -@@ -118,7 +118,7 @@ +- else \ +- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -G -o preloadable_libiconv_solaris.so; \ +- fi +- +-preloadable_libiconv_osf.so : $(SOURCES) +- if test -n "@GCC@"; then \ +- $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_osf.so; \ +- else \ +- mkdir objects; \ +- for f in $(SOURCES); do \ +- $(CC) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -DPIC -DLIBICONV_PLUG -c $$f -o objects/`basename $$f | sed -e 's,\.c$$,.o,'`; \ +- done; \ +- /bin/ld -shared -expect_unresolved \* -o preloadable_libiconv_osf.so objects/*.o; \ +- rm -rf objects; \ +- fi ++preloadable_libiconv.so : $(SOURCES) ++ $(RM) -rf objects ++ mkdir objects && \ ++ for f in $(SOURCES); do \ ++ $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -DLIBICONV_PLUG -c $$f -o objects/`basename $$f | sed -e 's,\.c$$,.o,'` || exit 1; \ ++ done && \ ++ $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) -o objects/libiconv.la -rpath $(libdir) -no-undefined objects/*.lo && \ ++ cp objects/.libs/libiconv.so preloadable_libiconv.so ++ $(RM) -rf objects + + iconv.lo : $(srcdir)/iconv.c $(srcdir)/converters.h $(srcdir)/encodings.def $(srcdir)/encodings_aix.def $(srcdir)/encodings_osf1.def $(srcdir)/encodings_dos.def $(srcdir)/encodings_local.def $(srcdir)/aliases.h $(srcdir)/aliases_aix.h $(srcdir)/aliases_osf1.h $(srcdir)/aliases_dos.h $(srcdir)/flags.h + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEFS) -c $(srcdir)/iconv.c +@@ -118,14 +98,14 @@ # $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. install-lib : all force if [ ! -d $(libdir) ] ; then $(mkinstalldirs) $(libdir) ; fi @@ -20,7 +56,6 @@ $NetBSD: patch-af,v 1.4 2010/01/06 18:53:05 tron Exp $ # On AIX, libiconv.a must include the object files of /lib/libiconv.a, # otherwise the setlocale() call fails when invoked from executables linked -@@ -125,7 +125,7 @@ # with -rpath $(libdir), even if linked without -liconv. install : all force if [ ! -d $(DESTDIR)$(libdir) ] ; then $(mkinstalldirs) $(DESTDIR)$(libdir) ; fi -- cgit v1.2.3