diff --git a/.cvsignore b/.cvsignore index cb1e6bb79b2..bde48527b00 100644 --- a/.cvsignore +++ b/.cvsignore @@ -2,7 +2,6 @@ *-co *-dirs *-done -*-info *-install-info *-src *-stamp-* @@ -28,3 +27,6 @@ configure.vr configure.vrs dir.info Makefile +lost+found +update.out + diff --git a/ChangeLog b/ChangeLog index 9a6972e46d2..68f0b44bdb0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,12 +1,18 @@ +2000-07-20 Jason Merrill + + * configure.in: Remove all references to libg++ and librx. + + * configure, configure.in, Makefile.in: Unify gcc and binutils. + +2000-07-20 Hans-Peter Nilsson + + * config.sub: Update to subversions version 2000-07-06. + 2000-07-12 Andrew Haley * configure.in (host_makefile_frag): Use mh-ia64pic on IA-64 hosts. (target_makefile_frag): Use mt-ia64pic on IA-64 targets. -Fri Jul 14 18:13:23 2000 Mark P Mitchell - - * config/mh-irix6 (CC): Don't set it. - 2000-07-07 Phil Edwards * symlink-tree: Check number of arguments. @@ -18,29 +24,52 @@ Fri Jul 14 18:13:23 2000 Mark P Mitchell will allow link tests run by configure scripts in subdirectories to succeed. +2000-07-01 Koundinya K + + * ltconfig: Add support for mips-dde-sysv4.2MP + 2000-06-29 Michael Hayes * MAINTAINERS: Add myself as loop discovery maintainer. +2000-06-28 Corinna Vinschen + + * ltconfig: Check for host_os beeing one of `cygwin', `mingw' or + `os2'. Force ac_cv_exeext to be ".exe" in that case. + +2000-06-19 Timothy Wall + + * configure.in (noconfigdirs): Set noconfigdirs for tic54x target. + * config.sub: Add tic54x target. + Sun Jun 11 17:20:00 MET 2000 Toon Moene * MAINTAINERS: Add self as Fortran maintainer, remove Craig Burley. -Thu Jun 6 01:20:00 MET 2000 Philipp Thomas +Tue May 30 19:01:12 2000 Andrew Cagney - * config.guess: Updated to latest version. - * config.sub: Likewise. + * config.sub: Import CVS version 1.167 Tue May 30 09:00:07 2000. + * config.guess: Import CVS version 1.148 Tue May 30 09:00:06 2000 Mon May 29 21:15:00 MET 2000 Philipp Thomas * MAINTAINERS: Add self as i18n maintainer +20000-05-21 H.J. Lu (hjl@gnu.org) + + * Makefile.in (CC_FOR_TARGET): Make sure as/ld in the gcc + directory are used if they exist. Make sure + $(build_tooldir)/include is searched for header files, + $(build_tooldir)/lib/ for library files. + (GCC_FOR_TARGET): Likewise. + (CXX_FOR_TARGET): Likewise. + Thu May 18 10:58:13 2000 Jeffrey A Law (law@cygnus.com) * configure.in (hppa*64*-*-*): Do build ld for this configuration. -2000-05-18 Alexandre Oliva +Wed May 17 16:03:48 2000 Alexandre Oliva * Makefile.in (configure-target-libiberty): Depend on configure-target-newlib. @@ -50,6 +79,18 @@ Thu May 18 10:58:13 2000 Jeffrey A Law (law@cygnus.com) * configure.in, Makefile.in: Merge all libffi-related configury stuff from the libgcj tree. +Tue May 16 10:06:21 2000 Andrew Cagney + + Thu Apr 27 11:01:48 2000 Andrew Cagney : + * Makefile.in (do-tar-bz2, do-md5sum): Skip CVS directories. + +Tue May 16 09:57:35 2000 Andrew Cagney + + Wed Apr 26 17:03:53 2000 Andrew Cagney : + * Makefile.in (do-djunpack): New target. Update djunpack.bat with + current version information. Add to proto-toplev directory. + (gdb-taz): Build do-djunpack. + 2000-05-15 David Edelsohn * configure.in: Special case powerpc*-*-aix* target_makefile_frag. @@ -58,9 +99,23 @@ Mon May 15 13:39:09 2000 Andrew Cagney * MAINTAINERS: Add self to Write After Approval list. +2000-05-13 Alexandre Oliva + + * ltmain.sh: Preserve in relink_command any environment + variables that may affect the linker behavior. + Fri May 12 11:23:17 2000 Jeffrey A Law (law@cygnus.com) - * config.sub (basic_machine): Recognize hppa64 as a valid cpu type. + * config.sub (basic_machine): Recognize hppa64 as a valid cpu type. + +Wed May 10 21:26:51 2000 Jim Wilson + + * configure.in (ia64*-*-elf*): Add gdb and friends to noconfigdirs. + +2000-05-08 Eli Zaretskii + + * djunpack.bat: Change the Sed script to replace @V@ in fnchange.lst + with the version name. Sat May 6 21:12:55 CDT 2000 Jason Eckhardt @@ -70,6 +125,17 @@ Sat May 6 21:12:55 CDT 2000 Jason Eckhardt * config.if: Tweak. +2000-04-23 Eli Zaretskii + + * djunpack.bat: New file. + +Wed Apr 19 12:46:26 2000 Andrew Cagney + + * Makefile.in (taz, gdb-taz, gas.tar.bz2, binutils.tar.bz2, + gas+binutils.tar.bz2, libg++.tar.bz2, gnats.tar.bz2, gdb.tar.bz2, + dejagnu.tar.bz2, gdb+dejagnu.tar.bz2, insight.tar.bz2, + insight+dejagnu.tar.bz2, newlib.tar.bz2): Pass MD5PROG to sub-make. + 2000-04-16 Dave Pitts * config.sub (case $basic_machine): Change default for "ibm-*" @@ -79,6 +145,24 @@ Sat May 6 21:12:55 CDT 2000 Jason Eckhardt * MAINTAINERS: Added myself. +Wed Apr 12 16:42:48 2000 Andrew Cagney + + * Makefile.in (gdb-taz): New target. GDB specific archive. + (do-md5sum): New target. + (MD5PROG): Define. + (PACKAGE): Default to TOOL. + (VER): Default to a shell script. + (taz): Rewrite target. Move real work to do-proto-toplev. Include + md5 checksum generation. + (do-proto-toplev): New target. Create $(PACKAGE)-$(VER) link. + (do-tar-bz2): Delete creation of $(PACKAGE)-$(VER) link. + (gdb.tar.bz2, dejagnu.tar.bz2, gdb+dejagnu.tar.bz2, + insight.tar.bz2): Use gdb-taz to create archive. + +Fri Apr 7 18:10:29 2000 Andrew Cagney + + * configure (warn_cflags): Delete. + Thu Apr 6 16:15:14 2000 Philippe De Muyter * MAINTAINERS: Added myself. @@ -112,25 +196,44 @@ Sun Mar 12 00:23:32 2000 Jim Wilson * MAINTAINERS: Add self in write-after-approval section. -2000-01-27 Christopher Faylor +Fri Mar 3 18:44:08 2000 Andrew Cagney - * Makefile.in (CC_FOR_TARGET): Add new winsup directory - structure stuff to -L library search. - (CXX_FOR_TARGET): Ditto. - (CROSS_CHECK_MODULES): Fix spelling mistake. + * Makefile.in (taz): Set PACKAGE to TOOL when not defined. + (do-tar-bz2): Replace TOOL with PACKAGE. + (gdb.tar.bz2): Remove GDBTK from GDB package. + (gdb+dejagnu.tar.bz2, insight.tar.bz2, insight+dejagnu.tar.bz2, + dejagnu.tar.bz2): New packages. + +2000-02-27 Andreas Jaeger + + * configure.in: Add entry for mips*-*-linux*, move catch all + *-*-*linux* entry below this one. + +2000-02-27 Ian Lance Taylor + + * ltconfig, ltmain.sh: Update to libtool 1.3.4. 2000-02-24 Nick Clifton * config.sub: Support an OS of "wince". +Thu Feb 24 16:15:56 2000 Andrew Cagney + + * config.guess, config.sub: Updated to match config's 2000-02-15 + version. + +2000-02-23 Linas Vepstas + + * config.sub: Add support for Linux/IBM 370. + * configure.in: Likewise. + 2000-02-22 Nick Clifton * configure.in: Add mips-pe, sh-pe and arm-wince-pe targets. -2000-02-16 Franz Sirl +2000-02-20 Christopher Faylor - * config.guess: Synchronize with master repository. - * config.sub: Likewise. + * config.guess: Guess "cygwin" rather than "cygwin32". 2000-02-16 Kaveh R. Ghazi @@ -153,15 +256,18 @@ Tue Feb 1 00:07:46 2000 Hans-Peter Nilsson * MAINTAINERS: Pair cccp with cpplib maintainership. +2000-01-27 Christopher Faylor + + * Makefile.in (CC_FOR_TARGET): Add new winsup directory + structure stuff to -L library search. + (CXX_FOR_TARGET): Ditto. + (CROSS_CHECK_MODULES): Fix spelling mistake. + 2000-01-24 Mark Mitchell * Makefile.in (CXX_FOR_TARGET): Use g++, not xgcc, to invoke the C++ compiler. -Wed Jan 12 18:00:26 2000 Mark P. Mitchell - - * configure.in: Fix typo in last change. - 2000-01-12 Richard Henderson * configure.in: Don't build some bits for beos. @@ -219,22 +325,20 @@ Wed Nov 17 16:08:43 1999 Alexandre Petit-Bianco * config-ml.in: Allow suppression of some ARM multilibs. -Sun Oct 3 14:20:22 1999 Jeffrey A Law (law@cygnus.com) - - * configure.in (fr30): Fix typo. - -1999-09-21 Nick Clifton - - * config.sub: Add fr30 target. - * configure.in: Add fr30 target. - * MAINTAINERS: Add fr30 maintainer. - Tue Sep 7 23:33:57 1999 Linas Vepstas * config.guess: Add OS/390 match pattern. * config.sub: Add mvs, openedition targets. * configure.in (i370-ibm-opened*): New. +1999-09-04 Steve Chamberlain + + * config.sub: Add support for configuring for pj. + +1999-08-31 Nick Clifton + + * config.sub (maybe_os): Add support for configuring for fr30. + 1999-08-25 Nick Clifton * configure.in: Do not configure or build ld for AIX @@ -245,10 +349,35 @@ Wed Aug 25 01:12:25 1999 Rainer Orth * config-ml.in: Pass compiler flag corresponding to multidirs to subdir configures. +1999-08-09 Ian Lance Taylor + + * Makefile.in (LDFLAGS): Define. + +1999-08-08 Mumit Khan + + * configure.in (i[3456]-*-mingw32*): Don't put gprof in + noconfigdirs. + (*-*-cygwin*): Likewise. + +1999-08-08 Ian Lance Taylor + + * mkdep: New file. + * Makefile.in (GAS_SUPPORT_DIRS): Add mkdep. + (BINUTILS_SUPPORT_DIRS): Add mkdep. + + From Eli Zaretskii : + * configure (tmpfile): Change cONf$$ to cNf$$ to avoid an overly + long file name when using DJGPP on MS-DOS. + Wed Aug 4 02:07:14 1999 Jeffrey A Law (law@cygnus.com) * config.sub (vxworks case): Use os=-vxworks, not os=vxworks. +1999-07-30 Alan Modra + + * Makefile.in (check-target-libio): Remove all-target-libstdc++ + dependency as this causes "make check" to globally "make all" + Tue Jun 22 23:45:18 1999 Tom Tromey * configure.in (target_libs): Added target-zlib. @@ -267,14 +396,6 @@ Tue Jun 22 23:45:18 1999 Tom Tromey (configure-target-boehm-gc): New target. (configure-target-qthreads): New target. - * configure.in (host_tools): Added zip. - * Makefile.in (all-target-libjava): Depend on all-zip. - (all-zip): New target. - (ALL_MODULES): Added all-zip. - (NATIVE_CHECK_MODULES): Added check-zip. - (INSTALL_MODULES): Added install-zip. - (CLEAN_MODULES): Added clean-zip. - * configure.in (target_libs): Added target-qthreads. * Makefile.in (ALL_TARGET_MODULES): Added qthreads. (CONFIGURE_TARGET_MODULES): Likewise. @@ -294,6 +415,43 @@ Tue Jun 22 23:45:18 1999 Tom Tromey (all-target-boehm-gc): Likewise. * configure.in (target_libs): Added libjava, boehm-gc. +1999-07-22 Ian Lance Taylor + + * Makefile.in (binutils.tar.bz2): Don't pass makeall.bat and + configure.bat in SUPPORT_FILES. + (gas+binutils.tar.bz2): Likewise. + + * makeall.bat: Remove; obsolete. + +1999-07-21 Ian Lance Taylor + + From Mark Elbrecht: + * configure.bat: Remove; obsolete. + +1999-07-11 Ian Lance Taylor + + * configure: Add -W -Wall to the default CFLAGS when compiling with + gcc. + +Thu Jul 8 12:32:23 1999 John David Anglin + + * configure.in: Build ld, binutils & gas for hppa*-*-linux-gnu*. + +1999-06-30 Mark Mitchell + + * configure.in: Build ld on IRIX6. + +1999-06-12 Ian Lance Taylor + + * Makefile.in: Change distribution targets to use bzip2 instead of + gzip. + (TEXINFO_SUPPORT): Set to just texinfo/texinfo.tex. + (taz): Don't use texinfo/gpl.texinfo or texinfo/lgpl.texinfo. + +1999-06-04 Nick Clifton + + * config.sub: Add mcore target. + Sun May 30 16:03:16 1999 Cort Dougan * config.guess (ppc-*-linux-gnu): Also use ld emul elf32ppclinux. @@ -319,15 +477,30 @@ Thu May 20 10:00:42 1999 Stephen L Moshier * Makefile.in (GCC_FOR_TARGET): Add -I$(build_tooldir)/include. +1999-04-30 Tom Tromey + + * ltmain.sh: [mode link] Always use CC given by ltconfig. + 1999-04-23 Tom Tromey * ltconfig, ltmain.sh: Update to libtool 1.2f. +1999-04-20 Drew Moseley + + * configure.in (noconfigdirs): Don't build libstub for arm-elf targets. + (noconfigdirs): Don't build any bsp stuff for for arm-oabi targets. + Bad merge removed these two changes. + Tue Apr 13 22:50:54 1999 Donn Terry (donn@interix.com) Martin Heller (Ing.-Buero_Heller@t-online.de) * config.guess (interix Alpha): Add. +1999-04-11 Richard Henderson + + * configure.in (i?86-*-beos*): Do config gperf; don't config + gdb, newlib, or libgloss. + Sun Apr 11 23:55:34 1999 Alexandre Oliva * config-ml.in: On mips*-*-*, if multidirs contains mabi=64, try to @@ -338,6 +511,31 @@ Sat Apr 10 21:50:01 1999 Philipp Thomas (kthomas@gwdg.de) * config.sub: Set basic_machine to i586 when target_alias = k6-*. +1999-04-08 Nick Clifton + + * config.sub: Add support for mcore targets. + +1999-04-07 Michael Meissner + + * configure.in (d30v-*): Use config/mt-d30v as makefile fragment, + not mt-ospace, in order to shut up assembler warning about using + symbols that are named the same as registers. + +1999-04-07 Drew Moseley + + * Makefile.in (all-target-cygmon): Added all-target-bsp to the + dependency list for all-target-cygmon. + +1999-04-05 Doug Evans + + * config-ml.in: Check $host, not $target, for selective multilibs. + (arm-*-*): Allow disabling of biendian, h/w fp, 26 bit apcs, + thumb interworking, and underscore prefix multilibs. + +1999-04-04 Ian Lance Taylor + + * missing: Update to version from current automake. + Fri Apr 2 15:11:32 1999 H.J. Lu (hjl@gnu.org) * configure (gxx_include_dir): Removed. @@ -345,6 +543,14 @@ Fri Apr 2 15:11:32 1999 H.J. Lu (hjl@gnu.org) * configure.in (gxx_include_dir): Handle it. * Makefile.in: Likewise. +1999-03-29 Gavin Romig-Koch + + * config.sub (mips64vr4111,mips64vr4111el) Add. + +1999-03-21 Ben Elliston + + * config.guess: Correct typo for detecting ELF on FreeBSD. + Thu Mar 18 00:17:50 1999 Mark Elbrecht * config/mh-go32: Delete. @@ -352,6 +558,11 @@ Thu Mar 18 00:17:50 1999 Mark Elbrecht * configure.in (pc-msdosdjgpp): Set host_makefile_frag to config/mh-djgpp. +Thu Mar 11 18:37:23 1999 Drew Moseley + + * Makefile.in (all-target-bsp): Added all-gcc all-binutils and + all-target-newlib to dependency list for all-target-bsp. + Thu Mar 11 01:19:31 1999 Mumit Khan * config.sub: Add i386-uwin support. @@ -362,6 +573,16 @@ Thu Mar 11 01:07:55 1999 Franz Sirl * configure.in: cleanup, add mh-*pic handling for arm, special case powerpc*-*-aix* +Wed Mar 10 18:35:07 1999 Jeff Johnston + + * configure.in (noconfigdirs): Removed target-libgloss so libnosys.a + can be built. + +Wed Mar 10 17:39:09 1999 Drew Moseley + + * configure.in: Added bsp support to arm-*-coff and arm-*-elf + targets. + 1999-03-02 Nick Clifton * config.sub: Rename CYGNUS LOCAL to EGCS LOCAL @@ -374,6 +595,23 @@ Sun Feb 28 02:20:00 1999 Geoffrey Noer * config.sub: Fix typo in arm recognition. +Wed Feb 24 13:51:40 1999 Drew Moseley + + * configure.in (noconfigdirs): Changed target_configdirs to + include target-bsp only for m68k-*-elf* and m68k-*-coff* + rather than m68k-*-* since it is not known to work on + m68k-aout. Ditto for arm-*-*oabi. + +Wed Feb 24 12:52:17 1999 Stan Shebs + + * configure.in (*-*-windows*): Remove, no longer used. + * config/mh-windows: Ditto. + +1999-02-19 Ben Elliston + + * config.guess: Automatically recognise ELF on FreeBSD. From Niall + Smart and improved by Andrew Cagney. + Thu Feb 18 19:55:09 1999 Marc Espie * config.guess: Recognize openbsd-*-hppa. @@ -387,16 +625,33 @@ Wed Feb 17 01:38:59 1999 H.J. Lu (hjl@gnu.org) Patch from: Scott Bambrough - * config.guess: Modified to recognize uname's armv* syntax. + * config.guess: Modified to recognize uname's armv* syntax. * config.sub: Modified to recognize uname's armv* syntax. +1999-02-17 Mark Salter + + * configure.in: Added target-bsp for sparclite. + +Mon Feb 8 14:17:24 1999 Richard Henderson + + * config.sub: Recognize alphapca5[67] and up to alphaev8. + +1999-02-08 Nick Clifton + + * configure.in: Add support for strongarm port. + * config.sub: Add support for strongarm target. + Sun Feb 7 18:01:54 1999 Mumit Khan * configure.in (*-*-cygwin32*): Use config/mh-cygwin instead of the old name config/mh-cygwin32. Enable texinfo. +Thu Feb 4 20:43:25 1999 Ian Lance Taylor + + * configure.in: Do build ld for ix86 Solaris. + Tue Feb 2 19:46:40 1999 Jim Wilson * Makefile.in (EXTRA_GCC_FLAGS): Set AR to $AR instead of @@ -418,6 +673,27 @@ Sat Jan 30 08:04:00 1999 Mumit Khan * configure.in: Likewise. * config/mh-interix: New file. +Mon Jan 18 13:59:20 1999 Christopher Faylor + + * Makefile.in: Remove unneeded all-target-libio from + from all-target-winsup target since it is now unneeded. + Add all-target-libtermcap in its place since it is now + needed. + +Wed Dec 30 20:34:52 1998 Christopher Faylor + + * configure.in: makefile stub for cygwin target is probably + unnecessary. Remove it for now. + * config/mt-cygwin: Remove. + +Wed Dec 30 01:13:03 1998 Christopher Faylor + + * configure.in: libtermcap.a should be built when cygwin is the + target as well as the host. + * config.guess: Allow mixed case in cygwin uname output. + * Makefile.in: Add libtermcap target. + * config/mt-cygwin: New file. libtermcap target info. + Wed Dec 23 00:20:50 1998 Jeffrey A Law (law@cygnus.com) * config.sub: Clean up handling of hppa2.0. @@ -430,6 +706,17 @@ Thu Dec 17 01:22:30 1998 Jeffrey A Law (law@cygnus.com) * config.sub: Handle hppa2.0. +Tue Dec 15 17:02:58 1998 Bob Manson + + * configure.in: Add cygmon for x86-coff and x86-elf. Configure + cygmon for all sparclite targets, regardless of object format. + +1998-12-15 Mark Salter + + * configure.in: Added target-bsp for several target architectures. + + * Makefile.in: Added rules for bsp. + Fri Dec 4 01:34:02 1998 Jeffrey A Law (law@cygnus.com) * config.guess: Improve detection of hppa2.0 processors. @@ -445,10 +732,62 @@ Fri Dec 4 01:33:05 1998 Niall Smart directory is "unwanted". * Makefile.in ($(CONFIGURE_TARGET_MODULES)): Likewise. +Wed Nov 18 18:28:45 1998 Geoffrey Noer + + * ltconfig: import from libtool, after changing libtool to + account for the cygwin name change. + +Wed Nov 18 18:09:14 1998 Geoffrey Noer + + * Makefile.in: CC_FOR_TARGET and CXX_FOR_TARGET should also + include newlib/libc/sys/cygwin and newlib/libc/sys/cygwin32. + +Wed Nov 18 20:13:29 1998 Christopher Faylor + + * configure.in: Add libtermcap to list of cygwin dependencies. + +Tue Nov 17 16:57:51 1998 Geoffrey Noer + + * Makefile.in: modify CC_FOR_TARGET and CXX_FOR_TARGET so that + they include winsup/include when it's a cygwin target. + +1998-11-12 Tom Tromey + + * configure.in (host_tools): Added zip. + * Makefile.in (all-target-libjava): Depend on all-zip. + (all-zip): New target. + (ALL_MODULES): Added all-zip. + (NATIVE_CHECK_MODULES): Added check-zip. + (INSTALL_MODULES): Added install-zip. + (CLEAN_MODULES): Added clean-zip. + +Thu Nov 12 17:27:21 1998 Geoffrey Noer + + * Makefile.in: lose "32" from comment about cygwin. + +Thu Nov 5 15:00:31 1998 Nick Clifton + + * configure.in: Use -Os to build target libraries for the fr30. + +Wed Nov 4 18:49:43 1998 Dave Brolley + + * config.sub: Add fr30. + +Mon Nov 2 15:19:33 1998 Geoffrey Noer + + * configure.in: drop "32" from config/mh-cygwin32. Check + cygwin* instead of cygwin32*. + * config.sub: Check cygwin* instead of cygwin32*. + Thu Oct 22 10:55:25 1998 Robert Lipe * config.guess: Match any version of Unixware7. +1998-10-20 Syd Polk + + * Makefile.in configure.in: Add the ability to use tcl8.1 and tk8.1 + if desired. + Sun Oct 18 18:34:50 1998 Jeffrey A Law (law@cygnus.com) * config.if (cxx_interface, libstdcxx_interface): Do not try to set @@ -466,8 +805,6 @@ Tue Oct 13 15:45:36 1998 Manfred Hollstein Tue Oct 13 09:17:06 1998 Jeffrey A Law (law@cygnus.com) - * configure.in: Fix merge typo. - * config.sub: Bring back lost sparcv9. * Makefile.in (all-snvavigator): Remove all-flexlm dependency. @@ -490,7 +827,7 @@ Tue Sep 1 16:23:11 1998 Gerald Pfeifer INSTALL directory instead. Wed Sep 30 22:20:50 1998 Robert Lipe - + * config.sub: Add support for i[34567]86-pc-udk. * configure.in: Likewise. @@ -624,6 +961,23 @@ Fri Jul 24 17:01:42 1998 Ian Lance Taylor * config.guess: Merge with FSF. +Fri Jul 24 08:43:36 1998 Doug Evans + + * configure (extraconfigdirs): New variable. + (SUBDIRS): Add extraconfigdirs and recurse on them too. + * Makefile.in (all): Move higher in file. + (EXTRA_TARGET_HOST_ALL_MODULES): New variable. + (EXTRA_TARGET_HOST_{INSTALL,CHECK}_MODULES): New variables. + (ALL_MODULES): Add EXTRA_TARGET_HOST_ALL_MODULES. + (CROSS_CHECK_MODULES): Add EXTRA_TARGET_HOST_CHECK_MODULES. + (INSTALL_MODULES): Add EXTRA_TARGET_HOST_INSTALL_MODULES. + +1998-07-23 Brendan Kehoe + + * Makefile.in (all-target-libjava): Depend on all-gcc and + all-target-newlib. + (configure-target-libjava): Depend on $(ALL_GCC). + Sat Jul 18 14:32:43 CDT 1998 Robert Lipe * config.guess: (*-pc-sco3.2v5) Add detection for Pentium II. @@ -674,6 +1028,11 @@ Tue Jul 14 15:37:41 1998 Geoffrey Noer * install-sh: remove -x option, and special .exe-handling hack. +Tue Jul 14 15:28:41 1998 Richard Henderson + + * config.guess: Recognize i586-pc-beos. + * configure.in: Don't build some bits for beos. + Tue Jul 14 13:22:18 1998 Ian Lance Taylor * configure: If CC is set but CFLAGS is not, and CC is gcc, make @@ -690,6 +1049,10 @@ Tue Jul 7 15:24:38 1998 Ian Lance Taylor * ltconfig, ltmain.sh: Update to libtool 1.2b. +Thu Jul 2 13:57:36 1998 Klaus Kaempf + + * makefile.vms: Update to build binutils/makefile.vms. Add install + target. Wed Jul 1 16:45:21 1998 Ian Lance Taylor @@ -730,6 +1093,11 @@ Sat Jun 27 22:46:32 1998 Jeffrey A Law (law@cygnus.com) (recursion line): Pass a --with-gcc-version=${gcc_version} to configures in subdirs. +Wed Jun 24 16:01:59 1998 John Metzler + + * configure.in (noconfigdirs): Add configure pattern for mips tx39 + cygmon + Tue Jun 23 22:42:32 1998 Mark Alexander * configure.in: Add cygmon and libstub support for mn10200. @@ -820,13 +1188,22 @@ Tue May 5 18:02:24 1998 Ian Lance Taylor 1998-04-30 Paul Eggert - * Makefile.in (EXTRA_GCC_FLAGS): Remove backslash at end; - Solaris `make' causes it to continue to next definition. + * Makefile.in (EXTRA_GCC_FLAGS): Remove backslash at end; + Solaris `make' causes it to continue to next definition. + +Tue Apr 28 16:24:24 1998 Jason Molenda (crash@bugshack.cygnus.com) + + * Makefile.in (install-gdbtk): Call this 'install-gdb' so that + the right GUI libraries and files are installed along with GDB. Tue Apr 28 18:11:24 1998 Ian Lance Taylor * configure.in: Change alpha to alpha* in several places. +Tue Apr 28 07:42:00 1998 Mark Alexander + + * config.sub: Recognize sparc86x. + Tue Apr 28 07:35:02 1998 Michael Meissner * configure.in (--enable-target-optspace): Remove debug echo. @@ -847,8 +1224,9 @@ Wed Apr 22 12:30:10 1998 Michael Meissner * configure.in (target_makefile_frag): If --enable-target-optspace, use -Os to compile target libraries rather than -O2. Default to - using -Os for m32r if --{enable,disable}-target-optspace is not - used. + using -Os for d10v and m32r if --{enable,disable}-target-optspace is + not used. + * configure.in (target_cflags): Ditto for d30v. Tue Apr 21 23:06:54 1998 Tom Tromey @@ -901,7 +1279,7 @@ Sun Apr 12 20:58:46 1998 Jeffrey A Law (law@cygnus.com) * Makefile.in (INSTALL_MODULES): Remove texinfo. Wed Apr 8 13:18:56 1998 Philippe De Muyter - + * Makefile.in (EXTRA_GCC_FLAGS): XFOO lines shortened. Thu Apr 2 14:48:44 1998 Geoffrey Noer @@ -922,6 +1300,10 @@ Thu Mar 26 12:53:20 1998 Tom Tromey (noconfigdirs) [various cases]: Likewise. (host_libs): Added intl. +Thu Mar 26 15:00:11 1998 Keith Seitz + + * configure: Do not disable building gdbtk for cygwin32 hosts. + Wed Mar 25 10:04:18 1998 Nick Clifton * configure.in: Add thumb-coff target. @@ -947,7 +1329,7 @@ Tue Mar 24 18:28:12 1998 Eric Mumpower Tue Mar 24 11:37:45 1998 Ian Lance Taylor * Makefile.in (CC_FOR_TARGET): Use $(TARGET_SUBDIR) when passing -B - for newlib directory. + for newlib directory. (CXX_FOR_TARGET): Likewise. Mon Mar 23 11:30:21 1998 Jeffrey A Law (law@cygnus.com) @@ -969,7 +1351,12 @@ Fri Mar 20 09:32:14 1998 Manfred Hollstein * Makefile.in ($(CONFIGURE_TARGET_MODULES)): Set CONFIG_SITE to a non-existent file since /dev/null loses with bash 2.0/autoconf 2.12. +Wed Mar 18 09:24:59 1998 Nick Clifton + + * configure.in: Add Thumb-pe target. + Tue Mar 17 16:59:00 1998 Syd Polk + * Makefile.in - changed sn targets to snavigator * configure.in - changed sn targets to snavigator @@ -1117,6 +1504,11 @@ Fri Jan 23 00:29:28 1998 Philip Blundell * config.guess: Add support for Linux/ARM. +Thu Jan 22 15:14:01 1998 Fred Fish + + * .cvsignore: Remove *-info and *-install since they match + release-info and mpw-install, which we don't want to just ignore. + Thu Jan 22 01:38:33 1998 Richard Henderson * configure.in: Revert 3 Jan change for alpha-linux-gnulibc1. @@ -1194,6 +1586,14 @@ Sun Dec 21 16:53:12 1997 H.J. Lu (hjl@gnu.ai.mit.edu) (alpha-*-linux*): Treat alpha-*-linux* as alpha-*-linux* and alpha-*-*. +Thu Dec 18 13:13:03 1997 Doug Evans + + * mkdep: New file. + +Wed Dec 17 09:53:02 1997 Michael Meissner + + * configure.in (d30v-*-*): Allow configuring of libide, vmake, etc. + Tue Dec 16 17:36:05 1997 Ian Lance Taylor * Makefile.in: Add libgui directory. @@ -1252,7 +1652,12 @@ Thu Nov 27 01:31:30 1997 Jeffrey A Law (law@cygnus.com) * Makefile.in (INSTALL_TARGET): Do install-gcc first. * configure (gxx_include_dir): Provide a definition for subdirs which do not use autoconf. - + +Wed Nov 26 11:53:33 1997 Keith Seitz + + * Makefile.in, configure, configure.in, ChangeLog: merge with foundry's + 11/18/97 build + Wed Nov 26 16:08:50 1997 Jeffrey A Law (law@cygnus.com) * From Franz Sirl. @@ -1273,6 +1678,19 @@ Mon Nov 10 15:23:21 1997 H.J. Lu * ltmain.sh: If mkdir fails, check whether the directory was created anyhow by some other process. +Mon Nov 10 14:38:03 1997 Michael Meissner + + * configure.in (d30v-*-*): Configure all directories. + +Sun Nov 9 17:36:20 1997 Michael Meissner + + * configure.in (d30v-*-*): Configure newlib, libiberty directories + for the D30V. + +Sat Nov 8 14:42:59 1997 Michael Meissner + + * configure.in (d30v-*-*): Configure target-libgloss on the D30V. + Fri Nov 7 10:34:09 1997 Rob Savoye * include/libiberty.h: Add extern "C" { so it can be used with C++ @@ -1280,6 +1698,10 @@ Fri Nov 7 10:34:09 1997 Rob Savoye * include/remote-sim.h: Add extern "C" { so it can be used with C++ programs. +Thu Oct 30 11:09:29 1997 Michael Meissner + + * configure.in (d30v-*-*): Configure GCC now. + Mon Oct 27 13:17:24 1997 Stan Shebs * configure.in: Remove a "second pass" of tweaking noconfigdirs, @@ -1295,10 +1717,43 @@ Sun Oct 26 11:48:27 1997 Manfred Hollstein (manfred@s-direktnet.de) targets using "$@" to provide support for similar but not identical targets without having to duplicate code. +Mon Oct 20 15:28:49 1997 Klaus K"ampf + + * makefile.vms: Fix to work with DEC C. + +Tue Oct 7 23:58:57 1997 Gavin Koch + + * config.sub: Add mips-tx39-elf to marketing names. + +Tue Oct 7 14:24:41 1997 Ian Lance Taylor + + * ltmain.sh: Handle symlinks in generated script. + +Wed Oct 1 13:11:27 1997 Ian Lance Taylor + + * configure: Handle autoconf style directory options: --bindir, + --datadir, --includedir, --infodir, --libdir, --libexecdir, + --mandir, --oldincludedir, --sbindir, --sharedstatedir, + --sysconfdir. + * Makefile.in (sbindir, libexecdir, sysconfdir): New variables. + (sharedstatedir, localstatedir, oldincludedir): New variables. + (BASE_FLAGS_TO_PASS): Pass down bindir, datadir, includedir, + infodir, libdir, libexecdir, localstatedir, mandir, oldincludedir, + sbindir, sharedstatedir, and sysconfdir. + Mon Sep 29 00:38:08 1997 Aaron Jackson * Makefile.in (bootstrap-lean): New target. +Wed Sep 24 18:06:27 1997 Stu Grossman + + * configure.in (d30v): Remove tcl, tk, expect, gdb, itcl, tix, db, + sn, and gnuserv from noconfigdirs. + +Wed Sep 24 15:18:32 1997 Ian Lance Taylor + + * ltmain.sh: Tweak shell pattern to avoid bug in NetBSD /bin/sh. + Thu Sep 18 23:58:27 1997 Jeffrey A Law (law@cygnus.com) * Makefile.in (cross): New target. @@ -1310,6 +1765,11 @@ Thu Sep 18 21:43:23 1997 Alexandre Oliva (all-bootstrap): Remove outdated and confusing target. (bootstrap, bootstrap2, bootstrap3): Don't pass BOOT_CFLAGS down. +Thu Sep 18 15:37:42 1997 Andrew Cagney + + * configure (tooldir): enable_gdbtk=YES for cygwin32, NO for + windows. Consistent with gdb/configure. + 1997-09-15 02:37 Ulrich Drepper * config/mt-linux: Define CXXFLAGS to make sure -fvtable-thunks is @@ -1319,6 +1779,14 @@ Thu Sep 18 21:43:23 1997 Alexandre Oliva * configure: Rewrite so that project Makefile fragment is inserted first and appears last in the resulting Makefile. +Tue Sep 16 09:55:07 1997 Andrew Cagney + + * Makefile.in (install-itcl): Install tcl first. + +Sun Sep 14 20:53:42 1997 Geoffrey Noer + + * config/mh-cygwin32: ok to build split texinfo files + Fri Sep 12 16:19:20 1997 Geoffrey Noer * configure.in: remove bison from noconfigdirs for Cygwin32 host @@ -1338,10 +1806,18 @@ Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com) * config.sub: Accept 'amigados' for backward compatability. +Mon Sep 8 20:46:20 1997 Ian Lance Taylor + + * config.guess: Merge with FSF. + Sun Sep 7 23:18:32 1997 Fred Fish * config.sub: Change 'amigados' to 'amigaos' to match current usage. +Sun Sep 7 15:55:28 1997 Gavin Koch + + * config.sub: Add "marketing-names" patch. + Fri Sep 5 16:11:28 1997 Joel Sherrill (joel@OARcorp.com) * configure.in (*-*-rtems*): Do not build libgloss for rtems. @@ -1367,6 +1843,10 @@ Wed Aug 27 16:15:11 1997 Jim Wilson * config.guess: Update from gcc directory. +Tue Aug 26 16:46:46 1997 Andrew Cagney + + * Makefile.in (all-sim): Depends on all-readline. + Wed Aug 20 19:57:37 1997 Jason Merrill * Makefile.in (BISON, YACC): Use $$s. @@ -1377,6 +1857,18 @@ Tue Aug 19 01:41:32 1997 Jason Merrill * Makefile.in (BISON): Add -L flag. (YACC): Likewise. +Mon Aug 18 11:30:50 1997 Nick Clifton + + * configure.in (noconfigdirs): Add support for v850e target. + + * config.sub (maybe_os): Add support for v850e target. + +Mon Aug 18 11:30:50 1997 Nick Clifton + + * configure.in (noconfigdirs): Add support for v850ea target. + + * config.sub (maybe_os): Add support for v850ea target. + Mon Aug 18 09:24:06 1997 Gavin Koch * config.sub: Add mipstx39. Delete r3900. @@ -1396,6 +1888,7 @@ Thu Aug 14 14:42:17 1997 Ian Lance Taylor * configure: When handling a Canadian Cross, handle YACC as well as BISON. Just set BISON to bison. When setting YACC, prefer bison. + * Makefile.in (all-bison): Depend upon all-texinfo. Tue Aug 12 20:09:48 1997 Jason Merrill @@ -1730,6 +2223,11 @@ Mon Mar 31 16:26:55 1997 Joel Sherrill * configure.in (hppa1.1-*-rtems*): New target, like hppa-*-*elf*. +Sun Mar 30 12:38:27 1997 Fred Fish + + * configure.in: Remove noconfigdirs case since gdb also + configures and builds for tic80-coff. + Fri Mar 28 18:28:52 1997 Ian Lance Taylor * configure: Set cache_file to config.cache. @@ -1739,6 +2237,11 @@ Wed Mar 26 18:49:39 1997 Ian Lance Taylor * COPYING: Update FSF address. +Wed Mar 26 10:38:25 1997 Michael Meissner + + * configure.in (tic80-*-*): Remove G++ libraries and libgloss from + noconfigdirs. + Mon Mar 24 15:02:39 1997 Ian Lance Taylor * Makefile.in (install-dirs): Don't crash if prefix, and hence @@ -1775,6 +2278,10 @@ Wed Mar 5 12:09:29 1997 Martin * configure.in (noconfigdirs): Remove tcl and tk from noconfigdirs for cygwin32 builds. +Fri Feb 28 18:20:15 1997 Fred Fish + + * configure.in (tic80-*-*): Remove ld from noconfigdirs. + Thu Feb 27 14:57:26 1997 Ken Raeburn * Makefile.in (GAS_SUPPORT_DIRS, BINUTILS_SUPPORT_DIRS): Remove @@ -1784,6 +2291,28 @@ Tue Feb 25 18:46:14 1997 Stan Shebs * config.sub: Accept -lnews*. +Tue Feb 25 13:19:14 1997 Andrew Cagney + + * configure.in (noconfigdirs): Disable target-newlib, + target-examples and target-libiberty for d30v. + +Fri Feb 21 17:56:25 1997 Martin M. Hunt + + * configure.in (noconfigdirs): Enable ld for d30v. + +Fri Feb 21 20:58:51 1997 Michael Meissner + + * configure.in (tic80-*-*): Build compiler. + +Sun Feb 16 15:41:09 1997 Andrew Cagney + + * configure.in (d30v-*): Remove sim directory from list of + unsupported d30v directories + +Tue Feb 18 17:32:42 1997 Martin M. Hunt + + * config.sub, configure.in: Add d30v target cpu. + Thu Feb 13 22:04:44 1997 Klaus Kaempf * makefile.vms: New file. @@ -1823,6 +2352,10 @@ Fri Jan 17 15:32:15 1997 Doug Evans * Makefile.in (all-target-winsup): Depend on all-target-libio. +Mon Jan 13 22:46:54 1997 Michael Meissner + + * configure.in (tic80-*-*): Turn off most targets right now. + Fri Jan 3 16:04:03 1997 Ian Lance Taylor * Makefile.in (MAKEINFO): Check for the existence of the Makefile, @@ -1835,6 +2368,10 @@ Tue Dec 31 16:00:31 1996 Ian Lance Taylor * config.sub, config.guess: Merge with latest FSF sources. +Fri Dec 27 23:04:33 1996 Fred Fish + + * config.sub (case $basic_machine): Add tic80 entries. + Fri Dec 27 12:07:59 1996 Ian Lance Taylor * config.sub, config.guess: Merge with latest FSF sources. @@ -1882,6 +2419,10 @@ Sat Nov 23 19:26:22 1996 Michael Meissner * config.sub: Handle d10v-unknown. +Sat Nov 23 10:23:01 1996 Gavin Koch + + * config.sub: Handle v850-unknown. + Thu Nov 21 16:19:44 1996 Geoffrey Noer * Makefile.in: add findutils @@ -2102,6 +2643,10 @@ Mon Sep 30 14:24:01 1996 Stan Shebs * mpw-build.in: Don't always depend on byacc and flex. (install-only-top): New action. +Fri Sep 27 17:39:44 1996 Stu Grossman (grossman@critters.cygnus.com) + + * configure.in: You can now configure GDB for the v850. + Tue Sep 24 19:05:12 1996 Stan Shebs * configure.in (noconfigdirs): Don't configure any C++ dirs @@ -2161,15 +2706,21 @@ Mon Aug 26 18:34:42 1996 Martin M. Hunt * configure.in (noconfigdirs): Removed gdb for D10V. -Tue Aug 26 16:46:46 1997 Andrew Cagney +Thu Aug 22 17:13:52 1996 Jeffrey A Law (law@cygnus.com) - * Makefile.in (all-sim): Depends on all-readline. + * configure.in: Remove ld, target-libio, target-libg++, and + target-libstdc++ from noconfigdirs. Wed Aug 21 18:56:38 1996 Fred Fish * configure: Fix three locations where shell scripts were being run directly rather than with config_shell. +Tue Aug 20 13:08:47 1996 J.T. Conklin + + * configure.in (v850-*-*): Set up initial $noconfigdirs. + * config.sub (basic_machine): Recognize v850. + Thu Aug 15 12:19:33 1996 Stan Shebs * mpw-configure: Handle multiple enable/disable options and @@ -3516,7 +4067,7 @@ Tue Apr 11 18:55:40 1995 Doug Evans Mon Apr 10 14:38:20 1995 Jason Molenda (crash@phydeaux.cygnus.com) - * Makefile.in: move {all,check,install}-gdb from *_MODULES + * Makefile.in: move {all,check,install}-gdb from *_MODULES to *_X11_MODULES due to gdbtk needing X include files et al. Mon Apr 10 11:42:22 1995 Stan Shebs diff --git a/Makefile.in b/Makefile.in index c74422e1b4b..3fb2114f022 100644 --- a/Makefile.in +++ b/Makefile.in @@ -40,7 +40,6 @@ gxx_include_dir=${includedir}/g++ tooldir = $(exec_prefix)/$(target_alias) build_tooldir = $(exec_prefix)/$(target_alias) - program_transform_name = man1dir = $(mandir)/man1 @@ -61,7 +60,7 @@ GDB_NLM_DEPS = SHELL = /bin/sh # INSTALL_PROGRAM_ARGS is changed by configure.in to use -x for a -# cygwin32 host. +# cygwin host. INSTALL_PROGRAM_ARGS = INSTALL = $(SHELL) $$s/install-sh -c @@ -86,6 +85,7 @@ HOST_PREFIX_1 = loser- CFLAGS = -g CXXFLAGS = -g -O2 +LDFLAGS = LIBCFLAGS = $(CFLAGS) CFLAGS_FOR_TARGET = $(CFLAGS) LDFLAGS_FOR_TARGET = @@ -111,8 +111,8 @@ NM = nm LD = ld -# Not plain GZIP, since gzip looks there for extra command-line options. -GZIPPROG = gzip +BZIPPROG = bzip2 +MD5PROG = md5sum # These values are substituted by configure. DEFAULT_YACC = yacc @@ -169,7 +169,7 @@ OTHERS = # This is set by the configure script to the list of directories which # should be built using the target tools. -TARGET_CONFIGDIRS = libiberty libgloss newlib libio librx libstdc++ libg++ winsup opcodes libstub cygmon libf2c libchill libobjc +TARGET_CONFIGDIRS = libiberty libgloss $(SPECIAL_LIBS) newlib libio librx libstdc++ libg++ winsup opcodes bsp libstub cygmon libf2c libchill libobjc # Target libraries are put under this directory: # Changed by configure to $(target_alias) if cross. @@ -215,18 +215,14 @@ CC_FOR_TARGET = ` \ if [ -f $$r/$(TARGET_SUBDIR)/newlib/Makefile ] ; then \ case "$(target_canonical)" in \ i[3456]86-*-cygwin*) \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/winsup/include -idirafter $$s/winsup/cygwin/include -idirafter $$s/winsup/w32api/include -idirafter $$s/newlib/libc/include -idirafter $$s/newlib/libc/sys/cygwin -idirafter $$s/newlib/libc/sys/cygwin32 -nostdinc; \ + echo $$r/gcc/xgcc -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$$r/gcc/ -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/winsup/include -idirafter $$s/winsup/cygwin/include -idirafter $$s/winsup/w32api/include -idirafter $$s/newlib/libc/include -idirafter $$s/newlib/libc/sys/cygwin -idirafter $$s/newlib/libc/sys/cygwin32 -nostdinc; \ ;; \ *) \ - if [ -f $$r/$(TARGET_SUBDIR)/winsup/Makefile ] ; then \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$(build_tooldir)/bin/ -L$$r/$(TARGET_SUBDIR)/winsup -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc; \ - else \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$(build_tooldir)/bin/ -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc; \ - fi; \ + echo $$r/gcc/xgcc -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$$r/gcc/ -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc; \ ;; \ esac \ else \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$(build_tooldir)/bin/; \ + echo $$r/gcc/xgcc -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -B$$r/gcc/ -isystem $(build_tooldir)/include; \ fi; \ else \ if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \ @@ -240,11 +236,11 @@ CC_FOR_TARGET = ` \ # variable is passed down to the gcc Makefile, where it is used to # build libgcc2.a. We define it here so that it can itself be # overridden on the command line. -GCC_FOR_TARGET = $$r/gcc/xgcc -B$$r/gcc/ -B$(build_tooldir)/bin/ -I$(build_tooldir)/include +GCC_FOR_TARGET = $$r/gcc/xgcc -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -B$$r/gcc/ -isystem $(build_tooldir)/include CHILL_FOR_TARGET = ` \ if [ -f $$r/gcc/xgcc ] ; then \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$(build_tooldir)/bin/ -L$$r/gcc/ch/runtime/; \ + echo $$r/gcc/xgcc -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -B$$r/gcc/ -L$$r/gcc/ch/runtime/; \ else \ if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \ echo $(CC); \ @@ -258,18 +254,14 @@ CXX_FOR_TARGET = ` \ if [ -f $$r/$(TARGET_SUBDIR)/newlib/Makefile ] ; then \ case "$(target_canonical)" in \ i[3456]86-*-cygwin*) \ - echo $$r/gcc/xgcc -B$$r/gcc/ -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -L$$r/$(TARGET_SUBDIR)/winsup -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/winsup/cygwin/include -idirafter $$s/winsup/w32api/include -idirafter $$s/newlib/libc/include -idirafter $$s/newlib/libc/sys/cygwin -idirafter $$s/newlib/libc/sys/cygwin32 -nostdinc -L$$r/$(TARGET_SUBDIR)/libstdc++; \ + echo $$r/gcc/g++ -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$$r/gcc/ -L$$r/$(TARGET_SUBDIR)/winsup -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/winsup/cygwin/include -idirafter $$s/winsup/w32api/include -idirafter $$s/newlib/libc/include -idirafter $$s/newlib/libc/sys/cygwin -idirafter $$s/newlib/libc/sys/cygwin32 -nostdinc -L$$r/$(TARGET_SUBDIR)/libstdc++; \ ;; \ *) \ - if [ -f $$r/$(TARGET_SUBDIR)/winsup/Makefile ] ; then \ - echo $$r/gcc/g++ -B$$r/gcc/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$(build_tooldir)/bin/ -L$$r/winsup -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc -L$$r/$(TARGET_SUBDIR)/libstdc++; \ - else \ - echo $$r/gcc/g++ -B$$r/gcc/ -B$(build_tooldir)/bin/ -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc -L$$r/$(TARGET_SUBDIR)/libstdc++; \ - fi; \ + echo $$r/gcc/g++ -B$(build_tooldir)/bin/ -B$$r/$(TARGET_SUBDIR)/newlib/ -B$$r/gcc/ -idirafter $$r/$(TARGET_SUBDIR)/newlib/targ-include -idirafter $$s/newlib/libc/include -nostdinc -L$$r/$(TARGET_SUBDIR)/libstdc++; \ ;; \ esac \ else \ - echo $$r/gcc/g++ -B$$r/gcc/ -B$(build_tooldir)/bin/ -L$$r/$(TARGET_SUBDIR)/libstdc++; \ + echo $$r/gcc/g++ -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -B$$r/gcc/ -isystem $(build_tooldir)/include -L$$r/$(TARGET_SUBDIR)/libstdc++; \ fi; \ else \ if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \ @@ -557,6 +549,7 @@ ALL_MODULES = \ all-ld \ all-libgui \ all-libiberty \ + all-libtool \ all-m4 \ all-make \ all-mmalloc \ @@ -575,6 +568,7 @@ ALL_MODULES = \ all-snavigator \ all-tar \ all-tcl \ + all-tcl8.1 \ all-texinfo \ all-textutils \ all-tgas \ @@ -700,6 +694,7 @@ INSTALL_MODULES = \ install-intl \ install-ispell \ install-tcl \ + install-tcl8.1 \ install-itcl \ install-ld \ install-libgui \ @@ -720,7 +715,6 @@ INSTALL_MODULES = \ install-sim \ install-snavigator \ install-tar \ - install-texinfo \ install-textutils \ install-tgas \ install-time \ @@ -740,6 +734,7 @@ ALL_X11_MODULES = \ all-guile \ all-tclX \ all-tk \ + all-tk8.1 \ all-tix # This is a list of the check targets for all of the modules which are @@ -765,6 +760,7 @@ INSTALL_X11_MODULES = \ install-gash \ install-tclX \ install-tk \ + install-tk8.1 \ install-tix # This is a list of the targets for all of the modules which are compiled @@ -779,6 +775,7 @@ ALL_TARGET_MODULES = \ all-target-libf2c \ all-target-libchill \ all-target-libobjc \ + all-target-libtermcap \ all-target-winsup \ all-target-libgloss \ all-target-libiberty \ @@ -790,6 +787,7 @@ ALL_TARGET_MODULES = \ all-target-zlib \ all-target-boehm-gc \ all-target-qthreads \ + all-target-bsp \ all-target-cygmon # This is a list of the configure targets for all of the modules which @@ -804,6 +802,7 @@ CONFIGURE_TARGET_MODULES = \ configure-target-libf2c \ configure-target-libchill \ configure-target-libobjc \ + configure-target-libtermcap \ configure-target-winsup \ configure-target-libgloss \ configure-target-libiberty \ @@ -815,6 +814,7 @@ CONFIGURE_TARGET_MODULES = \ configure-target-zlib \ configure-target-boehm-gc \ configure-target-qthreads \ + configure-target-bsp \ configure-target-cygmon # This is a list of the check targets for all of the modules which are @@ -848,6 +848,7 @@ INSTALL_TARGET_MODULES = \ install-target-libf2c \ install-target-libchill \ install-target-libobjc \ + install-target-libtermcap \ install-target-winsup \ install-target-libgloss \ install-target-libiberty \ @@ -924,7 +925,6 @@ CLEAN_MODULES = \ clean-wdiff \ clean-zip - # All of the target modules that can be cleaned CLEAN_TARGET_MODULES = \ clean-target-libio \ @@ -947,6 +947,7 @@ CLEAN_TARGET_MODULES = \ clean-target-zlib \ clean-target-boehm-gc \ clean-target-qthreads \ + clean-target-bsp \ clean-target-cygmon # All of the x11 modules that can be cleaned @@ -961,10 +962,6 @@ CLEAN_X11_MODULES = \ clean-tk \ clean-tix -# The first rule in the file had better be this one. Don't put any above it. -all: all.normal -.PHONY: all - # The target built for a native build. .PHONY: all.normal all.normal: \ @@ -1586,11 +1583,13 @@ all-binutils: all-libiberty all-opcodes all-bfd all-flex all-bison all-byacc all all-bison: all-texinfo configure-target-boehm-gc: configure-target-newlib configure-target-qthreads all-target-boehm-gc: configure-target-boehm-gc +configure-target-bsp: $(ALL_GCC) +all-target-bsp: configure-target-bsp all-gcc all-binutils all-target-newlib all-byacc: all-bzip2: all-cvssrc: configure-target-cygmon: $(ALL_GCC) -all-target-cygmon: configure-target-cygmon all-gas all-ld all-gcc all-target-libiberty all-target-newlib all-target-libio all-target-libstub +all-target-cygmon: configure-target-cygmon all-gas all-ld all-gcc all-target-libiberty all-target-newlib all-target-libio all-target-libstub all-target-bsp all-db: all-dejagnu: all-tcl all-expect all-tk all-diff: all-libiberty @@ -1627,7 +1626,7 @@ all-indent: all-inet: all-tcl all-send-pr all-perl all-intl: all-ispell: all-emacs19 -all-itcl: all-tcl all-tk +all-itcl: all-tcl all-tk all-tcl8.1 all-tk8.1 all-ld: all-libiberty all-bfd all-opcodes all-bison all-byacc all-flex all-intl configure-target-libg++: $(ALL_GCC) configure-target-librx all-target-libg++: configure-target-libg++ all-gas all-ld all-gcc all-target-libiberty all-target-newlib all-target-libio all-target-librx all-target-libstdc++ @@ -1635,8 +1634,8 @@ configure-target-libgloss: $(ALL_GCC) all-target-libgloss: configure-target-libgloss configure-target-newlib configure-target-libio: $(ALL_GCC) all-target-libio: configure-target-libio all-gas all-ld all-gcc all-target-libiberty all-target-newlib -check-target-libio: all-target-libstdc++ -all-libgui: all-tcl all-tk all-itcl +check-target-libio: +all-libgui: all-tcl all-tk all-tcl8.1 all-tk8.1 all-itcl all-libiberty: configure-target-libffi: $(ALL_GCC) configure-target-libjava: $(ALL_GCC) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-newlib configure-target-libffi @@ -1658,7 +1657,9 @@ all-m4: all-libiberty all-make: all-libiberty all-mmalloc: configure-target-newlib: $(ALL_GCC) +configure-target-libtermcap: $(ALL_GCC) all-target-newlib: configure-target-newlib all-binutils all-gas all-gcc +all-target-libtermcap: configure-target-libtermcap all-binutils all-gas all-gcc all-opcodes: all-bfd all-libiberty all-patch: all-libiberty all-perl: @@ -1675,15 +1676,17 @@ all-sim: all-libiberty all-bfd all-opcodes all-readline all-snavigator: all-tcl all-tk all-itcl all-db all-grep all-libgui all-tar: all-libiberty all-tcl: +all-tcl8.1: all-tclX: all-tcl all-tk all-tk: all-tcl +all-tk8.1: all-tcl8.1 all-texinfo: all-libiberty all-textutils: all-tgas: all-libiberty all-bfd all-opcodes all-time: -all-tix: all-tcl all-tk +all-tix: all-tcl all-tk all-tcl8.1 all-tk8.1 all-wdiff: -all-target-winsup: all-target-newlib all-target-libiberty all-target-libio configure-target-winsup +all-target-winsup: all-target-newlib all-target-libiberty all-target-libtermcap configure-target-winsup configure-target-winsup: configure-target-newlib all-uudecode: all-libiberty all-zip: @@ -1693,7 +1696,7 @@ configure-target-libiberty: $(ALL_GCC) configure-target-newlib all-target-libiberty: configure-target-libiberty all-gcc all-ld all-target-newlib all-target: $(ALL_TARGET_MODULES) install-target: $(INSTALL_TARGET_MODULES) - +install-gdb: install-tcl install-tk install-itcl install-tix install-libgui ### other supporting targets MAKEDIRS= \ @@ -1751,11 +1754,53 @@ ETC_SUPPORT= Makefile.in configure configure.in standards.texi \ # this macro. SUPPORT_FILES = list-of-support-files-for-tool-in-question -.PHONY: taz +# NOTE: No double quotes in the below. It is used within shell script +# as VER="$(VER)" +VER = ` if grep AM_INIT_AUTOMAKE $(TOOL)/configure.in >/dev/null 2>&1; then \ + sed < $(TOOL)/configure.in -n 's/AM_INIT_AUTOMAKE[^,]*, *\([^)]*\))/\1/p'; \ + else \ + sed < $(TOOL)/Makefile.in -n 's/^VERSION *= *//p'; \ + fi` +PACKAGE = $(TOOL) -taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) \ - texinfo/texinfo.tex texinfo/gpl.texinfo texinfo/lgpl.texinfo - # Take out texinfo from a few places +.PHONY: taz +taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex + $(MAKE) -f Makefile.in do-proto-toplev \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-md5sum \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-tar-bz2 \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + +.PHONY: gdb-taz +gdb-taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex + $(MAKE) -f Makefile.in do-proto-toplev \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-md5sum \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-djunpack \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-tar-bz2 \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + +.PHONY: do-proto-toplev +do-proto-toplev: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex + echo "==> Making $(PACKAGE)-$(VER)/" + # Take out texinfo from a few places. sed -e '/^all\.normal: /s/\all-texinfo //' \ -e '/^ install-texinfo /d' \ tmp @@ -1799,68 +1844,114 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) \ # mkdir proto-toplev/texinfo ln -s ../../texinfo/texinfo.tex proto-toplev/texinfo/ - ln -s ../../texinfo/gpl.texinfo proto-toplev/texinfo/ - ln -s ../../texinfo/lgpl.texinfo proto-toplev/texinfo/ if test -r texinfo/util/tex3patch ; then \ mkdir proto-toplev/texinfo/util && \ ln -s ../../../texinfo/util/tex3patch proto-toplev/texinfo/util ; \ else true; fi chmod -R og=u . || chmod og=u `find . -print` - if grep AM_INIT_AUTOMAKE $(TOOL)/configure.in >/dev/null 2>&1; then \ - ver=`sed < $(TOOL)/configure.in -n 's/AM_INIT_AUTOMAKE[^,]*, *\([^)]*\))/\1/p'`; \ - else \ - ver=`sed <$(TOOL)/Makefile.in -n 's/^VERSION *= *//p'`; \ - fi; \ - $(MAKE) -f Makefile.in do-tar-gz TOOL=$(TOOL) VER=$$ver + # + -rm -f $(PACKAGE)-$(VER) + ln -s proto-toplev $(PACKAGE)-$(VER) -do-tar-gz: - echo "==> Making $(TOOL)-$(VER).tar.gz" - -rm -f $(TOOL)-$(VER) - ln -s proto-toplev $(TOOL)-$(VER) - tar cfh $(TOOL)-$(VER).tar $(TOOL)-$(VER) - $(GZIPPROG) -v -9 $(TOOL)-$(VER).tar +.PHONY: do-tar-bz2 +do-tar-bz2: + echo "==> Making $(PACKAGE)-$(VER).tar.bz2" + -rm -f $(PACKAGE)-$(VER).tar.bz2 + find $(PACKAGE)-$(VER) -follow -name CVS -prune -o -type f -print \ + | tar cTfh - $(PACKAGE)-$(VER).tar + $(BZIPPROG) -v -9 $(PACKAGE)-$(VER).tar -TEXINFO_SUPPORT= texinfo/texinfo.tex texinfo/gpl.texinfo texinfo/lgpl.texinfo +.PHONY: do-md5sum +do-md5sum: + echo "==> Adding md5 checksum to top-level directory" + cd proto-toplev && find * -follow -name CVS -prune -o -type f -print \ + | xargs $(MD5PROG) > ../md5.sum + mv md5.sum proto-toplev + +.PHONY: do-djunpack +do-djunpack: + echo "==> Adding updated djunpack.bat to top-level directory" + echo - 's /gdb-[0-9\.]*/gdb-'"$(VER)"'/' + sed < djunpack.bat > djunpack.new \ + -e 's/gdb-[0-9][0-9\.]*/gdb-'"$(VER)"'/' + mv djunpack.new djunpack.bat + -rm -f proto-toplev/djunpack.bat + ln -s ../djunpack.bat proto-toplev/djunpack.bat + +TEXINFO_SUPPORT= texinfo/texinfo.tex DIST_SUPPORT= $(DEVO_SUPPORT) $(TEXINFO_SUPPORT) -.PHONY: gas.tar.gz -GAS_SUPPORT_DIRS= bfd include libiberty opcodes intl setup.com makefile.vms -gas.tar.gz: $(DIST_SUPPORT) $(GAS_SUPPORT_DIRS) gas +.PHONY: gas.tar.bz2 +GAS_SUPPORT_DIRS= bfd include libiberty opcodes intl setup.com makefile.vms mkdep +gas.tar.bz2: $(DIST_SUPPORT) $(GAS_SUPPORT_DIRS) gas $(MAKE) -f Makefile.in taz TOOL=gas \ + MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(GAS_SUPPORT_DIRS)" # The FSF "binutils" release includes gprof and ld. -.PHONY: binutils.tar.gz -BINUTILS_SUPPORT_DIRS= bfd gas include libiberty opcodes ld gprof intl setup.com makefile.vms -binutils.tar.gz: $(DIST_SUPPORT) $(BINUTILS_SUPPORT_DIRS) binutils +.PHONY: binutils.tar.bz2 +BINUTILS_SUPPORT_DIRS= bfd gas include libiberty opcodes ld gprof intl setup.com makefile.vms mkdep +binutils.tar.bz2: $(DIST_SUPPORT) $(BINUTILS_SUPPORT_DIRS) binutils $(MAKE) -f Makefile.in taz TOOL=binutils \ - SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS) makeall.bat configure.bat" + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS)" -.PHONY: gas+binutils.tar.gz +.PHONY: gas+binutils.tar.bz2 GASB_SUPPORT_DIRS= $(GAS_SUPPORT_DIRS) binutils ld gprof -gas+binutils.tar.gz: $(DIST_SUPPORT) $(GASB_SUPPORT_DIRS) gas +gas+binutils.tar.bz2: $(DIST_SUPPORT) $(GASB_SUPPORT_DIRS) gas $(MAKE) -f Makefile.in taz TOOL=gas \ - SUPPORT_FILES="$(GASB_SUPPORT_DIRS) makeall.bat configure.bat" + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(GASB_SUPPORT_DIRS)" -.PHONY: libg++.tar.gz +.PHONY: libg++.tar.bz2 LIBGXX_SUPPORT_DIRS=include libstdc++ libio librx libiberty -libg++.tar.gz: $(DIST_SUPPORT) libg++ +libg++.tar.bz2: $(DIST_SUPPORT) libg++ $(MAKE) -f Makefile.in taz TOOL=libg++ \ + MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(LIBGXX_SUPPORT_DIRS)" GNATS_SUPPORT_DIRS=include libiberty send-pr -gnats.tar.gz: $(DIST_SUPPORT) $(GNATS_SUPPORT_DIRS) gnats +gnats.tar.bz2: $(DIST_SUPPORT) $(GNATS_SUPPORT_DIRS) gnats $(MAKE) -f Makefile.in taz TOOL=gnats \ + MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(GNATS_SUPPORT_DIRS)" -.PHONY: gdb.tar.gz +.PHONY: gdb.tar.bz2 GDB_SUPPORT_DIRS= bfd include libiberty mmalloc opcodes readline sim utils intl -GDBTK_SUPPORT_DIRS= `if [ -d tcl -a -d tk ] ; then echo tcl tk ; fi` -gdb.tar.gz: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb - $(MAKE) -f Makefile.in taz TOOL=gdb \ - SUPPORT_FILES="$(GDB_SUPPORT_DIRS) $(GDBTK_SUPPORT_DIRS)" +gdb.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-taz TOOL=gdb \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(GDB_SUPPORT_DIRS)" -.PHONY: newlib.tar.gz +.PHONY: dejagnu.tar.bz2 +DEJAGNU_SUPPORT_DIRS= tcl expect libiberty +dejagnu.tar.bz2: $(DIST_SUPPORT) $(DEJAGNU_SUPPORT_DIRS) dejagnu + $(MAKE) -f Makefile.in taz TOOL=dejagnu \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(DEJAGNU_SUPPORT_DIRS)" + +.PHONY: gdb+dejagnu.tar.bz2 +GDBD_SUPPORT_DIRS= $(GDB_SUPPORT_DIRS) tcl expect dejagnu +gdb+dejagnu.tar.bz2: $(DIST_SUPPORT) $(GDBD_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE=gdb+dejagnu \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(GDBD_SUPPORT_DIRS)" + +.PHONY: insight.tar.bz2 +INSIGHT_SUPPORT_DIRS= $(GDB_SUPPORT_DIRS) tcl tk itcl tix libgui +insight.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE=insight \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(INSIGHT_SUPPORT_DIRS)" + +.PHONY: insight+dejagnu.tar.bz2 +INSIGHTD_SUPPORT_DIRS= $(INSIGHT_SUPPORT_DIRS) expect dejagnu +insight+dejagnu.tar.bz2: $(DIST_SUPPORT) $(INSIGHTD_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE="insight+dejagnu" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(INSIGHTD_SUPPORT_DIRS)" + +.PHONY: newlib.tar.bz2 NEWLIB_SUPPORT_DIRS=libgloss # taz configures for the sun4 target which won't configure newlib. # We need newlib configured so that the .info files are made. @@ -1873,8 +1964,9 @@ NEWLIB_SUPPORT_DIRS=libgloss # the make distclean. For now punt on the issue of shipping newlib info files # with newlib net releases and wait for a day when some native target (sun4?) # supports newlib (if only minimally). -newlib.tar.gz: $(DIST_SUPPORT) $(NEWLIB_SUPPORT_DIRS) newlib +newlib.tar.bz2: $(DIST_SUPPORT) $(NEWLIB_SUPPORT_DIRS) newlib $(MAKE) -f Makefile.in taz TOOL=newlib \ + MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(NEWLIB_SUPPORT_DIRS)" \ DEVO_SUPPORT="$(DEVO_SUPPORT) COPYING.NEWLIB" newlib diff --git a/config-ml.in b/config-ml.in index fbdfb1722db..60b1d2c1f94 100644 --- a/config-ml.in +++ b/config-ml.in @@ -72,14 +72,16 @@ # We have to handle being invoked by both Cygnus configure and Autoconf. # # Cygnus configure incoming variables: -# srcdir, subdir, target, arguments +# srcdir, subdir, host, arguments # # Autoconf incoming variables: -# srcdir, target, ac_configure_args +# srcdir, host, ac_configure_args # -# We *could* figure srcdir and target out, but we'd have to do work that +# We *could* figure srcdir and host out, but we'd have to do work that # our caller has already done to figure them out and requiring these two # seems reasonable. +# Note that `host' in this case is GCC's `target'. Target libraries are +# configured for a particular host. if [ -n "${ac_configure_args}" ]; then Makefile=${ac_file-Makefile} @@ -204,7 +206,10 @@ for i in `${CC-gcc} --print-multi-lib 2>/dev/null`; do fi done -case "${target}" in +# Target libraries are configured for the host they run on, so we check +# $host here, not $target. + +case "${host}" in arc-*-elf*) if [ x$enable_biendian != xyes ] then @@ -524,6 +529,8 @@ multi-do: flags=`echo $$i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \ if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) \ CFLAGS="$(CFLAGS) $${flags}" \ + prefix="$(prefix)" \ + exec_prefix="$(exec_prefix)" \ CXXFLAGS="$(CXXFLAGS) $${flags}" \ LIBCFLAGS="$(LIBCFLAGS) $${flags}" \ LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \ @@ -667,7 +674,24 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then echo "pwd: `pwd`" fi - if [ -d ${ml_dir} ]; then true; else mkdir ${ml_dir}; fi + if [ -d ${ml_dir} ]; then true; else + # ``mkdir -p ${ml_dir}'' See also mkinstalldirs. + pathcomp="" + for d in `echo ":${ml_dir}" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`; do + pathcomp="$pathcomp$d" + case "$pathcomp" in + -* ) pathcomp=./$pathcomp ;; + esac + if test ! -d "$pathcomp"; then + echo "mkdir $pathcomp" 1>&2 + mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$? + fi + if test ! -d "$pathcomp"; then + exit $lasterr + fi + pathcomp="$pathcomp/" + done + fi if [ -d ${ml_dir}/${ml_libdir} ]; then true; else mkdir ${ml_dir}/${ml_libdir}; fi # Eg: if ${ml_dir} = m68000/m68881, dotdot = ../../ diff --git a/config.sub b/config.sub index cb86fe1ef70..2b4fad13ff0 100755 --- a/config.sub +++ b/config.sub @@ -3,7 +3,7 @@ # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. -version='2000-05-31' +version='2000-07-06' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -29,7 +29,6 @@ version='2000-05-31' # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. -# Written by Per Bothner . # Please send patches to . # # Configuration subroutine to validate and canonicalize a configuration type. @@ -132,7 +131,7 @@ case $os in -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple) + -apple | -axis) os= basic_machine=$1 ;; @@ -212,22 +211,28 @@ case $basic_machine in | hppa64 \ | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ | alphaev6[78] \ - | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ + | we32k | ns16k | clipper | i370 | sh | sh[34] \ + | powerpc | powerpcle \ | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ | mips64orion | mips64orionel | mipstx39 | mipstx39el \ | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ | mips64vr5000 | miprs64vr5000el | mcore \ | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ - | thumb | d10v | fr30 | avr) + | thumb | d10v | d30v | fr30 | avr) basic_machine=$basic_machine-unknown ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. - i[34567]86) + i[234567]86) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. @@ -237,7 +242,7 @@ case $basic_machine in ;; # Recognize the basic CPU types with company name. # FIXME: clean up the formatting here. - vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ + vax-* | tahoe-* | i[234567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ @@ -257,7 +262,7 @@ case $basic_machine in | f301-* | armv*-* | s390-* | sv1-* | t3e-* \ | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \ - | bs2000-*) + | bs2000-* | tic54x-* | c54x-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. @@ -355,6 +360,9 @@ case $basic_machine in crds | unos) basic_machine=m68k-crds ;; + cris | cris-* | etrax*) + basic_machine=cris-axis + ;; da30 | da30-*) basic_machine=m68k-da30 ;; @@ -790,6 +798,10 @@ case $basic_machine in basic_machine=t3e-cray os=-unicos ;; + tic54x | c54x*) + basic_machine=tic54x-unknown + os=-coff + ;; tx39) basic_machine=mipstx39-unknown ;; @@ -891,6 +903,9 @@ case $basic_machine in we32k) basic_machine=we32k-att ;; + sh3 | sh4) + base_machine=sh-unknown + ;; sparc | sparcv9) basic_machine=sparc-sun ;; diff --git a/configure b/configure index e137fbcbf14..553a089af5e 100755 --- a/configure +++ b/configure @@ -3,7 +3,7 @@ ### WARNING: this file contains embedded tabs. Do not run untabify on this file. # Configuration script -# Copyright (C) 1988, 90, 91, 92, 93, 94, 95, 96, 1997 +# Copyright (C) 1988, 90, 91, 92, 93, 94, 95, 96, 97, 98, 1999 # Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify @@ -654,8 +654,8 @@ case "${TMPDIR}" in *) ;; esac -# keep this filename short for &%*%$*# 14 char file names -tmpfile=${TMPDIR}/cONf$$ +# keep this filename short for &%*%$*# 14 char file names and 8+3 file names +tmpfile=${TMPDIR}/cNf$$ # Note that under many versions of sh a trap handler for 0 will *override* any # exit status you explicitly specify! At this point, the only non-error exit # is at the end of the script; these actions are duplicated there, minus @@ -911,6 +911,7 @@ if [ "${build}" != "${host}" ]; then tools="${tools} HOST_PREFIX_1 LD LD_FOR_TARGET LEX MAKEINFO NM" tools="${tools} NM_FOR_TARGET RANLIB RANLIB_FOR_TARGET" tools="${tools} WINDRES WINDRES_FOR_TARGET YACC" + tools="${tools} OBJCOPY OBJDUMP" for var in ${tools}; do if eval [ -z \"\$${var}\" ] && [ -r Makefile ]; then @@ -954,6 +955,8 @@ t loop RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET-${target_alias}-ranlib} WINDRES=${WINDRES-${host_alias}-windres} WINDRES_FOR_TARGET=${WINDRES_FOR_TARGET-${target_alias}-windres} + OBJCOPY=${OBJCOPY-${host_alias}-objcopy} + OBJDUMP=${OBJDUMP-${host_alias}-objdump} if [ -z "${YACC}" ]; then IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:" @@ -1004,6 +1007,8 @@ t loop export NM export RANLIB export WINDRES + export OBJCOPY + export OBJDUMP else # If CC is still not set, try to get gcc. if [ -z "${CC}" ]; then @@ -1062,14 +1067,12 @@ case "$host" in enable_gdbtk=no ;; *msdosdjgpp*) enable_gdbtk=no ;; - *cygwin32*) - enable_gdbtk=no ;; esac # FIXME: This should be in configure.in, not configure # Determine whether gdb needs tk/tcl or not. if [ "$enable_gdbtk" != "no" ]; then - GDB_TK="all-tcl all-tk all-itcl all-tix" + GDB_TK="all-tcl all-tk all-itcl all-tix all-libgui" else GDB_TK="" fi @@ -1403,7 +1406,6 @@ EOF s%^CXXFLAGS[ ]*=.*$%CXXFLAGS = ${CXXFLAGS}% }" \ -e "s|^SHELL[ ]*=.*$|SHELL = ${config_shell}|" \ - -e "s:^GDB_TK[ ]*=.*$:GDB_TK = ${GDB_TK}:" \ -e "s|^srcdir[ ]*=.*$|srcdir = ${makesrcdir}|" \ -e "s/ //" \ -e "s:^program_prefix[ ]*=.*$:program_prefix = ${program_prefix}:" \ @@ -1415,6 +1417,9 @@ EOF -e "s:^DEFAULT_LEX[ ]*=.*$:DEFAULT_LEX = ${DEFAULT_LEX}:" \ -e "s:^DEFAULT_M4[ ]*=.*$:DEFAULT_M4 = ${DEFAULT_M4}:" \ ${subdir}/Makefile.tem >> ${Makefile} + + sed -e "s:^GDB_TK[ ]*=.*$:GDB_TK = ${GDB_TK}:" ${Makefile} >${Makefile}.tem + mv -f ${Makefile}.tem ${Makefile} # If this is a Canadian Cross, preset the values of many more # tools. diff --git a/configure.in b/configure.in index 5aabef8eb2a..e4ed2b23ab0 100644 --- a/configure.in +++ b/configure.in @@ -41,7 +41,7 @@ # these libraries are used by various programs built for the host environment # -host_libs="intl mmalloc libiberty opcodes bfd readline gash db tcl tk tclX itcl tix libgui" +host_libs="intl mmalloc libiberty opcodes bfd readline gash db tcl tk tcl8.1 tk8.1 tclX itcl tix libgui" if [ "${enable_gdbgui}" = "yes" ] ; then host_libs="${host_libs} libgui" @@ -59,7 +59,6 @@ fi # know that we are building the simulator. host_tools="texinfo byacc flex bison binutils ld gas gcc sim gdb make patch prms send-pr gprof gdbtest tgas etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool ispell grep diff rcs cvssrc fileutils shellutils time textutils wdiff find emacs emacs19 uudecode hello tar gzip indent recode release sed utils guile perl apache inet gawk findutils snavigator libtool gettext zip" - # these libraries are built for the target environment, and are built after # the host libraries and the host tools (which may be a cross compiler) # @@ -67,8 +66,6 @@ target_libs="target-libiberty \ target-libgloss \ target-newlib \ ${libstdcxx_version} \ - target-librx \ - target-libg++ \ target-libf2c \ target-libchill \ target-libffi \ @@ -205,7 +202,7 @@ case "${host}" in i[3456]86-*-msdosdjgpp*) host_makefile_frag="${host_makefile_frag} config/mh-djgpp" ;; - *-cygwin32*) + *-cygwin*) host_makefile_frag="${host_makefile_frag} config/mh-cygwin" ;; *-mingw32*) @@ -300,12 +297,15 @@ if [ x${shared} = xyes ]; then hppa*-*-*) host_makefile_frag="${host_makefile_frag} config/mh-papic" ;; - i[3456]86-*-cygwin32*) - # We don't want -fPIC on cygwin32. + i[3456]86-*-cygwin*) + # We don't want -fPIC on Cygwin. ;; i[3456]86-*-*) host_makefile_frag="${host_makefile_frag} config/mh-x86pic" ;; + i370-*-*) + host_makefile_frag="${host_makefile_frag} config/mh-i370pic" + ;; ia64-*-*) host_makefile_frag="${host_makefile_frag} config/mh-ia64pic" ;; @@ -365,7 +365,10 @@ case "${enable_target_optspace}:${target}" in yes:*) target_makefile_frag="${target_makefile_frag} config/mt-ospace" ;; - :m32r-* | :fr30-*) + :d30v-*) + target_makefile_frag="${target_makefile_frag} config/mt-d30v" + ;; + :m32r-* | :d10v-* | :fr30-*) target_makefile_frag="${target_makefile_frag} config/mt-ospace" ;; no:* | :*) @@ -524,8 +527,8 @@ case "${host}" in configdirs="$configdirs dosrel" ;; i[3456]86-*-mingw32*) configdirs="$configdirs dosrel" ;; - *-cygwin32*) - configdirs="$configdirs dosrel" ;; + *-cygwin*) + configdirs="$configdirs libtermcap dosrel" ;; esac # Remove more programs from consideration, based on the host or @@ -543,19 +546,13 @@ case "${host}" in ;; i[3456]86-*-mingw32*) # noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv" - noconfigdirs="expect dejagnu cvs autoconf automake send-pr gprof rcs guile perl texinfo apache inet libtool" + noconfigdirs="expect dejagnu cvs autoconf automake send-pr rcs guile perl texinfo apache inet libtool" ;; i[3456]86-*-beos*) noconfigdirs="$noconfigdirs tk itcl tix libgui gdb" ;; - *-*-cygwin32) - noconfigdirs="autoconf automake send-pr gprof rcs guile perl apache inet" - ;; - *-*-windows*) -# This is only used to build WinGDB... -# note that powerpc-eabi depends on sim configured before gdb. - configdirs="bfd libiberty opcodes readline sim gdb" - target_configdirs= + *-*-cygwin*) + noconfigdirs="autoconf automake send-pr rcs guile perl texinfo apache inet" ;; *-*-netbsd*) noconfigdirs="rcs" @@ -571,7 +568,7 @@ esac case "${target}" in *-*-netware) - noconfigdirs="$noconfigdirs target-libg++ ${libstdcxx_version} target-librx target-newlib target-libiberty target-libgloss target-libffi" + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-newlib target-libiberty target-libgloss target-libffi" ;; *-*-rtems*) noconfigdirs="$noconfigdirs target-libgloss target-libffi" @@ -588,63 +585,83 @@ case "${target}" in alpha*-*-*vms*) noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss target-libffi" ;; - alpha*-*-linux*) - # newlib is not 64 bit ready - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - # linux has rx in libc - skipdirs="$skipdirs target-librx" - ;; alpha*-*-*) # newlib is not 64 bit ready noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - arc-*-*) - noconfigdirs="$noconfigdirs target-libgloss target-libffi" - ;; sh*-*-pe|mips*-*-pe|*arm-wince-pe) noconfigdirs="$noconfigdirs target-libjava target-libffi target-zlib" noconfigdirs="$noconfigdirs target-boehm-gc target-qthreads target-examples" - noconfigdirs="$noconfigdirs target-librx target-libiberty texinfo send-pr" + noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim" noconfigdirs="$noconfigdirs expect dejagnu" # the C++ libraries don't build on top of CE's C libraries - noconfigdirs="$noconfigdirs target-libg++ ${libstdcxx_version}" + noconfigdirs="$noconfigdirs ${libstdcxx_version}" skipdirs="$skipdirs target-newlib" case "${host}" in *-*-cygwin*) ;; # keep gdb and readline - *) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version} target-libg++" + *) noconfigdirs="$noconfigdirs gdb readline ${libstdcxx_version}" ;; esac ;; + arc-*-*) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; arm-*-pe*) noconfigdirs="$noconfigdirs target-libgloss" ;; arm-*-coff*) noconfigdirs="$noconfigdirs target-libgloss" + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-cygmon" + fi ;; arm-*-elf*) noconfigdirs="$noconfigdirs target-libgloss" if [ x${is_cross_compiler} != xno ] ; then - target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" + target_configdirs="${target_configdirs} target-bsp target-cygmon" fi ;; arm-*-oabi*) noconfigdirs="$noconfigdirs target-libgloss target-libffi" - if [ x${is_cross_compiler} != xno ] ; then - target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" - fi ;; c4x-*-*) - noconfigdirs="$noconfigdirs target-libg++ ${libstdcxx_version} target-librx target-libgloss target-libffi" + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi" + ;; + c54x*-*-* | tic54x-*-*) + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi gcc gdb newlib" ;; thumb-*-coff) noconfigdirs="$noconfigdirs target-libgloss target-libffi" ;; + thumb-*-elf) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; + thumb-*-oabi) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; + strongarm-*-elf) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-cygmon" + fi + ;; + strongarm-*-coff) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-cygmon" + fi + ;; + thumb-*-pe) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; arm-*-riscix*) noconfigdirs="$noconfigdirs ld target-libgloss target-libffi" ;; d10v-*-*) - noconfigdirs="$noconfigdirs target-librx target-libg++ ${libstdcxx_version} target-libgloss target-libffi" + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi" + ;; + d30v-*-*) ;; fr30-*-elf*) if [ x${is_cross_compiler} != xno ] ; then @@ -653,7 +670,7 @@ case "${target}" in ;; h8300*-*-* | \ h8500-*-*) - noconfigdirs="$noconfigdirs target-libg++ ${libstdcxx_version} target-librx target-libgloss target-libffi" + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi" ;; hppa*-*-*elf* | \ hppa*-*-linux-gnu* | \ @@ -669,15 +686,20 @@ case "${target}" in "" | cc*) noconfigdirs="$noconfigdirs emacs emacs19" ;; *) ;; esac - noconfigdirs="$noconfigdirs ld shellutils target-libffi" + noconfigdirs="$noconfigdirs ld shellutils" + ;; + ia64*-*-elf*) + # No gdb support yet. + noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb" + ;; + i[3456]86-*-coff | i[3456]86-*-elf) + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-libstub target-cygmon" + fi ;; i[3456]86-*-go32* | i[3456]-*-msdosdjgpp*) # but don't build gdb - noconfigdirs="$noconfigdirs gdb target-libg++ ${libstdcxx_version} target-librx target-libffi" - ;; - *-*-linux*) - # linux has rx in libc - skipdirs="$skipdirs target-librx" + noconfigdirs="$noconfigdirs gdb ${libstdcxx_version} target-libffi" ;; i[3456]86-*-mingw32*) target_configdirs="$target_configdirs target-mingw" @@ -690,21 +712,21 @@ case "${target}" in ;; esac ;; - *-*-cygwin32*) - target_configdirs="$target_configdirs target-winsup" + *-*-cygwin*) + target_configdirs="$target_configdirs target-libtermcap target-winsup" noconfigdirs="$noconfigdirs target-gperf target-libgloss target-libffi" # always build newlib. skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'` - # Can't build gdb for cygwin32 if not native. + # Can't build gdb for Cygwin if not native. case "${host}" in - *-*-cygwin32*) ;; # keep gdb tcl tk expect etc. + *-*-cygwin*) ;; # keep gdb tcl tk expect etc. *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix libgui db snavigator gnuserv" ;; esac ;; i[3456]86-*-pe) - noconfigdirs="$noconfigdirs target-libg++ ${libstdcxx_version} target-librx target-libgloss target-libffi" + noconfigdirs="$noconfigdirs ${libstdcxx_version} target-libgloss target-libffi" ;; i[3456]86-*-sco3.2v5*) # The linker does not yet know about weak symbols in COFF, @@ -715,10 +737,7 @@ case "${target}" in noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi" ;; i[3456]86-*-solaris2*) - # The linker does static linking correctly, but the Solaris C library - # has bugs such that some important functions won't work when statically - # linked. (See man pages for getpwuid, for example.) - noconfigdirs="$noconfigdirs ld target-libgloss" + noconfigdirs="$noconfigdirs target-libgloss" ;; i[3456]86-*-sysv4*) # The SYSV4 C compiler doesn't handle Emacs correctly @@ -732,6 +751,16 @@ case "${target}" in i[3456]86-*-beos*) noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" ;; + m68k-*-elf*) + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-cygmon" + fi + ;; + m68k-*-coff*) + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-cygmon" + fi + ;; mn10200-*-*) noconfigdirs="$noconfigdirs target-libffi" if [ x${is_cross_compiler} != xno ] ; then @@ -741,7 +770,7 @@ case "${target}" in mn10300-*-*) noconfigdirs="$noconfigdirs target-libffi" if [ x${is_cross_compiler} != xno ] ; then - target_configdirs="${target_configdirs} target-libstub target-cygmon" + target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" fi ;; powerpc-*-aix*) @@ -766,9 +795,13 @@ case "${target}" in powerpc-*-beos*) noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss" ;; + powerpc-*-eabi) + if [ x${is_cross_compiler} != xno ] ; then + target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" + fi + ;; rs6000-*-lynxos*) # The CVS server code doesn't work on the RS/6000 - # Newlib makes problems for libg++ in crosses. noconfigdirs="$noconfigdirs target-newlib gprof cvssrc target-libffi" ;; rs6000-*-aix*) @@ -791,9 +824,9 @@ case "${target}" in noconfigdirs="$noconfigdirs ld gprof emacs target-libgloss" ;; mips*-*-irix6*) - # The GNU assembler and linker do not support IRIX 6. + # The GNU assembler does not support IRIX 6. # emacs is emacs 18, which does not work on Irix 5 (emacs19 does work) - noconfigdirs="$noconfigdirs ld gas gprof emacs target-libgloss" + noconfigdirs="$noconfigdirs gas gprof emacs target-libgloss" ;; mips*-dec-bsd*) noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi" @@ -803,7 +836,7 @@ case "${target}" in ;; mipstx39-*-*) noconfigdirs="$noconfigdirs gprof target-libffi" # same as generic mips - target_configdirs="${target_configdirs} target-libstub target-cygmon" + target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" ;; mips*-*-*) noconfigdirs="$noconfigdirs gprof target-libffi" @@ -828,14 +861,14 @@ case "${target}" in sparc64-*-elf*) if [ x${is_cross_compiler} != xno ] ; then target_configdirs="${target_configdirs} target-libstub target-cygmon" - noconfigdirs="target-libffi" fi + noconfigdirs="target-libffi" ;; - sparclite-*-aout*) + sparclite-*-*) if [ x${is_cross_compiler} != xno ] ; then - target_configdirs="${target_configdirs} target-libstub target-cygmon" - noconfigdirs="target-libffi" + target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon" fi + noconfigdirs="target-libffi" ;; sparc-*-sunos4*) if [ x${is_cross_compiler} != xno ] ; then @@ -845,11 +878,17 @@ case "${target}" in fi ;; v810-*-*) - noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} target-libg++ opcodes target-libgloss target-libffi" + noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld ${libstdcxx_version} opcodes target-libgloss target-libffi" ;; v850-*-*) noconfigdirs="$noconfigdirs target-libgloss target-libffi" ;; + v850e-*-*) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; + v850ea-*-*) + noconfigdirs="$noconfigdirs target-libgloss target-libffi" + ;; vax-*-vms) noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss target-libffi" ;; @@ -857,7 +896,6 @@ case "${target}" in noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi" ;; *-*-lynxos*) - # Newlib makes problems for libg++ in crosses. noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi" ;; *-*-macos* | \ @@ -1151,7 +1189,7 @@ fi # provide a proper gxx_include_dir. # Note, if you change the default, make sure to fix both here and in -# the gcc, libio, libstdc++ and libg++ subdirectories. +# the gcc, libio, and libstdc++ subdirectories. # Check whether --with-gxx-include-dir or --without-gxx-include-dir was given. gxx_include_dir= if test -n "${with_gxx_include_dir}"; then diff --git a/djunpack.bat b/djunpack.bat new file mode 100755 index 00000000000..f09f5ed3251 --- /dev/null +++ b/djunpack.bat @@ -0,0 +1,52 @@ +@echo off +Rem +Rem WARNING WARNING WARNING: This file needs to have DOS CRLF end-of-line +Rem format, or else stock DOS/Windows shells will refuse to run it. +Rem +Rem This batch file unpacks the GDB distribution while simultaneously +Rem renaming some of the files whose names are invalid on DOS or conflict +Rem with other file names after truncation to DOS 8+3 namespace. +Rem +Rem Invoke like this: +Rem +Rem djunpack gdb-XYZ.tar +Rem +Rem where XYZ is the version number. If the argument includes leading +Rem directories, it MUST use backslashes, not forward slashes. +Rem +Rem The following 2 lines need to be changed with each new GDB release, to +Rem be identical to the name of the top-level directory where the GDB +Rem distribution unpacks itself. +set GDBVER=gdb-5.0 +if "%GDBVER%"=="gdb-5.0" GoTo EnvOk +Rem If their environment space is too small, re-exec with a larger one +command.com /e:4096 /c %0 %1 +GoTo End +:EnvOk +if not exist %1 GoTo NoArchive +djtar -x -p -o %GDBVER%/gdb/config/djgpp/fnchange.lst %1 > fnchange.tmp +Rem The following uses a feature of COPY whereby it does not copy +Rem empty files. We need that because the previous line will create +Rem an empty fnchange.tmp even if the command failed for some reason. +copy fnchange.tmp junk.tmp > nul +if not exist junk.tmp GoTo NoDjTar +del junk.tmp +sed -e 's,@V@,%GDBVER%,g' < fnchange.tmp > fnchange.lst +Rem See the comment above about the reason for using COPY. +copy fnchange.lst junk.tmp > nul +if not exist junk.tmp GoTo NoSed +del junk.tmp +djtar -x -n fnchange.lst %1 +GoTo End +:NoSed +echo FAIL: Sed is not available. +GoTo End +:NoDjTar +echo FAIL: DJTAR is not available or no fnchange.lst file in %1. +GoTo End +:NoArchive +echo FAIL: the file %1 does not seem to exist. +echo Remember that %1 cannot use forward slashes, only backslashes. +GoTo End +:End +set GDBVER= diff --git a/ltconfig b/ltconfig index ab304fd3b73..a258dcae92e 100755 --- a/ltconfig +++ b/ltconfig @@ -2,7 +2,7 @@ # ltconfig - Create a system-specific libtool. # Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Gordon Matzigkeit , 1996 +# Originally by Gordon Matzigkeit , 1996 # # 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 @@ -32,12 +32,8 @@ if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null`" = 'X\t'; then # Yippee, $echo works! : @@ -46,9 +42,18 @@ else exec "$SHELL" "$0" --no-reexec ${1+"$@"} fi +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null`} case X$UNAME in *-DOS) PATH_SEPARATOR=';' ;; @@ -58,9 +63,9 @@ fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi -if test "X${echo_test_string+set}" != "Xset"; then +if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... @@ -82,7 +87,7 @@ if test "X`($echo '\t') 2>/dev/null`" != 'X\t' || IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" for dir in $PATH /usr/ucb; do - if test -f $dir/echo && + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then echo="$dir/echo" @@ -97,7 +102,8 @@ if test "X`($echo '\t') 2>/dev/null`" != 'X\t' || test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then # This shell has a builtin print -r that does the trick. echo='print -r' - elif test -f /bin/ksh && test "X$CONFIG_SHELL" != X/bin/ksh; then + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then # If we have ksh, try running ltconfig again with it. ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}" export ORIGINAL_CONFIG_SHELL @@ -163,10 +169,10 @@ progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` # Constants: PROGRAM=ltconfig PACKAGE=libtool -VERSION=1.2f -TIMESTAMP=" (1.385 1999/03/15 17:24:54)" -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5' +VERSION=1.3.4 +TIMESTAMP=" (1.385.2.196 1999/12/07 21:47:57)" +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' rm="rm -f" help="Try \`$progname --help' for more information." @@ -175,10 +181,12 @@ help="Try \`$progname --help' for more information." default_ofile=libtool can_build_shared=yes enable_shared=yes -# All known linkers require a `.a' archive for static linking. +# All known linkers require a `.a' archive for static linking (except M$VC, +# which needs '.lib'). enable_static=yes enable_fast_install=yes enable_dlopen=unknown +enable_win32_dll=no ltmain= silent= srcdir= @@ -194,17 +202,21 @@ need_locks=yes ac_ext=c objext=o libext=a +exeext= cache_file= old_AR="$AR" old_CC="$CC" old_CFLAGS="$CFLAGS" old_CPPFLAGS="$CPPFLAGS" +old_LDFLAGS="$LDFLAGS" old_LD="$LD" old_LN_S="$LN_S" +old_LIBS="$LIBS" old_NM="$NM" old_RANLIB="$RANLIB" old_DLLTOOL="$DLLTOOL" +old_OBJDUMP="$OBJDUMP" old_AS="$AS" # Parse the command line options. @@ -235,7 +247,7 @@ Generate a system-specific libtool script. --disable-static do not build static libraries --disable-fast-install do not optimize for fast installation --enable-dlopen enable dlopen support - --enable-dlopen-self enable support for dlopening programs + --enable-win32-dll enable building dlls on win32 hosts --help display this help and exit --no-verify do not verify that HOST is a valid host type -o, --output=FILE specify the output file [default=$default_ofile] @@ -269,6 +281,8 @@ EOM --enable-dlopen) enable_dlopen=yes ;; + --enable-win32-dll) enable_win32_dll=yes ;; + --quiet | --silent) silent=yes ;; --srcdir) prev=srcdir ;; @@ -355,8 +369,8 @@ exec 5>>./config.log # Only set LANG and LC_ALL to C if already set. # These must not be set unconditionally because not all systems understand # e.g. LANG=C (notably SCO). -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LANG+set}" = set; then LANG=C; export LANG; fi +if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi +if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi if test -n "$cache_file" && test -r "$cache_file"; then echo "loading cache $cache_file within ltconfig" @@ -448,7 +462,7 @@ aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. - if test "${COLLECT_NAMES+set}" != set; then + if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -463,6 +477,9 @@ old_postuninstall_cmds= # Set a sane default for `AR'. test -z "$AR" && AR=ar +# Set a sane default for `OBJDUMP'. +test -z "$OBJDUMP" && OBJDUMP=objdump + # If RANLIB is not set, then run the test. if test "${RANLIB+set}" != "set"; then result=no @@ -471,7 +488,7 @@ if test "${RANLIB+set}" != "set"; then IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" for dir in $PATH; do test -z "$dir" && dir=. - if test -f $dir/ranlib; then + if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then RANLIB="ranlib" result="ranlib" break @@ -487,8 +504,9 @@ if test -n "$RANLIB"; then old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" fi -# Set sane defaults for `DLLTOOL' and `AS', used on cygwin. +# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin. test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$OBJDUMP" && OBJDUMP=objdump test -z "$AS" && AS=as # Check to see if we are using GCC. @@ -498,9 +516,8 @@ if test "$with_gcc" != yes || test -z "$CC"; then echo $ac_n "checking for gcc... $ac_c" 1>&6 IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" for dir in $PATH; do - IFS="$save_ifs" test -z "$dir" && dir=. - if test -f $dir/gcc; then + if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then CC="gcc" break fi @@ -521,7 +538,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then cc_rejected=no for dir in $PATH; do test -z "$dir" && dir=. - if test -f $dir/cc; then + if test -f $dir/cc || test -f $dir/cc$ac_exeext; then if test "$dir/cc" = "/usr/ucb/cc"; then cc_rejected=yes continue @@ -561,7 +578,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then # Now see if the compiler is really GCC. with_gcc=no echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6 - echo "$progname:564: checking whether we are using GNU C" >&5 + echo "$progname:581: checking whether we are using GNU C" >&5 $rm conftest.c cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:589: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then with_gcc=yes fi $rm conftest.c @@ -583,8 +600,8 @@ compiler="$2" echo $ac_n "checking for object suffix... $ac_c" 1>&6 $rm conftest* echo 'int i = 1;' > conftest.c -echo "$progname:586: checking for object suffix" >& 5 -if { (eval echo $progname:587: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then +echo "$progname:603: checking for object suffix" >& 5 +if { (eval echo $progname:604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then # Append any warnings to the config.log. cat conftest.err 1>&5 @@ -602,6 +619,45 @@ fi $rm conftest* echo "$ac_t$objext" 1>&6 +echo $ac_n "checking for executable suffix... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$host_os" in + cygwin* | mingw* | os2*) + ac_cv_exeext=.exe + ;; + *) + ac_cv_exeext="no" + $rm conftest* + echo 'main () { return 0; }' > conftest.c + echo "$progname:634: checking for executable suffix" >& 5 + if { (eval echo $progname:635: \"$ac_link\") 1>&5; (eval $ac_link) 2>conftest.err; }; then + # Append any warnings to the config.log. + cat conftest.err 1>&5 + + for ac_file in conftest.*; do + case $ac_file in + *.c | *.err | *.$objext ) ;; + *) ac_cv_exeext=.`echo $ac_file | sed -e s/conftest.//` ;; + esac + done + else + cat conftest.err 1>&5 + echo "$progname: failed program was:" >&5 + cat conftest.c >&5 + fi + $rm conftest* + ;; + esac +fi +if test "X$ac_cv_exeext" = Xno; then + exeext="" +else + exeext="$ac_cv_exeext" +fi +echo "$ac_t$ac_cv_exeext" 1>&6 + echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6 pic_flag= special_shlib_compile_flags= @@ -614,7 +670,7 @@ if test "$with_gcc" = yes; then link_static_flag='-static' case "$host_os" in - beos* | irix5* | irix6* | osf3* | osf4*) + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; aix*) @@ -635,6 +691,11 @@ if test "$with_gcc" = yes; then # like `-m68040'. pic_flag='-m68020 -resident32 -malways-restore-a4' ;; + sysv4*MP*) + if test -d /usr/nec; then + pic_flag=-Kconform_pic + fi + ;; *) pic_flag='-fPIC' ;; @@ -664,7 +725,7 @@ else # We can build DLLs from non-PIC. ;; - osf3* | osf4*) + osf3* | osf4* | osf5*) # All OSF/1 code is PIC. wl='-Wl,' link_static_flag='-non_shared' @@ -688,7 +749,7 @@ else wl='-Qoption ld ' ;; - sysv4.2uw2* | sysv4.3* | sysv5*) + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) pic_flag='-KPIC' link_static_flag='-Bstatic' wl='-Wl,' @@ -699,6 +760,16 @@ else link_static_flag='-Bstatic' ;; + sysv4*MP*) + if test -d /usr/nec ;then + pic_flag='-Kconform_pic' + link_static_flag='-Bstatic' + elif test -d /usr/dde ;then + pic_flag='-KPIC' + link_static_flag='-Bstatic' + wl='-Wl,' + fi + ;; *) can_build_shared=no ;; @@ -714,8 +785,8 @@ if test -n "$pic_flag"; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $pic_flag -DPIC" - echo "$progname:717: checking if $compiler PIC flag $pic_flag works" >&5 - if { (eval echo $progname:718: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then + echo "$progname:776: checking if $compiler PIC flag $pic_flag works" >&5 + if { (eval echo $progname:777: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then # Append any warnings to the config.log. cat conftest.err 1>&5 @@ -753,16 +824,26 @@ fi # Check to see if options -o and -c are simultaneously supported by compiler echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6 +$rm -r conftest 2>/dev/null +mkdir conftest +cd conftest $rm conftest* echo "int some_variable = 0;" > conftest.c +mkdir out +# 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 . save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -c -o conftest2.o" -echo "$progname:760: checking if $compiler supports -c -o file.o" >&5 -if { (eval echo $progname:761: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest2.o; then +CFLAGS="$CFLAGS -o out/conftest2.o" +echo "$progname:829: checking if $compiler supports -c -o file.o" >&5 +if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings - if test -s conftest.err; then + if test -s out/conftest.err; then echo "$ac_t"no 1>&6 compiler_c_o=no else @@ -771,12 +852,17 @@ if { (eval echo $progname:761: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conft fi else # Append any errors to the config.log. - cat conftest.err 1>&5 + cat out/conftest.err 1>&5 compiler_c_o=no echo "$ac_t"no 1>&6 fi CFLAGS="$save_CFLAGS" -$rm conftest* +chmod u+w . +$rm conftest* out/* +rmdir out +cd .. +rmdir conftest +$rm -r conftest 2>/dev/null if test x"$compiler_c_o" = x"yes"; then # Check to see if we can write to a .lo @@ -785,8 +871,8 @@ if test x"$compiler_c_o" = x"yes"; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -c -o conftest.lo" - echo "$progname:788: checking if $compiler supports -c -o file.lo" >&5 -if { (eval echo $progname:789: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then + echo "$progname:862: checking if $compiler supports -c -o file.lo" >&5 +if { (eval echo $progname:863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -837,8 +923,8 @@ if test "$with_gcc" = yes; then echo "int some_variable = 0;" > conftest.c save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c" - echo "$progname:840: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 - if { (eval echo $progname:841: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then + echo "$progname:914: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 + if { (eval echo $progname:915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -881,8 +967,8 @@ $rm conftest* echo 'main(){return(0);}' > conftest.c save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $link_static_flag" -echo "$progname:884: checking if $compiler static flag $link_static_flag works" >&5 -if { (eval echo $progname:885: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +echo "$progname:958: checking if $compiler static flag $link_static_flag works" >&5 +if { (eval echo $progname:959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then echo "$ac_t$link_static_flag" 1>&6 else echo "$ac_t"none 1>&6 @@ -894,9 +980,9 @@ $rm conftest* if test -z "$LN_S"; then # Check to see if we can use ln -s, or we need hard links. echo $ac_n "checking whether ln -s works... $ac_c" 1>&6 - $rm conftestdata - if ln -s X conftestdata 2>/dev/null; then - $rm conftestdata + $rm conftest.dat + if ln -s X conftest.dat 2>/dev/null; then + $rm conftest.dat LN_S="ln -s" else LN_S=ln @@ -914,11 +1000,11 @@ if test -z "$LD"; then if test "$with_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6 - echo "$progname:917: checking for ld used by GCC" >&5 + echo "$progname:991: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. - /* | [A-Za-z]:[\\/]*) + [\\/]* | [A-Za-z]:[\\/]*) re_direlt='/[^/][^/]*/\.\./' # Canonicalize the path of ld ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` @@ -938,17 +1024,17 @@ if test -z "$LD"; then esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld... $ac_c" 1>&6 - echo "$progname:941: checking for GNU ld" >&5 + echo "$progname:1015: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 - echo "$progname:944: checking for non-GNU ld" >&5 + echo "$progname:1018: checking for non-GNU ld" >&5 fi if test -z "$LD"; then IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog"; then + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some GNU ld's only accept -v. @@ -1007,7 +1093,7 @@ hardcode_minus_L=no hardcode_shlibpath_var=unsupported runpath_var= always_export_symbols=no -export_symbols_cmds='$NM $libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' +export_symbols_cmds='$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* # included in the symbol list include_expsyms= @@ -1015,7 +1101,12 @@ include_expsyms= # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. -exclude_expsyms= +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" +# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out +# platforms (ab)use it in PIC code, but their linkers get confused if +# the symbol is explicitly referenced. Since portable code cannot +# rely on this symbol name, it's probably fine to never include it in +# preloaded symbol tables. case "$host_os" in cygwin* | mingw*) @@ -1027,10 +1118,6 @@ cygwin* | mingw*) fi ;; -freebsd2* | sunos4*) - exclude_expsyms="_GLOBAL_OFFSET_TABLE_" - ;; - esac ld_shlibs=yes @@ -1058,18 +1145,21 @@ EOF archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes - ;; - sunos4*) - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts' - wlarc= - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can use + # them. + ld_shlibs=no ;; beos*) if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' else ld_shlibs=no @@ -1086,18 +1176,19 @@ EOF # Extract the symbol export list from an `--export-all' def file, # then regenerate the def file from the symbol export list, so that # the compiled dll only exports the symbol export list. - export_symbols_cmds='rm -f $objdir/$soname-ltdll.c~ - sed -e "/^# \/\* ltdll.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ - (cd $objdir && $CC -c $soname-ltdll.c)~ - $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def $objdir/$soname-ltdll.$objext $libobjs~ + export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ + test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~ + $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def $objdir/$soname-ltdll.$objext $libobjs $convenience~ sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < $objdir/$soname-def > $export_symbols' archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~ _lt_hint=1; for symbol in `cat $export_symbols`; do - echo " \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def; + echo " \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def; _lt_hint=`expr 1 + \$_lt_hint`; done~ + test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ + test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~ $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~ $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~ @@ -1107,6 +1198,44 @@ EOF old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a' ;; + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib' + # can we support soname and/or expsyms with a.out? -oliva + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + *) if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' @@ -1121,7 +1250,20 @@ EOF runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' export_dynamic_flag_spec='${wl}--export-dynamic' - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + case $host_os in + cygwin* | mingw*) + # dlltool doesn't understand --whole-archive et. al. + whole_archive_flag_spec= + ;; + *) + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + ;; + esac fi else # PORTME fill in a description of your system's linker (not GNU ld) @@ -1141,35 +1283,45 @@ else ;; aix4*) - allow_undefined_flag= + hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib' + hardcode_libdir_separator=':' if test "$with_gcc" = yes; then - if strings `${CC} -print-prog-name=collect2` | \ - grep resolve_lib_name >/dev/null + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null then # We have reworked collect2 hardcode_direct=yes else # We have old collect2 hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= fi - archive_cmds='$CC -shared ${wl}-bnoentry -o $objdir/$soname $libobjs $deplibs $linkopts' + shared_flag='-shared' else - always_export_symbols=yes - archive_expsym_cmds='$CC -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bM:SRE ${wl}-bnoentry' + shared_flag='${wl}-bM:SRE' hardcode_direct=yes fi - hardcode_minus_L=yes - # Though LIBPATH variable hardcodes shlibpath into executable, - # it doesn't affect searching for -l* libraries; this confuses - # tests in mdemo. - hardcode_shlibpath_var=unsupported - hardcode_libdir_flag_spec='-L$libdir' + allow_undefined_flag=' ${wl}-berok' + archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}' + archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}' + case "$host_os" in aix4.[01]|aix4.[01].*) + # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on + always_export_symbols=yes ;; + esac ;; amigaos*) archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes + # see comment about different semantics on the GNU ld section + ld_shlibs=no ;; cygwin* | mingw*) @@ -1192,7 +1344,6 @@ else freebsd1*) ld_shlibs=no - can_build_shared=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor @@ -1203,7 +1354,6 @@ else archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes - hardcode_minus_L=no # verified on 2.2.6 hardcode_shlibpath_var=no ;; @@ -1220,31 +1370,27 @@ else archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes - hardcode_minus_L=no hardcode_shlibpath_var=no ;; - hpux9*) - archive_cmds='$rm $objdir/$soname~$LD -b +s +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' + hpux9* | hpux10* | hpux11*) + case "$host_os" in + hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;; + *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;; + esac hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: hardcode_direct=yes - hardcode_minus_L=yes - export_dynamic_flag_spec='${wl}-E' - ;; - - hpux10* | hpux11*) - archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_direct=yes - hardcode_minus_L=yes + hardcode_minus_L=yes # Not in the search PATH, but as the default + # location of the library. export_dynamic_flag_spec='${wl}-E' ;; irix5* | irix6*) if test "$with_gcc" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' else - archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib' + archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' fi hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: @@ -1276,21 +1422,35 @@ else old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def' ;; - osf3* | osf4*) + osf3*) if test "$with_gcc" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # As osf3* with the addition of the -msym flag + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' fi hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; sco3.2v5*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts' - hardcode_direct=yes + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes ;; solaris*) @@ -1302,63 +1462,106 @@ else $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp' hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=no + case "$host_os" in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; + esac ;; sunos4*) - # Why do we need -Bstatic? To avoid inter-library dependencies, maybe... - if test "$with_gcc" = yes; then - # Use -fPIC here because libgcc is multilibbed - archive_cmds='$CC -shared ${wl}-Bstatic -fPIC -o $lib $libobjs $deplibs $linkopts' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts' - fi + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts' hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; + sysv4) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + sysv4.3*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_direct=no - hardcode_minus_L=no hardcode_shlibpath_var=no export_dynamic_flag_spec='-Bexport' ;; + sysv5*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp' + hardcode_libdir_flag_spec= + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + ;; + uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=no - hardcode_minus_L=no hardcode_shlibpath_var=no ;; dgux*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=no + hardcode_shlibpath_var=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + elif test -d /usr/dde; then + archive_cmds='$CC -V -dy -G -z text -h $soname -o $lib $libobjs' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + no_undefined_flag='-z text' + ld_shlibs=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts' + hardcode_direct=yes hardcode_minus_L=no hardcode_shlibpath_var=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + unixware7*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no ;; *) ld_shlibs=no - can_build_shared=no ;; esac fi echo "$ac_t$ld_shlibs" 1>&6 +test "$ld_shlibs" = no && can_build_shared=no if test -z "$NM"; then echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6 case "$NM" in - /* | [A-Za-z]:[/\\]*) ;; # Let the user override the test with a path. + [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path. *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/nm; then + if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored @@ -1416,6 +1619,9 @@ irix*) solaris*) symcode='[BDT]' ;; +sysv4) + symcode='[DFNSTU]' + ;; esac # If we're using GNU nm, then use its standard symbol codes. @@ -1444,11 +1650,11 @@ void nm_test_func(){} main(){nm_test_var='a';nm_test_func();return(0);} EOF - echo "$progname:1447: checking if global_symbol_pipe works" >&5 - if { (eval echo $progname:1448: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then + echo "$progname:1635: checking if global_symbol_pipe works" >&5 + if { (eval echo $progname:1636: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then # Now try to grab the symbols. nlist=conftest.nm - if { echo "$progname:1451: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then + if { echo "$progname:1639: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then @@ -1495,12 +1701,12 @@ EOF #endif EOF # Now try linking the two files. - mv conftest.$objext conftestm.$objext + mv conftest.$objext conftstm.$objext save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" - LIBS="conftestm.$objext" + LIBS="conftstm.$objext" CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo $progname:1503: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + if { (eval echo $progname:1691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then pipe_works=yes else echo "$progname: failed program was:" >&5 @@ -1520,7 +1726,7 @@ EOF echo "$progname: failed program was:" >&5 cat conftest.c >&5 fi - $rm conftest* + $rm conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then @@ -1529,7 +1735,11 @@ EOF global_symbol_pipe= fi done -echo "$ac_t$pipe_works" 1>&6 +if test "$pipe_works" = yes; then + echo "${ac_t}ok" 1>&6 +else + echo "${ac_t}failed" 1>&6 +fi if test -z "$global_symbol_pipe"; then global_symbol_to_cdecl= @@ -1542,10 +1752,12 @@ if test -n "$hardcode_libdir_flag_spec" || \ test -n "$runpath_var"; then # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && \ - test "$hardcode_minus_L" != no && \ - test "$hardcode_shlibpath_var" != no; then - + if test "$hardcode_direct" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$hardcode_shlibpath_var" != no && + test "$hardcode_minus_L" != no; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else @@ -1628,19 +1840,25 @@ beos*) library_names_spec='${libname}.so' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH + deplibs_check_method=pass_all + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes ;; bsdi4*) version_type=linux - library_names_spec='${libname}.so$major ${libname}.so' - soname_spec='${libname}.so' - finish_cmds='PATH="$PATH:/sbin" ldconfig $libdir' + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH - deplibs_check_method='file_magic ELF 32-bit LSB shared object' + deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' file_magic_cmd=/usr/bin/file file_magic_test_file=/shlib/libc.so sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + export_dynamic_flag_spec=-rdynamic # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs @@ -1648,17 +1866,20 @@ bsdi4*) cygwin* | mingw*) version_type=windows + need_version=no + need_lib_prefix=no if test "$with_gcc" = yes; then library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a' else library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' fi dynamic_linker='Win32 ld.exe' - deplibs_check_method='file_magic file format pei*-i386.*architecture: i386' - file_magic_cmd='objdump -f' - need_lib_prefix=no + deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + file_magic_cmd='${OBJDUMP} -f' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= ;; freebsd1*) @@ -1683,13 +1904,23 @@ freebsd*) need_version=yes ;; esac - finish_cmds='PATH="$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH + case "$host_os" in + freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*) + shlibpath_overrides_runpath=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + ;; + esac ;; gnu*) version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}.so' + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' + soname_spec='${libname}${release}.so$major' shlibpath_var=LD_LIBRARY_PATH ;; @@ -1701,46 +1932,41 @@ hpux9* | hpux10* | hpux11*) need_lib_prefix=no need_version=no shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' soname_spec='${libname}${release}.sl$major' # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' ;; -irix5*) - version_type=irix - soname_spec='${libname}${release}.so' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - shlibpath_var=LD_LIBRARY_PATH - deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" # or should it be pass_all? - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /lib/libc.so*` - shlibpath_overrides_runpath=no - ;; - -irix6*) +irix5* | irix6*) version_type=irix need_lib_prefix=no need_version=no - soname_spec='${libname}${release}.so' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - case "$LD" in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; + soname_spec='${libname}${release}.so.$major' + library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so' + case "$host_os" in + irix5*) + libsuff= shlibsuff= + # this will be overridden with pass_all, but let us keep it just in case + deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case "$LD" in # libtool.m4 will add one of these switches to LD + *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no - # even though /usr/local/lib is always searched, the man-page says - # shared libraries should not be installed there if they use an ABI - # different from -32, so we'd better not search for shared libraries - # there either - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" # or should it be pass_all? + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" file_magic_cmd=/usr/bin/file file_magic_test_file=`echo /lib${libsuff}/libc.so*` + deplibs_check_method='pass_all' ;; # No shared lib support for Linux oldld, aout, or coff. @@ -1755,7 +1981,7 @@ linux-gnu*) need_version=no library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="$PATH:/sbin" ldconfig -n $libdir' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' @@ -1777,7 +2003,7 @@ netbsd*) version_type=sunos if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' @@ -1806,19 +2032,17 @@ os2*) shlibpath_var=LIBPATH ;; -osf3* | osf4*) +osf3* | osf4* | osf5*) version_type=osf + need_version=no soname_spec='${libname}${release}.so' library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' shlibpath_var=LD_LIBRARY_PATH - # deplibs_check_method='pass_all' - # Although pass_all appears to work, it copies symbols from static libraries - # into shared ones and exports them. So, when a program is linked with two - # or more libraries that have got copies of the same symbols, link fails - # This was only tested on osf4: + # this will be overridden with pass_all, but let us keep it just in case deplibs_check_method='file_magic COFF format alpha shared library' file_magic_cmd=/usr/bin/file file_magic_test_file=/shlib/libc.so + deplibs_check_method='pass_all' sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; @@ -1857,7 +2081,7 @@ sunos4*) need_version=yes ;; -sysv4.2uw2* | sysv4.3* | sysv5*) +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) version_type=linux library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' soname_spec='${libname}${release}.so$major' @@ -1866,6 +2090,15 @@ sysv4.2uw2* | sysv4.3* | sysv5*) ncr) deplibs_check_method='pass_all' ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + file_magic_cmd=/usr/bin/file + file_magic_test_file=`echo /usr/lib/libc.so*` + ;; esac ;; @@ -1885,6 +2118,21 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' + soname_spec='$libname.so.$major' + shlibpath_var=LD_LIBRARY_PATH + elif test -d /usr/dde ;then + dynamic_linker="/usr/lib/libc.so.1" + version_type=osf + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + *) dynamic_linker=no ;; @@ -1895,6 +2143,17 @@ test "$dynamic_linker" = no && can_build_shared=no # Report the final consequences. echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6 +# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in +# configure.in, otherwise build static only libraries. +case "$host_os" in +cygwin* | mingw* | os2*) + if test x$can_build_shared = xyes; then + test x$enable_win32_dll = xno && can_build_shared=no + echo "checking if package supports dlls... $can_build_shared" 1>&6 + fi +;; +esac + if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then case "$deplibs_check_method" in "file_magic "*) @@ -1973,53 +2232,8 @@ if test "x$enable_dlopen" != xyes; then else if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then lt_cv_dlopen=no lt_cv_dlopen_libs= -echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -echo "$progname:1977: checking for dlopen" >&5 -if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -dlopen(); -#endif - -; return 0; } -EOF -if { (eval echo $progname:2004: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_dlopen=yes" -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_func_dlopen=no" -fi -rm -f conftest* -fi - -if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" -else - echo "$ac_t""no" 1>&6 echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "$progname:2022: checking for dlopen in -ldl" >&5 +echo "$progname:2212: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2027,17 +2241,20 @@ else ac_save_LIBS="$LIBS" LIBS="-ldl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2055,8 +2272,55 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else echo "$ac_t""no" 1>&6 +echo $ac_n "checking for dlopen""... $ac_c" 1>&6 +echo "$progname:2252: checking for dlopen" >&5 +if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_dlopen) || defined (__stub___dlopen) +choke me +#else +dlopen(); +#endif + +; return 0; } +EOF +if { (eval echo $progname:2282: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_dlopen=yes" +else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_dlopen=no" +fi +rm -f conftest* +fi +if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then + echo "$ac_t""yes" 1>&6 + lt_cv_dlopen="dlopen" +else + echo "$ac_t""no" 1>&6 echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -echo "$progname:2059: checking for dld_link in -ldld" >&5 +echo "$progname:2299: checking for dld_link in -ldld" >&5 ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2064,17 +2328,20 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2320: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2093,18 +2360,21 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -echo "$progname:2096: checking for shl_load" >&5 +echo "$progname:2339: checking for shl_load" >&5 if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif char shl_load(); int main() { @@ -2120,7 +2390,7 @@ shl_load(); ; return 0; } EOF -if { (eval echo $progname:2123: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2369: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_shl_load=yes" else @@ -2137,54 +2407,50 @@ if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then lt_cv_dlopen="shl_load" else echo "$ac_t""no" 1>&6 -echo $ac_n "checking for LoadLibrary""... $ac_c" 1>&6 -echo "$progname:2141: checking for LoadLibrary" >&5 -if eval "test \"`echo '$''{'ac_cv_func_LoadLibrary'+set}'`\" = set"; then +echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 +echo "$progname:2387: checking for shl_load in -ldld" >&5 +ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else - cat > conftest.$ac_ext < + ac_save_LIBS="$LIBS" +LIBS="-ldld $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2409: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* - eval "ac_cv_func_LoadLibrary=yes" + eval "ac_cv_lib_$ac_lib_var=yes" else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 rm -rf conftest* - eval "ac_cv_func_LoadLibrary=no" + eval "ac_cv_lib_$ac_lib_var=no" fi rm -f conftest* -fi +LIBS="$ac_save_LIBS" -if eval "test \"`echo '$ac_cv_func_'LoadLibrary`\" = yes"; then +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" else echo "$ac_t""no" 1>&6 fi - + fi @@ -2207,17 +2473,17 @@ fi for ac_hdr in dlfcn.h; do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "$progname:2210: checking for $ac_hdr" >&5 +echo "$progname:2452: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int fnord = 0; EOF -ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo $progname:2220: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_try="$ac_compile >/dev/null 2>conftest.out" +{ (eval echo $progname:2462: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2245,7 +2511,7 @@ done LIBS="$lt_cv_dlopen_libs $LIBS" echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2248: checking whether a program can dlopen itself" >&5 +echo "$progname:2490: checking whether a program can dlopen itself" >&5 if test "${lt_cv_dlopen_self+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2253,7 +2519,7 @@ else lt_cv_dlopen_self=cross else cat > conftest.c < @@ -2296,10 +2562,10 @@ else fnord() { int i=42;} main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) exit(0); } exit(1); } + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } EOF -if { (eval echo $progname:2302: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2544: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self=yes else @@ -2318,7 +2584,7 @@ echo "$ac_t""$lt_cv_dlopen_self" 1>&6 if test "$lt_cv_dlopen_self" = yes; then LDFLAGS="$LDFLAGS $link_static_flag" echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2321: checking whether a statically linked program can dlopen itself" >&5 +echo "$progname:2563: checking whether a statically linked program can dlopen itself" >&5 if test "${lt_cv_dlopen_self_static+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2326,7 +2592,7 @@ else lt_cv_dlopen_self_static=cross else cat > conftest.c < @@ -2369,10 +2635,10 @@ else fnord() { int i=42;} main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) exit(0); } exit(1); } + if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } EOF -if { (eval echo $progname:2375: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2617: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self_static=yes else @@ -2416,8 +2682,10 @@ LTCONFIG_VERSION="$VERSION" case "$ltmain" in *.sh) # Now quote all the things that may contain metacharacters. - for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \ - old_LN_S old_DLLTOOL old_AS AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \ + for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \ + old_LD old_LDFLAGS old_LIBS \ + old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \ + AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \ reload_flag reload_cmds wl \ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ thread_safe_flag_spec whole_archive_flag_spec libname_spec \ @@ -2462,7 +2730,7 @@ case "$ltmain" in # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. # # Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Gordon Matzigkeit , 1996 +# Originally by Gordon Matzigkeit , 1996 # # 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 @@ -2488,7 +2756,7 @@ Xsed="sed -e s/^X//" # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi ### BEGIN LIBTOOL CONFIG EOF @@ -2497,8 +2765,9 @@ EOF *) # Double-quote the variables that need it (for aesthetics). - for var in old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \ - old_LN_S old_DLLTOOL old_AS; do + for var in old_CC old_CFLAGS old_CPPFLAGS \ + old_LD old_LDFLAGS old_LIBS \ + old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do eval "$var=\\\"\$var\\\"" done @@ -2518,8 +2787,9 @@ cat <> "$cfgfile" # Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # # CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\ -# LD=$old_LD NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\ -# DLLTOOL="$old_DLLTOOL" AS="$old_AS" \\ +# LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\ +# NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\ +# DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\ # $0$ltconfig_args # # Compiler and other test output produced by $progname, useful for @@ -2565,6 +2835,9 @@ NM=$NM # Used on cygwin: DLL creation program. DLLTOOL="$DLLTOOL" +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + # Used on cygwin: assembler. AS="$AS" @@ -2584,10 +2857,13 @@ objext="$objext" # Old archive suffix (normally "a"). libext="$libext" +# Executable file suffix (normally ""). +exeext="$exeext" + # Additional compiler flags for building library objects. pic_flag=$pic_flag -# Does compiler simultaneously support -c and -o options +# Does compiler simultaneously support -c and -o options? compiler_c_o=$compiler_c_o # Can we write directly to a .lo ? @@ -2657,7 +2933,7 @@ postuninstall_cmds=$postuninstall_cmds # Method to check whether dependent libraries are shared objects. deplibs_check_method=$deplibs_check_method -# Command to use when deplibs_check_method == file_magic +# Command to use when deplibs_check_method == file_magic. file_magic_cmd=$file_magic_cmd # Flag that allows shared libraries with undefined symbols to be built. @@ -2718,16 +2994,16 @@ sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec # Fix the shell variable \$srcfile for the compiler. fix_srcfile_path="$fix_srcfile_path" -# Set to yes if exported symbols are required +# Set to yes if exported symbols are required. always_export_symbols=$always_export_symbols -# The command to extract exported symbols +# The commands to list exported symbols. export_symbols_cmds=$export_symbols_cmds -# Symbols that should not be listed in the preloaded symbols +# Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$exclude_expsyms -# Symbols that must always be exported +# Symbols that must always be exported. include_expsyms=$include_expsyms EOF @@ -2743,7 +3019,7 @@ case "$ltmain" in # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "${COLLECT_NAMES+set}" != set; then +if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -2752,7 +3028,11 @@ EOF esac # Append the ltmain.sh script. - cat "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1) + sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1) + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? chmod +x "$ofile" ;; diff --git a/ltmain.sh b/ltmain.sh index bfc7e9d7ad3..a171502c77f 100644 --- a/ltmain.sh +++ b/ltmain.sh @@ -1,8 +1,8 @@ # ltmain.sh - Provide generalized library-building support services. # NOTE: Changing this file will not affect anything until you rerun ltconfig. # -# Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Gordon Matzigkeit , 1996 +# Copyright (C) 1996-1999, 2000 Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 # # 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 @@ -28,12 +28,8 @@ if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null`" = 'X\t'; then # Yippee, $echo works! : @@ -42,6 +38,15 @@ else exec $SHELL "$0" --no-reexec ${1+"$@"} fi +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat < # -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif # +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ # #include # DECLARE_CYGWIN_DLL( DllMain ); +# #endif # HINSTANCE __hDllInstance_base; # # BOOL APIENTRY @@ -780,8 +828,8 @@ compiler." allow_undefined=yes ;; esac - compile_command="$CC" - finalize_command="$CC" + compile_command="$nonopt" + finalize_command="$nonopt" compile_rpath= finalize_rpath= @@ -815,6 +863,7 @@ compiler." ltlibs= module=no objs= + prefer_static_libs=no preload=no prev= prevarg= @@ -831,11 +880,21 @@ compiler." do case "$arg" in -all-static | -static) - if test "X$arg" = "X-all-static" && test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + if test "X$arg" = "X-all-static"; then + if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + else + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi fi build_libtool_libs=no build_old_libs=yes + prefer_static_libs=yes break ;; esac @@ -868,18 +927,32 @@ compiler." fi case "$arg" in *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; self) if test "$prev" = dlprefiles; then dlself=yes elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then dlself=yes + else + dlself=needless + export_dynamic=yes fi prev= continue ;; *) - dlprefiles="$dlprefiles $arg" - test "$prev" = dlfiles && dlfiles="$dlfiles $arg" + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi prev= ;; esac @@ -903,13 +976,26 @@ compiler." prev= continue ;; - rpath) - rpath="$rpath $arg" - prev= - continue - ;; - xrpath) - xrpath="$xrpath $arg" + rpath | xrpath) + # We need an absolute path. + case "$arg" in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi prev= continue ;; @@ -928,7 +1014,6 @@ compiler." if test -n "$link_static_flag"; then compile_command="$compile_command $link_static_flag" finalize_command="$finalize_command $link_static_flag" - dlopen_self=$dlopen_self_static fi continue ;; @@ -955,22 +1040,16 @@ compiler." ;; -export-dynamic) - if test "$export_dynamic" != yes; then - export_dynamic=yes - if test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - else - arg= - fi - fi + export_dynamic=yes + continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: cannot have more than one -exported-symbols" + $echo "$modename: not more than one -exported-symbols argument allowed" exit 1 fi - if test "$arg" = "-export-symbols"; then + if test "X$arg" = "X-export-symbols"; then prev=expsyms else prev=expsyms_regex @@ -979,14 +1058,18 @@ compiler." ;; -L*) - dir=`$echo "X$arg" | $Xsed -e 's%^-L\(.*\)$%\1%'` + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. case "$dir" in - /* | [A-Za-z]:[/\\]*) - # Add the corresponding hardcode_libdir_flag, if it is not identical. - ;; + [\\/]* | [A-Za-z]:[\\/]*) ;; *) - $echo "$modename: \`-L$dir' cannot specify a relative directory" 1>&2 - exit 1 + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + absdir="$dir" + fi + dir="$absdir" ;; esac case " $deplibs " in @@ -1010,20 +1093,29 @@ compiler." ;; -l*) + if test "$arg" = "-lc"; then + case "$host" in + *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) + # These systems don't actually have c library (as such) + continue + ;; + esac + elif test "$arg" = "-lm"; then + case "$host" in + *-*-cygwin* | *-*-beos*) + # These systems don't actually have math library (as such) + continue + ;; + esac + fi deplibs="$deplibs $arg" ;; -module) - if test "$module" != yes; then - module=yes - if test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - else - arg= - fi - fi + module=yes + continue ;; - + -no-undefined) allow_undefined=no continue @@ -1047,7 +1139,19 @@ compiler." ;; -R*) - xrpath="$xrpath "`$echo "X$arg" | $Xsed -e 's/^-R//'` + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case "$dir" in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit 1 + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac continue ;; @@ -1056,7 +1160,6 @@ compiler." if test -z "$pic_flag" && test -n "$link_static_flag"; then compile_command="$compile_command $link_static_flag" finalize_command="$finalize_command $link_static_flag" - dlopen_self=$dlopen_self_static fi continue ;; @@ -1128,6 +1231,7 @@ compiler." # it will not redefine variable installed. installed=yes + # Read the .la file # If there is no directory component, then add one. case "$arg" in */* | *\\*) . $arg ;; @@ -1160,7 +1264,7 @@ compiler." fi if test -n "$dependency_libs"; then - # Extract -R from dependency_libs + # Extract -R and -L from dependency_libs temp_deplibs= for deplib in $dependency_libs; do case "$deplib" in @@ -1172,7 +1276,13 @@ compiler." -L*) case "$compile_command $temp_deplibs " in *" $deplib "*) ;; *) temp_deplibs="$temp_deplibs $deplib";; - esac;; + esac + temp_dir=`$echo "X$deplib" | $Xsed -e 's/^-L//'` + case " $lib_search_path " in + *" $temp_dir "*) ;; + *) lib_search_path="$lib_search_path $temp_dir";; + esac + ;; *) temp_deplibs="$temp_deplibs $deplib";; esac done @@ -1218,7 +1328,8 @@ compiler." prev= fi - if test "$build_libtool_libs" = yes && test -n "$library_names"; then + if test -n "$library_names" && + { test "$prefer_static_libs" = no || test -z "$old_library"; }; then link_against_libtool_libs="$link_against_libtool_libs $arg" if test -n "$shlibpath_var"; then # Make sure the rpath contains only unique directories. @@ -1230,12 +1341,13 @@ compiler." # We need an absolute path. case "$dir" in - /* | [A-Za-z]:[/\\]*) absdir="$dir" ;; + [\\/] | [A-Za-z]:[\\/]*) absdir="$dir" ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$libdir'" 1>&2 - exit 1 + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + absdir="$dir" fi ;; esac @@ -1244,24 +1356,24 @@ compiler." # Skip directories that are in the system default run-time # search path, unless they have been requested with -R. case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; + *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; - esac + esac case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; + *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" esac ;; - esac + esac lib_linked=yes case "$hardcode_action" in @@ -1419,6 +1531,12 @@ compiler." exit 1 fi + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + oldlibs= # calculate the name of the file, without its directory outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` @@ -1441,7 +1559,7 @@ compiler." $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 fi - if test -n "$dlfiles$dlprefiles"; then + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 fi @@ -1461,7 +1579,7 @@ compiler." $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 fi - if test -n "$export_symbols"; then + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 fi @@ -1500,11 +1618,6 @@ compiler." output_objdir="$output_objdir/$objdir" fi - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - if test -n "$objs"; then $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1 exit 1 @@ -1516,7 +1629,7 @@ compiler." exit 1 fi - if test -n "$dlfiles$dlprefiles"; then + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2 fi @@ -1699,7 +1812,7 @@ compiler." dependency_libs="$deplibs" case "$host" in - *-*-cygwin* | *-*-mingw* | *-*-os2*) + *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) # these systems don't actually have a c library (as such)! ;; *) @@ -1747,12 +1860,13 @@ compiler." droppeddeps=no case "$deplibs_check_method" in pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behaviour. newdeplibs=$deplibs - ;; # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behaviour. + ;; test_compile) # This code stresses the "libraries are programs" paradigm to its # limits. Maybe even breaks it. We compile a program, linking it @@ -1763,7 +1877,7 @@ compiler." int main() { return 0; } EOF $rm conftest - $C_compiler -o conftest conftest.c $deplibs + $CC -o conftest conftest.c $deplibs if test $? -eq 0 ; then ldd_output=`ldd conftest` for i in $deplibs; do @@ -1796,24 +1910,24 @@ EOF # If $name is empty we are operating on a -L argument. if test "$name" != "" ; then $rm conftest - $C_compiler -o conftest conftest.c $i + $CC -o conftest conftest.c $i # Did it work? if test $? -eq 0 ; then ldd_output=`ldd conftest` - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then - newdeplibs="$newdeplibs $i" - else - droppeddeps=yes - echo - echo "*** Warning: This library needs some functionality provided by $i." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi + libname=`eval \\$echo \"$libname_spec\"` + deplib_matches=`eval \\$echo \"$library_names_spec\"` + set dummy $deplib_matches + deplib_match=$2 + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + newdeplibs="$newdeplibs $i" + else + droppeddeps=yes + echo + echo "*** Warning: This library needs some functionality provided by $i." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + fi else droppeddeps=yes echo @@ -1827,7 +1941,6 @@ EOF fi done fi - deplibs=$newdeplibs ;; file_magic*) set dummy $deplibs_check_method @@ -1841,7 +1954,7 @@ EOF potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do # Follow soft links. - if ls -lLd "$potlib" 2>/dev/null \ + if ls -lLd "$potent_lib" 2>/dev/null \ | grep " -> " >/dev/null; then continue fi @@ -1854,11 +1967,11 @@ EOF while test -h "$potlib" 2>/dev/null; do potliblink=`ls -ld $potlib | sed 's/.* -> //'` case "$potliblink" in - /*) potlib="$potliblink";; + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; esac done - if eval $file_magic_cmd \"\$potlib\" \ + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ | sed 10q \ | egrep "$file_magic_regex" > /dev/null; then newdeplibs="$newdeplibs $a_deplib" @@ -1881,7 +1994,8 @@ EOF fi done # Gone through all deplibs. ;; - none | unknown | *) newdeplibs="" + none | unknown | *) + newdeplibs="" if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | grep . >/dev/null; then @@ -1923,21 +2037,23 @@ EOF else build_libtool_libs=no fi - dlname= - library_names= else echo "*** The inter-library dependencies that have been dropped here will be" echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." fi fi + # Done checking deplibs! + deplibs=$newdeplibs fi - # test again, we may have decided not to build it any more + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more if test "$build_libtool_libs" = yes; then - deplibs=$newdeplibs - # Done checking deplibs! - # Get the real and link names of the library. eval library_names=\"$library_names_spec\" set dummy $library_names @@ -1957,52 +2073,30 @@ EOF done # Ensure that we have .o objects for linkers which dislike .lo - # (e.g. aix) incase we are running --disable-static + # (e.g. aix) in case we are running --disable-static for obj in $libobjs; do - oldobj=`$echo "X$obj" | $Xsed -e "$lo2o"` - test -f $oldobj || ${LN_S} $obj $oldobj + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` + if test ! -f $xdir/$oldobj; then + $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" + $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? + fi done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - if test -n "$whole_archive_flag_spec"; then - if test -n "$convenience"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - fi - else - for xlib in $convenience; do - # Extract the objects. - xdir="$xlib"x - generated="$generated $xdir" - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "mkdir $xdir" - $run mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x ../$xlib)" - $run eval "(cd \$xdir && $AR x ../\$xlib)" || exit $? - - libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` - done - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - - linkopts="$linkopts $flag" - fi - # Prepare the list of exported symbols if test -z "$export_symbols"; then if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then $show "generating symbol list for \`$libname.la'" - export_symbols="$objdir/$libname.exp" + export_symbols="$output_objdir/$libname.exp" $run $rm $export_symbols eval cmds=\"$export_symbols_cmds\" IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' @@ -2025,6 +2119,51 @@ EOF $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' fi + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "mkdir $gentop" + $run mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case "$xlib" in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "mkdir $xdir" + $run mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linkopts="$linkopts $flag" + fi + # Do each of the archive commands. if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then eval cmds=\"$archive_expsym_cmds\" @@ -2065,7 +2204,7 @@ EOF $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 fi - if test -n "$dlfiles$dlprefiles"; then + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 fi @@ -2103,8 +2242,58 @@ EOF # Delete the old objects. $run $rm $obj $libobj + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${obj}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "mkdir $gentop" + $run mkdir "$gentop" + status=$? + if test $status -ne 0 && test ! -d "$gentop"; then + exit $status + fi + generated="$generated $gentop" + + for xlib in $convenience; do + # Extract the objects. + case "$xlib" in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" + + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "mkdir $xdir" + $run mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` + done + fi + fi + # Create the old-style object. - reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP` + reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" output="$obj" eval cmds=\"$reload_cmds\" @@ -2117,9 +2306,21 @@ EOF IFS="$save_ifs" # Exit if we aren't doing a library object file. - test -z "$libobj" && exit 0 + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit 0 + fi if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + # Create an invalid libtool object if no PIC, so that we don't # accidentally link it into a program. $show "echo timestamp > $libobj" @@ -2129,7 +2330,7 @@ EOF if test -n "$pic_flag"; then # Only do commands if we really have different PIC objects. - reload_objs="$libobjs" + reload_objs="$libobjs $reload_conv_objs" output="$libobj" eval cmds=\"$reload_cmds\" IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' @@ -2143,8 +2344,21 @@ EOF # Just create a symlink. $show $rm $libobj $run $rm $libobj - $show "$LN_S $obj $libobj" - $run $LN_S $obj $libobj || exit $? + xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$libobj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` + oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` + $show "(cd $xdir && $LN_S $oldobj $baseobj)" + $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop fi exit 0 @@ -2167,11 +2381,6 @@ EOF fi fi - if test "$dlself" = yes && test "$export_dynamic" = no; then - $echo "$modename: error: \`-dlopen self' requires \`-export-dynamic'" 1>&2 - exit 1 - fi - if test -n "$rpath$xrpath"; then # If the user specified any rpath flags, then add them. for libdir in $rpath $xrpath; do @@ -2207,7 +2416,6 @@ EOF fi else eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" fi elif test -n "$runpath_var"; then @@ -2244,7 +2452,6 @@ EOF fi else eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" fi elif test -n "$runpath_var"; then @@ -2269,6 +2476,16 @@ EOF output_objdir="$output_objdir/$objdir" fi + # Create the binary in the object directory, then wrap it. + if test ! -d $output_objdir; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + status=$? + if test $status -ne 0 && test ! -d $output_objdir; then + exit $status + fi + fi + if test -n "$libobjs" && test "$build_old_libs" = yes; then # Transform all the library objects into standard objects. compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` @@ -2276,7 +2493,7 @@ EOF fi dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" = yes; then + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then if test -n "$NM" && test -n "$global_symbol_pipe"; then dlsyms="${outputname}S.c" else @@ -2289,24 +2506,15 @@ EOF "") ;; *.c) # Discover the nlist of each of the dlfiles. - nlist="$objdir/${output}.nm" + nlist="$output_objdir/${outputname}.nm" - if test -d $objdir; then - $show "$rm $nlist ${nlist}S ${nlist}T" - $run $rm "$nlist" "${nlist}S" "${nlist}T" - else - $show "$mkdir $objdir" - $run $mkdir $objdir - status=$? - if test $status -ne 0 && test ! -d $objdir; then - exit $status - fi - fi + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" # Parse the name list into a source file. - $show "creating $objdir/$dlsyms" + $show "creating $output_objdir/$dlsyms" - $echo > "$objdir/$dlsyms" "\ + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ /* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ /* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ @@ -2323,7 +2531,7 @@ extern \"C\" { if test "$dlself" = yes; then $show "generating symbol list for \`$output'" - echo ': @PROGRAM@ ' > "$nlist" + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" # Add our own program objects to the symbol list. progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` @@ -2344,13 +2552,12 @@ extern \"C\" { # Prepare the list of exported symbols if test -z "$export_symbols"; then - export_symbols="$objdir/$output.exp" + export_symbols="$output_objdir/$output.exp" $run $rm $export_symbols $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' else - $run $rm $export_symbols - $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$objdir/$output.exp"' - $run eval 'grep -f "$objdir/$output.exp" < "$nlist" > "$nlist"T' + $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' + $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' $run eval 'mv "$nlist"T "$nlist"' fi fi @@ -2426,26 +2633,35 @@ static const void *lt_preloaded_setup() { fi pic_flag_for_symtable= - case "$host" in + case "$host" in # compiling the symbol table file with pic_flag works around # a FreeBSD bug that causes programs to crash when -lm is # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*) + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) case "$compile_command " in *" -static "*) ;; *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DPIC";; esac esac # Now compile the dynamic symbol file. - $show "(cd $objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" # Transform the symbol file into the correct name. - compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$objdir/${output}S.${objext}%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$objdir/${output}S.${objext}%"` + compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` + finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` ;; *) $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 @@ -2470,7 +2686,15 @@ static const void *lt_preloaded_setup() { # We have no uninstalled library dependencies, so finalize right now. $show "$link_command" $run eval "$link_command" - exit $? + status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $status fi if test -n "$shlibpath_var"; then @@ -2478,7 +2702,7 @@ static const void *lt_preloaded_setup() { rpath= for dir in $temp_rpath; do case "$dir" in - /* | [A-Za-z]:[/\\]*) + [\\/]* | [A-Za-z]:[\\/]*) # Absolute path. rpath="$rpath$dir:" ;; @@ -2524,7 +2748,6 @@ static const void *lt_preloaded_setup() { link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" - # AGH! Flame the AIX and HP-UX people for me, will ya? $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 $echo "$modename: \`$output' will be relinked during installation" 1>&2 else @@ -2545,17 +2768,7 @@ static const void *lt_preloaded_setup() { # Replace the output file specification. link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - # Create the binary in the object directory, then wrap it. - if test ! -d $output_objdir; then - $show "$mkdir $output_objdir" - $run $mkdir $output_objdir - status=$? - if test $status -ne 0 && test ! -d $objdir; then - exit $status - fi - fi - - # Delete the old output file. + # Delete the old output files. $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname $show "$link_command" @@ -2566,13 +2779,18 @@ static const void *lt_preloaded_setup() { # Quote the relink command for shipping. if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + variables_saved_for_relink="GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + for var in $variables_saved_for_relink; do + relink_command="$var=\""`eval \$echo \"X'$'$var\" | $Xsed -e "$sed_quote_subst"`"\"; export $var; $relink_command" + done relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` fi # Quote $echo for shipping. if test "X$echo" = "X$SHELL $0 --fallback-echo"; then case "$0" in - /* | [A-Za-z]:[/\\]*) qecho="$SHELL $0 --fallback-echo";; + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; *) qecho="$SHELL `pwd`/$0 --fallback-echo";; esac qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` @@ -2609,7 +2827,7 @@ sed_quote_subst='$sed_quote_subst' # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=; export CDPATH; fi +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi relink_command=\"$relink_command\" @@ -2649,7 +2867,7 @@ else # If there was a directory component, then change thisdir. if test \"x\$destdir\" != \"x\$file\"; then case \"\$destdir\" in - /* | [A-Za-z]:[/\\]*) thisdir=\"\$destdir\" ;; + [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;; *) thisdir=\"\$thisdir/\$destdir\" ;; esac fi @@ -2787,31 +3005,65 @@ fi\ addlibs="$old_convenience" fi - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. - xdir="$xlib"x - generated="$generated $xdir" - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "mkdir $xdir" - $run mkdir "$xdir" + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "mkdir $gentop" + $run mkdir "$gentop" status=$? - if test $status -ne 0 && test ! -d "$xdir"; then + if test $status -ne 0 && test ! -d "$gentop"; then exit $status fi - $show "(cd $xdir && $AR x ../$xlib)" - $run eval "(cd \$xdir && $AR x ../\$xlib)" || exit $? + generated="$generated $gentop" + + # Add in members from convenience archives. + for xlib in $addlibs; do + # Extract the objects. + case "$xlib" in + [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; + *) xabs=`pwd`"/$xlib" ;; + esac + xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` + xdir="$gentop/$xlib" - oldobjs="$oldobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` - done + $show "${rm}r $xdir" + $run ${rm}r "$xdir" + $show "mkdir $xdir" + $run mkdir "$xdir" + status=$? + if test $status -ne 0 && test ! -d "$xdir"; then + exit $status + fi + $show "(cd $xdir && $AR x $xabs)" + $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? + + oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP` + done + fi # 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 + # Ensure that we have .o objects in place in case we decided + # not to build a shared library, and have fallen back to building + # static libs even though --disable-static was passed! + for oldobj in $oldobjs; do + if test ! -f $oldobj; then + xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$oldobj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` + obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` + $show "(cd $xdir && ${LN_S} $obj $baseobj)" + $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? + fi + done + eval cmds=\"$old_archive_cmds\" fi IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' @@ -2845,9 +3097,20 @@ fi\ # Only create the output if not a dry run. if test -z "$run"; then - $echo > $output "\ -# $output - a libtool library file + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + fi + $rm $output + $echo > $output "\ +# $outputname - a libtool library file # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. # The name that we can dlopen(3). dlname='$dlname' @@ -2867,15 +3130,12 @@ age=$age revision=$revision # Is this an already installed library? -installed=no +installed=$installed # Directory that this library needs to be installed in: libdir='$install_libdir'\ " - - $rm "$output_objdir/$outputname"i - sed 's/^installed=no$/installed=yes/' \ - < "$output" > "$output_objdir/$outputname"i || exit 1 + done fi # Do a symbolic link so that the libtool archive can be found in @@ -3012,7 +3272,7 @@ libdir='$install_libdir'\ fi fi case "$destdir" in - /* | [A-Za-z]:[/\\]*) ;; + [\\/]* | [A-Za-z]:[\\/]*) ;; *) for file in $files; do case "$file" in @@ -3088,13 +3348,11 @@ libdir='$install_libdir'\ # Install the shared library and build the symlinks. $show "$install_prog $dir/$realname $destdir/$realname" $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $? - test "X$dlname" = "X$realname" && dlname= if test $# -gt 0; then # Delete the old symlinks, and create new ones. for linkname do - test "X$dlname" = "X$linkname" && dlname= if test "$linkname" != "$realname"; then $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" @@ -3102,12 +3360,6 @@ libdir='$install_libdir'\ done fi - if test -n "$dlname"; then - # Install the dynamically-loadable library. - $show "$install_prog $dir/$dlname $destdir/$dlname" - $run eval "$install_prog $dir/$dlname $destdir/$dlname" || exit $? - fi - # Do each command in the postinstall commands. lib="$destdir/$realname" eval cmds=\"$postinstall_cmds\" @@ -3123,12 +3375,6 @@ libdir='$install_libdir'\ # Install the pseudo-library for information purposes. name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` instname="$dir/$name"i - if test ! -f "$instname"; then - # Just in case it was removed... - $show "Creating $instname" - $rm "$instname" - sed 's/^installed=no$/installed=yes/' "$file" > "$instname" - fi $show "$install_prog $instname $destdir/$name" $run eval "$install_prog $instname $destdir/$name" || exit $? @@ -3226,21 +3472,29 @@ libdir='$install_libdir'\ outputname= if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes; then - outputname="/tmp/$$-$file" + if test "$finalize" = yes && test -z "$run"; then + 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 + fi + outputname="$tmpdir/$file" # Replace the output file specification. relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - $echo "$modename: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2 $show "$relink_command" if $run eval "$relink_command"; then : else $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" continue fi file="$outputname" else - $echo "$modename: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2 + $echo "$modename: warning: cannot relink \`$file'" 1>&2 fi else # Install the binary that we compiled earlier. @@ -3250,7 +3504,7 @@ libdir='$install_libdir'\ $show "$install_prog$stripme $file $destfile" $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && $rm $outputname + test -n "$outputname" && ${rm}r "$tmpdir" ;; esac done @@ -3476,8 +3730,10 @@ libdir='$install_libdir'\ done if test -z "$run"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi # Restore saved enviroment variables if test "${save_LC_ALL+set}" = set; then @@ -3494,8 +3750,10 @@ libdir='$install_libdir'\ exit 1 else # Display what would be done. - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi $echo "$cmd$args" exit 0 fi @@ -3537,9 +3795,7 @@ libdir='$install_libdir'\ # Delete the libtool libraries and symlinks. for n in $library_names; do rmfiles="$rmfiles $dir/$n" - test "X$n" = "X$dlname" && dlname= done - test -n "$dlname" && rmfiles="$rmfiles $dir/$dlname" test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library" $show "$rm $rmfiles" @@ -3718,6 +3974,8 @@ The following components of LINK-COMMAND are treated specially: -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX -LLIBDIR search LIBDIR for required installed libraries -lNAME OUTPUT-FILE requires the installed library libNAME -module build a library that can dlopened @@ -3748,7 +4006,7 @@ is created, otherwise an executable program is created." ;; uninstall) - $echo + $echo \ "Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... Remove libraries from an installation directory. diff --git a/missing b/missing index cbe2b0ef0e3..7789652e877 100755 --- a/missing +++ b/missing @@ -82,15 +82,17 @@ WARNING: \`$1' is missing on your system. You should only need it if you modified \`acconfig.h' or \`configure.in'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER([^):]*:\([^)]*\)).*/\1/p' configure.in` - if test -z "$files"; then - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^):]*\)).*/\1/p' configure.in` - test -z "$files" || files="$files.in" - else - files=`echo "$files" | sed -e 's/:/ /g'` - fi - test -z "$files" && files="config.h.in" - touch $files + files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' configure.in` + test -z "$files" && files="config.h" + touch_files= + for f in $files; do + case "$f" in + *:*) touch_files="$touch_files "`echo "$f" | + sed -e 's/^[^:]*://' -e 's/:.*//'`;; + *) touch_files="$touch_files $f.in";; + esac + done + touch $touch_files ;; automake) @@ -99,9 +101,9 @@ WARNING: \`$1' is missing on your system. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." - find . -type f -name Makefile.am -print \ - | sed 's/^\(.*\).am$/touch \1.in/' \ - | sh + find . -type f -name Makefile.am -print | + sed 's/\.am$/.in/' | + while read f; do touch "$f"; done ;; bison|yacc) diff --git a/mkdep b/mkdep new file mode 100755 index 00000000000..3c5b508f142 --- /dev/null +++ b/mkdep @@ -0,0 +1,87 @@ +#!/bin/sh - +# +# Copyright (c) 1987 Regents of the University of California. +# All rights reserved. +# +# Redistribution and use in source and binary forms are permitted +# provided that the above copyright notice and this paragraph are +# duplicated in all such forms and that any documentation, +# advertising materials, and other materials related to such +# distribution and use acknowledge that the software was developed +# by the University of California, Berkeley. The name of the +# University may not be used to endorse or promote products derived +# from this software without specific prior written permission. +# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED +# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. +# +# @(#)mkdep.sh 5.12 (Berkeley) 6/30/88 +# + +MAKE=Makefile # default makefile name is "Makefile" + +while : + do case "$1" in + # -f allows you to select a makefile name + -f) + MAKE=$2 + shift; shift ;; + + # the -p flag produces "program: program.c" style dependencies + # so .o's don't get produced + -p) + SED='s;\.o;;' + shift ;; + *) + break ;; + esac +done + +if [ $# = 0 ] ; then + echo 'usage: mkdep [-p] [-f makefile] [flags] file ...' + exit 1 +fi + +if [ ! -w $MAKE ]; then + echo "mkdep: no writeable file \"$MAKE\"" + exit 1 +fi + +TMP=/tmp/mkdep$$ + +trap 'rm -f $TMP ; exit 1' 1 2 3 13 15 + +cp $MAKE ${MAKE}.bak + +sed -e '/DO NOT DELETE THIS LINE/,$d' < $MAKE > $TMP + +cat << _EOF_ >> $TMP +# DO NOT DELETE THIS LINE -- mkdep uses it. +# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. + +_EOF_ + +# If your compiler doesn't have -M, add it. If you can't, the next two +# lines will try and replace the "cc -M". The real problem is that this +# hack can't deal with anything that requires a search path, and doesn't +# even try for anything using bracket (<>) syntax. +# +# egrep '^#include[ ]*".*"' /dev/null $* | +# sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' -e 's/\.c/.o/' | + +gcc -MM $* | +sed " + s; \./; ;g + $SED" >> $TMP + +cat << _EOF_ >> $TMP + +# IF YOU PUT ANYTHING HERE IT WILL GO AWAY +_EOF_ + +# copy to preserve permissions +cp $TMP $MAKE +rm -f ${MAKE}.bak $TMP +exit 0 + +