From eaf685012ad5261183708cbb1fb03c52268fb889 Mon Sep 17 00:00:00 2001 From: Lauri Tirkkonen Date: Mon, 13 Mar 2017 15:25:47 +0200 Subject: [PATCH] libtool: only build one version and update to 2.4.6 we can also eliminate a few dependencies: - we don't need the patches anymore so we can use the prebuilt documentation - we don't need gnu-sed --- components/developer/libtool/Makefile | 57 +-------------- components/developer/libtool/libltdl.p5m | 16 ++-- components/developer/libtool/libtool.p5m | 85 +++++++++++----------- .../libtool/patches/libtool_record_soname.patch | 46 ------------ components/developer/libtool/patches/ltmain.patch | 13 ---- 5 files changed, 51 insertions(+), 166 deletions(-) delete mode 100644 components/developer/libtool/patches/libtool_record_soname.patch delete mode 100644 components/developer/libtool/patches/ltmain.patch diff --git a/components/developer/libtool/Makefile b/components/developer/libtool/Makefile index 366b4a7d5..2a9f56cdf 100644 --- a/components/developer/libtool/Makefile +++ b/components/developer/libtool/Makefile @@ -26,27 +26,16 @@ include ../../../make-rules/shared-macros.mk COMPONENT_NAME= libtool -COMPONENT_VERSION= 2.4.2 +COMPONENT_VERSION= 2.4.6 COMPONENT_REVISION= 2 COMPONENT_PROJECT_URL= http://www.gnu.org/software/libtool/ COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) -COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz +COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz COMPONENT_ARCHIVE_HASH= \ - sha256:b38de44862a987293cd3d8dfae1c409d514b6c4e794ebc93648febf9afc38918 + sha256:7c87a8c2c8c0fc9cd5019e402bed4292462d00a718a7cd5f11218153bf28b26f COMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE) COMPONENT_BUGDB= utility/libtool -# For now, we want to continue to provide the libltdl.so's (and their -# links) from libtool 1.5.22. -# -COMPONENT_VERSION_1 = 1.5.22 -COMPONENT_SRC_1 = $(COMPONENT_NAME)-$(COMPONENT_VERSION_1) -COMPONENT_ARCHIVE_1 = $(COMPONENT_SRC_1).tar.gz -COMPONENT_ARCHIVE_HASH_1 = \ - sha256:88e9ffaaade21c1ddaf6297723dd2fb4ca18ccaef0499a28b6e672f02c8ceb5d -COMPONENT_ARCHIVE_URL_1 = http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE_1) -SOURCE_DIR_1 = $(COMPONENT_DIR)/$(COMPONENT_SRC_1) - include $(WS_TOP)/make-rules/prep.mk include $(WS_TOP)/make-rules/configure.mk include $(WS_TOP)/make-rules/ips.mk @@ -55,54 +44,16 @@ CONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR) CONFIGURE_OPTIONS += --disable-static CONFIGURE_OPTIONS += PERL="$(PERL)" - -COMPONENT_PREP_ACTION = (cd $(@D) ; env AUTOMAKE=/usr/bin/automake ./bootstrap) - # Remove the hard-wired compiler locations in the LTCC and two CC lines # in the two versions of the libtool script. COMPONENT_POST_INSTALL_ACTION = \ (for dir in $(PROTOUSRBINDIR) $(PROTOUSRBINDIR)/$(MACH64) ; do \ cd $$dir; \ - /usr/gnu/bin/sed -i \ + /usr/bin/sed -i '' \ -e 's|^LTCC="/.*$$|LTCC="gcc"|' \ -e 's|^CC="/.*$$|CC="gcc"|' libtool ; \ done) -# Macros to configure, build, and install the old version for the time being. -BUILD_OLD_DIR_32 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH32) -BUILD_OLD_DIR_64 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH64) - -$(BUILD_OLD_DIR_32)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure -$(BUILD_OLD_DIR_64)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure -$(BUILD_OLD_DIR_32)/.configured: BITS=32 -$(BUILD_OLD_DIR_64)/.configured: BITS=64 - -BUILD_32 += $(BUILD_OLD_DIR_32)/.built -BUILD_64 += $(BUILD_OLD_DIR_64)/.built - -INSTALL_32 += $(BUILD_OLD_DIR_32)/.installed -INSTALL_64 += $(BUILD_OLD_DIR_64)/.installed - -# install the old version first -$(BUILD_DIR_32)/.installed: $(BUILD_OLD_DIR_32)/.installed -$(BUILD_DIR_64)/.installed: $(BUILD_OLD_DIR_64)/.installed - -# we need to prep the old version too (this should be handled in prep.mk) -$(SOURCE_DIR_1)/.unpacked: download Makefile $(PATCHES) - $(RM) -r $(SOURCE_DIR_1) - $(UNPACK) $(UNPACK_ARGS) $(USERLAND_ARCHIVES)$(COMPONENT_ARCHIVE_1) - $(TOUCH) $@ - -# prep the old version first -$(SOURCE_DIR)/.prep: $(SOURCE_DIR_1)/.prep - -$(SOURCE_DIR_1)/.prep: $(SOURCE_DIR_1)/.unpacked - $(TOUCH) $@ - -prep:: $(SOURCE_DIR_1)/.prep - -CLEAN_PATHS += $(SOURCE_DIR_1) - # common targets build: $(BUILD_32_and_64) diff --git a/components/developer/libtool/libltdl.p5m b/components/developer/libtool/libltdl.p5m index 25c2e1e30..c70dc74a7 100644 --- a/components/developer/libtool/libltdl.p5m +++ b/components/developer/libtool/libltdl.p5m @@ -33,14 +33,10 @@ set name=info.upstream-url value=$(COMPONENT_PROJECT_URL) set name=org.opensolaris.arc-caseid \ value=PSARC/2007/557 set name=org.opensolaris.consolidation value=$(CONSOLIDATION) -file path=usr/lib/$(MACH64)/libltdl.so.3.1.4 -file path=usr/lib/$(MACH64)/libltdl.so.7.3.0 -file path=usr/lib/libltdl.so.3.1.4 -file path=usr/lib/libltdl.so.7.3.0 +file path=usr/lib/$(MACH64)/libltdl.so.7.3.1 +file path=usr/lib/libltdl.so.7.3.1 license libtool.license license=GPLv2 -link path=usr/lib/$(MACH64)/libltdl.so.3 target=libltdl.so.3.1.4 -link path=usr/lib/$(MACH64)/libltdl.so target=libltdl.so.7.3.0 -link path=usr/lib/$(MACH64)/libltdl.so.7 target=libltdl.so.7.3.0 -link path=usr/lib/libltdl.so.3 target=libltdl.so.3.1.4 -link path=usr/lib/libltdl.so target=libltdl.so.7.3.0 -link path=usr/lib/libltdl.so.7 target=libltdl.so.7.3.0 +link path=usr/lib/$(MACH64)/libltdl.so target=libltdl.so.7.3.1 +link path=usr/lib/$(MACH64)/libltdl.so.7 target=libltdl.so.7.3.1 +link path=usr/lib/libltdl.so target=libltdl.so.7.3.1 +link path=usr/lib/libltdl.so.7 target=libltdl.so.7.3.1 diff --git a/components/developer/libtool/libtool.p5m b/components/developer/libtool/libtool.p5m index 7aab17e90..fe4eff736 100644 --- a/components/developer/libtool/libtool.p5m +++ b/components/developer/libtool/libtool.p5m @@ -44,9 +44,9 @@ file path=usr/include/libltdl/lt_dlloader.h file path=usr/include/libltdl/lt_error.h file path=usr/include/libltdl/lt_system.h file path=usr/include/ltdl.h -file path=usr/share/aclocal/argz.m4 file path=usr/share/aclocal/libtool.m4 file path=usr/share/aclocal/lt~obsolete.m4 +file path=usr/share/aclocal/ltargz.m4 file path=usr/share/aclocal/ltdl.m4 file path=usr/share/aclocal/ltoptions.m4 file path=usr/share/aclocal/ltsugar.m4 @@ -54,53 +54,50 @@ file path=usr/share/aclocal/ltversion.m4 file path=usr/share/info/libtool.info file path=usr/share/info/libtool.info-1 file path=usr/share/info/libtool.info-2 -file path=usr/share/libtool/config/compile -file path=usr/share/libtool/config/config.guess -file path=usr/share/libtool/config/config.sub -file path=usr/share/libtool/config/depcomp -file path=usr/share/libtool/config/install-sh -file path=usr/share/libtool/config/ltmain.sh -file path=usr/share/libtool/config/missing -file path=usr/share/libtool/libltdl/aclocal.m4 -file path=usr/share/libtool/libltdl/argz_.h -file path=usr/share/libtool/libltdl/argz.c -file path=usr/share/libtool/libltdl/config-h.in -file path=usr/share/libtool/libltdl/configure -file path=usr/share/libtool/libltdl/configure.ac -file path=usr/share/libtool/libltdl/COPYING.LIB -file path=usr/share/libtool/libltdl/libltdl/lt__alloc.h -file path=usr/share/libtool/libltdl/libltdl/lt__dirent.h -file path=usr/share/libtool/libltdl/libltdl/lt__glibc.h -file path=usr/share/libtool/libltdl/libltdl/lt__private.h -file path=usr/share/libtool/libltdl/libltdl/lt__strl.h -file path=usr/share/libtool/libltdl/libltdl/lt_dlloader.h -file path=usr/share/libtool/libltdl/libltdl/lt_error.h -file path=usr/share/libtool/libltdl/libltdl/lt_system.h -file path=usr/share/libtool/libltdl/libltdl/slist.h -file path=usr/share/libtool/libltdl/loaders/dld_link.c -file path=usr/share/libtool/libltdl/loaders/dlopen.c -file path=usr/share/libtool/libltdl/loaders/dyld.c -file path=usr/share/libtool/libltdl/loaders/load_add_on.c -file path=usr/share/libtool/libltdl/loaders/loadlibrary.c -file path=usr/share/libtool/libltdl/loaders/preopen.c -file path=usr/share/libtool/libltdl/loaders/shl_load.c -file path=usr/share/libtool/libltdl/lt__alloc.c -file path=usr/share/libtool/libltdl/lt__dirent.c -file path=usr/share/libtool/libltdl/lt__strl.c -file path=usr/share/libtool/libltdl/lt_dlloader.c -file path=usr/share/libtool/libltdl/lt_error.c -file path=usr/share/libtool/libltdl/ltdl.c -file path=usr/share/libtool/libltdl/ltdl.h -file path=usr/share/libtool/libltdl/Makefile.am -file path=usr/share/libtool/libltdl/Makefile.in -file path=usr/share/libtool/libltdl/Makefile.inc -file path=usr/share/libtool/libltdl/README -file path=usr/share/libtool/libltdl/slist.c +file path=usr/share/libtool/build-aux/config.guess +file path=usr/share/libtool/build-aux/config.sub +file path=usr/share/libtool/build-aux/depcomp +file path=usr/share/libtool/build-aux/install-sh +file path=usr/share/libtool/build-aux/ltmain.sh +file path=usr/share/libtool/build-aux/missing +file path=usr/share/libtool/aclocal.m4 +file path=usr/share/libtool/config-h.in +file path=usr/share/libtool/configure +file path=usr/share/libtool/configure.ac +file path=usr/share/libtool/COPYING.LIB +file path=usr/share/libtool/libltdl/lt__alloc.h +file path=usr/share/libtool/libltdl/lt__argz_.h +file path=usr/share/libtool/libltdl/lt__dirent.h +file path=usr/share/libtool/libltdl/lt__glibc.h +file path=usr/share/libtool/libltdl/lt__private.h +file path=usr/share/libtool/libltdl/lt__strl.h +file path=usr/share/libtool/libltdl/lt_dlloader.h +file path=usr/share/libtool/libltdl/lt_error.h +file path=usr/share/libtool/libltdl/lt_system.h +file path=usr/share/libtool/libltdl/slist.h +file path=usr/share/libtool/loaders/dld_link.c +file path=usr/share/libtool/loaders/dlopen.c +file path=usr/share/libtool/loaders/dyld.c +file path=usr/share/libtool/loaders/load_add_on.c +file path=usr/share/libtool/loaders/loadlibrary.c +file path=usr/share/libtool/loaders/preopen.c +file path=usr/share/libtool/loaders/shl_load.c +file path=usr/share/libtool/lt__alloc.c +file path=usr/share/libtool/lt__argz.c +file path=usr/share/libtool/lt__dirent.c +file path=usr/share/libtool/lt__strl.c +file path=usr/share/libtool/lt_dlloader.c +file path=usr/share/libtool/lt_error.c +file path=usr/share/libtool/ltdl.c +file path=usr/share/libtool/ltdl.h +file path=usr/share/libtool/Makefile.am +file path=usr/share/libtool/Makefile.in +file path=usr/share/libtool/README +file path=usr/share/libtool/slist.c file path=usr/share/man/man1/libtool.1 file path=usr/share/man/man1/libtoolize.1 depend fmri=__TBD pkg.debug.depend.file=usr/bin/ggrep type=require -depend fmri=__TBD pkg.debug.depend.file=usr/bin/gsed type=require depend fmri=__TBD pkg.debug.depend.file=usr/bin/ld type=require depend fmri=__TBD pkg.debug.depend.file=usr/bin/nm type=require diff --git a/components/developer/libtool/patches/libtool_record_soname.patch b/components/developer/libtool/patches/libtool_record_soname.patch deleted file mode 100644 index 499abd4e7..000000000 --- a/components/developer/libtool/patches/libtool_record_soname.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 204b94605020eb347f92e825734ddf7f756a1ddb Mon Sep 17 00:00:00 2001 -From: Richard Palo -Date: Wed, 19 Dec 2012 10:08:15 +0000 -Subject: libtool: Add SONAME to the so when exporting explicit symbols on Solaris - -m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] : Feed --h $soname to the linker just as is done in archive_cmds. -THANKS: Update. - -Copyright-paperwork-exempt: Yes -Signed-off-by: Peter Rosin ---- -diff --git a/THANKS b/THANKS -index ef617e4..1259cbf 100644 ---- libtool-2.4.2/THANKS -+++ libtool-2.4.2/THANKS -@@ -165,6 +165,7 @@ - Rainer Tammer tammer@tammer.net - Ralf Menzel menzel@ls6.cs.uni-dortmund.de - Richard B. Kreckel kreckel@ginac.de -+ Richard Palo richard.palo@baou.fr - Richard Purdie rpurdie@rpsys.net - Richard Sandiford richards@transitive.com - Robert Garron Robert.Garron@Access3000.net -diff --git a/m4/libtool.m4 b/m4/libtool.m4 -index 3cf14e7..205b1e3 100644 ---- libtool-2.4.2/libltdl/m4/libtool.m4.~1~ 2011-10-17 14:17:05.000000000 +0400 -+++ libtool-2.4.2/libltdl/m4/libtool.m4 2013-07-26 16:30:40.035534020 +0400 -@@ -6742,7 +6742,7 @@ - if $CC --version | $GREP -v '^2\.7' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ -- $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' -+ $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when -@@ -6753,7 +6753,7 @@ - # platform. - _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ -- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' -+ $CC -G -nostdlib ${wl}-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when diff --git a/components/developer/libtool/patches/ltmain.patch b/components/developer/libtool/patches/ltmain.patch deleted file mode 100644 index 025fdf378..000000000 --- a/components/developer/libtool/patches/ltmain.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- libtool-2.4.2/libltdl/config/ltmain.m4sh.~1~ 2014-11-27 17:35:04.445640388 +0300 -+++ libtool-2.4.2/libltdl/config/ltmain.m4sh 2014-11-27 17:36:13.820312826 +0300 -@@ -398,7 +398,9 @@ - test "$opt_debug" = : || func_append preserve_args " --debug" - - case $host in -- *cygwin* | *mingw* | *pw32* | *cegcc*) -+ # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 -+ # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 -+ *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; -- 2.11.4.GIT