Index: libtool/ChangeLog diff -c libtool/ChangeLog:1.1220.2.1 libtool/ChangeLog:1.1220.2.60 *** libtool/ChangeLog:1.1220.2.1 Mon Apr 14 22:48:00 2003 --- libtool/ChangeLog Sun Jan 25 12:25:08 2004 *************** *** 1,3 **** --- 1,416 ---- + 2004-01-25 Scott James Remnant + + GNU libtool 1.5.2 was released. + + * configure.ac: Bumped version to 1.5.2 in accordance with the + new versioning scheme. + * NEWS: updated. + * config.guess, config.sub, texinfo.tex: Synchronized from + ftp.gnu.org. + + 2004-01-25 Scott James Remnant + Gary V. Vaughan + + * Makefile.am: Update the maintainer rules against HEAD, I + cannot seem to find Gary's original ChangeLog entry for these. + + 2004-01-25 Peter O'Gorman + + * ltmain.in: Check for module_cmds if max_cmd_len is exceeded too. + + * ltmain.in: Test $old_striplib before using it, not $striplib. + + * ltmain.in: Move eval to after command separation to allow ~ in paths. + + * ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar + Tollefsen where a dir could be added to the link line with no '-L' + on darwin. + + 2004-01-23 Scott James Remnant + + * libtool.m4 (AC_LIBTOOL_CONFIG): Don't attempt to + make ltmain.sh unless there's an ltmain.in to do it with. + This prevents make/configure loops caused by Automake's + dependency rules. + + 2004-01-23 Scott James Remnant + + * libtoolize.in: Fix libtoolize so the cd command run when + AC_CONFIG_AUX_DIR is used is shown when --dry-run is given. + (Debian Bug #153699) + + 2004-01-23 Scott James Remnant + * ltmain.in: include newline in "sensible default" for IFS. + (Debian Bug #98492 and #95447) + + 2004-01-23 Scott James Remnant + + * libtool.m4: allow STRIP to contain spaces and additional + arguments. (Debian Bug #183055) + + 2004-01-23 Scott James Remnant + + * m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code + for platforms that have been using pass_all for some time now. + + 2004-01-23 Gary V. Vaughan + + * ltmain.in: Don't suppress output of PIC mode compile if + -no-suppress option is given. + * doc/libtool.texi (Invoking libtool): Document it. + * NEWS: Updated. + + 2004-01-23 Scott James Remnant + + * libltdl/ltdl.c (lt_dlerror): change return value when + no error has occured to NULL to match documentation. + (Debian Bug #157229) + + 2004-01-23 Kevin P. Fleming + Charles Wilson + + * ltmain.in: include --tag options, if specified, in the + relink_command in uninstalled .la files. Also, preserve --silent, + --debug options when libtool re-execs itself. + * NEWS: Updated. + + 2004-01-23 James Henstridge , + Scott James Remnant + + * m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the + -export-symbols and -export-symbols-regex options. + + 2004-01-23 Owen Taylor + + * m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the + 'R' symbol type so read-only symbols can be exported when combining + GCC and Solaris LD. + + 2004-01-23 Scott James Remnant + + * ltmain.in: When relinking, place the -L parameter containing + the installation prefix directory after the intended destination, + so we don't accidentally link against an older installed library. + + 2004-01-23 Scott James Remnant + + * tests/demo-nopic.test: Skip test on hppa, which don't like + non-PIC shared libraries. + + 2004-01-23 Scott James Remnant + + * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include + directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec. + + 2004-01-23 Scott James Remnant + + * ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs + and $finalize_deplibs for programs) when found on the command line + or in a .la file's dependency_libs (but don't place them there) so + they are honoured when linking both programs and libraries. + + 2004-01-23 Scott James Remnant + + * ltmain.in: In compile mode, delay parsing of -shared, -static, + -prefer-pic and -prefer-non-pic until after tagged configuration + has been read. In link mode, read tagged configuration before + parsing any arguments. These arguments will now work when using + a non-C compiler. + + 2004-01-23 Stefan Nordhausen + Scott James Remnant + + * ltmain.in: Don't use the mkdir -p option when creating a + temporary output directory so a symlink attack can't be used to + arbitrarily chmod other directories on the system if libtool + gets run as root. + + 2004-01-23 Scott James Remnant + + * ltmain.in: new -precious-files-regex link mode option + to prevent removal of matching files from the temporary + output directory. + (Debian Bug #221420) + * doc/libtool.texi: document the new option. + * NEWS: announce the new option. + + 2004-01-22 Jeff Squyres + + * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers (e.g. Intel + Linux icc compiler) write temporary files to the current + directory. These compilers do support -c and -o simultaneously but + wrongly fail the test due to the failure to create temporary + files. It is incorrect to penalize compilers which write temporary + files to the current directory so the 'chmod -w .' is therefore + removed. + + 2004-01-21 Nick Hudson + + * m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove + gratuitous ${libname}${release}${shared_ext} from + library_names_spec. + + 2003-11-12 Gary V. Vaughan + + The rules for uploading releases to gnu.org have been updated, and + are in fact now rather complicated. This delta updates the + release instructions to the describe the new process, and updates + the maintainer rules to help automate many of the steps: + + * README-alpha: Updated release instructions. + * Makefile.am (GPG): Name of the program for generating signatures + for files to be uploaded. + (XDELTA, XDELTA_OPTIONS): Invocation of xdelta. + (cvs-dist): Run distcheck before tagging the cvs tree incase + distcheck fails, and then generate the gpg signature files. + (cvs-diff): Generate the gpg signature files for the diff. + (xdelta): New rule for generating the xdelta diffs and associated + gpg signature files. + (cvs-release): New rule to do all of the above, if you don't mind + typing your gpg passphrase over and over again. :-) + (fetch): New rule inspired by automakes similar rule for updating + files maintained outside the project. + * config.guess, config.sub, doc/texinfo.tex: Updated with the new + fetch rule. + + 2003-10-16 Bob Friesenhahn + + * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL + check method back to a working objdump-based test. This is not as + concrete a test as using the 'file' command, but it does not + require that the 'file' command be available. + + 2003-09-29 Scott James Remnant + + * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux* + solving many build problems on ARM, and hopefully preventing any + future ones. + (Debian Bug #191133 and #190569) + + 2003-09-29 Bob Friesenhahn , + Dalibor Topic + + * libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be + found. + + 2003-09-26 Alfred M. Szmidt + + * mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl' + instead of `../libltdl'. + + 2003-09-21 Robert Millan + + * libtool.m4: Add GNU/KNetBSD support. + * ltdl.m4: Likewise. + + 2003-09-10 Peter O'Gorman + + * mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN. + * mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS(). + * mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force + to make sure the symbols file is included in the link line. + + 2003-09-10 Arne Woerner + + * libtool.m4 [openbsd]: openbsd 3.x needs versioning information. + + 2003-08-29 Alexandre Duret-Lutz + + * libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to + _LT_AC_LANG_C_CONFIG. + + 2003-08-05 Jim Pick , + Ito Kazumitsu , + Gary V. Vaughan + + Much as we have tried not to make it the callers' responsibility + to maintain an lt_dlrealloc function pointer, it is too difficult + to implement realloc as malloc/memcpy/free without knowing the + size of the original block. rpl_realloc has been deprecated since + 2002-10-30, but kaffe has real failures with that so it's time to + bite the bullet. Caller gets to maintain lt_dlrealloc: + + * NEWS (1.5.1): Updated. + * libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can + update the function pointer to match lt_dlmalloc. + (lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc. + * doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now + that it too has become part of the exported interface to libltdl. + + 2003-08-01 Peter O'Gorman + + * libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the + user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater. + * libltdl/ltdl.c (dyld): Save the error from the first lookup + to report in lt_dlerror(). Otherwise the error is always + "Symbol _foo not in /usr/lib/libSystem.dylib". + Thanks to Chris Zubrzycki for reporting this. + + 2003-08-01 Robert Boehne + + * libltdl/ltdl.h: Tweak the header to support visual studio. + + 2003-07-31 Greg Eisenhauer + + * ltmain.in: Provide absolute paths for dlopen and dlpreopen + files in generating uninstalled libtool libraries. + * mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README, + mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c, + tests/mdemo2-conf.test, tests/mdemo2-exec.test, + tests/mdemo2-make.test: New files for testing above feature. + * configure.ac, bootstrap, tests/Makefile.am: Accomodate new + test directory. + * mdemo/Makefile.am: Build libmlib.la for mdemo2 tests. + + 2003-07-30 Tony Wyatt + + * libtool.m4: Remove parentheses around finish_eval part which + broke on amigaos pdksh. + + 2003-07-30 Albert Chin-A-Young + + * libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++ + template files. + + 2003-07-30 Christiaan Welvaart + + * tests/dryrun.test: Ignore any 'total' line from "ls -l" output. + + 2003-07-30 Robert Millan + + * libtool.m4: More fixes for the new GNU/FreeBSD triplet. + + 2003-07-30 Bob Friesenhahn + + * config.guess, config.sub: Synchronized from ftp.gnu.org since + Robert Millan's patch requires it. + + 2003-07-30 Robert Millan + + * libtool.m4: Fixed to use the new GNU/FreeBSD triplet. + * ltdl.m4: Fixed to use the new GNU/FreeBSD triplet. + * ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed. + + 2003-07-30 Andreas Schwab + + * libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in + addition to ppc64-*linux*. From Markus Meissner + . + + 2003-07-30 Dalibor Topic + + * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh, + set the maximum command line length to 8K since otherwise the test + takes over an hour to run. + + 2003-06-25 Alexandre Oliva , Tim Waugh + + * libtool.m4: Replace mis-uses of path with pathname. + (AC_PROG_LD_GNU): Don't quote $LD when running it. + (_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++ + and non-GNU ld. + + 2003-06-11 Gary V. Vaughan + + * libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to + ensure $SED is set by the time it is used. + + * configure.ac (AC_INIT): Bumped revision to 1.5.0a -- the first cvs + revision number for the 1.5 maintenance branch, leading towards a + 1.5.1 release. + + * NEWS: Sychronised from branch-1-4. + + 2003-06-03 Benjamin Reed + + * ltmain.in: search libraries in the order of preference, rather + than picking .la's even if they're in a less preferred directory. + + 2003-06-03 Robert Millan + + * ltdl.m4: Add support for GNU/FreeBSD. + * ltmain.in: Add support for GNU/FreeBSD. + + 2003-06-03 Albert Chin-A-Young + + * libtool.m4: No need to use sed to remove leading comma when + appending to $tagnames. + + 2003-06-03 Albert Chin-A-Young + + * tests/defs, tests/demo-conf.test, tests/demo-nofast.test, + tests/demo-nopic.test, tests/demo-pic.test, + tests/demo-shared.test, tests/demo-static.test, + tests/depdemo-conf.test, tests/depdemo-nofast.test, + tests/depdemo-shared.test, tests/depdemo-static.test: + Pass build system type to tests to support environment + where default system type not equal to build system type + (eg. 64-bit HP-UX). + + 2003-06-03 Peter O'Gorman + + * libtool.m4 (darwin): Remove checks for Apple-specific gcc. + * libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define + __private_extern__ for fsf gcc. + * ltmain.in (darwin): Only add new paths to newlib_search_path. + + 2003-06-03 Max Bowsher + + * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's + system library search path. + + 2003-06-01 Robert Boehne + + * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto + as recent config.guess returns a slightly different string. + * ltmain.in: Replace use of "od" with tr. + + 2003-05-30 Gary V. Vaughan + + * libltdl/ltdl.c (argz_insert): Corrected an off by one error when + checking that before is not out of range. + + 2003-05-29 Gary V. Vaughan + + * libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused + variable mh1. + (sys_dyld_close): Removed unused variable size. + + 2003-05-21 Bruno Haible + + * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for + GNU/FreeBSD. + + 2003-04-22 Alexandre Oliva + + * libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all + mips*-linux* variants. + + 2003-04-22 Samuel Meder + + * libtool.m4 Switch on $CC and add paterns to cases. + + 2003-04-22 Peter O'Gorman + + * libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check + to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, because the + value of shlibpath_overrides_runpath is used in the HARDCODE + test and is set in the DYNAMIC_LINKER test. + * ltmain.in(darwin): We never need to relink on darwin. + + 2003-04-22 Samuel Meder + + * libtool.m4 Switch on $CC and add paterns to cases. + + 2003-04-21 Richard Dawe + + * doc/libtool.texi: Use @ifnottex instead of @ifinfo, + to allow production of HTML documentation using makeinfo. + + 2003-04-15 Robert Boehne + + * README-alpha: Updated upload instructions. + 2003-04-14 Robert Boehne * NEWS: Updated. *************** *** 102,108 **** * f77demo/configure.ac: Add config.h which was misapplied previously. 2003-03-20 Peter O'Gorman ! * ltmain.in: Always use $echo not echo for consistency. Changes for darwin building. Warn if linking against libs linked with -module. Use module_cmds if available and building a module, --- 515,521 ---- * f77demo/configure.ac: Add config.h which was misapplied previously. 2003-03-20 Peter O'Gorman ! * ltmain.in: Always use $echo not echo for consistency. Changes for darwin building. Warn if linking against libs linked with -module. Use module_cmds if available and building a module, *************** *** 197,203 **** (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD, and reset them for a C++ environment. Use the with_gnu_ld setting from AC_PROG_LD. ! * libtool.m4: Replace $linker_flags with $compiler_flags wherever it is used as argument to $CC. --- 610,616 ---- (_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD, and reset them for a C++ environment. Use the with_gnu_ld setting from AC_PROG_LD. ! * libtool.m4: Replace $linker_flags with $compiler_flags wherever it is used as argument to $CC. *************** *** 275,282 **** * ltmain.in: add code for a binary wrapper to use with uninstalled executables on cygwin/mingw. Make sure that --mode=clean gets shell wrapper and ! binary wrapper. When sourcing the shell wrapper, ! invoke using a terminal `.' on cygwin/mingw to avoid the automatic append-.exe behavior. 2003-01-28 Albert Chin-A-Young --- 688,695 ---- * ltmain.in: add code for a binary wrapper to use with uninstalled executables on cygwin/mingw. Make sure that --mode=clean gets shell wrapper and ! binary wrapper. When sourcing the shell wrapper, ! invoke using a terminal `.' on cygwin/mingw to avoid the automatic append-.exe behavior. 2003-01-28 Albert Chin-A-Young *************** *** 346,352 **** Call that instead. 2002-12-30 Robert Boehne ! * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX tag doesn't use the g++ defaults for the OS X compiler. --- 759,765 ---- Call that instead. 2002-12-30 Robert Boehne ! * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX tag doesn't use the g++ defaults for the OS X compiler. *************** *** 2122,2125 **** Continued in ChangeLog.1 ! $Revision: 1.1220.2.1 $ $Date: 2003/04/14 22:48:00 $ --- 2535,2538 ---- Continued in ChangeLog.1 ! $Revision: 1.1220.2.60 $ $Date: 2004/01/25 12:25:08 $ Index: libtool/Makefile.am diff -c libtool/Makefile.am:1.69 libtool/Makefile.am:1.69.2.3 *** libtool/Makefile.am:1.69 Sat Mar 29 05:06:46 2003 --- libtool/Makefile.am Sun Jan 25 12:35:23 2004 *************** *** 48,65 **** (rm -f $@ && cp ltmain.shT $@ && rm -f ltmain.shT) cp $@ $(srcdir)/libltdl/ - # TSDEPS will be defined to TSDEPS_DIST at `make dist' time - TSDEPS = - TSDEPS_DIST = ChangeLog libtool.m4 - CVS = cvs # set it to `:' to avoid CVS operations - - .PHONY: timestamps update-timestamps - timestamps distdir: update-timestamps - update-timestamps: - @if (cd $(srcdir) && test -d CVS && \ - $(CVS) -n update $(TSDEPS_DIST) | grep '^M'); then \ - echo "Cannot make dist before commit"; exit 1; else :; fi - # All our rules should depend on these demo files. all-recursive: $(srcdir)/libltdl/acinclude.m4 $(ACINCLUDE_M4_LIST) --- 48,53 ---- *************** *** 89,117 **** uninstall-local: -rm -rf $(DESTDIR)$(pkgdatadir)/libltdl ! ################################################################ ! ## ! ## Everything past here is useful to the maintainer, but probably not ! ## to anybody else (snarfed from automake/Makefile.am). ! ## ! ! # Tag before making distribution. Also, don't make a distribution if ! # checks fail. Also, make sure the NEWS file is up-to-date. ! cvs-dist: distcheck ! @if sed '1,2d;3q' $(srcdir)/NEWS | grep -e "$(VERSION)" > /dev/null; then :; else \ echo "NEWS not updated; not releasing" 1>&2; \ ! exit 1; \ fi - cd $(srcdir) && \ - $(CVS) -q tag `echo "release-$(VERSION)" | sed 's/\./-/g'` - $(MAKE) dist cvs-diff: thisver=`echo "release-$(VERSION)" | sed 's/\./-/g'`; \ ! if test -z "$$OLDVERSION"; then \ ! prevno=`echo "$(VERSION)" - 0.01 | bc | sed 's/^\./0./'`; \ ! else prevno="$$OLDVERSION"; fi; \ ! prevver=release-`echo $$prevno | sed 's/\./-/g'`; \ $(CVS) -f rdiff -c -r $$prevver -r $$thisver $(PACKAGE) \ ! | GZIP=$(GZIP_ENV) gzip -c \ ! > $(PACKAGE)-$$prevno-$(VERSION).diff.gz --- 77,243 ---- uninstall-local: -rm -rf $(DESTDIR)$(pkgdatadir)/libltdl ! ! ## ---------------------------------------------------------------- ## ! ## Everything past here is useful to the maintainer, but probably ## ! ## not to anybody else (inspiration from automake/Makefile.am). ## ! ## ---------------------------------------------------------------- ## ! ! CHECK_LASTRELEASE = if test -z "$(LASTRELEASE)"; \ ! then echo "LASTRELEASE is not set"; exit 1; fi ! ! .PHONY: cvs-release ! cvs-release: version-check prev-tarball cvs-news fetch cvs-dist cvs-diff xdelta ! @$(CHECK_LASTRELEASE); tarname="$(PACKAGE)-$(VERSION).tar.gz"; \ ! diffname="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).diff.gz"; \ ! xdeltaname="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).xdelta"; \ ! echo " *** Upload $$tarname, $$tarname.sig,";\ ! echo " *** $$tarname.directive.asc, $$diffname,"; \ ! echo " *** $$diffname.sig, $$diffname.directive.asc,"; \ ! echo " *** $$xdeltaname, $$xdeltaname.sig and";\ ! echo " *** $$xdeltaname.directive.asc to either";\ ! echo " *** /incoming/alpha or /incoming/ftp on ftp-upload.gnu.org."; ! ! .PHONY: version-check ! version-check: ! @case $(VERSION) in \ ! *[acegikmoqsuwy]) \ ! echo "Version \`$(VERSION)' is not a releasable version, please read:"; \ ! echo " http://www.gnu.org/software/libtool/contribute.html"; \ ! exit 1; \ ! ;; \ ! esac ! ! .PHONY: prev-tarball ! prev-tarball: ! ## Make sure we have the previous release tarball in the tree. ! @$(CHECK_LASTRELEASE); ofile="$(PACKAGE)-$(LASTRELEASE).tar.gz"; \ ! if test -f $$ofile; then :; \ ! else echo "Cannot make xdelta without $$ofile"; exit 1; fi ! ! # TSDEPS will be defined to TSDEPS_DIST at `make dist' time ! TSDEPS = ! TSDEPS_DIST = ChangeLog libtool.m4 ! CVS = cvs # set it to `:' to avoid CVS operations ! ! .PHONY: timestamps update-timestamps ! timestamps: update-timestamps ! update-timestamps: ! @if (cd $(srcdir) && test -d CVS && \ ! $(CVS) -n update $(TSDEPS_DIST) | grep '^M'); then \ ! echo "Cannot make cvs-dist before commit"; exit 1; else :; fi ! ! ! .PHONY: cvs-news ! cvs-news: timestamps ! ## Make sure the NEWS file is up-to-date: ! @if sed '1,2d;3q' $(srcdir)/NEWS | grep -e "$(VERSION)" >/dev/null; \ ! then :; \ ! else \ echo "NEWS not updated; not releasing" 1>&2; \ ! exit 1; \ fi + ## Program to use to fetch files. + WGET = wget + WGETSGO = $(WGET) http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~ + + ## Files that we fetch and which we compare against. + ## FIXME should be a lot more here + FETCHFILES = \ + ./INSTALL \ + ./config.guess \ + libltdl/config.guess \ + ./config.sub \ + libltdl/config.sub + + ## Fetch the latest versions of files we care about. + .PHONY: fetch + fetch: + rm -rf Fetchdir > /dev/null 2>&1 + mkdir Fetchdir + ## If a get fails then that is a problem. + (cd Fetchdir && \ + $(WGETSGO)/autoconf/autoconf/INSTALL; \ + $(WGETSGO)/config/config/config.guess; \ + $(WGETSGO)/config/config/config.sub; \ + $(WGETSGO)/texinfo/texinfo/doc/texinfo.tex ) + ## Don't exit after test because we want to give as many errors as + ## possible. + @stat=0; for file in $(FETCHFILES); do \ + fetchedfile=Fetchdir/`echo $$file | sed 's,.*/,,g'`; \ + if diff -u $(srcdir)/$$file $$fetchedfile \ + >>Fetchdir/update.patch 2>/dev/null; then :; \ + else \ + stat=1; \ + echo "Updating $(srcdir)/$$file..."; \ + cp $$fetchedfile $(srcdir)/$$file; \ + fi; \ + done; \ + test $$stat = 1 && \ + echo "See Fetchdir/update.patch for a log of the changes."; \ + exit $$stat + + + GPG = gpg # set it to `:' to avoid gpg operations + + .PHONY: cvs-dist + cvs-dist: cvs-news + ## Build the distribution: + $(MAKE) distcheck + ## Finally, if everything was successful, commit the last changes and tag + ## the release in the repository: + cd $(srcdir) \ + && $(SHELL) ./commit \ + && $(CVS) -q tag -c `echo "Release-$(VERSION)" | sed 's/\./-/g'` + ## We do want the timestamped version numbers from the CVS keywords in + ## ChangeLog to be correct, so we must rebuild the release tarball after + ## a successfull commit, and then generate the signatures needed for + ## FSF ftp-upload: + ofile="$(PACKAGE)-$(VERSION).tar.gz"; \ + $(MAKE) dist \ + && $(GPG) --detach-sign $$ofile \ + && echo "directory: libtool" > $$ofile.directive \ + && $(GPG) --clearsign $$ofile.directive \ + && rm -f $$ofile.directive + + .PHONY: cvs-diff cvs-diff: + ## Figure out which cvs tags we are diffing, and if the diff works we + ## compress it and then generate the signatures needed for FSF ftp-upload: thisver=`echo "release-$(VERSION)" | sed 's/\./-/g'`; \ ! $(CHECK_LASTRELEASE); \ ! prevver=release-`echo $(LASTRELEASE) | sed 's/\./-/g'`; \ ! ofile="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).diff.gz"; \ $(CVS) -f rdiff -c -r $$prevver -r $$thisver $(PACKAGE) \ ! | GZIP=$(GZIP_ENV) gzip -c > $$ofile \ ! && $(GPG) --detach-sign $$ofile \ ! && echo "directory: libtool" > $$ofile.directive \ ! && $(GPG) --clearsign $$ofile.directive \ ! && rm -f $$ofile.directive ! ! XDELTA = xdelta ! XDELTA_OPTIONS = --pristine -9 ! ! .PHONY: xdelta ! xdelta: prev-tarball ! ## Make sure xdelta exists; ! @if ($(XDELTA) --version 2>&1 | grep version)>/dev/null 2>/dev/null; \ ! then :;\ ! else \ ! echo "Get xdelta from http://sourceforge.net/projects/xdelta."; \ ! exit 1; \ ! fi ! ## Generate the delta file (xdelta has wierd exit statuses, so we need to ! ## add some shell code to keep make happy), and then generate the signatures ! ## for FSF ftp-upload: ! $(CHECK_LASTRELEASE); \ ! ofile="$(PACKAGE)-$(LASTRELEASE)-$(VERSION).xdelta"; \ ! ( test -z `$(XDELTA) delta $(XDELTA_OPTIONS) \ ! $(PACKAGE)-$(LASTRELEASE).tar.gz $(PACKAGE)-$(VERSION).tar.gz \ ! $$ofile 2>&1` \ ! && : ) \ ! && $(GPG) --detach-sign $$ofile \ ! && echo "directory: libtool" > $$ofile.directive \ ! && $(GPG) --clearsign $$ofile.directive \ ! && rm -f $$ofile.directive Index: libtool/NEWS diff -c libtool/NEWS:1.109.2.1 libtool/NEWS:1.109.2.5 *** libtool/NEWS:1.109.2.1 Mon Apr 14 22:48:00 2003 --- libtool/NEWS Sun Jan 25 12:25:08 2004 *************** *** 1,6 **** NEWS - list of user-visible changes between releases of GNU Libtool ! New in 1.5: 2002-04-14; CVS version 1.4e, Libtool team: * First stable release of multi-language architecture. * libtool and libltdl support for Mac OS/X. * libltdl will now use cygwins dlopen API instead of always forcing --- 1,21 ---- NEWS - list of user-visible changes between releases of GNU Libtool ! New in 1.5.2: 2004-01-??; CVS version 1.5.0a, Libtool team: ! * lt_dlrealloc is an official part of the libltdl API. ! * --tag, --silent and --debug options are preserved and reused when libtool ! calls itself for relinking etc. ! * `-pthread' and similar options are honoured when linking shared libraries. ! * -no-suppress in compile mode shows compiler output for both PIC and non-PIC ! object compilation. ! * New link mode option `-precious-files-regex' to prevent accidental removal ! of files you want to keep, such as test coverage data, from the temporary ! output directory. ! * Directories specified in /etc/ld.so.conf are no longer hardcoded on Linux. ! * Recognises the 'R' symbol type on Solaris so read-only symbols can be ! exported. ! * Bug fixes. ! ! New in 1.5: 2003-04-14; CVS version 1.4e, Libtool team: * First stable release of multi-language architecture. * libtool and libltdl support for Mac OS/X. * libltdl will now use cygwins dlopen API instead of always forcing *************** *** 9,14 **** --- 24,36 ---- support. * Bug fixes. + New in 1.4.3: 2002-10-13; CVS version 1.4.2a, Robert Boehne: + * The libltdl subdirectory now bootstraps correctly with Automake 1.5. + * srcdir != builddir builds with Automake 1.5 work correctly. + * Support for mips-compaq-nonstopux. + * New command line argument, --preserve-dup-deps prevents removal of + duplicate dependent libraries. + New in 1.4d: 2002-01-07; CVS version 1.4c, Libtool team: * Help strings display correctly again. * Better error messages when library linking fails. *************** *** 25,30 **** --- 47,68 ---- * Bug fixes to the OpenBSD port. * Bug fixes. + New in 1.4.2: 2001-09-11; CVS version 1.4.1a, Gary V. Vaughan: + * libltdl now builds on solaris again + * diagnose and warn about not-quite-working combinations of gcc and + ld on solaris. + * Improved OpenBSD support. + * Improved cygwin support. + * Bugfixes. + + New in 1.4.1: 2001-09-03; CVS version 1.4.0a, Libtool team: + * Better error messages from libltdl when loading fails. + * Don't leave here-doc files behind. + * Improved support for OpenBSD. + * Libtool will build with autoconf-2.50 and higher. + * Plug memory management bugs in libltdl. + * Prefer shl_load to dlopen for better operation on HP-UX. + New in 1.4b: 2001-07-09; CVS version 1.4a, Libtool team: * Now bootstraps with autoconf-2.50 and automake-1.4-p4. * Always try to build at least a static lib, even if both static and *************** *** 37,45 **** * Internal mutex handling no longer has namespace clashes on NCR MP-RAS. * New pdemo and tagdemo tests. * Bug fixes. - - New in 1.4.1: 2001-??-??; CVS version 1.4.0a, Libtool team: - * Don't leave here-doc files behind. New in 1.4: 2001-04-25; CVS version 1.3e, Libtool team: * Support for aix5*. --- 75,80 ---- Index: libtool/README-alpha diff -c libtool/README-alpha:1.15.2.1 libtool/README-alpha:1.15.2.3 *** libtool/README-alpha:1.15.2.1 Mon Apr 14 22:48:00 2003 --- libtool/README-alpha Wed Nov 12 18:51:59 2003 *************** *** 35,43 **** and check everything in. * Some files in the libtool package are not owned by libtool. These ! files should never be edited here. These files are COPYING, INSTALL, ! config.guess, config.sub, install-sh, mdate-sh, mkinstalldirs, ! texinfo.tex. * Changes other than bug fixes must be mentioned in NEWS --- 35,59 ---- and check everything in. * Some files in the libtool package are not owned by libtool. These ! files should never be edited here. These files are: ! COPYING ! INSTALL ! config/ ! + config.guess ! + config.sub ! + depcomp ! + install-sh ! + mdate-sh ! + missing ! + texinfo.tex ! doc/ ! + fdl.texi ! libltdl/ ! + COPYING.LESSER ! + config.guess ! + config.sub ! + install-sh ! + missing * Changes other than bug fixes must be mentioned in NEWS *************** *** 51,87 **** ================================================================ = Release procedure ! * Fetch new versions of the files that are maintained by the FSF. ! config.guess and config.sub are available via ftp from ! ftp://ftp.gnu.org/gnu/config/, and texinfo.tex is available from ! ftp://ftp.gnu.org/gnu/GNUinfo/. ! * Update NEWS. * Update the version number in configure.ac. ! (The idea is that every other alpha number will be a net release. ! The repository will always have its own "odd" number so we can easily ! distinguish net and repo versions.) ! * Configure, build, and install. ! * Commit ! * Run `make cvs-dist' which will tag the tree with release-maj-min. ! * Run `make cvs-diff' which will create a diff file against the previous ! release tag (set OLDVERSION=min.maj in the environment beforehand ! if necessary). ! ! * Download a copy of the previous release tarball and generate an ! xdelta with: ! xdelta delta libtool-.tar.gz libtool-.tar.gz > \ ! libtool--.tar.xdp.gz' ! * Upload release tarball, diff file and xdelta file ! ftp://fencepost.gnu.org/~ftp/gnu/libtool and send announcement to ! libtool@gnu.org. * If not an alpha, announcement must also go to info-gnu@gnu.org, and an upload request be sent to ftp-upload@gnu.org requesting files be transferred --- 67,122 ---- ================================================================ = Release procedure ! * If you are a libtool maintainer, but have not yet registered your ! gpg public key and (preferred) email address with the FSF, send an ! email, preferably GPG-signed, to that includes ! the following: ! ! (a) name of package(s) that you are the maintainer for, and your ! preferred email address. ! ! (b) an ASCII armored copy of your GnuPG key, as an attachment. ! ("gpg --export -a YOUR_KEY_ID > mykey.asc" should give you ! this.) ! ! When you have received acknowledgement of your message, the proper GPG ! keys will be registered on ftp-upload.gnu.org and only then will you be ! authorized to upload files to the FSF ftp machines. ! * Update NEWS, ChangeLog. * Update the version number in configure.ac. ! See http://www.gnu.org/software/libtool/contribute.html for details of ! the numbering scheme. ! * Run ./bootstrap. ! * Run `make fetch', which will fetch new versions of the files that are ! maintained outside of libtool. ! * Run ./configure and then make. ! * Run `make cvs-dist' which will build a release tarball (with `make ! distcheck'), commit the last NEWS, ChangeLog and configure.ac changes, ! tag the tree with release-$(VERSION), and generate gpg signature files. ! * Run `make cvs-diff' which will create a diff file against the previous ! release tag (set OLDVERSION=min.maj[.mic[alpha]] in the environment ! beforehand if necessary), and generate gpg signature files. ! * Make sure you have a copy of xdelta installed, and a copy of the previous ! release tarball in the build directory, then run `make xdelta', which will ! create an xdelta file between this and the previous release tarballs (set ! OLDVERSION=min.maj[.mic[alpha]] in the environment beforehand if necessary), ! and generate gpg signature files. ! ! * Upload release tarball, diff file and xdelta file, plus their associated ! detached gpg signature files and clear signed directive files to ! ftp-upload.gnu.org. If the upload is destined for ftp.gnu.org, then the ! files should be placed in the /incoming/ftp directory. If the upload is ! an alpha release destined for alpha.gnu.org, then the files should be ! placed in the /incoming/alpha directory.incoming/ftp/gnu/libtool. Then send ! announcement to libtool@gnu.org and autotools-announce@gnu.org. * If not an alpha, announcement must also go to info-gnu@gnu.org, and an upload request be sent to ftp-upload@gnu.org requesting files be transferred *************** *** 97,122 **** ================================================================ = Alpha release note template ! To: libtool@gnu.org The Libtool Team is pleased to announce alpha release @VERSION@ of GNU Libtool. GNU Libtool hides the complexity of using shared libraries behind a consistent, portable interface. GNU Libtool ships with GNU libltdl, ! which hides the comlexity of loading dynamic runtime libraries (modules) behind a consistent, portable interface. ! This release has @SUMMARY_OF_IMPROVEMENTS_SINCE_LAST_RELEASE_ON_THIS_BRANCH@. ! New in @VERSION@: @RELEASE_DATE@ ! @EXCERPT_FROM_NEWS_FILE@ ! libtool-@VERSION@ is available now from ! ftp://alpha.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz, along with ! diffs and xdeltas against libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@ ! that are also available from ftp://alpha.gnu.org/gnu/libtool. This release was bootstrapped with @BOOTSTRAP_TOOLS_WITH_VERSIONS@, but is useable with @COMPATIBLE_AUTOTOOL_VERSIONS@ in your own --- 132,176 ---- ================================================================ = Alpha release note template ! To: libtool@gnu.org, autotools-announce@gnu.org The Libtool Team is pleased to announce alpha release @VERSION@ of GNU Libtool. GNU Libtool hides the complexity of using shared libraries behind a consistent, portable interface. GNU Libtool ships with GNU libltdl, ! which hides the complexity of loading dynamic runtime libraries (modules) behind a consistent, portable interface. ! Here are the compressed sources: ! ftp://alpha.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz ! ftp://alpha.gnu.org/gnu/libtool/libtool-@VERSION@.tar.bz2 ! Here are the xdeltas and diffs against libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@: ! ftp://alpha.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz ! ftp://alpha.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta ! ! Here are the gpg detached signatures: ! ! ftp://alpha.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz.sig ! ftp://alpha.gnu.org/gnu/libtool/libtool-@VERSION@.tar.bz2.sig ! ftp://alpha.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz.sig ! ftp://alpha.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta.sig ! ! Here are the MD5 and SHA1 checksums: ! ! @MD5SUM@ libtool-@VERSION@.tar.gz ! @MD5SUM@ libtool-@VERSION@.tar.bz2 ! @MD5SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz ! @MD5SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta ! @SHA1SUM@ libtool-@VERSION@.tar.gz ! @SHA1SUM@ libtool-@VERSION@.tar.bz2 ! @SHA1SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz ! @SHA1SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta ! ! This release has @SUMMARY_OF_IMPROVEMENTS_SINCE_LAST_RELEASE_ON_THIS_BRANCH@. This release was bootstrapped with @BOOTSTRAP_TOOLS_WITH_VERSIONS@, but is useable with @COMPATIBLE_AUTOTOOL_VERSIONS@ in your own *************** *** 135,147 **** of Automake and Autoconf installed to bootstrap the checked out sources yourself. Please report bugs to . ================================================================ = Full release note template To: info-gnu@gnu.org ! Cc: libtool@gnu.org, autoconf@gnu.org, automake@gnu.org The Libtool Team is pleased to announce the release of GNU Libtool @VERSION@. --- 189,205 ---- of Automake and Autoconf installed to bootstrap the checked out sources yourself. + New in @VERSION@: @RELEASE_DATE@ + + @EXCERPT_FROM_NEWS_FILE@ + Please report bugs to . ================================================================ = Full release note template To: info-gnu@gnu.org ! Cc: libtool@gnu.org, autotools-announce@gnu.org The Libtool Team is pleased to announce the release of GNU Libtool @VERSION@. *************** *** 157,169 **** @EXCERPT_FROM_NEWS_FILE@ ! libtool-@VERSION@ is available now from ! ftp://ftp.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz, along with diffs and xdeltas against libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@ ! that are also available from ftp://ftp.gnu.org/gnu/libtool. Please use a mirror to reduce stress on the main gnu machine: http://www.gnu.org/order/ftp.html This release was bootstrapped with @BOOTSTRAP_TOOLS_WITH_VERSIONS@, but is useable with @COMPATIBLE_AUTOTOOL_VERSIONS@ in your own --- 215,254 ---- @EXCERPT_FROM_NEWS_FILE@ ! libtool-@VERSION@ is available now from ftp.gnu.org, along with diffs and xdeltas against libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@ ! that are also available from ftp.gnu.org. Please use a mirror to reduce stress on the main gnu machine: http://www.gnu.org/order/ftp.html + + Here are the compressed sources: + + ftp://ftp.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz + ftp://ftp.gnu.org/gnu/libtool/libtool-@VERSION@.tar.bz2 + + Here are the xdeltas and diffs against libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@: + + ftp://ftp.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz + ftp://ftp.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta + + Here are the gpg detached signatures: + + ftp://ftp.gnu.org/gnu/libtool/libtool-@VERSION@.tar.gz.sig + ftp://ftp.gnu.org/gnu/libtool/libtool-@VERSION@.tar.bz2.sig + ftp://ftp.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz.sig + ftp://ftp.gnu.org/gnu/libtool/libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta.sig + + Here are the MD5 and SHA1 checksums: + + @MD5SUM@ libtool-@VERSION@.tar.gz + @MD5SUM@ libtool-@VERSION@.tar.bz2 + @MD5SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz + @MD5SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta + @SHA1SUM@ libtool-@VERSION@.tar.gz + @SHA1SUM@ libtool-@VERSION@.tar.bz2 + @SHA1SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.diff.gz + @SHA1SUM@ libtool-@PREV_RELEASE_VERSION_ON_THIS_BRANCH@-@VERSION@.xdelta This release was bootstrapped with @BOOTSTRAP_TOOLS_WITH_VERSIONS@, but is useable with @COMPATIBLE_AUTOTOOL_VERSIONS@ in your own Index: libtool/bootstrap diff -c libtool/bootstrap:1.25 libtool/bootstrap:1.25.2.1 *** libtool/bootstrap:1.25 Tue Mar 25 23:53:38 2003 --- libtool/bootstrap Thu Jul 31 20:46:40 2003 *************** *** 15,21 **** touch libtoolize (cd libltdl && touch ltmain.sh) ! for sub in . libltdl cdemo demo depdemo mdemo pdemo tagdemo f77demo; do case $sub in .) top_srcdir=. --- 15,21 ---- touch libtoolize (cd libltdl && touch ltmain.sh) ! for sub in . libltdl cdemo demo depdemo mdemo mdemo2 pdemo tagdemo f77demo; do case $sub in .) top_srcdir=. Index: libtool/config.guess diff -c libtool/config.guess:1.11.2.1 libtool/config.guess:1.11.2.4 *** libtool/config.guess:1.11.2.1 Mon Apr 14 22:48:00 2003 --- libtool/config.guess Sun Jan 25 12:25:08 2004 *************** *** 3,9 **** # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. ! timestamp='2003-02-22' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by --- 3,9 ---- # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. ! timestamp='2004-01-24' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by *************** *** 106,111 **** --- 106,112 ---- : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; *************** *** 220,225 **** --- 221,229 ---- mvmeppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; + pegasos:OpenBSD:*:*) + echo powerpc-unknown-openbsd${UNAME_RELEASE} + exit 0 ;; pmax:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; *************** *** 282,287 **** --- 286,294 ---- # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` exit 0 ;; + Alpha*:OpenVMS:*:*) + echo alpha-hp-vms + exit 0 ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead *************** *** 303,308 **** --- 310,318 ---- *:OS/390:*:*) echo i370-ibm-openedition exit 0 ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit 0 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit 0;; *************** *** 320,325 **** --- 330,338 ---- NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit 0 ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit 0 ;; DRS?6000:UNIX_SV:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7 && exit 0 ;; *************** *** 392,397 **** --- 405,413 ---- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit 0 ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit 0 ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit 0 ;; *************** *** 727,733 **** echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; *:UNICOS/mp:*:*) ! echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` --- 743,749 ---- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; *:UNICOS/mp:*:*) ! echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` *************** *** 735,740 **** --- 751,761 ---- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit 0 ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; *************** *** 756,762 **** #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` ! echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} exit 0 ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin --- 777,786 ---- #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` ! # GNU/KFreeBSD systems have a "k" prefix to indicate we are using ! # FreeBSD's kernel, but not the complete OS. ! case ${LIBC} in gnu) kernel_only='k' ;; esac ! echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} exit 0 ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin *************** *** 767,774 **** i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit 0 ;; ! x86:Interix*:3*) ! echo i586-pc-interix3 exit 0 ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks --- 791,798 ---- i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit 0 ;; ! x86:Interix*:[34]*) ! echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' exit 0 ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks *************** *** 789,802 **** --- 813,834 ---- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; *:GNU:*:*) + # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit 0 ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + exit 0 ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit 0 ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; + cris:Linux:*:*) + echo cris-axis-linux-gnu + exit 0 ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; *************** *** 875,880 **** --- 907,915 ---- s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit 0 ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit 0 ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; *************** *** 932,937 **** --- 967,975 ---- LIBC=gnuaout #endif #endif + #ifdef __dietlibc__ + LIBC=dietlibc + #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 *************** *** 962,967 **** --- 1000,1008 ---- i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit 0 ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit 0 ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit 0 ;; *************** *** 1033,1039 **** exit 0 ;; M68*:*:R3V[567]*:*) test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; ! 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` --- 1074,1080 ---- exit 0 ;; M68*:*:R3V[567]*:*) test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; ! 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` *************** *** 1148,1154 **** *:QNX:*:4*) echo i386-pc-qnx exit 0 ;; ! NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit 0 ;; *:NonStop-UX:*:*) --- 1189,1195 ---- *:QNX:*:4*) echo i386-pc-qnx exit 0 ;; ! NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit 0 ;; *:NonStop-UX:*:*) *************** *** 1188,1193 **** --- 1229,1240 ---- exit 0 ;; *:ITS:*:*) echo pdp10-unknown-its + exit 0 ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit 0 ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit 0 ;; esac Index: libtool/config.sub diff -c libtool/config.sub:1.10.2.1 libtool/config.sub:1.10.2.4 *** libtool/config.sub:1.10.2.1 Mon Apr 14 22:48:00 2003 --- libtool/config.sub Sun Jan 25 12:25:09 2004 *************** *** 3,9 **** # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. ! timestamp='2003-02-22' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software --- 3,9 ---- # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. ! timestamp='2004-01-05' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software *************** *** 118,124 **** # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in ! nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; --- 118,125 ---- # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in ! nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ ! kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *************** *** 228,240 **** | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ ! | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ ! | ip2k \ | m32r | m68000 | m68k | m88k | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ --- 229,242 ---- | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ ! | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ ! | ip2k | iq2000 \ | m32r | m68000 | m68k | m88k | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ *************** *** 247,252 **** --- 249,255 ---- | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ *************** *** 261,267 **** | sh64 | sh64le \ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ | strongarm \ ! | tahoe | thumb | tic80 | tron \ | v850 | v850e \ | we32k \ | x86 | xscale | xstormy16 | xtensa \ --- 264,270 ---- | sh64 | sh64le \ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ | strongarm \ ! | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ | x86 | xscale | xstormy16 | xtensa \ *************** *** 304,310 **** | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ ! | ip2k-* \ | m32r-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | mcore-* \ --- 307,313 ---- | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ ! | ip2k-* | iq2000-* \ | m32r-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | mcore-* \ *************** *** 319,324 **** --- 322,328 ---- | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ *************** *** 373,378 **** --- 377,388 ---- basic_machine=a29k-none os=-bsd ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; amdahl) basic_machine=580-amdahl os=-sysv *************** *** 737,742 **** --- 747,756 ---- basic_machine=or32-unknown os=-coff ;; + os400) + basic_machine=powerpc-ibm + os=-os400 + ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose *************** *** 768,785 **** pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; ! pentiumii | pentium2) basic_machine=i686-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ! pentiumii-* | pentium2-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; --- 782,805 ---- pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; ! pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; + pentium4) + basic_machine=i786-pc + ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ! pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; + pentium4-*) + basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; pn) basic_machine=pn-gould ;; *************** *** 838,843 **** --- 858,867 ---- sb1el) basic_machine=mipsisa64sb1el-unknown ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; sequent) basic_machine=i386-sequent ;; *************** *** 845,850 **** --- 869,877 ---- basic_machine=sh-hitachi os=-hms ;; + sh64) + basic_machine=sh64-unknown + ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks *************** *** 919,928 **** basic_machine=t90-cray os=-unicos ;; - tic4x | c4x*) - basic_machine=tic4x-unknown - os=-coff - ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff --- 946,951 ---- *************** *** 948,953 **** --- 971,980 ---- tower | tower-32) basic_machine=m68k-ncr ;; + tpf) + basic_machine=s390x-ibm + os=-tpf + ;; udi29k) basic_machine=a29k-amd os=-udi *************** *** 1116,1134 **** | -aos* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ ! | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ ! | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ ! | -powermax* | -dnix*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) --- 1143,1161 ---- | -aos* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ ! | -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \ | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ ! | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ ! | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) *************** *** 1152,1157 **** --- 1179,1187 ---- -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; + -linux-dietlibc) + os=-linux-dietlibc + ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; *************** *** 1164,1169 **** --- 1194,1202 ---- -opened*) os=-openedition ;; + -os400*) + os=-os400 + ;; -wince*) os=-wince ;; *************** *** 1185,1190 **** --- 1218,1226 ---- -atheos*) os=-atheos ;; + -syllable*) + os=-syllable + ;; -386bsd) os=-bsd ;; *************** *** 1207,1212 **** --- 1243,1251 ---- -sinix*) os=-sysv4 ;; + -tpf*) + os=-tpf + ;; -triton*) os=-sysv3 ;; *************** *** 1274,1279 **** --- 1313,1321 ---- arm*-semi) os=-aout ;; + c4x-* | tic4x-*) + os=-coff + ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 *************** *** 1452,1459 **** --- 1494,1507 ---- -mvs* | -opened*) vendor=ibm ;; + -os400*) + vendor=ibm + ;; -ptx*) vendor=sequent + ;; + -tpf*) + vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs Index: libtool/configure.ac diff -c libtool/configure.ac:1.14.2.1 libtool/configure.ac:1.14.2.5 *** libtool/configure.ac:1.14.2.1 Mon Apr 14 22:48:00 2003 --- libtool/configure.ac Sun Jan 25 12:25:09 2004 *************** *** 25,31 **** ## ------------------------ ## ## Autoconf initialisation. ## ## ------------------------ ## ! AC_INIT([libtool], [1.5], [bug-libtool@gnu.org]) AC_CONFIG_SRCDIR([ltmain.in]) --- 25,31 ---- ## ------------------------ ## ## Autoconf initialisation. ## ## ------------------------ ## ! AC_INIT([libtool], [1.5.2], [bug-libtool@gnu.org]) AC_CONFIG_SRCDIR([ltmain.in]) *************** *** 74,80 **** # all subdirectories that are configured on demand, but that must be # included in the distribution ! CONF_SUBDIRS="cdemo pdemo demo depdemo mdemo tagdemo f77demo" AC_SUBST([CONF_SUBDIRS]) ACINCLUDE_M4_LIST="${srcdir}/acinclude.m4" --- 74,80 ---- # all subdirectories that are configured on demand, but that must be # included in the distribution ! CONF_SUBDIRS="cdemo pdemo demo depdemo mdemo mdemo2 tagdemo f77demo" AC_SUBST([CONF_SUBDIRS]) ACINCLUDE_M4_LIST="${srcdir}/acinclude.m4" Index: libtool/libtool.m4 diff -c libtool/libtool.m4:1.314 libtool/libtool.m4:1.314.2.25 *** libtool/libtool.m4:1.314 Sat Apr 5 19:32:58 2003 --- libtool/libtool.m4 Fri Jan 23 06:06:50 2004 *************** *** 500,506 **** x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ! ppc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) --- 500,506 ---- x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ! ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) *************** *** 564,570 **** # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], ! [AC_CACHE_CHECK([$1], [$2], [$2=no ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) printf "$lt_simple_compile_test_code" > conftest.$ac_ext --- 564,571 ---- # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], ! [AC_REQUIRE([LT_AC_PROG_SED]) ! AC_CACHE_CHECK([$1], [$2], [$2=no ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) printf "$lt_simple_compile_test_code" > conftest.$ac_ext *************** *** 669,674 **** --- 670,681 ---- lt_cv_sys_max_cmd_len=8192; ;; + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + *) # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but *************** *** 832,838 **** lt_cv_dlopen_self=yes ]) ;; ! *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], --- 839,845 ---- lt_cv_dlopen_self=yes ]) ;; ! *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], *************** *** 921,933 **** mkdir out printf "$lt_simple_compile_test_code" > conftest.$ac_ext - # According to Tom Tromey, Ian Lance Taylor reported there are C compilers - # that will create temporary files in the current directory regardless of - # the output directory. Thus, making CWD read-only will cause this test - # to fail, enabling locking or at least warning the user not to do parallel - # builds. - chmod -w . - lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. --- 928,933 ---- *************** *** 951,958 **** fi fi chmod u+w . ! $rm conftest* out/* ! rmdir out cd .. rmdir conftest $rm conftest* --- 951,961 ---- fi fi chmod u+w . ! $rm conftest* ! # SGI C++ compiler will create directory out/ii_files/ for ! # template instantiation ! test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files ! $rm out/* && rmdir out cd .. rmdir conftest $rm conftest* *************** *** 1069,1075 **** *) AC_MSG_RESULT([no]) ;; ! esac fi ])# AC_LIBTOOL_SYS_LIB_STRIP --- 1072,1078 ---- *) AC_MSG_RESULT([no]) ;; ! esac fi ])# AC_LIBTOOL_SYS_LIB_STRIP *************** *** 1170,1176 **** amigaos*) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. ! finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' ;; beos*) --- 1173,1179 ---- amigaos*) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. ! finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; beos*) *************** *** 1217,1223 **** cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ! sys_lib_search_path_spec="/lib /lib/w32api /usr/lib /usr/local/lib" ;; mingw*) # MinGW DLLs use traditional 'lib' prefix --- 1220,1226 ---- cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ! sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" ;; mingw*) # MinGW DLLs use traditional 'lib' prefix *************** *** 1256,1272 **** version_type=darwin need_lib_prefix=no need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext='$(test .$module = .yes && echo .so || echo .dylib)' # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. ! if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then ! sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` fi sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; --- 1259,1274 ---- version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext='$(test .$module = .yes && echo .so || echo .dylib)' # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. ! if test "$GCC" = yes; then ! sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` ! else ! sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' fi sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; *************** *** 1284,1289 **** --- 1286,1303 ---- dynamic_linker=no ;; + kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + freebsd*) objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` version_type=freebsd-$objformat *************** *** 1427,1432 **** --- 1441,1452 ---- # before this can be enabled. hardcode_into_libs=yes + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + ld_extra=`$SED -e 's/[:,\t]/ /g;s/=[^=]*$//;s/=[^= ]* / /g' /etc/ld.so.conf` + sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra" + fi + # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, *************** *** 1436,1441 **** --- 1456,1473 ---- dynamic_linker='GNU/Linux ld.so' ;; + knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + netbsd*) version_type=sunos need_lib_prefix=no *************** *** 1445,1451 **** finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else ! library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi --- 1477,1483 ---- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else ! library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi *************** *** 1461,1467 **** shlibpath_overrides_runpath=yes ;; ! nto-qnx) version_type=linux need_lib_prefix=no need_version=no --- 1493,1499 ---- shlibpath_overrides_runpath=yes ;; ! nto-qnx*) version_type=linux need_lib_prefix=no need_version=no *************** *** 1474,1480 **** openbsd*) version_type=sunos need_lib_prefix=no ! need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH --- 1506,1512 ---- openbsd*) version_type=sunos need_lib_prefix=no ! need_version=yes library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH *************** *** 1930,1936 **** # AC_PROG_LD # ---------- ! # find the path to the GNU or non-GNU linker AC_DEFUN([AC_PROG_LD], [AC_ARG_WITH([gnu-ld], [AC_HELP_STRING([--with-gnu-ld], --- 1962,1968 ---- # AC_PROG_LD # ---------- ! # find the pathname to the GNU or non-GNU linker AC_DEFUN([AC_PROG_LD], [AC_ARG_WITH([gnu-ld], [AC_HELP_STRING([--with-gnu-ld], *************** *** 1956,1962 **** # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' ! # Canonicalize the path of ld ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` --- 1988,1994 ---- # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' ! # Canonicalize the pathname of ld ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` *************** *** 2019,2025 **** [AC_REQUIRE([AC_PROG_EGREP])dnl AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, [# I'd rather use --version here, but apparently some GNU ld's only accept -v. ! case `"$LD" -v 2>&1 &1 /dev/null; then case $host_cpu in i*86 ) --- 2116,2139 ---- lt_cv_file_magic_test_file=/shlib/libc.so ;; ! cygwin*) # win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='win32_libid' ;; + mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # win32_libid shell function, so use a weaker test based on 'objdump'. + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; ! freebsd* | kfreebsd*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then case $host_cpu in i*86 ) *************** *** 2144,2179 **** ;; irix5* | irix6* | nonstopux*) ! case $host_os in ! irix5* | nonstopux*) ! # this will be overridden with pass_all, but let us keep it just in case ! lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" ! ;; ! *) ! case $LD in ! *-32|*"-32 ") libmagic=32-bit;; ! *-n32|*"-n32 ") libmagic=N32;; ! *-64|*"-64 ") libmagic=64-bit;; ! *) libmagic=never-match;; ! esac ! # this will be overridden with pass_all, but let us keep it just in case ! lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" ! ;; esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux*) case $host_cpu in ! alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | powerpc* | sparc* | s390* | sh*) lt_cv_deplibs_check_method=pass_all ;; *) # glibc up to 2.1.1 does not perform some relocations on ARM lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; esac lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` ;; netbsd*) --- 2172,2198 ---- ;; irix5* | irix6* | nonstopux*) ! case $LD in ! *-32|*"-32 ") libmagic=32-bit;; ! *-n32|*"-n32 ") libmagic=N32;; ! *-64|*"-64 ") libmagic=64-bit;; ! *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux*) case $host_cpu in ! alpha*|hppa*|i*86|ia64*|m68*|mips*|powerpc*|sparc*|s390*|sh*) lt_cv_deplibs_check_method=pass_all ;; *) # glibc up to 2.1.1 does not perform some relocations on ARM + # this will be overridden with pass_all, but let us keep it just in case lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; esac lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + lt_cv_deplibs_check_method=pass_all ;; netbsd*) *************** *** 2190,2196 **** lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; ! nto-qnx) lt_cv_deplibs_check_method=unknown ;; --- 2209,2215 ---- lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; ! nto-qnx*) lt_cv_deplibs_check_method=unknown ;; *************** *** 2205,2213 **** ;; osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so lt_cv_deplibs_check_method=pass_all ;; --- 2224,2229 ---- *************** *** 2217,2223 **** solaris*) lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so ;; sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) --- 2233,2238 ---- *************** *** 2257,2263 **** # AC_PROG_NM # ---------- ! # find the path to a BSD-compatible name lister AC_DEFUN([AC_PROG_NM], [AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, [if test -n "$NM"; then --- 2272,2278 ---- # AC_PROG_NM # ---------- ! # find the pathname to a BSD-compatible name lister AC_DEFUN([AC_PROG_NM], [AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, [if test -n "$NM"; then *************** *** 2395,2401 **** AC_DEFUN([_LT_AC_LANG_CXX], [AC_REQUIRE([AC_PROG_CXX]) AC_REQUIRE([AC_PROG_CXXCPP]) ! _LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,CXX" | sed 's/^,//'`]) ])# _LT_AC_LANG_CXX --- 2410,2416 ---- AC_DEFUN([_LT_AC_LANG_CXX], [AC_REQUIRE([AC_PROG_CXX]) AC_REQUIRE([AC_PROG_CXXCPP]) ! _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) ])# _LT_AC_LANG_CXX *************** *** 2411,2417 **** # --------------- AC_DEFUN([_LT_AC_LANG_F77], [AC_REQUIRE([AC_PROG_F77]) ! _LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,F77" | sed 's/^,//'`]) ])# _LT_AC_LANG_F77 --- 2426,2432 ---- # --------------- AC_DEFUN([_LT_AC_LANG_F77], [AC_REQUIRE([AC_PROG_F77]) ! _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) ])# _LT_AC_LANG_F77 *************** *** 2432,2438 **** [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) ! _LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,GCJ" | sed 's/^,//'`]) ])# _LT_AC_LANG_GCJ --- 2447,2453 ---- [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) ! _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) ])# _LT_AC_LANG_GCJ *************** *** 2441,2447 **** # enable support for Windows resource files AC_DEFUN([AC_LIBTOOL_RC], [AC_REQUIRE([LT_AC_PROG_RC]) ! _LT_AC_SHELL_INIT([tagnames=`echo "$tagnames,RC" | sed 's/^,//'`]) ])# AC_LIBTOOL_RC --- 2456,2462 ---- # enable support for Windows resource files AC_DEFUN([AC_LIBTOOL_RC], [AC_REQUIRE([LT_AC_PROG_RC]) ! _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) ])# AC_LIBTOOL_RC *************** *** 2483,2489 **** fi if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) ! if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then : else AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no --- 2498,2504 ---- fi if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) ! if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[ ]]" >/dev/null; then : else AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no *************** *** 2510,2518 **** AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP - AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_DLOPEN_SELF($1) # Report which librarie types wil actually be built --- 2525,2533 ---- AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) + AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP AC_LIBTOOL_DLOPEN_SELF($1) # Report which librarie types wil actually be built *************** *** 2539,2571 **** fi ;; darwin* | rhapsody*) ! if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ;; esac ! # FIXME: Relying on posixy $() will cause problems for ! # cross-compilation, but unfortunately the echo tests do not ! # yet detect zsh echo's removal of \ escapes. Also zsh mangles ! # `"' quotes if we put them in here... so don't! ! output_verbose_link_cmd='echo' _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring' ! _LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! fi ! ;; esac AC_MSG_RESULT([$enable_shared]) --- 2554,2595 ---- fi ;; darwin* | rhapsody*) ! if test "$GCC" = yes; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! else ! case ${MACOSX_DEPLOYMENT_TARGET} in ! 10.[[012]]) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! ;; ! 10.*) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' ! ;; ! esac ! fi ;; esac ! output_verbose_link_cmd='echo' _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring' ! _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! else ! _LT_AC_TAGVAR(ld_shlibs, $1)=no ! fi ! ;; esac AC_MSG_RESULT([$enable_shared]) *************** *** 2700,2706 **** # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists --- 2724,2730 ---- # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists *************** *** 2867,2907 **** ;; darwin* | rhapsody*) ! if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ;; esac ! lt_int_apple_cc_single_mod=no ! output_verbose_link_cmd='echo' ! if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then ! lt_int_apple_cc_single_mod=yes ! fi ! if test "X$lt_int_apple_cc_single_mod" = Xyes ; then ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' ! else ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' ! fi ! _LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's ! if test "X$lt_int_apple_cc_single_mod" = Xyes ; then ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! else ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! fi ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! fi ;; dgux*) --- 2891,2944 ---- ;; darwin* | rhapsody*) ! if test "$GXX" = yes; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! else ! case ${MACOSX_DEPLOYMENT_TARGET} in ! 10.[[012]]) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! ;; ! 10.*) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' ! ;; ! esac ! fi ;; esac ! lt_int_apple_cc_single_mod=no ! output_verbose_link_cmd='echo' ! if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then ! lt_int_apple_cc_single_mod=yes ! fi ! if test "X$lt_int_apple_cc_single_mod" = Xyes ; then ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' ! else ! _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' ! fi ! _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's ! if test "X$lt_int_apple_cc_single_mod" = Xyes ; then ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! else ! _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' ! fi ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! else ! _LT_AC_TAGVAR(ld_shlibs, $1)=no ! fi ;; dgux*) *************** *** 2928,2934 **** freebsd-elf*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; ! freebsd*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_AC_TAGVAR(ld_shlibs, $1)=yes --- 2965,2971 ---- freebsd-elf*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; ! freebsd* | kfreebsd*-gnu) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_AC_TAGVAR(ld_shlibs, $1)=yes *************** *** 3442,3450 **** AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP - AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_DLOPEN_SELF($1) AC_LIBTOOL_CONFIG($1) --- 3479,3487 ---- AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) + AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP AC_LIBTOOL_DLOPEN_SELF($1) AC_LIBTOOL_CONFIG($1) *************** *** 3686,3694 **** AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP ! AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_CONFIG($1) --- 3723,3732 ---- AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) + AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP ! AC_LIBTOOL_CONFIG($1) *************** *** 3740,3748 **** AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP - AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_DLOPEN_SELF($1) AC_LIBTOOL_CONFIG($1) --- 3778,3786 ---- AC_LIBTOOL_PROG_CC_C_O($1) AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) AC_LIBTOOL_PROG_LD_SHLIBS($1) + AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) AC_LIBTOOL_SYS_LIB_STRIP AC_LIBTOOL_DLOPEN_SELF($1) AC_LIBTOOL_CONFIG($1) *************** *** 3807,3817 **** # without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST ! fi # Now quote all the things that may contain metacharacters while being # careful not to overquote the AC_SUBSTed values. We take copies of the # variables and quote the copies for generation of the libtool script. ! for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \ libname_spec library_names_spec soname_spec extract_expsyms_cmds \ old_striplib striplib file_magic_cmd finish_cmds finish_eval \ deplibs_check_method reload_flag reload_cmds need_locks \ --- 3845,3856 ---- # without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST ! fi # Now quote all the things that may contain metacharacters while being # careful not to overquote the AC_SUBSTed values. We take copies of the # variables and quote the copies for generation of the libtool script. ! for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ ! SED SHELL STRIP \ libname_spec library_names_spec soname_spec extract_expsyms_cmds \ old_striplib striplib file_magic_cmd finish_cmds finish_eval \ deplibs_check_method reload_flag reload_cmds need_locks \ *************** *** 3861,3867 **** _LT_AC_TAGVAR(archive_cmds, $1) | \ _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ _LT_AC_TAGVAR(module_cmds, $1) | \ ! _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ extract_expsyms_cmds | reload_cmds | finish_cmds | \ --- 3900,3906 ---- _LT_AC_TAGVAR(archive_cmds, $1) | \ _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ _LT_AC_TAGVAR(module_cmds, $1) | \ ! _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ extract_expsyms_cmds | reload_cmds | finish_cmds | \ *************** *** 3992,3998 **** NM=$lt_NM # A symbol stripping program ! STRIP=$STRIP # Used to examine libraries when file_magic_cmd begins "file" MAGIC_CMD=$MAGIC_CMD --- 4031,4037 ---- NM=$lt_NM # A symbol stripping program ! STRIP=$lt_STRIP # Used to examine libraries when file_magic_cmd begins "file" MAGIC_CMD=$MAGIC_CMD *************** *** 4267,4273 **** # If there is no Makefile yet, we rely on a make rule to execute # `config.status --recheck' to rerun these tests and create the # libtool script then. ! test -f Makefile && make "$ltmain" fi ])# AC_LIBTOOL_CONFIG --- 4306,4315 ---- # If there is no Makefile yet, we rely on a make rule to execute # `config.status --recheck' to rerun these tests and create the # libtool script then. ! ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` ! if test -f "$ltmain_in"; then ! test -f Makefile && make "$ltmain" ! fi fi ])# AC_LIBTOOL_CONFIG *************** *** 4340,4346 **** symcode='[[BCDEGQRST]]' ;; solaris* | sysv5*) ! symcode='[[BDT]]' ;; sysv4) symcode='[[DFNSTU]]' --- 4382,4388 ---- symcode='[[BCDEGQRST]]' ;; solaris* | sysv5*) ! symcode='[[BDRT]]' ;; sysv4) symcode='[[DFNSTU]]' *************** *** 4358,4364 **** # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) ! symcode='[[ABCDGISTW]]' ;; esac # Try without a prefix undercore, then with it. --- 4400,4406 ---- # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) ! symcode='[[ABCDGIRSTW]]' ;; esac # Try without a prefix undercore, then with it. *************** *** 4573,4579 **** ;; esac ;; ! freebsd*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) --- 4615,4621 ---- ;; esac ;; ! freebsd* | kfreebsd*-gnu) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) *************** *** 4624,4630 **** _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' ! ;; cxx) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha --- 4666,4672 ---- _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' ! ;; cxx) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha *************** *** 4849,4860 **** linux*) case $CC in ! icc|ecc) _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; ! ccc) _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' --- 4891,4902 ---- linux*) case $CC in ! icc* | ecc*) _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; ! ccc*) _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' *************** *** 4984,4990 **** _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown _LT_AC_TAGVAR(hardcode_automatic, $1)=no _LT_AC_TAGVAR(module_cmds, $1)= ! _LT_AC_TAGVAR(module_expsym_cmds, $1)= _LT_AC_TAGVAR(always_export_symbols, $1)=no _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' # include_expsyms should be a list of space-separated symbols to be *always* --- 5026,5032 ---- _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown _LT_AC_TAGVAR(hardcode_automatic, $1)=no _LT_AC_TAGVAR(module_cmds, $1)= ! _LT_AC_TAGVAR(module_expsym_cmds, $1)= _LT_AC_TAGVAR(always_export_symbols, $1)=no _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' # include_expsyms should be a list of space-separated symbols to be *always* *************** *** 5127,5132 **** --- 5169,5199 ---- _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no ;; + linux*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_cmds, $1)="$tmp_archive_cmds" + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ [01].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + if test $supports_anon_versioning = yes; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + $echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + else + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="$tmp_archive_cmds" + fi + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + *) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' *************** *** 5315,5334 **** ;; darwin* | rhapsody*) ! if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! test -z ${LD_TWOLEVEL_NAMESPACE} && _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ;; esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! lt_int_apple_cc_single_mod=no output_verbose_link_cmd='echo' if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then --- 5382,5408 ---- ;; darwin* | rhapsody*) ! if test "$GXX" = yes ; then _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no case "$host_os" in rhapsody* | darwin1.[[012]]) _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' ;; *) # Darwin 1.3 on ! if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! else ! case ${MACOSX_DEPLOYMENT_TARGET} in ! 10.[[012]]) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' ! ;; ! 10.*) ! _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' ! ;; ! esac ! fi ;; esac lt_int_apple_cc_single_mod=no output_verbose_link_cmd='echo' if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then *************** *** 5339,5358 **** else _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' fi ! _LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's if test "X$lt_int_apple_cc_single_mod" = Xyes ; then _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' else _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' fi ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! fi ;; dgux*) --- 5413,5434 ---- else _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' fi ! _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's if test "X$lt_int_apple_cc_single_mod" = Xyes ; then _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' else _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' fi ! _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' _LT_AC_TAGVAR(hardcode_direct, $1)=no _LT_AC_TAGVAR(hardcode_automatic, $1)=yes _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ! else ! _LT_AC_TAGVAR(ld_shlibs, $1)=no ! fi ;; dgux*) *************** *** 5385,5391 **** ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. ! freebsd*) _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_AC_TAGVAR(hardcode_direct, $1)=yes --- 5461,5467 ---- ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. ! freebsd* | kfreebsd*-gnu) _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_AC_TAGVAR(hardcode_direct, $1)=yes *************** *** 5702,5708 **** AC_MSG_CHECKING([whether -lc should be explicitly linked in]) $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext ! if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest --- 5778,5784 ---- AC_MSG_CHECKING([whether -lc should be explicitly linked in]) $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext ! if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest Index: libtool/libtoolize.in diff -c libtool/libtoolize.in:1.21 libtool/libtoolize.in:1.21.2.1 *** libtool/libtoolize.in:1.21 Sun Feb 23 16:15:49 2003 --- libtool/libtoolize.in Fri Jan 23 06:06:27 2004 *************** *** 330,335 **** --- 330,336 ---- # Change to the auxiliary directory. if test "$auxdir" != .; then test -z "$automake" && echo "Putting files in AC_CONFIG_AUX_DIR, \`$auxdir'." + test "x$dry_run" = x"yes" && echo "cd $auxdir" cd $auxdir || exit 1 fi Index: libtool/ltdl.m4 diff -c libtool/ltdl.m4:1.47 libtool/ltdl.m4:1.47.2.3 *** libtool/ltdl.m4:1.47 Thu Mar 20 20:24:21 2003 --- libtool/ltdl.m4 Sun Sep 21 12:51:38 2003 *************** *** 142,148 **** # If you are looking for one http://www.opendarwin.org/projects/dlcompat libltdl_cv_sys_dlopen_deplibs=yes ;; ! gnu*) libltdl_cv_sys_dlopen_deplibs=yes ;; hpux10*|hpux11*) --- 142,149 ---- # If you are looking for one http://www.opendarwin.org/projects/dlcompat libltdl_cv_sys_dlopen_deplibs=yes ;; ! gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) ! # GNU and its variants, using gnu ld.so (Glibc) libltdl_cv_sys_dlopen_deplibs=yes ;; hpux10*|hpux11*) *************** *** 156,164 **** irix*) # The case above catches anything before 6.2, and it's known that # at 6.2 and later dlopen does load deplibs. - libltdl_cv_sys_dlopen_deplibs=yes - ;; - linux*) libltdl_cv_sys_dlopen_deplibs=yes ;; netbsd*) --- 157,162 ---- Index: libtool/ltmain.in diff -c libtool/ltmain.in:1.334 libtool/ltmain.in:1.334.2.19 *** libtool/ltmain.in:1.334 Wed Apr 2 16:44:38 2003 --- libtool/ltmain.in Sun Jan 25 00:26:06 2004 *************** *** 70,77 **** Xsed="${SED}"' -e 1s/^X//' sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' # test EBCDIC or ASCII ! case `echo A|od -x` in ! *[Cc]1*) # EBCDIC based system SP2NL="tr '\100' '\n'" NL2SP="tr '\r\n' '\100\100'" ;; --- 70,77 ---- Xsed="${SED}"' -e 1s/^X//' sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' # test EBCDIC or ASCII ! case `echo A|tr A '\301'` in ! A) # EBCDIC based system SP2NL="tr '\100' '\n'" NL2SP="tr '\r\n' '\100\100'" ;; *************** *** 94,100 **** fi # Make sure IFS has a sensible default ! : ${IFS=" "} if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then $echo "$modename: not configured to build any kind of library" 1>&2 --- 94,101 ---- fi # Make sure IFS has a sensible default ! : ${IFS=" ! "} if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then $echo "$modename: not configured to build any kind of library" 1>&2 *************** *** 176,181 **** --- 177,183 ---- ;; tag) tagname="$arg" + preserve_args="${preserve_args}=$arg" # Check whether tagname contains only valid characters case $tagname in *************** *** 238,243 **** --- 240,246 ---- --debug) $echo "$progname: enabling shell trace mode" set -x + preserve_args="$preserve_args $arg" ;; --dry-run | -n) *************** *** 268,273 **** --- 271,277 ---- --quiet | --silent) show=: + preserve_args="$preserve_args $arg" ;; --tag) prevopt="--tag" prev=tag ;; *************** *** 275,280 **** --- 279,285 ---- set tag "$optarg" ${1+"$@"} shift prev=tag + preserve_args="$preserve_args --tag" ;; -dlopen) *************** *** 369,377 **** --- 374,384 ---- # Get the compilation command and the source file. base_compile= srcfile="$nonopt" # always keep a non-empty value in "srcfile" + suppress_opt=yes suppress_output= arg_mode=normal libobj= + later= for arg do *************** *** 400,417 **** continue ;; ! -static) ! build_old_libs=yes continue ;; ! -prefer-pic) ! pic_mode=yes ! continue ! ;; ! ! -prefer-non-pic) ! pic_mode=no continue ;; --- 407,419 ---- continue ;; ! -static | -prefer-pic | -prefer-non-pic) ! later="$later $arg" continue ;; ! -no-suppress) ! suppress_opt=no continue ;; *************** *** 556,561 **** --- 558,582 ---- esac fi + for arg in $later; do + case $arg in + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$obj"; then *************** *** 722,728 **** EOF # Allow error messages only from the first compilation. ! suppress_output=' >/dev/null 2>&1' else # No PIC object so indicate it doesn't exist in the libtool # object file. --- 743,751 ---- EOF # Allow error messages only from the first compilation. ! if test "$suppress_opt" = yes; then ! suppress_output=' >/dev/null 2>&1' ! fi else # No PIC object so indicate it doesn't exist in the libtool # object file. *************** *** 835,841 **** ;; esac libtool_args="$nonopt" ! base_compile="$nonopt" compile_command="$nonopt" finalize_command="$nonopt" --- 858,864 ---- ;; esac libtool_args="$nonopt" ! base_compile="$nonopt $@" compile_command="$nonopt" finalize_command="$nonopt" *************** *** 867,872 **** --- 890,896 ---- no_install=no objs= non_pic_objects= + precious_files_regex= prefer_static_libs=no preload=no prev= *************** *** 880,885 **** --- 904,950 ---- vinfo= vinfo_number=no + # Infer tagged configuration to use if any are available and + # if one wasn't chosen via the "--tag" command line option. + # Only attempt this if the compiler in the base link + # command doesn't match the default compiler. + if test -n "$available_tags" && test -z "$tagname"; then + case $base_compile in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then + # Evaluate the configuration. + eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" + case $base_compile in + "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) + # The compiler in $compile_command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + $echo "$modename: unable to infer tagged configuration" + $echo "$modename: specify a tag with \`--tag'" 1>&2 + exit 1 + # else + # $echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi + # We need to know -static, to get the right output filenames. for arg do *************** *** 911,917 **** # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg="$1" - base_compile="$base_compile $arg" shift case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") --- 976,981 ---- *************** *** 990,995 **** --- 1054,1064 ---- prev= continue ;; + precious_regex) + precious_files_regex="$arg" + prev= + continue + ;; release) release="-$arg" prev= *************** *** 1287,1292 **** --- 1356,1366 ---- continue ;; + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) + deplibs="$deplibs $arg" + continue + ;; + -module) module=yes continue *************** *** 1351,1356 **** --- 1425,1435 ---- -o) prev=output ;; + -precious-files-regex) + prev=precious_regex + continue + ;; + -release) prev=release continue *************** *** 1619,1665 **** exit 1 fi - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base link - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case $base_compile in - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) - # The compiler in $compile_command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" - $echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 - # else - # $echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" compile_command="$compile_command $arg" --- 1698,1703 ---- *************** *** 1802,1807 **** --- 1840,1854 ---- lib= found=no case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + fi + continue + ;; -l*) if test "$linkmode" != lib && test "$linkmode" != prog; then $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 *************** *** 1813,1824 **** fi name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do ! # Search the libtool library ! lib="$searchdir/lib${name}.la" ! if test -f "$lib"; then ! found=yes ! break ! fi done if test "$found" != yes; then # deplib doesn't seem to be a libtool library --- 1860,1877 ---- fi name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do ! for search_ext in .la $shrext .so .a; do ! # Search the libtool library ! lib="$searchdir/lib${name}${search_ext}" ! if test -f "$lib"; then ! if test "$search_ext" = ".la"; then ! found=yes ! else ! found=no ! fi ! break 2 ! fi ! done done if test "$found" != yes; then # deplib doesn't seem to be a libtool library *************** *** 2279,2287 **** else $show "extracting exported symbol list from \`$soname'" save_ifs="$IFS"; IFS='~' ! eval cmds=\"$extract_expsyms_cmds\" for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 2332,2341 ---- else $show "extracting exported symbol list from \`$soname'" save_ifs="$IFS"; IFS='~' ! cmds=$extract_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 2292,2300 **** if test -f "$output_objdir/$newlib"; then :; else $show "generating import library for \`$soname'" save_ifs="$IFS"; IFS='~' ! eval cmds=\"$old_archive_from_expsyms_cmds\" for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 2346,2355 ---- if test -f "$output_objdir/$newlib"; then :; else $show "generating import library for \`$soname'" save_ifs="$IFS"; IFS='~' ! cmds=$old_archive_from_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 2352,2358 **** if test -n "$inst_prefix_dir"; then case "$libdir" in [\\/]*) ! add_dir="-L$inst_prefix_dir$libdir $add_dir" ;; esac fi --- 2407,2413 ---- if test -n "$inst_prefix_dir"; then case "$libdir" in [\\/]*) ! add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi *************** *** 2424,2430 **** if test -n "$inst_prefix_dir"; then case "$libdir" in [\\/]*) ! add_dir="-L$inst_prefix_dir$libdir $add_dir" ;; esac fi --- 2479,2485 ---- if test -n "$inst_prefix_dir"; then case "$libdir" in [\\/]*) ! add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi *************** *** 2568,2576 **** if test -f "$path/$depdepl" ; then depdepl="$path/$depdepl" fi ! newlib_search_path="$newlib_search_path $path" ! path="" fi ;; *) path="-L$path" --- 2623,2635 ---- if test -f "$path/$depdepl" ; then depdepl="$path/$depdepl" fi ! # do not add paths which are already there ! case " $newlib_search_path " in ! *" $path "*) ;; ! *) newlib_search_path="$newlib_search_path $path";; ! esac fi + path="" ;; *) path="-L$path" *************** *** 3038,3043 **** --- 3097,3106 ---- *.$objext) ;; $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi removelist="$removelist $p" ;; *) ;; *************** *** 3547,3556 **** $show "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $run $rm $export_symbols ! eval cmds=\"$export_symbols_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" if len=`expr "X$cmd" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then $show "$cmd" --- 3610,3620 ---- $show "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $run $rm $export_symbols ! cmds=$export_symbols_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" if len=`expr "X$cmd" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then $show "$cmd" *************** *** 3667,3685 **** # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then ! eval cmds=\"$module_expsym_cmds\" else ! eval cmds=\"$module_cmds\" fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then ! eval cmds=\"$archive_expsym_cmds\" else ! eval cmds=\"$archive_cmds\" fi fi ! if test "X$skipped_export" != "X:" && len=`expr "X$cmds" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else --- 3731,3753 ---- # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then ! eval test_cmds=\"$module_expsym_cmds\" ! cmds=$module_expsym_cmds else ! eval test_cmds=\"$module_cmds\" ! cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then ! eval test_cmds=\"$archive_expsym_cmds\" ! cmds=$archive_expsym_cmds else ! eval test_cmds=\"$archive_cmds\" ! cmds=$archive_cmds fi fi ! if test "X$skipped_export" != "X:" && len=`expr "X$test_cmds" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else *************** *** 3764,3769 **** --- 3832,3838 ---- save_ifs="$IFS"; IFS='~' for cmd in $concat_cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 3780,3798 **** # value of $libobjs for piecewise linking. # Do each of the archive commands. if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then ! eval cmds=\"$archive_expsym_cmds\" else ! eval cmds=\"$archive_cmds\" fi # Append the command to remove the reloadable object files # to the just-reset $cmds. ! eval cmds=\"\$cmds~$rm $delfiles\" fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 3849,3876 ---- # value of $libobjs for piecewise linking. # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then ! cmds=$archive_expsym_cmds else ! cmds=$archive_cmds ! fi fi # Append the command to remove the reloadable object files # to the just-reset $cmds. ! eval cmds=\"\$cmds~\$rm $delfiles\" fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 3943,3952 **** reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test output="$obj" ! eval cmds=\"$reload_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 4021,4031 ---- reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test output="$obj" ! cmds=$reload_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 3979,3988 **** # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output="$libobj" ! eval cmds=\"$reload_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 4058,4068 ---- # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output="$libobj" ! cmds=$reload_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 4954,4966 **** # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then ! eval cmds=\"$old_archive_from_new_cmds\" else eval cmds=\"$old_archive_cmds\" if len=`expr "X$cmds" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then ! : else # the command line is too long to link in one step, link in parts $echo "using piecewise archive linking..." --- 5034,5046 ---- # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then ! cmds=$old_archive_from_new_cmds else eval cmds=\"$old_archive_cmds\" if len=`expr "X$cmds" : ".*"` && test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then ! cmds=$old_archive_cmds else # the command line is too long to link in one step, link in parts $echo "using piecewise archive linking..." *************** *** 5012,5023 **** if test "X$oldobjs" = "X" ; then eval cmds=\"\$concat_cmds\" else ! eval cmds=\"\$concat_cmds~$old_archive_cmds\" fi fi fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? --- 5092,5104 ---- if test "X$oldobjs" = "X" ; then eval cmds=\"\$concat_cmds\" else ! eval cmds=\"\$concat_cmds~\$old_archive_cmds\" fi fi fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do + eval cmd=\"$cmd\" IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? *************** *** 5049,5057 **** fi done # Quote the link command for shipping. ! relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` ! # Only create the output if not a dry run. if test -z "$run"; then for installed in no yes; do --- 5130,5140 ---- fi done # Quote the link command for shipping. ! relink_command="(cd `pwd`; $SHELL $0 $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` ! if test "$hardcode_automatic" = yes ; then ! relink_command= ! fi # Only create the output if not a dry run. if test -z "$run"; then for installed in no yes; do *************** *** 5099,5104 **** --- 5182,5206 ---- newdlprefiles="$newdlprefiles $libdir/$name" done dlprefiles="$newdlprefiles" + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlfiles="$newdlfiles $abs" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlprefiles="$newdlprefiles $abs" + done + dlprefiles="$newdlprefiles" fi $rm $output # place dlname in correct position for cygwin *************** *** 5414,5423 **** # Do each command in the postinstall commands. lib="$destdir/$realname" ! eval cmds=\"$postinstall_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 5516,5526 ---- # Do each command in the postinstall commands. lib="$destdir/$realname" ! cmds=$postinstall_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 5570,5576 **** tmpdir="/tmp" test -n "$TMPDIR" && tmpdir="$TMPDIR" tmpdir="$tmpdir/libtool-$$" ! if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : else $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 continue --- 5673,5679 ---- tmpdir="/tmp" test -n "$TMPDIR" && tmpdir="$TMPDIR" tmpdir="$tmpdir/libtool-$$" ! if $mkdir "$tmpdir" && chmod 700 "$tmpdir"; then : else $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 continue *************** *** 5630,5645 **** $show "$install_prog $file $oldlib" $run eval "$install_prog \$file \$oldlib" || exit $? ! if test -n "$stripme" && test -n "$striplib"; then $show "$old_striplib $oldlib" $run eval "$old_striplib $oldlib" || exit $? fi # Do each command in the postinstall commands. ! eval cmds=\"$old_postinstall_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || exit $? done --- 5733,5749 ---- $show "$install_prog $file $oldlib" $run eval "$install_prog \$file \$oldlib" || exit $? ! if test -n "$stripme" && test -n "$old_striplib"; then $show "$old_striplib $oldlib" $run eval "$old_striplib $oldlib" || exit $? fi # Do each command in the postinstall commands. ! cmds=$old_postinstall_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done *************** *** 5653,5659 **** if test -n "$current_libdirs"; then # Maybe just do a dry run. test -n "$run" && current_libdirs=" -n$current_libdirs" ! exec_cmd='$SHELL $0 --finish$current_libdirs' else exit 0 fi --- 5757,5763 ---- if test -n "$current_libdirs"; then # Maybe just do a dry run. test -n "$run" && current_libdirs=" -n$current_libdirs" ! exec_cmd='$SHELL $0 $preserve_args --finish$current_libdirs' else exit 0 fi *************** *** 5674,5683 **** for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. ! eval cmds=\"$finish_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" || admincmds="$admincmds $cmd" --- 5778,5788 ---- for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. ! cmds=$finish_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || admincmds="$admincmds $cmd" *************** *** 5951,5960 **** if test "$mode" = uninstall; then if test -n "$library_names"; then # Do each command in the postuninstall commands. ! eval cmds=\"$postuninstall_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" if test "$?" -ne 0 && test "$rmforce" != yes; then --- 6056,6066 ---- if test "$mode" = uninstall; then if test -n "$library_names"; then # Do each command in the postuninstall commands. ! cmds=$postuninstall_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" if test "$?" -ne 0 && test "$rmforce" != yes; then *************** *** 5966,5975 **** if test -n "$old_library"; then # Do each command in the old_postuninstall commands. ! eval cmds=\"$old_postuninstall_cmds\" save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" $show "$cmd" $run eval "$cmd" if test "$?" -ne 0 && test "$rmforce" != yes; then --- 6072,6082 ---- if test -n "$old_library"; then # Do each command in the old_postuninstall commands. ! cmds=$old_postuninstall_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" if test "$?" -ne 0 && test "$rmforce" != yes; then *************** *** 6214,6219 **** --- 6321,6328 ---- -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects -objectlist FILE Use a list of object files found in FILE to specify objects + -precious-files-regex REGEX + don't remove output files matching REGEX -release RELEASE specify package release information -rpath LIBDIR the created library will eventually be installed in LIBDIR -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries Index: libtool/doc/libtool.texi diff -c libtool/doc/libtool.texi:1.134.2.1 libtool/doc/libtool.texi:1.134.2.5 *** libtool/doc/libtool.texi:1.134.2.1 Mon Apr 14 22:48:01 2003 --- libtool/doc/libtool.texi Fri Jan 23 06:05:27 2004 *************** *** 21,27 **** * libtoolize: (libtool)Invoking libtoolize. Adding libtool support. @end direntry ! @ifinfo This file documents GNU Libtool @value{VERSION} Copyright (C) 1996-2003 Free Software Foundation, Inc. --- 21,27 ---- * libtoolize: (libtool)Invoking libtoolize. Adding libtool support. @end direntry ! @ifnottex This file documents GNU Libtool @value{VERSION} Copyright (C) 1996-2003 Free Software Foundation, Inc. *************** *** 39,45 **** identical to this one except for the removal of this paragraph @end ignore ! @end ifinfo @titlepage @title GNU Libtool --- 39,45 ---- identical to this one except for the removal of this paragraph @end ignore ! @end ifnottex @titlepage @title GNU Libtool *************** *** 68,74 **** @syncodeindex tp cp @synindex pg cp ! @ifinfo @node Top, Introduction, (dir), (dir) @comment node-name, next, previous, up @top Shared library support for GNU --- 68,74 ---- @syncodeindex tp cp @synindex pg cp ! @ifnottex @node Top, Introduction, (dir), (dir) @comment node-name, next, previous, up @top Shared library support for GNU *************** *** 208,214 **** @end detailmenu @end menu ! @end ifinfo @node Introduction @chapter Introduction --- 208,214 ---- @end detailmenu @end menu ! @end ifnottex @node Introduction @chapter Introduction *************** *** 1153,1158 **** --- 1153,1164 ---- You can also pass compile specific flags using @samp{-Wc,@var{flag}} and @samp{-Xcompiler @var{flag}}. + If both PIC and non-PIC objects are being built, libtool will normally + supress the compiler output for the PIC object compilation to save + showing very similar, if not identical duplicate output for each + object. If the @samp{-no-suppress} option is given in compile mode, + libtool will show the compiler output for both objects. + If the @samp{-static} option is given, then a @samp{.o} file is built, even if libtool was configured with @samp{--disable-static}. *************** *** 1270,1275 **** --- 1276,1286 ---- @item -o @var{output-file} Create @var{output-file} from the specified objects and libraries. + @item -precious-files-regex @var{regex} + Prevents removal of files from the temporary output directory whose + names match this regular expression. You might specify @samp{\.bbg?$} + to keep those files created with @code{gcc -ftest-coverage} for example. + @item -release @var{release} Specify that the library was generated by release @var{release} of your package, so that users can easily tell which versions are newer than *************** *** 1371,1377 **** @cindex mode, install In @dfn{install} mode, libtool interprets most of the elements of ! @var{mode-args} as an installation command beginning with @code{cp}, or a BSD-compatible @code{install} program. The following components of @var{mode-args} are treated specially: --- 1382,1388 ---- @cindex mode, install In @dfn{install} mode, libtool interprets most of the elements of ! @var{mode-args} as an installation command beginning with @code{cp}, or a BSD-compatible @code{install} program. The following components of @var{mode-args} are treated specially: *************** *** 1379,1389 **** @table @samp @item -inst-prefix @var{inst-prefix-dir} When installing into a temporary staging area, rather than the ! final @var{prefix}, this argument is used to reflect the temporary path, in much the same way @code{automake} uses @var{DESTDIR}. For instance, if @var{prefix} is @code{/usr/local}, but @var{inst-prefix-dir} is @code{/tmp}, then the object will be ! installed under @code{/tmp/usr/local/}. If the installed object is a libtool library, then the internal fields of that library will reflect only @var{prefix}, not @var{inst-prefix-dir}: --- 1390,1400 ---- @table @samp @item -inst-prefix @var{inst-prefix-dir} When installing into a temporary staging area, rather than the ! final @var{prefix}, this argument is used to reflect the temporary path, in much the same way @code{automake} uses @var{DESTDIR}. For instance, if @var{prefix} is @code{/usr/local}, but @var{inst-prefix-dir} is @code{/tmp}, then the object will be ! installed under @code{/tmp/usr/local/}. If the installed object is a libtool library, then the internal fields of that library will reflect only @var{prefix}, not @var{inst-prefix-dir}: *************** *** 1399,1414 **** libdir='/tmp/usr/local/lib' @end example ! @code{inst-prefix} is also used to insure that if the installed ! object must be relinked upon installation, that it is relinked ! against the libraries in @var{inst-prefix-dir}/@var{prefix}, not @var{prefix}. In truth, this option is not really intended for use when calling libtool directly; it is automatically used when @code{libtool --mode=install} ! calls @code{libtool --mode=relink}. Libtool does this by ! analyzing the destination path given in the original ! @code{libtool --mode=install} command and comparing it to the expected installation path established during @code{libtool --mode=link}. Thus, end-users need change nothing, and @code{automake}-style --- 1410,1425 ---- libdir='/tmp/usr/local/lib' @end example ! @code{inst-prefix} is also used to insure that if the installed ! object must be relinked upon installation, that it is relinked ! against the libraries in @var{inst-prefix-dir}/@var{prefix}, not @var{prefix}. In truth, this option is not really intended for use when calling libtool directly; it is automatically used when @code{libtool --mode=install} ! calls @code{libtool --mode=relink}. Libtool does this by ! analyzing the destination path given in the original ! @code{libtool --mode=install} command and comparing it to the expected installation path established during @code{libtool --mode=link}. Thus, end-users need change nothing, and @code{automake}-style *************** *** 2968,2978 **** @end deftypefun @deftypevar {lt_ptr (*) (size_t @var{size})} lt_dlmalloc @deftypevarx {void (*) (lt_ptr @var{ptr})} lt_dlfree ! These variables are set to @code{malloc} and @code{free}, by default, ! but you can set them to any other functions that provides equivalent ! functionality. However, you must not modify their values after calling ! any libltdl function other than @code{lt_dlpreopen_default} or the macro @code{LTDL_SET_PRELOADED_SYMBOLS}. @end deftypevar --- 2979,2996 ---- @end deftypefun @deftypevar {lt_ptr (*) (size_t @var{size})} lt_dlmalloc + @deftypevarx {lt_ptr (*) (lt_ptr @var{ptr}, size_t @var{size})} lt_dlrealloc @deftypevarx {void (*) (lt_ptr @var{ptr})} lt_dlfree ! These variables are set to @code{malloc}, @code{realloc} and @code{free} by ! default, but you can set them to any other functions that provide equivalent ! functionality. If you change any of these function pointers, you will almost ! certainly need to change all three to point into the same malloc library. ! Strange things will happen if you allocate memory from one library, and then ! pass it to an implementation of @code{free} that doesn't know what book ! keeping the allocator used. ! ! You must not modify any of their values after calling any libltdl function ! other than @code{lt_dlpreopen_default} or the macro @code{LTDL_SET_PRELOADED_SYMBOLS}. @end deftypevar Index: libtool/libltdl/ltdl.c diff -c libtool/libltdl/ltdl.c:1.174 libtool/libltdl/ltdl.c:1.174.2.7 *** libtool/libltdl/ltdl.c:1.174 Sat Mar 29 04:09:00 2003 --- libtool/libltdl/ltdl.c Fri Jan 23 06:04:53 2004 *************** *** 37,44 **** --- 37,50 ---- # include #endif + /* Include the header defining malloc. On K&R C compilers, + that's , on ANSI C and ISO C compilers, that's . */ #if HAVE_STDLIB_H # include + #else + # if HAVE_MALLOC_H + # include + # endif #endif #if HAVE_STRING_H *************** *** 53,62 **** # include #endif - #if HAVE_MALLOC_H - # include - #endif - #if HAVE_MEMORY_H # include #endif --- 59,64 ---- *************** *** 237,243 **** #else #define LT_DLMALLOC(tp, n) ((tp *) lt_dlmalloc ((n) * sizeof(tp))) ! #define LT_DLREALLOC(tp, p, n) ((tp *) rpl_realloc ((p), (n) * sizeof(tp))) #define LT_DLFREE(p) \ LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END --- 239,245 ---- #else #define LT_DLMALLOC(tp, n) ((tp *) lt_dlmalloc ((n) * sizeof(tp))) ! #define LT_DLREALLOC(tp, p, n) ((tp *) lt_dlrealloc ((p), (n) * sizeof(tp))) #define LT_DLFREE(p) \ LT_STMT_START { if (p) (p) = (lt_dlfree (p), (lt_ptr) 0); } LT_STMT_END *************** *** 682,688 **** /* This probably indicates a programmer error, but to preserve semantics, scan back to the start of an entry if BEFORE points into the middle of it. */ ! while ((before >= *pargz) && (before[-1] != LT_EOS_CHAR)) --before; { --- 684,690 ---- /* This probably indicates a programmer error, but to preserve semantics, scan back to the start of an entry if BEFORE points into the middle of it. */ ! while ((before > *pargz) && (before[-1] != LT_EOS_CHAR)) --before; { *************** *** 1016,1022 **** lt_ptr addr; size_t size; { ! lt_ptr mem = realloc (addr, size); if (size && !mem) LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY)); return mem; --- 1018,1024 ---- lt_ptr addr; size_t size; { ! lt_ptr mem = lt_dlrealloc (addr, size); if (size && !mem) LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY)); return mem; *************** *** 1580,1585 **** --- 1582,1591 ---- #if HAVE_MACH_O_DYLD_H + #if !defined(__APPLE_CC__) && !defined(__MWERKS__) && !defined(__private_extern__) + /* Is this correct? Does it still function properly? */ + #define __private_extern__ extern + #endif # include #endif #include *************** *** 1606,1619 **** static enum DYLD_BOOL (*ltdl_NSMakePrivateModulePublic)(NSModule module) = 0; #ifndef NSADDIMAGE_OPTION_NONE ! #define NSADDIMAGE_OPTION_NONE 0x0 #endif #ifndef NSADDIMAGE_OPTION_RETURN_ON_ERROR #define NSADDIMAGE_OPTION_RETURN_ON_ERROR 0x1 ! #endif #ifndef NSADDIMAGE_OPTION_WITH_SEARCHING #define NSADDIMAGE_OPTION_WITH_SEARCHING 0x2 ! #endif #ifndef NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED #define NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED 0x4 #endif --- 1612,1625 ---- static enum DYLD_BOOL (*ltdl_NSMakePrivateModulePublic)(NSModule module) = 0; #ifndef NSADDIMAGE_OPTION_NONE ! #define NSADDIMAGE_OPTION_NONE 0x0 #endif #ifndef NSADDIMAGE_OPTION_RETURN_ON_ERROR #define NSADDIMAGE_OPTION_RETURN_ON_ERROR 0x1 ! #endif #ifndef NSADDIMAGE_OPTION_WITH_SEARCHING #define NSADDIMAGE_OPTION_WITH_SEARCHING 0x2 ! #endif #ifndef NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED #define NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED 0x4 #endif *************** *** 1622,1628 **** #endif #ifndef NSLOOKUPSYMBOLINIMAGE_OPTION_BIND #define NSLOOKUPSYMBOLINIMAGE_OPTION_BIND 0x0 ! #endif #ifndef NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW #define NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW 0x1 #endif --- 1628,1634 ---- #endif #ifndef NSLOOKUPSYMBOLINIMAGE_OPTION_BIND #define NSLOOKUPSYMBOLINIMAGE_OPTION_BIND 0x0 ! #endif #ifndef NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW #define NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW 0x1 #endif *************** *** 1643,1653 **** int lerno; const char *errstr; const char *file; ! NSLinkEditError(&ler,&lerno,&file,&errstr); if (!errstr || !strlen(errstr)) errstr = othererror; return errstr; } ! static const struct mach_header * lt_int_dyld_get_mach_header_from_nsmodule(module) NSModule module; --- 1649,1659 ---- int lerno; const char *errstr; const char *file; ! NSLinkEditError(&ler,&lerno,&file,&errstr); if (!errstr || !strlen(errstr)) errstr = othererror; return errstr; } ! static const struct mach_header * lt_int_dyld_get_mach_header_from_nsmodule(module) NSModule module; *************** *** 1671,1677 **** static const char* lt_int_dyld_lib_install_name(mh) const struct mach_header *mh; ! { /* NSAddImage is also used to get the loaded image, but it only works if the lib is installed, for uninstalled libs we need to check the install_names against each other. Note that this is still broken if DYLD_IMAGE_SUFFIX is set and a --- 1677,1683 ---- static const char* lt_int_dyld_lib_install_name(mh) const struct mach_header *mh; ! { /* NSAddImage is also used to get the loaded image, but it only works if the lib is installed, for uninstalled libs we need to check the install_names against each other. Note that this is still broken if DYLD_IMAGE_SUFFIX is set and a *************** *** 1680,1693 **** int j; struct load_command *lc; unsigned long offset = sizeof(struct mach_header); - const struct mach_header *mh1; const char* retStr=NULL; for (j = 0; j < mh->ncmds; j++) { lc = (struct load_command*)(((unsigned long)mh) + offset); if (LC_ID_DYLIB == lc->cmd) { ! retStr=(char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc); } offset += lc->cmdsize; --- 1686,1698 ---- int j; struct load_command *lc; unsigned long offset = sizeof(struct mach_header); const char* retStr=NULL; for (j = 0; j < mh->ncmds; j++) { lc = (struct load_command*)(((unsigned long)mh) + offset); if (LC_ID_DYLIB == lc->cmd) { ! retStr=(char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc); } offset += lc->cmdsize; *************** *** 1701,1707 **** int i=_dyld_image_count(); int j; const struct mach_header *mh=NULL; ! const char *id=NULL; for (j = 0; j < i; j++) { id=lt_int_dyld_lib_install_name(_dyld_get_image_header(j)); --- 1706,1712 ---- int i=_dyld_image_count(); int j; const struct mach_header *mh=NULL; ! const char *id=NULL; for (j = 0; j < i; j++) { id=lt_int_dyld_lib_install_name(_dyld_get_image_header(j)); *************** *** 1713,1719 **** } return mh; } ! static NSSymbol lt_int_dyld_NSlookupSymbolInLinkedLibs(symbol,mh) const char *symbol; --- 1718,1724 ---- } return mh; } ! static NSSymbol lt_int_dyld_NSlookupSymbolInLinkedLibs(symbol,mh) const char *symbol; *************** *** 1732,1757 **** lc = (struct load_command*)(((unsigned long)mh) + offset); if ((LC_LOAD_DYLIB == lc->cmd) || (LC_LOAD_WEAK_DYLIB == lc->cmd)) { ! mh1=lt_int_dyld_match_loaded_lib_by_install_name((char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc)); if (!mh1) ! { ! /* Maybe NSAddImage can find it */ ! mh1=ltdl_NSAddImage((char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc), ! NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED + NSADDIMAGE_OPTION_WITH_SEARCHING + NSADDIMAGE_OPTION_RETURN_ON_ERROR ); ! } if (mh1) { retSym = ltdl_NSLookupSymbolInImage(mh1, symbol, ! NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR ); ! if (retSym) break; ! } } offset += lc->cmdsize; } --- 1737,1762 ---- lc = (struct load_command*)(((unsigned long)mh) + offset); if ((LC_LOAD_DYLIB == lc->cmd) || (LC_LOAD_WEAK_DYLIB == lc->cmd)) { ! mh1=lt_int_dyld_match_loaded_lib_by_install_name((char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc)); if (!mh1) ! { ! /* Maybe NSAddImage can find it */ ! mh1=ltdl_NSAddImage((char*)(((struct dylib_command*)lc)->dylib.name.offset + (unsigned long)lc), ! NSADDIMAGE_OPTION_RETURN_ONLY_IF_LOADED + NSADDIMAGE_OPTION_WITH_SEARCHING + NSADDIMAGE_OPTION_RETURN_ON_ERROR ); ! } if (mh1) { retSym = ltdl_NSLookupSymbolInImage(mh1, symbol, ! NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR ); ! if (retSym) break; ! } } offset += lc->cmdsize; } *************** *** 1764,1770 **** { int retCode = 0; int err = 0; ! if (!_dyld_present()) { retCode=1; } else { --- 1769,1775 ---- { int retCode = 0; int err = 0; ! if (!_dyld_present()) { retCode=1; } else { *************** *** 1784,1791 **** lt_module module = 0; NSObjectFileImage ofi = 0; NSObjectFileImageReturnCode ofirc; ! ! if (!filename) return (lt_module)-1; ofirc = NSCreateObjectFileImageFromFile(filename, &ofi); switch (ofirc) --- 1789,1796 ---- lt_module module = 0; NSObjectFileImage ofi = 0; NSObjectFileImageReturnCode ofirc; ! ! if (!filename) return (lt_module)-1; ofirc = NSCreateObjectFileImageFromFile(filename, &ofi); switch (ofirc) *************** *** 1802,1810 **** case NSObjectFileImageInappropriateFile: if (ltdl_NSIsSymbolNameDefinedInImage && ltdl_NSLookupSymbolInImage) { ! module = (lt_module)ltdl_NSAddImage(filename, NSADDIMAGE_OPTION_RETURN_ON_ERROR); break; ! } default: LT_DLMUTEX_SETERROR (lt_int_dyld_error(LT_DLSTRERROR(CANNOT_OPEN))); return 0; --- 1807,1815 ---- case NSObjectFileImageInappropriateFile: if (ltdl_NSIsSymbolNameDefinedInImage && ltdl_NSLookupSymbolInImage) { ! module = (lt_module)ltdl_NSAddImage(filename, NSADDIMAGE_OPTION_RETURN_ON_ERROR); break; ! } default: LT_DLMUTEX_SETERROR (lt_int_dyld_error(LT_DLSTRERROR(CANNOT_OPEN))); return 0; *************** *** 1820,1832 **** { int retCode = 0; int flags = 0; - unsigned long size=0; if (module == (lt_module)-1) return 0; ! #ifdef __BIG_ENDIAN__ if (((struct mach_header *)module)->magic == MH_MAGIC) ! #else if (((struct mach_header *)module)->magic == MH_CIGAM) ! #endif { LT_DLMUTEX_SETERROR("Can not close a dylib"); retCode = 1; --- 1825,1836 ---- { int retCode = 0; int flags = 0; if (module == (lt_module)-1) return 0; ! #ifdef __BIG_ENDIAN__ if (((struct mach_header *)module)->magic == MH_MAGIC) ! #else if (((struct mach_header *)module)->magic == MH_CIGAM) ! #endif { LT_DLMUTEX_SETERROR("Can not close a dylib"); retCode = 1; *************** *** 1837,1850 **** /* Currently, if a module contains c++ static destructors and it is unloaded, we get a segfault in atexit(), due to compiler and dynamic loader differences of opinion, this works around that. ! */ ! if ((const struct section *)NULL != getsectbynamefromheader(lt_int_dyld_get_mach_header_from_nsmodule(module), "__DATA","__mod_term_func")) { flags += NSUNLINKMODULE_OPTION_KEEP_MEMORY_MAPPED; ! } ! #endif #ifdef __ppc__ flags += NSUNLINKMODULE_OPTION_RESET_LAZY_REFERENCES; #endif --- 1841,1854 ---- /* Currently, if a module contains c++ static destructors and it is unloaded, we get a segfault in atexit(), due to compiler and dynamic loader differences of opinion, this works around that. ! */ ! if ((const struct section *)NULL != getsectbynamefromheader(lt_int_dyld_get_mach_header_from_nsmodule(module), "__DATA","__mod_term_func")) { flags += NSUNLINKMODULE_OPTION_KEEP_MEMORY_MAPPED; ! } ! #endif #ifdef __ppc__ flags += NSUNLINKMODULE_OPTION_RESET_LAZY_REFERENCES; #endif *************** *** 1852,1860 **** { retCode=1; LT_DLMUTEX_SETERROR (lt_int_dyld_error(LT_DLSTRERROR(CANNOT_CLOSE))); ! } } ! return retCode; } --- 1856,1864 ---- { retCode=1; LT_DLMUTEX_SETERROR (lt_int_dyld_error(LT_DLSTRERROR(CANNOT_CLOSE))); ! } } ! return retCode; } *************** *** 1868,1911 **** NSSymbol *nssym = 0; void *unused; const struct mach_header *mh=NULL; if (module == (lt_module)-1) { _dyld_lookup_and_bind(symbol,(unsigned long*)&address,&unused); return address; } ! #ifdef __BIG_ENDIAN__ if (((struct mach_header *)module)->magic == MH_MAGIC) ! #else if (((struct mach_header *)module)->magic == MH_CIGAM) ! #endif { if (ltdl_NSIsSymbolNameDefinedInImage && ltdl_NSLookupSymbolInImage) { mh=module; ! if (ltdl_NSIsSymbolNameDefinedInImage((struct mach_header*)module,symbol)) { nssym = ltdl_NSLookupSymbolInImage((struct mach_header*)module, symbol, ! NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR ); } ! } ! ! } else { nssym = NSLookupSymbolInModule(module, symbol); } ! if (!nssym) { if (!mh) mh=lt_int_dyld_get_mach_header_from_nsmodule(module); nssym = lt_int_dyld_NSlookupSymbolInLinkedLibs(symbol,mh); ! } ! if (!nssym) { ! LT_DLMUTEX_SETERROR (lt_int_dyld_error(LT_DLSTRERROR(SYMBOL_NOT_FOUND))); return NULL; ! } return NSAddressOfSymbol(nssym); } --- 1872,1918 ---- NSSymbol *nssym = 0; void *unused; const struct mach_header *mh=NULL; + char saveError[256] = "Symbol not found"; if (module == (lt_module)-1) { _dyld_lookup_and_bind(symbol,(unsigned long*)&address,&unused); return address; } ! #ifdef __BIG_ENDIAN__ if (((struct mach_header *)module)->magic == MH_MAGIC) ! #else if (((struct mach_header *)module)->magic == MH_CIGAM) ! #endif { if (ltdl_NSIsSymbolNameDefinedInImage && ltdl_NSLookupSymbolInImage) { mh=module; ! if (ltdl_NSIsSymbolNameDefinedInImage((struct mach_header*)module,symbol)) { nssym = ltdl_NSLookupSymbolInImage((struct mach_header*)module, symbol, ! NSLOOKUPSYMBOLINIMAGE_OPTION_BIND_NOW | NSLOOKUPSYMBOLINIMAGE_OPTION_RETURN_ON_ERROR ); } ! } ! ! } else { nssym = NSLookupSymbolInModule(module, symbol); } ! if (!nssym) { + strncpy(saveError, lt_int_dyld_error(LT_DLSTRERROR(SYMBOL_NOT_FOUND)), 255); + saveError[255] = 0; if (!mh) mh=lt_int_dyld_get_mach_header_from_nsmodule(module); nssym = lt_int_dyld_NSlookupSymbolInLinkedLibs(symbol,mh); ! } ! if (!nssym) { ! LT_DLMUTEX_SETERROR (saveError); return NULL; ! } return NSAddressOfSymbol(nssym); } *************** *** 3919,3925 **** LT_DLMUTEX_GETERROR (error); LT_DLMUTEX_SETERROR (0); ! return error ? error : LT_DLSTRERROR (UNKNOWN); } static int --- 3926,3932 ---- LT_DLMUTEX_GETERROR (error); LT_DLMUTEX_SETERROR (0); ! return error ? error : NULL; } static int Index: libtool/libltdl/ltdl.h diff -c libtool/libltdl/ltdl.h:1.57 libtool/libltdl/ltdl.h:1.57.2.1 *** libtool/libltdl/ltdl.h:1.57 Mon Aug 13 17:25:49 2001 --- libtool/libltdl/ltdl.h Fri Aug 1 18:32:40 2003 *************** *** 79,85 **** /* LT_CONC creates a new concatenated symbol for the compiler in a portable way. */ ! #if defined(__STDC__) || defined(__cplusplus) # define LT_CONC(s,t) s##t #else # define LT_CONC(s,t) s/**/t --- 79,85 ---- /* LT_CONC creates a new concatenated symbol for the compiler in a portable way. */ ! #if defined(__STDC__) || defined(__cplusplus) || defined(_MSC_VER) # define LT_CONC(s,t) s##t #else # define LT_CONC(s,t) s/**/t *************** *** 111,116 **** --- 111,117 ---- # endif #endif + #ifdef __WINDOWS__ # ifndef __CYGWIN__ /* LT_DIRSEP_CHAR is accepted *in addition* to '/' as a directory *************** *** 140,145 **** --- 141,150 ---- #endif + #if defined(_MSC_VER) /* Visual Studio */ + # define R_OK 4 + #endif + /* --- DYNAMIC MODULE LOADING API --- */ *************** *** 148,178 **** typedef struct lt_dlhandle_struct *lt_dlhandle; /* A loaded module. */ /* Initialisation and finalisation functions for libltdl. */ ! extern int lt_dlinit LT_PARAMS((void)); ! extern int lt_dlexit LT_PARAMS((void)); /* Module search path manipulation. */ ! extern int lt_dladdsearchdir LT_PARAMS((const char *search_dir)); ! extern int lt_dlinsertsearchdir LT_PARAMS((const char *before, const char *search_dir)); ! extern int lt_dlsetsearchpath LT_PARAMS((const char *search_path)); ! extern const char *lt_dlgetsearchpath LT_PARAMS((void)); ! extern int lt_dlforeachfile LT_PARAMS(( const char *search_path, int (*func) (const char *filename, lt_ptr data), lt_ptr data)); /* Portable libltdl versions of the system dlopen() API. */ ! extern lt_dlhandle lt_dlopen LT_PARAMS((const char *filename)); ! extern lt_dlhandle lt_dlopenext LT_PARAMS((const char *filename)); ! extern lt_ptr lt_dlsym LT_PARAMS((lt_dlhandle handle, const char *name)); ! extern const char *lt_dlerror LT_PARAMS((void)); ! extern int lt_dlclose LT_PARAMS((lt_dlhandle handle)); /* Module residency management. */ ! extern int lt_dlmakeresident LT_PARAMS((lt_dlhandle handle)); ! extern int lt_dlisresident LT_PARAMS((lt_dlhandle handle)); --- 153,183 ---- typedef struct lt_dlhandle_struct *lt_dlhandle; /* A loaded module. */ /* Initialisation and finalisation functions for libltdl. */ ! LT_SCOPE int lt_dlinit LT_PARAMS((void)); ! LT_SCOPE int lt_dlexit LT_PARAMS((void)); /* Module search path manipulation. */ ! LT_SCOPE int lt_dladdsearchdir LT_PARAMS((const char *search_dir)); ! LT_SCOPE int lt_dlinsertsearchdir LT_PARAMS((const char *before, const char *search_dir)); ! LT_SCOPE int lt_dlsetsearchpath LT_PARAMS((const char *search_path)); ! LT_SCOPE const char *lt_dlgetsearchpath LT_PARAMS((void)); ! LT_SCOPE int lt_dlforeachfile LT_PARAMS(( const char *search_path, int (*func) (const char *filename, lt_ptr data), lt_ptr data)); /* Portable libltdl versions of the system dlopen() API. */ ! LT_SCOPE lt_dlhandle lt_dlopen LT_PARAMS((const char *filename)); ! LT_SCOPE lt_dlhandle lt_dlopenext LT_PARAMS((const char *filename)); ! LT_SCOPE lt_ptr lt_dlsym LT_PARAMS((lt_dlhandle handle, const char *name)); ! LT_SCOPE const char *lt_dlerror LT_PARAMS((void)); ! LT_SCOPE int lt_dlclose LT_PARAMS((lt_dlhandle handle)); /* Module residency management. */ ! LT_SCOPE int lt_dlmakeresident LT_PARAMS((lt_dlhandle handle)); ! LT_SCOPE int lt_dlisresident LT_PARAMS((lt_dlhandle handle)); *************** *** 185,191 **** typedef void lt_dlmutex_seterror LT_PARAMS((const char *errmsg)); typedef const char *lt_dlmutex_geterror LT_PARAMS((void)); ! extern int lt_dlmutex_register LT_PARAMS((lt_dlmutex_lock *lock, lt_dlmutex_unlock *unlock, lt_dlmutex_seterror *seterror, lt_dlmutex_geterror *geterror)); --- 190,196 ---- typedef void lt_dlmutex_seterror LT_PARAMS((const char *errmsg)); typedef const char *lt_dlmutex_geterror LT_PARAMS((void)); ! LT_SCOPE int lt_dlmutex_register LT_PARAMS((lt_dlmutex_lock *lock, lt_dlmutex_unlock *unlock, lt_dlmutex_seterror *seterror, lt_dlmutex_geterror *geterror)); *************** *** 218,225 **** lt_ptr address; } lt_dlsymlist; ! extern int lt_dlpreload LT_PARAMS((const lt_dlsymlist *preloaded)); ! extern int lt_dlpreload_default LT_PARAMS((const lt_dlsymlist *preloaded)); #define LTDL_SET_PRELOADED_SYMBOLS() LT_STMT_START{ \ --- 223,230 ---- lt_ptr address; } lt_dlsymlist; ! LT_SCOPE int lt_dlpreload LT_PARAMS((const lt_dlsymlist *preloaded)); ! LT_SCOPE int lt_dlpreload_default LT_PARAMS((const lt_dlsymlist *preloaded)); #define LTDL_SET_PRELOADED_SYMBOLS() LT_STMT_START{ \ *************** *** 241,260 **** number of times lt_dlclosed. */ } lt_dlinfo; ! extern const lt_dlinfo *lt_dlgetinfo LT_PARAMS((lt_dlhandle handle)); ! extern lt_dlhandle lt_dlhandle_next LT_PARAMS((lt_dlhandle place)); ! extern int lt_dlforeach LT_PARAMS(( int (*func) (lt_dlhandle handle, lt_ptr data), lt_ptr data)); /* Associating user data with loaded modules. */ typedef unsigned lt_dlcaller_id; ! extern lt_dlcaller_id lt_dlcaller_register LT_PARAMS((void)); ! extern lt_ptr lt_dlcaller_set_data LT_PARAMS((lt_dlcaller_id key, lt_dlhandle handle, lt_ptr data)); ! extern lt_ptr lt_dlcaller_get_data LT_PARAMS((lt_dlcaller_id key, lt_dlhandle handle)); --- 246,265 ---- number of times lt_dlclosed. */ } lt_dlinfo; ! LT_SCOPE const lt_dlinfo *lt_dlgetinfo LT_PARAMS((lt_dlhandle handle)); ! LT_SCOPE lt_dlhandle lt_dlhandle_next LT_PARAMS((lt_dlhandle place)); ! LT_SCOPE int lt_dlforeach LT_PARAMS(( int (*func) (lt_dlhandle handle, lt_ptr data), lt_ptr data)); /* Associating user data with loaded modules. */ typedef unsigned lt_dlcaller_id; ! LT_SCOPE lt_dlcaller_id lt_dlcaller_register LT_PARAMS((void)); ! LT_SCOPE lt_ptr lt_dlcaller_set_data LT_PARAMS((lt_dlcaller_id key, lt_dlhandle handle, lt_ptr data)); ! LT_SCOPE lt_ptr lt_dlcaller_get_data LT_PARAMS((lt_dlcaller_id key, lt_dlhandle handle)); *************** *** 285,299 **** lt_user_data dlloader_data; }; ! extern lt_dlloader *lt_dlloader_next LT_PARAMS((lt_dlloader *place)); ! extern lt_dlloader *lt_dlloader_find LT_PARAMS(( const char *loader_name)); ! extern const char *lt_dlloader_name LT_PARAMS((lt_dlloader *place)); ! extern lt_user_data *lt_dlloader_data LT_PARAMS((lt_dlloader *place)); ! extern int lt_dlloader_add LT_PARAMS((lt_dlloader *place, const struct lt_user_dlloader *dlloader, const char *loader_name)); ! extern int lt_dlloader_remove LT_PARAMS(( const char *loader_name)); --- 290,304 ---- lt_user_data dlloader_data; }; ! LT_SCOPE lt_dlloader *lt_dlloader_next LT_PARAMS((lt_dlloader *place)); ! LT_SCOPE lt_dlloader *lt_dlloader_find LT_PARAMS(( const char *loader_name)); ! LT_SCOPE const char *lt_dlloader_name LT_PARAMS((lt_dlloader *place)); ! LT_SCOPE lt_user_data *lt_dlloader_data LT_PARAMS((lt_dlloader *place)); ! LT_SCOPE int lt_dlloader_add LT_PARAMS((lt_dlloader *place, const struct lt_user_dlloader *dlloader, const char *loader_name)); ! LT_SCOPE int lt_dlloader_remove LT_PARAMS(( const char *loader_name)); *************** *** 336,343 **** }; /* These functions are only useful from inside custom module loaders. */ ! extern int lt_dladderror LT_PARAMS((const char *diagnostic)); ! extern int lt_dlseterror LT_PARAMS((int errorcode)); --- 341,348 ---- }; /* These functions are only useful from inside custom module loaders. */ ! LT_SCOPE int lt_dladderror LT_PARAMS((const char *diagnostic)); ! LT_SCOPE int lt_dlseterror LT_PARAMS((int errorcode)); Index: libtool/mdemo/Makefile.am diff -c libtool/mdemo/Makefile.am:1.46 libtool/mdemo/Makefile.am:1.46.2.1 *** libtool/mdemo/Makefile.am:1.46 Sat Jun 1 14:09:50 2002 --- libtool/mdemo/Makefile.am Thu Jul 31 20:46:41 2003 *************** *** 6,12 **** EXTRA_DIST = acinclude.m4 ! lib_LTLIBRARIES = libsub.la foo1.la libfoo2.la foo1_la_SOURCES = foo1.c foo1_la_LIBADD = $(LIBM) libsub.la --- 6,12 ---- EXTRA_DIST = acinclude.m4 ! lib_LTLIBRARIES = libsub.la foo1.la libfoo2.la libmlib.la foo1_la_SOURCES = foo1.c foo1_la_LIBADD = $(LIBM) libsub.la *************** *** 18,23 **** --- 18,28 ---- libsub_la_SOURCES = sub.c libsub_la_LDFLAGS = -no-undefined + + libmlib_la_SOURCES = mlib.c + libmlib_la_LIBADD = @LIBLTDL@ "-dlopen" foo1.la "-dlopen" libfoo2.la + libmlib_la_LDFLAGS = -no-undefined + libmlib_la_DEPENDENCIES = @LIBLTDL@ libsub.la foo1.la libfoo2.la noinst_HEADERS = foo.h Index: libtool/mdemo/mlib.c diff -c /dev/null libtool/mdemo/mlib.c:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo/mlib.c Thu Jul 31 20:47:36 2003 *************** *** 0 **** --- 1,134 ---- + /* main.c -- mlib library + Copyright (C) 2002 Free Software Foundation, Inc. + Originally by greg Eisenhauer + Extracted from mdemo.c + This file is part of GNU Libtool. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. */ + + #include "foo.h" + #include "ltdl.h" + #include + + int + test_dl (filename) + char *filename; + { + lt_dlhandle handle; + const lt_dlinfo *info; + int (*pfoo1)() = 0; + int (*pfoo2)() = 0; + int (*phello)() = 0; + int *pnothing = 0; + int ret = 0; + + handle = lt_dlopen(filename); + if (!handle) { + fprintf (stderr, "can't open the module %s!\n", filename); + fprintf (stderr, "error was: %s\n", lt_dlerror()); + return 1; + } + + info = lt_dlgetinfo(handle); + if (!info) { + fprintf (stderr, "can't get module info: %s\n", lt_dlerror()); + return 1; + } + if (info->name) { + printf ("module name: %s\n", info->name); + } else { + printf ("module is not a libtool module\n"); + } + printf ("module filename: %s\n", info->filename); + printf ("module reference count: %i\n", info->ref_count); + + phello = (int(*)())lt_dlsym(handle, "hello"); + if (phello) + { + int value = (*phello) (); + + printf ("hello returned: %i\n", value); + if (value == HELLO_RET) + printf("hello is ok!\n"); + } + else + { + fprintf (stderr, "did not find the `hello' function\n"); + fprintf (stderr, "error was: %s\n", lt_dlerror()); + ret = 1; + } + + pnothing = (int*)lt_dlsym(handle, "nothing"); + /* Try assigning to the nothing variable. */ + if (pnothing) + *pnothing = 1; + else + { + fprintf (stderr, "did not find the `nothing' variable\n"); + fprintf (stderr, "error was: %s\n", lt_dlerror()); + ret = 1; + } + + pfoo1 = (int(*)())lt_dlsym(handle, "foo1"); + /* Just call the functions and check return values. */ + if (pfoo1) + { + if ((*pfoo1) () == FOO_RET) + printf("foo1 is ok!\n"); + else + ret = 1; + } + else { + pfoo2 = (int(*)())lt_dlsym(handle, "foo2"); + if (pfoo2) + { + if ((*pfoo2) () == FOO_RET) + printf("foo2 is ok!\n"); + else ret = 1; + } + else + { + fprintf (stderr, "did not find any of the `foo' functions\n"); + fprintf (stderr, "error was: %s\n", lt_dlerror()); + ret = 1; + } + } + lt_dlclose(handle); + return ret; + } + int + mlib_func(argc, argv) + int argc; + char **argv; + { + int ret = 0; + int i; + /* + * Would be nice if this somehow worked for libraries, not just executables. + * LTDL_SET_PRELOADED_SYMBOLS(); + */ + if (lt_dlinit() != 0) { + fprintf (stderr, "error during initialization: %s\n", lt_dlerror()); + return 1; + } + + for (i = 1; i < argc; i++) + if (test_dl(argv[i])) + ret = 1; + + lt_dlexit(); + return ret; + } Index: libtool/mdemo2/.cvsignore diff -c /dev/null libtool/mdemo2/.cvsignore:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo2/.cvsignore Thu Jul 31 20:46:41 2003 *************** *** 0 **** --- 1,15 ---- + .deps + .libs + Makefile + Makefile.in + acinclude.m4 + aclocal.m4 + configure + config.* + conftest* + libtool + *.lo + *.la + mdemo2 + mdemo2_static + mdemo2.static Index: libtool/mdemo2/Makefile.am diff -c /dev/null libtool/mdemo2/Makefile.am:1.1.2.3 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo2/Makefile.am Fri Sep 26 12:51:23 2003 *************** *** 0 **** --- 1,24 ---- + ## Process this file with automake to produce Makefile.in + + AUTOMAKE_OPTIONS = no-dependencies foreign + + INCLUDES = -I$(top_srcdir)/../libltdl + + EXTRA_DIST = acinclude.m4 + + bin_PROGRAMS = mdemo2 mdemo2_static + + # Create a version of mdemo2 that links a library that does dlopen. + mdemo2_SOURCES = main.c + mdemo2_LDFLAGS = -export-dynamic "-dlopen" force + mdemo2_LDADD = ../mdemo/libmlib.la + + # Create a statically linked version of mdemo. + mdemo2_static_SOURCES = $(mdemo2_SOURCES) + mdemo2_static_LDFLAGS = $(STATIC) $(mdemo2_LDFLAGS) + mdemo2_static_LDADD = $(mdemo2_LDADD) + mdemo2_static_DEPENDENCIES = $(mdemo2_DEPENDENCIES) + + $(OBJECTS): libtool + libtool: $(LIBTOOL_DEPS) + $(SHELL) ./config.status --recheck Index: libtool/mdemo2/README diff -c /dev/null libtool/mdemo2/README:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo2/README Thu Jul 31 20:46:41 2003 *************** *** 0 **** --- 1,5 ---- + This is mdemo2, an example package that attempts to use GNU libtool to + link with a library that itself does dlopening of libtool modules. + + This demo depends upon the libraries generated in ../mdemo. + Index: libtool/mdemo2/configure.ac diff -c /dev/null libtool/mdemo2/configure.ac:1.1.2.2 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo2/configure.ac Wed Sep 10 15:12:57 2003 *************** *** 0 **** --- 1,71 ---- + ## Process this file with autoconf to create configure. -*- autoconf -*- + # Copyright 2001 Free Software Foundation, Inc. + # + # This program is free software; you can redistribute it and/or modify + # it under the terms of the GNU General Public License as published by + # the Free Software Foundation; either version 2 of the License, or + # (at your option) any later version. + # + # This program is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY; without even the implied warranty of + # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + # GNU General Public License for more details. + # + # You should have received a copy of the GNU General Public License + # along with this program; if not, write to the Free Software + # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + # 02111-1307 USA + + AC_PREREQ(2.50) + + + ## ------------------------ ## + ## Autoconf initialisation. ## + ## ------------------------ ## + AC_INIT([mdemo2], [0.1], [bug-libtool@gnu.org]) + AC_CONFIG_SRCDIR([main.c]) + + + ## ------------------------ ## + ## Automake Initialisation. ## + ## ------------------------ ## + AM_INIT_AUTOMAKE(AC_PACKAGE_TARNAME, AC_PACKAGE_VERSION) + + + ## ------------------ ## + ## C compiler checks. ## + ## ------------------ ## + AC_PROG_CC + AC_C_CONST + + + ## ----------------------- ## + ## Libtool initialisation. ## + ## ----------------------- ## + AC_LIBTOOL_DLOPEN + AM_PROG_LIBTOOL + AC_SUBST(LIBTOOL_DEPS) + + if ${CONFIG_SHELL} ./libtool --features | grep "enable static" >/dev/null; then + STATIC=-static + else + STATIC= + fi + AC_SUBST([STATIC]) + + + ## ---------------------------- ## + ## C headers required by mdemo2. ## + ## ---------------------------- ## + + + ## ---------------------------- ## + ## Libraries required by cdemo. ## + ## ---------------------------- ## + + + ## -------- ## + ## Outputs. ## + ## -------- ## + AC_CONFIG_FILES([Makefile]) + AC_OUTPUT Index: libtool/mdemo2/main.c diff -c /dev/null libtool/mdemo2/main.c:1.1.2.2 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/mdemo2/main.c Wed Sep 10 15:12:57 2003 *************** *** 0 **** --- 1,42 ---- + /* main.c -- mdemo2 test program + Copyright (C) 2003 Free Software Foundation, Inc. + Originally by Greg Eisenhauer < eisen at cc.gatech.edu > + This file is part of GNU Libtool. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. */ + + #include + #include "ltdl.h" + + int + main (argc, argv) + int argc; + char **argv; + { + int ret = 0; + + printf ("Welcome to GNU libtool mdemo2!\n"); + if (argc < 2) { + fprintf (stderr, "usage: %s module [module...]\n", argv[0]); + } + + /* This must be called in the program to get the preloaded symbols */ + LTDL_SET_PRELOADED_SYMBOLS(); + + ret = mlib_func(argc, argv); + + return ret; + } Index: libtool/tests/Makefile.am diff -c libtool/tests/Makefile.am:1.32 libtool/tests/Makefile.am:1.32.2.1 *** libtool/tests/Makefile.am:1.32 Mon Nov 18 18:59:44 2002 --- libtool/tests/Makefile.am Thu Jul 31 20:46:41 2003 *************** *** 43,49 **** mdemo-inst.test mdemo-unst.test \ assign.test link.test link-2.test nomode.test \ quote.test sh.test suffix.test pdemo-conf.test \ ! pdemo-make.test pdemo-exec.test pdemo-inst.test if HAVE_CXX if HAVE_F77 --- 43,52 ---- mdemo-inst.test mdemo-unst.test \ assign.test link.test link-2.test nomode.test \ quote.test sh.test suffix.test pdemo-conf.test \ ! pdemo-make.test pdemo-exec.test pdemo-inst.test \ ! mdemo-conf.test mdemo-make.test mdemo2-conf.test \ ! mdemo2-make.test mdemo2-exec.test ! if HAVE_CXX if HAVE_F77 Index: libtool/tests/defs diff -c libtool/tests/defs:1.5 libtool/tests/defs:1.5.2.1 *** libtool/tests/defs:1.5 Thu Apr 3 05:45:22 2003 --- libtool/tests/defs Tue Jun 3 15:43:41 2003 *************** *** 38,43 **** --- 38,46 ---- # Extract CC from the libtool configuration eval `$libtool --config | grep '^CC='` + # Extract host from the libtool configuration + eval `$libtool --config | grep '^host='` + # Disable usage of config.site for autoconf, unless DJGPP is present. # The DJGPP port of autoconf requires config.site, to work correctly. if test -z "$DJGPP"; then Index: libtool/tests/demo-conf.test diff -c libtool/tests/demo-conf.test:1.6 libtool/tests/demo-conf.test:1.6.2.1 *** libtool/tests/demo-conf.test:1.6 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-conf.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : Index: libtool/tests/demo-nofast.test diff -c libtool/tests/demo-nofast.test:1.6 libtool/tests/demo-nofast.test:1.6.2.1 *** libtool/tests/demo-nofast.test:1.6 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-nofast.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --enable-fast-install=no || exit 1 if grep '^hardcode_action=relink' libtool > /dev/null; then rm -f Makefile && exit 77 --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host --enable-fast-install=no || exit 1 if grep '^hardcode_action=relink' libtool > /dev/null; then rm -f Makefile && exit 77 Index: libtool/tests/demo-nopic.test diff -c libtool/tests/demo-nopic.test:1.4 libtool/tests/demo-nopic.test:1.4.2.2 *** libtool/tests/demo-nopic.test:1.4 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-nopic.test Fri Jan 23 06:03:32 2004 *************** *** 10,15 **** --- 10,23 ---- fi . $srcdir/defs || exit 1 + # This doesn't work on hppa + HOST=`../config.guess` + case "$HOST" in + hppa*) + echo "Not running on hppa, it doesn't like non-PIC shared libs" 2>&1 + exit 77 + esac + # Maybe we have a VPATH build, in which case, create a new subdir. test -d ../demo || mkdir ../demo *************** *** 25,30 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --without-pic" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --with-pic=no || exit 1 exit 0 --- 33,38 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --without-pic" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host --with-pic=no || exit 1 exit 0 Index: libtool/tests/demo-pic.test diff -c libtool/tests/demo-pic.test:1.4 libtool/tests/demo-pic.test:1.4.2.1 *** libtool/tests/demo-pic.test:1.4 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-pic.test Tue Jun 3 15:43:41 2003 *************** *** 25,30 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --with-pic" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --with-pic=yes || exit 1 exit 0 --- 25,30 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --with-pic" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host --with-pic=yes || exit 1 exit 0 Index: libtool/tests/demo-shared.test diff -c libtool/tests/demo-shared.test:1.6 libtool/tests/demo-shared.test:1.6.2.1 *** libtool/tests/demo-shared.test:1.6 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-shared.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --disable-static" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --disable-static || exit 1 if grep '^build_old_libs=no' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --disable-static" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host --disable-static || exit 1 if grep '^build_old_libs=no' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : Index: libtool/tests/demo-static.test diff -c libtool/tests/demo-static.test:1.6 libtool/tests/demo-static.test:1.6.2.1 *** libtool/tests/demo-static.test:1.6 Sat Mar 29 05:06:46 2003 --- libtool/tests/demo-static.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --disable-shared" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --disable-shared || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=no' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../demo (prefix=$prefix) with --disable-shared" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../demo/configure --srcdir=$srcdir/../demo --prefix=$prefix --build=$host --disable-shared || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=no' libtool > /dev/null; then : Index: libtool/tests/depdemo-conf.test diff -c libtool/tests/depdemo-conf.test:1.7 libtool/tests/depdemo-conf.test:1.7.2.1 *** libtool/tests/depdemo-conf.test:1.7 Sat Mar 29 05:06:46 2003 --- libtool/tests/depdemo-conf.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --build=$host || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : Index: libtool/tests/depdemo-nofast.test diff -c libtool/tests/depdemo-nofast.test:1.6 libtool/tests/depdemo-nofast.test:1.6.2.1 *** libtool/tests/depdemo-nofast.test:1.6 Sat Mar 29 05:06:46 2003 --- libtool/tests/depdemo-nofast.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --enable-fast-install=no || exit 1 if grep '^hardcode_action=relink' libtool > /dev/null; then rm -f Makefile && exit 77 --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix)" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --build=$host --enable-fast-install=no || exit 1 if grep '^hardcode_action=relink' libtool > /dev/null; then rm -f Makefile && exit 77 Index: libtool/tests/depdemo-shared.test diff -c libtool/tests/depdemo-shared.test:1.7 libtool/tests/depdemo-shared.test:1.7.2.1 *** libtool/tests/depdemo-shared.test:1.7 Sat Mar 29 05:06:46 2003 --- libtool/tests/depdemo-shared.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix) with --disable-static" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --disable-static || exit 1 if grep '^build_old_libs=no' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix) with --disable-static" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --build=$host --disable-static || exit 1 if grep '^build_old_libs=no' libtool > /dev/null && grep '^build_libtool_libs=yes' libtool > /dev/null; then : Index: libtool/tests/depdemo-static.test diff -c libtool/tests/depdemo-static.test:1.7 libtool/tests/depdemo-static.test:1.7.2.1 *** libtool/tests/depdemo-static.test:1.7 Sat Mar 29 05:06:46 2003 --- libtool/tests/depdemo-static.test Tue Jun 3 15:43:41 2003 *************** *** 25,31 **** # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix) with --disable-shared" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --disable-shared || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=no' libtool > /dev/null; then : --- 25,31 ---- # Configure the demonstration. echo "= Configuring in ../depdemo (prefix=$prefix) with --disable-shared" ! ${CONFIG_SHELL-/bin/sh} $srcdir/../depdemo/configure --srcdir=$srcdir/../depdemo --prefix=$prefix --build=$host --disable-shared || exit 1 if grep '^build_old_libs=yes' libtool > /dev/null && grep '^build_libtool_libs=no' libtool > /dev/null; then : Index: libtool/tests/dryrun.test diff -c libtool/tests/dryrun.test:1.9 libtool/tests/dryrun.test:1.9.2.1 *** libtool/tests/dryrun.test:1.9 Sun Mar 3 03:19:55 2002 --- libtool/tests/dryrun.test Wed Jul 30 18:40:10 2003 *************** *** 47,73 **** $make main.$OBJEXT || exit 1 echo "= Making object files in ../mdemo (dry run)" ! ls -l . $objdir > $before force_dry_run=yes $make foo1.lo foo2.lo sub.lo || exit $? ! ls -l . $objdir > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making object files in ../mdemo" $make foo1.lo foo2.lo libsub.la || exit 1 echo "= Making libraries in ../mdemo (dry run)" ! ls -l . $objdir > $before force_dry_run=yes $make foo1.la libfoo2.la || exit $? ! ls -l . $objdir > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making libraries in ../mdemo" $make foo1.la libfoo2.la || exit 1 echo "= Making programs in ../mdemo (dry run)" ! ls -l . $objdir > $before force_dry_run=yes $make mdemo$EXEEXT mdemo_static$EXEEXT 1>&2 || exit $? ! ls -l . $objdir > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making programs in ../mdemo" --- 47,73 ---- $make main.$OBJEXT || exit 1 echo "= Making object files in ../mdemo (dry run)" ! ls -l . $objdir | grep -v total > $before force_dry_run=yes $make foo1.lo foo2.lo sub.lo || exit $? ! ls -l . $objdir | grep -v total > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making object files in ../mdemo" $make foo1.lo foo2.lo libsub.la || exit 1 echo "= Making libraries in ../mdemo (dry run)" ! ls -l . $objdir | grep -v total > $before force_dry_run=yes $make foo1.la libfoo2.la || exit $? ! ls -l . $objdir | grep -v total > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making libraries in ../mdemo" $make foo1.la libfoo2.la || exit 1 echo "= Making programs in ../mdemo (dry run)" ! ls -l . $objdir | grep -v total > $before force_dry_run=yes $make mdemo$EXEEXT mdemo_static$EXEEXT 1>&2 || exit $? ! ls -l . $objdir | grep -v total > $after cmp $before $after > /dev/null || exit 1 # Now really make them echo "= Making programs in ../mdemo" *************** *** 77,87 **** # Libtool does not create these directories mkdir $prefix/bin mkdir $prefix/lib ! ls -l . $objdir > $before ! ls -lR $prefix >> $before force_dry_run=yes $make install 1>&2 || exit 1 ! ls -l . $objdir > $after ! ls -lR $prefix >> $after cmp $before $after > /dev/null || exit 1 # Now really run it echo "= Running $make install in ../mdemo" --- 77,87 ---- # Libtool does not create these directories mkdir $prefix/bin mkdir $prefix/lib ! ls -l . $objdir | grep -v total > $before ! ls -lR $prefix | grep -v total >> $before force_dry_run=yes $make install 1>&2 || exit 1 ! ls -l . $objdir | grep -v total > $after ! ls -lR $prefix | grep -v total >> $after cmp $before $after > /dev/null || exit 1 # Now really run it echo "= Running $make install in ../mdemo" *************** *** 90,100 **** echo "= Running $make uninstall in ../mdemo (dry run)" # Libtool does not uninstall the programs, remove them first rm -f $prefix/bin/mdemo$EXEEXT $prefix/bin/mdemo_static$EXEEXT ! ls -l . $objdir > $before ! ls -lR $prefix >> $before force_dry_run=yes $make uninstall 1>&2 || exit $? ! ls -l . $objdir > $after ! ls -lR $prefix >> $after cmp $before $after > /dev/null || exit 1 # Now really run it echo "= Running $make uninstall in ../mdemo" --- 90,100 ---- echo "= Running $make uninstall in ../mdemo (dry run)" # Libtool does not uninstall the programs, remove them first rm -f $prefix/bin/mdemo$EXEEXT $prefix/bin/mdemo_static$EXEEXT ! ls -l . $objdir | grep -v total > $before ! ls -lR $prefix | grep -v total >> $before force_dry_run=yes $make uninstall 1>&2 || exit $? ! ls -l . $objdir | grep -v total > $after ! ls -lR $prefix | grep -v total >> $after cmp $before $after > /dev/null || exit 1 # Now really run it echo "= Running $make uninstall in ../mdemo" Index: libtool/tests/mdemo2-conf.test diff -c /dev/null libtool/tests/mdemo2-conf.test:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/tests/mdemo2-conf.test Thu Jul 31 20:47:36 2003 *************** *** 0 **** --- 1,35 ---- + #! /bin/sh + # mdemo2-conf.test - try configuring the ../mdemo2 subdirectory + + # Test script header. + need_prefix=yes + if test -z "$srcdir"; then + srcdir=`echo "$0" | sed 's%/[^/]*$%%'` + test "$srcdir" = "$0" && srcdir=. + test "${VERBOSE+set}" != "set" && VERBOSE=yes + fi + . $srcdir/defs || exit 1 + + # Maybe we have a VPATH build, in which case, create a new subdir. + test -d ../mdemo2 || mkdir ../mdemo2 + + # Change to our build directory. + cd ../mdemo2 || exit 1 + + # Possibly clean up the distribution. + if test -f Makefile; then + echo "= Running $make distclean in ../mdemo2" + $make distclean + fi + rm -f config.cache + + # Configure the demonstration. + echo "= Configuring in ../mdemo2 (prefix=$prefix)" + CONFIG_SITE=/nonexistent ${CONFIG_SHELL-/bin/sh} $srcdir/../mdemo2/configure --srcdir=$srcdir/../mdemo2 --prefix=$prefix || exit 1 + + if grep '^build_old_libs=yes' libtool > /dev/null && + grep '^build_libtool_libs=yes' libtool > /dev/null; then : + else rm -f Makefile && exit 77 + fi + + exit 0 Index: libtool/tests/mdemo2-exec.test diff -c /dev/null libtool/tests/mdemo2-exec.test:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/tests/mdemo2-exec.test Thu Jul 31 20:47:36 2003 *************** *** 0 **** --- 1,35 ---- + #! /bin/sh + # mdemo2-exec.test - check that programs in the ../mdemo2 subdirectory are viable + + # Test script header. + need_prefix=no + if test -z "$srcdir"; then + srcdir=`echo "$0" | sed 's%/[^/]*$%%'` + test "$srcdir" = "$0" && srcdir=. + test "${VERBOSE+set}" != "set" && VERBOSE=yes + fi + . $srcdir/defs || exit 1 + + if test -f ../mdemo2/mdemo2; then : + else + echo "You must run mdemo2-make.test before running $0" 1>&2 + exit 77 + fi + + # Check to see if the programs really run. + echo "Executing uninstalled programs in ../mdemo2" + + status=0 + if ../mdemo2/mdemo2_static ../mdemo/foo1.la ../mdemo/libfoo2.la; then : + else + echo "$0: execution of ../mdemo2/mdemo2_static failed" 1>&2 + status=1 + fi + + if ../mdemo2/mdemo2 ../mdemo/foo1.la ../mdemo/libfoo2.la; then : + else + echo "$0: execution of ../mdemo2/mdemo2 failed" 1>&2 + status=1 + fi + + exit $status Index: libtool/tests/mdemo2-make.test diff -c /dev/null libtool/tests/mdemo2-make.test:1.1.2.1 *** /dev/null Sun Jan 25 13:07:12 2004 --- libtool/tests/mdemo2-make.test Thu Jul 31 20:47:36 2003 *************** *** 0 **** --- 1,31 ---- + #! /bin/sh + # mdemo2-make.test - try building in the ../mdemo2 subdirectory + + # Test script header. + need_prefix=no + if test -z "$srcdir"; then + srcdir=`echo "$0" | sed 's%/[^/]*$%%'` + test "$srcdir" = "$0" && srcdir=. + test "${VERBOSE+set}" != "set" && VERBOSE=yes + fi + . $srcdir/defs || exit 1 + + if test -f ../mdemo2/Makefile; then : + else + echo "You must run mdemo2-conf.test before running $0" 1>&2 + exit 77 + fi + + if test -f ../mdemo/libmlib.la; then : + else + echo "You must run mdemo-make.test before running $0" 1>&2 + exit 77 + fi + + # Change to our build directory. + cd ../mdemo2 || exit 1 + + # Do the actual build. + echo "Making in ../mdemo2" + $make || exit 1 + exit 0