for copying files correctly from the source tree, we must know
exactly which files should be copied by the --ltdl option to avoid
accidentally picking up compilation objects and other noise when
$builddir == $srcdir:
* libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
(install-data-local): Removed...
* libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
(show-ltdldatafiles): New rule...
* Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
exactly which files are installed by libtoolize --ltdl.
(edit): Move pkgvmacro_DATA substitution expression...
(libtoolize): ...to here.
* libtoolize.m4sh: Use func_copy_some_files() instead of
func_copy_all_from_path() to copy the --ltdl option installed
files.
(pkgvltdldirs): New path variable to search for files installed by
--ltdl option.
(func_massage_pkgvltdl_files): New function to calculate the list
of ltdl installation files.
and set to empty when using $LD for linking. Fixes regression
introduced in 2004-11-17.
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
Test if it is possible to use the -exports_file linker option on
irix with gcc, as the gcc specs file may include a -hidden_symbol
option that is clashing with the -exports_file option.
See this gcc bugzilla entry for further details:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
* THANKS: Update.
format with the `o' flag in create mode.
Set the umask to 0 when untarring to avoid copied files taking
their mode from the installer's umask.
* libltdl/loaders/Makefile.am (install-data-local): Ditto.
* libtoolize.m4sh (func_copy_cb): Ditto.
Ignore errors from failed `cd' in the tar processes, since we
may be running in dryrun mode.
Reported by Noah Misch <noah@cs.caltech.edu>,
Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
[irix*, osf*]: Output -update_registry information to
${output_objdir} directory, not ${objdir}. ${output_objdir}
will work when a project has a single Makefile and performs
builds in subdirectories. ${objdir} expects the source in
the current directory, breaking single-Makefile builds.
delimited serial number that didn't used to be processed
correctly by libtoolize. This changeset fixes that, and
leverages those changes to check versions of ltmain.sh and
config.sub, config.guess before overwriting when --force is
not given:
* libtoolize.m4sh: Don't overwrite pkgaux files with --force
unless --install is given too.
(func_serial): Fix underquoting in regexp.
(func_serial_max): New function to compare serial numbers.
(func_serial_update_check): New function factored out of
func_serial_update().
(func_serial_update): Bail if SRCFILE is missing.
Don't display both 'already up to date' and 'use --force to
update' messages for the same file.
Use func_serial_max to cope with `.' delimited serial numbers.
(func_ltmain_update): Use func_serial_update_check and
func_serial_max to do version checking with $package_revision.
(func_config_update): Ditto with $timestamp.
tarring up the files for installation to $(DESTDIR)$(ltdldatadir).
Don't remove the destination directory, since that interacts badly
with the multi-Makefile installation.
* libltdl/loaders/Makefile.am (install-data-local): Ditto.
libraries that will be used as modules -- the pic objects are
built normally, and are not expected to resolve all their symbols
until they are linked into a library; convenience libraries are
then rolled using 'ar' and 'ranlib' (or equivalent) which also do
not check whether symbols are resolved. We now build each of the
loaders as a convenience library module under these assumptions,
and link libltdl.la with selected modules, at which time all of
the symbols *are* resolved:
* TODO: Remove item addressed by this changeset.
* libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
(libdlloader_la_SOURCES): Declaration removed. Changed all
clients. Source files..
(libltdl_la_SOURCES): ...added back in here.
(libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
(libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
* libltdl/loaders/Makefile.am: Removed all references to
libdlloader.la.
compiler does not pass --whole-archive. Move gnu ld check for
the flag to the top so it can be overridden.
(_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
whole_archive_flag_spec for the portland group's c++ compiler too.
Reported by Jeff Squyres <jsquyres@lam-mpi.org>
`libtoolize --ltdl --copy' is pointless if they are not preserved
from the libtool source tree at install time:
* libltdl/Makefile.am, libltdl/loaders/Makefile.am
(nobase_ltdldata_DATA): Renamed to...
(ltdldatafiles): ...this.
(install-data-local): New rule to install libltdl tree with tar to
preserve timestamps.
parts of the autoconf bootstrap would be rerun spuriously after
the files had been copied into the source tree:
* libtoolize.m4sh (TAR): New default tar command.
(func_copy_cb): Move the core copying internals to here, using
$TAR to transfer files if possible when --copy was specified.
(func_copy): Adjust to call func_copy_cb.
* TODO: Remember to refactor this fix in due course.
Reported by Jeff Squyres <jsquyres@lam-mpi.org>