libtool/tests/libtoolize.at

1142 lines
37 KiB
Plaintext
Raw Normal View History

* HACKING (Licensing Rules): Explain the various license texts used for files distributed with Libtool, and update license text to match. * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO, bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc, libltdl/README, libltdl/argz.c, libltdl/argz_.h, libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, libltdl/config/mkstamp, libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in, Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at, tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/cdemo-undef.test, tests/cdemo/Makefile.am, tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c, tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/demo/Makefile.am, tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c, tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c, tests/demo/hello.c, tests/demo/main.c, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/depdemo/Makefile.am, tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am, tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h, tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c, tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am, tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h, tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c, tests/depdemo/l4/l4.h, tests/depdemo/main.c, tests/depdemo/sysdep.h, tests/deplibs-ident.at, tests/destdir.at, tests/duplicate_conv.at, tests/duplicate_deps.at, tests/duplicate_members.at, tests/early-libtool.at, tests/export.at, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/f77demo/Makefile.am, tests/f77demo/configure.ac, tests/f77demo/cprogram.c, tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test, tests/fcdemo-make.test, tests/fcdemo-shared.test, tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/inherited_flags.at, tests/libtoolize.at, tests/link-2.test, tests/link-order.at, tests/link-order2.at, tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo/Makefile.am, tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c, tests/mdemo/sub.c, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac, tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at, tests/objectlist.test, tests/old-m4-iface.at, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/pdemo/Makefile.am, tests/pdemo/configure.ac, tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c, tests/pdemo/longer_file_name_foo.c, tests/pdemo/longer_file_name_foo2.c, tests/pdemo/longer_file_name_hell1.c, tests/pdemo/longer_file_name_hell2.c, tests/pdemo/longer_file_name_hello.c, tests/pdemo/longer_file_name_main.c, tests/quote.test, tests/recursive.at, tests/search-path.at, tests/sh.test, tests/shlibpath.at, tests/standalone.at, tests/static.at, tests/stresstest.at, tests/subproject.at, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagdemo-undef.test, tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp, tests/tagdemo/baz.h, tests/tagdemo/configure.ac, tests/tagdemo/conv.cpp, tests/tagdemo/conv.h, tests/tagdemo/foo.cpp, tests/tagdemo/foo.h, tests/tagdemo/main.cpp, tests/tagtrace.test, tests/template.at, tests/testsuite.at: Apply correct license text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
# libtoolize.at -- test libtoolize operation -*- Autotest -*-
#
# Copyright (C) 2005, 2007-2008, 2011-2012 Free Software Foundation,
# Inc.
* HACKING (Licensing Rules): Explain the various license texts used for files distributed with Libtool, and update license text to match. * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO, bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc, libltdl/README, libltdl/argz.c, libltdl/argz_.h, libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, libltdl/config/mkstamp, libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in, Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at, tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/cdemo-undef.test, tests/cdemo/Makefile.am, tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c, tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/demo/Makefile.am, tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c, tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c, tests/demo/hello.c, tests/demo/main.c, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/depdemo/Makefile.am, tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am, tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h, tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c, tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am, tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h, tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c, tests/depdemo/l4/l4.h, tests/depdemo/main.c, tests/depdemo/sysdep.h, tests/deplibs-ident.at, tests/destdir.at, tests/duplicate_conv.at, tests/duplicate_deps.at, tests/duplicate_members.at, tests/early-libtool.at, tests/export.at, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/f77demo/Makefile.am, tests/f77demo/configure.ac, tests/f77demo/cprogram.c, tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test, tests/fcdemo-make.test, tests/fcdemo-shared.test, tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/inherited_flags.at, tests/libtoolize.at, tests/link-2.test, tests/link-order.at, tests/link-order2.at, tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo/Makefile.am, tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c, tests/mdemo/sub.c, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac, tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at, tests/objectlist.test, tests/old-m4-iface.at, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/pdemo/Makefile.am, tests/pdemo/configure.ac, tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c, tests/pdemo/longer_file_name_foo.c, tests/pdemo/longer_file_name_foo2.c, tests/pdemo/longer_file_name_hell1.c, tests/pdemo/longer_file_name_hell2.c, tests/pdemo/longer_file_name_hello.c, tests/pdemo/longer_file_name_main.c, tests/quote.test, tests/recursive.at, tests/search-path.at, tests/sh.test, tests/shlibpath.at, tests/standalone.at, tests/static.at, tests/stresstest.at, tests/subproject.at, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagdemo-undef.test, tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp, tests/tagdemo/baz.h, tests/tagdemo/configure.ac, tests/tagdemo/conv.cpp, tests/tagdemo/conv.h, tests/tagdemo/foo.cpp, tests/tagdemo/foo.h, tests/tagdemo/main.cpp, tests/tagtrace.test, tests/template.at, tests/testsuite.at: Apply correct license text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
# Written by Gary V. Vaughan, 2005
#
# This file is part of GNU Libtool.
#
# GNU Libtool is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of
# the License, or (at your option) any later version.
#
# GNU Libtool is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
* HACKING (Licensing Rules): Explain the various license texts used for files distributed with Libtool, and update license text to match. * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO, bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc, libltdl/README, libltdl/argz.c, libltdl/argz_.h, libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, libltdl/config/mkstamp, libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in, Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at, tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/cdemo-undef.test, tests/cdemo/Makefile.am, tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c, tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/demo/Makefile.am, tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c, tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c, tests/demo/hello.c, tests/demo/main.c, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/depdemo/Makefile.am, tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am, tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h, tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c, tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am, tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h, tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c, tests/depdemo/l4/l4.h, tests/depdemo/main.c, tests/depdemo/sysdep.h, tests/deplibs-ident.at, tests/destdir.at, tests/duplicate_conv.at, tests/duplicate_deps.at, tests/duplicate_members.at, tests/early-libtool.at, tests/export.at, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/f77demo/Makefile.am, tests/f77demo/configure.ac, tests/f77demo/cprogram.c, tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test, tests/fcdemo-make.test, tests/fcdemo-shared.test, tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/inherited_flags.at, tests/libtoolize.at, tests/link-2.test, tests/link-order.at, tests/link-order2.at, tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo/Makefile.am, tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c, tests/mdemo/sub.c, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac, tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at, tests/objectlist.test, tests/old-m4-iface.at, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/pdemo/Makefile.am, tests/pdemo/configure.ac, tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c, tests/pdemo/longer_file_name_foo.c, tests/pdemo/longer_file_name_foo2.c, tests/pdemo/longer_file_name_hell1.c, tests/pdemo/longer_file_name_hell2.c, tests/pdemo/longer_file_name_hello.c, tests/pdemo/longer_file_name_main.c, tests/quote.test, tests/recursive.at, tests/search-path.at, tests/sh.test, tests/shlibpath.at, tests/standalone.at, tests/static.at, tests/stresstest.at, tests/subproject.at, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagdemo-undef.test, tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp, tests/tagdemo/baz.h, tests/tagdemo/configure.ac, tests/tagdemo/conv.cpp, tests/tagdemo/conv.h, tests/tagdemo/foo.cpp, tests/tagdemo/foo.h, tests/tagdemo/main.cpp, tests/tagtrace.test, tests/template.at, tests/testsuite.at: Apply correct license text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
#
# You should have received a copy of the GNU General Public License
* HACKING (Licensing Rules): Explain the various license texts used for files distributed with Libtool, and update license text to match. * Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO, bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc, libltdl/README, libltdl/argz.c, libltdl/argz_.h, libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh, libltdl/config/mkstamp, libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in, Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at, tests/cdemo-conf.test, tests/cdemo-exec.test, tests/cdemo-make.test, tests/cdemo-shared.test, tests/cdemo-static.test, tests/cdemo-undef.test, tests/cdemo/Makefile.am, tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c, tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh, tests/demo-conf.test, tests/demo-deplibs.test, tests/demo-exec.test, tests/demo-hardcode.test, tests/demo-inst.test, tests/demo-make.test, tests/demo-nofast.test, tests/demo-noinst-link.test, tests/demo-nopic.test, tests/demo-pic.test, tests/demo-relink.test, tests/demo-shared.test, tests/demo-static.test, tests/demo-unst.test, tests/demo/Makefile.am, tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c, tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c, tests/demo/hello.c, tests/demo/main.c, tests/depdemo-conf.test, tests/depdemo-exec.test, tests/depdemo-inst.test, tests/depdemo-make.test, tests/depdemo-nofast.test, tests/depdemo-relink.test, tests/depdemo-shared.test, tests/depdemo-static.test, tests/depdemo-unst.test, tests/depdemo/Makefile.am, tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am, tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h, tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c, tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am, tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h, tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c, tests/depdemo/l4/l4.h, tests/depdemo/main.c, tests/depdemo/sysdep.h, tests/deplibs-ident.at, tests/destdir.at, tests/duplicate_conv.at, tests/duplicate_deps.at, tests/duplicate_members.at, tests/early-libtool.at, tests/export.at, tests/f77demo-conf.test, tests/f77demo-exec.test, tests/f77demo-make.test, tests/f77demo-shared.test, tests/f77demo-static.test, tests/f77demo/Makefile.am, tests/f77demo/configure.ac, tests/f77demo/cprogram.c, tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test, tests/fcdemo-make.test, tests/fcdemo-shared.test, tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/inherited_flags.at, tests/libtoolize.at, tests/link-2.test, tests/link-order.at, tests/link-order2.at, tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test, tests/mdemo-dryrun.test, tests/mdemo-exec.test, tests/mdemo-inst.test, tests/mdemo-make.test, tests/mdemo-shared.test, tests/mdemo-static.test, tests/mdemo-unst.test, tests/mdemo/Makefile.am, tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c, tests/mdemo/sub.c, tests/mdemo2-conf.test, tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac, tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at, tests/objectlist.test, tests/old-m4-iface.at, tests/pdemo-conf.test, tests/pdemo-exec.test, tests/pdemo-inst.test, tests/pdemo-make.test, tests/pdemo/Makefile.am, tests/pdemo/configure.ac, tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c, tests/pdemo/longer_file_name_foo.c, tests/pdemo/longer_file_name_foo2.c, tests/pdemo/longer_file_name_hell1.c, tests/pdemo/longer_file_name_hell2.c, tests/pdemo/longer_file_name_hello.c, tests/pdemo/longer_file_name_main.c, tests/quote.test, tests/recursive.at, tests/search-path.at, tests/sh.test, tests/shlibpath.at, tests/standalone.at, tests/static.at, tests/stresstest.at, tests/subproject.at, tests/suffix.test, tests/tagdemo-conf.test, tests/tagdemo-exec.test, tests/tagdemo-make.test, tests/tagdemo-shared.test, tests/tagdemo-static.test, tests/tagdemo-undef.test, tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp, tests/tagdemo/baz.h, tests/tagdemo/configure.ac, tests/tagdemo/conv.cpp, tests/tagdemo/conv.h, tests/tagdemo/foo.cpp, tests/tagdemo/foo.h, tests/tagdemo/main.cpp, tests/tagtrace.test, tests/template.at, tests/testsuite.at: Apply correct license text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
# along with GNU Libtool; see the file COPYING. If not, a copy
# can be downloaded from http://www.gnu.org/licenses/gpl.html,
# or obtained by writing to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
####
AT_BANNER([Libtoolize operation.])
# _LT_CONFIGURE_AC
# ----------------
m4_define([_LT_CONFIGURE_AC],
[AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
AC_OUTPUT
]])
])# _LT_CONFIGURE_AC
# _LT_LIBTOOLIZE_SETUP
# --------------------
m4_define([_LT_LIBTOOLIZE_SETUP],
[_LT_CONFIGURE_AC
test -d m4 || { rm -f m4 && mkdir m4; }
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
rm -f m4/libtool.m4 m4/ltoptions.m4 build-aux/ltmain.sh
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I m4
]])
# This file should be upgraded.
AT_DATA([m4/libtool.m4], [[
# serial 25 LT_INIT
]])
# This file has a very high serial number, and should be left unchanged
# until --force is passed.
AT_DATA([m4/ltoptions.m4], [[
# serial 99999 ltoptions.m4
]])
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
test -d build-aux || { rm -f build-aux && mkdir build-aux; }
# This file has a very high serial number, and needs --force to be updated.
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AT_DATA([build-aux/ltmain.sh], [[
package_revision=9999.9999
]])
# This file has a very old serial number, but should be left unchanged
# unless the --install flag is invoked.
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AT_DATA([build-aux/config.guess], [[
timestamp='1970-01-01'
]])
])# LT_LIBTOOLIZE_SETUP
## ------------------- ##
## Macro installation. ##
## ------------------- ##
AT_SETUP([libtoolize macro installation])
_LT_CONFIGURE_AC
AT_DATA(expout,
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
AT_CLEANUP
## ------------------------- ##
## ACLOCAL_AMFLAGS mismatch. ##
## ------------------------- ##
AT_SETUP([libtoolize macro directory mismatch error])
_LT_CONFIGURE_AC
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I me2
]])
AT_DATA(experr,
[[libtoolize: error: AC_CONFIG_MACRO_DIR([m4]) conflicts with ACLOCAL_AMFLAGS=-I me2.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 1, [ignore], experr)
AT_CLEANUP
## ---------------------------------------- ##
## AC_CONFIG_MACRO_DIR macrodir extraction. ##
## ---------------------------------------- ##
AT_SETUP([multiple AC_CONFIG_MACRO_DIR invocation])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([first])
AC_CONFIG_MACRO_DIR([second])
LT_INIT
AC_OUTPUT
]])
AT_DATA(expout,
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `first'.
libtoolize: copying file `first/libtool.m4'
libtoolize: copying file `first/ltoptions.m4'
libtoolize: copying file `first/ltsugar.m4'
libtoolize: copying file `first/ltversion.m4'
libtoolize: copying file `first/lt~obsolete.m4'
libtoolize: Consider adding `-I first' to ACLOCAL_AMFLAGS in Makefile.am.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
AT_CLEANUP
## ------------------------------------ ##
## ACLOCAL_AMFLAGS macrodir extraction. ##
## ------------------------------------ ##
AT_SETUP([libtoolize ACLOCAL_AMFLAGS extraction])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
AC_CONFIG_AUX_DIR([build-aux])
LT_INIT
AC_OUTPUT
]])
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I first -I second
]])
AT_DATA(expout,
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in `first'.
libtoolize: copying file `first/libtool.m4'
libtoolize: copying file `first/ltoptions.m4'
libtoolize: copying file `first/ltsugar.m4'
libtoolize: copying file `first/ltversion.m4'
libtoolize: copying file `first/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([first])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
AT_CLEANUP
## -------------- ##
## Serial update. ##
## -------------- ##
AT_SETUP([libtoolize macro serial update])
_LT_LIBTOOLIZE_SETUP
## -------------------------------------------------------------------- ##
## First we try to update with some newer files in the destination dir. ##
## -------------------------------------------------------------------- ##
AT_DATA(expout,
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
[[libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
]])
AT_DATA(experr,
[[libtoolize: error: `build-aux/ltmain.sh' is newer: use `--force' to overwrite
libtoolize: error: `m4/ltoptions.m4' is newer: use `--force' to overwrite
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout, experr)
## ---------------------------------------------------------- ##
## Next, a second update attempt with everything now updated. ##
## ---------------------------------------------------------- ##
: >expout
AT_DATA(experr,
[[libtoolize: error: `build-aux/ltmain.sh' is newer: use `--force' to overwrite
libtoolize: error: `m4/ltoptions.m4' is newer: use `--force' to overwrite
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout, experr)
## ----------------------------------------------------------- ##
## Now, a forced update to downgrade files with newer serials. ##
## ----------------------------------------------------------- ##
AT_DATA(expout,
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --force], 0, expout)
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
## ---------------------------------------------------------------- ##
## A final update attempt with everything previously force updated. ##
## ---------------------------------------------------------------- ##
: >expout
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
AT_CLEANUP
## --------------- ##
## --install flag. ##
## --------------- ##
AT_SETUP([libtoolize config files serial update])
_LT_LIBTOOLIZE_SETUP
## -------------------------------------------------------------------- ##
## First we try to update with some newer files in the destination dir. ##
## -------------------------------------------------------------------- ##
AT_DATA(expout,
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/config.guess'
libtoolize: copying file `build-aux/config.sub'
libtoolize: copying file `build-aux/install-sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
]])
AT_DATA(experr,
[[libtoolize: error: `build-aux/ltmain.sh' is newer: use `--force' to overwrite
libtoolize: error: `m4/ltoptions.m4' is newer: use `--force' to overwrite
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --install], 0, expout, experr)
## ---------------------------------------------------------- ##
## Next, a second update attempt with everything now updated. ##
## ---------------------------------------------------------- ##
: >expout
AT_DATA(experr,
[[libtoolize: error: `build-aux/ltmain.sh' is newer: use `--force' to overwrite
libtoolize: error: `m4/ltoptions.m4' is newer: use `--force' to overwrite
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --install], 0, expout, experr)
## ----------------------------------------------------------- ##
## Now, a forced update to downgrade files with newer serials. ##
## ----------------------------------------------------------- ##
AT_DATA(expout,
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/config.guess'
libtoolize: copying file `build-aux/config.sub'
libtoolize: copying file `build-aux/install-sh'
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --force --install], 0, expout)
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
## ---------------------------------------------------------------- ##
## A final update attempt with everything previously force updated. ##
## ---------------------------------------------------------------- ##
: >expout
LT_AT_CHECK_LIBTOOLIZE([--copy --install], 0, expout)
AT_CLEANUP
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
## ----------------------------------------------------------------- ##
## Ensure libtoolize works when LT_CONFIG_LTDL_DIR is not specified. ##
## ----------------------------------------------------------------- ##
AT_SETUP([diagnose missing LT_CONFIG_LTDL_DIR])
AT_DATA(expout,
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/config.guess'
libtoolize: copying file `build-aux/config.sub'
libtoolize: copying file `build-aux/install-sh'
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/argz.m4'
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltdl.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: putting libltdl files in `ltdl'.
libtoolize: copying file `ltdl/COPYING.LIB'
libtoolize: copying file `ltdl/README'
libtoolize: copying file `ltdl/argz_.h'
libtoolize: copying file `ltdl/argz.c'
libtoolize: copying file `ltdl/libltdl/lt__alloc.h'
libtoolize: copying file `ltdl/libltdl/lt__dirent.h'
libtoolize: copying file `ltdl/libltdl/lt__glibc.h'
libtoolize: copying file `ltdl/libltdl/lt__private.h'
libtoolize: copying file `ltdl/libltdl/lt__strl.h'
libtoolize: copying file `ltdl/libltdl/lt_dlloader.h'
libtoolize: copying file `ltdl/libltdl/lt_error.h'
libtoolize: copying file `ltdl/libltdl/lt_system.h'
libtoolize: copying file `ltdl/libltdl/slist.h'
libtoolize: copying file `ltdl/loaders/dld_link.c'
libtoolize: copying file `ltdl/loaders/dlopen.c'
libtoolize: copying file `ltdl/loaders/dyld.c'
libtoolize: copying file `ltdl/loaders/load_add_on.c'
libtoolize: copying file `ltdl/loaders/loadlibrary.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/loaders/preopen.c'
libtoolize: copying file `ltdl/loaders/shl_load.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt__alloc.c'
libtoolize: copying file `ltdl/lt__dirent.c'
libtoolize: copying file `ltdl/lt__strl.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt_dlloader.c'
libtoolize: copying file `ltdl/lt_error.c'
libtoolize: copying file `ltdl/ltdl.c'
libtoolize: copying file `ltdl/ltdl.h'
libtoolize: creating file `ltdl/ltdl.mk'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/slist.c'
libtoolize: Remember to add `LT_CONFIG_LTDL_DIR([ltdl])' to `configure.ac'.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
]])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
LTDL_INIT([nonrecursive])
AC_OUTPUT
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --install --ltdl=ltdl], 0, expout)
AT_CLEANUP
## ---------------------------- ##
## Make sure ltdl.m4 is copied. ##
## ---------------------------- ##
# _LT_AT_LTDL_SETUP
# -----------------
# Macro to generate data files common to several tests.
m4_pushdef([_LT_AT_LTDL_SETUP],
[AT_DATA(expout,
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: linking file `build-aux/compile'
libtoolize: linking file `build-aux/config.guess'
libtoolize: linking file `build-aux/config.sub'
libtoolize: linking file `build-aux/depcomp'
libtoolize: linking file `build-aux/install-sh'
libtoolize: linking file `build-aux/missing'
libtoolize: linking file `build-aux/ltmain.sh'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: linking file `m4/argz.m4'
libtoolize: linking file `m4/libtool.m4'
libtoolize: linking file `m4/ltdl.m4'
libtoolize: linking file `m4/ltoptions.m4'
libtoolize: linking file `m4/ltsugar.m4'
libtoolize: linking file `m4/ltversion.m4'
libtoolize: linking file `m4/lt~obsolete.m4'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: putting libltdl files in LT_CONFIG_LTDL_DIR, `ltdl'.
libtoolize: linking file `ltdl/COPYING.LIB'
libtoolize: linking file `ltdl/Makefile.am'
libtoolize: linking file `ltdl/Makefile.in'
libtoolize: linking file `ltdl/README'
libtoolize: linking file `ltdl/configure.ac'
libtoolize: copying file `ltdl/aclocal.m4'
libtoolize: linking file `ltdl/argz_.h'
libtoolize: linking file `ltdl/argz.c'
libtoolize: linking file `ltdl/config-h.in'
libtoolize: copying file `ltdl/configure'
libtoolize: linking file `ltdl/libltdl/lt__alloc.h'
libtoolize: linking file `ltdl/libltdl/lt__dirent.h'
libtoolize: linking file `ltdl/libltdl/lt__glibc.h'
libtoolize: linking file `ltdl/libltdl/lt__private.h'
libtoolize: linking file `ltdl/libltdl/lt__strl.h'
libtoolize: linking file `ltdl/libltdl/lt_dlloader.h'
libtoolize: linking file `ltdl/libltdl/lt_error.h'
libtoolize: linking file `ltdl/libltdl/lt_system.h'
libtoolize: linking file `ltdl/libltdl/slist.h'
libtoolize: linking file `ltdl/loaders/dld_link.c'
libtoolize: linking file `ltdl/loaders/dlopen.c'
libtoolize: linking file `ltdl/loaders/dyld.c'
libtoolize: linking file `ltdl/loaders/load_add_on.c'
libtoolize: linking file `ltdl/loaders/loadlibrary.c'
libtoolize: linking file `ltdl/loaders/preopen.c'
libtoolize: linking file `ltdl/loaders/shl_load.c'
libtoolize: linking file `ltdl/lt__alloc.c'
libtoolize: linking file `ltdl/lt__dirent.c'
libtoolize: linking file `ltdl/lt__strl.c'
libtoolize: linking file `ltdl/lt_dlloader.c'
libtoolize: linking file `ltdl/lt_error.c'
libtoolize: linking file `ltdl/ltdl.c'
libtoolize: linking file `ltdl/ltdl.h'
libtoolize: linking file `ltdl/slist.c'
]])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
LT_CONFIG_LTDL_DIR([ltdl])
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
AC_CONFIG_AUX_DIR([build-aux])
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
LTDL_INIT
AC_OUTPUT
]])
AT_DATA([Makefile.am],
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
[[ACLOCAL_AMFLAGS = -I m4
]])
])# _LT_AT_LTDL_SETUP
## ------------------------------------------------ ##
## First we make sure libtoolize --ltdl is working. ##
## ------------------------------------------------ ##
AT_SETUP([copy ltdl.m4 with shared macro directory])
_LT_AT_LTDL_SETUP
LT_AT_CHECK_LIBTOOLIZE([--ltdl], 0, expout)
AT_CLEANUP
## ----------------------------------------------------- ##
## And also that libtoolize is taking note of LTDL_INIT. ##
## ----------------------------------------------------- ##
AT_SETUP([correctly parse LTDL_INIT from configure.ac])
_LT_AT_LTDL_SETUP
LT_AT_CHECK_LIBTOOLIZE([], 0, expout)
AT_CLEANUP
## ----------------------------------------------------------- ##
## And finally, that libtoolize diagnoses a missing LTDL_INIT. ##
## ----------------------------------------------------------- ##
AT_SETUP([diagnose missing LTDL_INIT invocation])
AT_DATA(expout,
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/compile'
libtoolize: copying file `build-aux/config.guess'
libtoolize: copying file `build-aux/config.sub'
libtoolize: copying file `build-aux/depcomp'
libtoolize: copying file `build-aux/install-sh'
libtoolize: copying file `build-aux/missing'
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/argz.m4'
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltdl.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: putting libltdl files in LT_CONFIG_LTDL_DIR, `ltdl'.
libtoolize: copying file `ltdl/COPYING.LIB'
libtoolize: copying file `ltdl/Makefile.am'
libtoolize: copying file `ltdl/Makefile.in'
libtoolize: copying file `ltdl/README'
libtoolize: copying file `ltdl/configure.ac'
libtoolize: copying file `ltdl/aclocal.m4'
libtoolize: copying file `ltdl/argz_.h'
libtoolize: copying file `ltdl/argz.c'
libtoolize: copying file `ltdl/config-h.in'
libtoolize: copying file `ltdl/configure'
libtoolize: copying file `ltdl/libltdl/lt__alloc.h'
libtoolize: copying file `ltdl/libltdl/lt__dirent.h'
libtoolize: copying file `ltdl/libltdl/lt__glibc.h'
libtoolize: copying file `ltdl/libltdl/lt__private.h'
libtoolize: copying file `ltdl/libltdl/lt__strl.h'
libtoolize: copying file `ltdl/libltdl/lt_dlloader.h'
libtoolize: copying file `ltdl/libltdl/lt_error.h'
libtoolize: copying file `ltdl/libltdl/lt_system.h'
libtoolize: copying file `ltdl/libltdl/slist.h'
libtoolize: copying file `ltdl/loaders/dld_link.c'
libtoolize: copying file `ltdl/loaders/dlopen.c'
libtoolize: copying file `ltdl/loaders/dyld.c'
libtoolize: copying file `ltdl/loaders/load_add_on.c'
libtoolize: copying file `ltdl/loaders/loadlibrary.c'
libtoolize: copying file `ltdl/loaders/preopen.c'
libtoolize: copying file `ltdl/loaders/shl_load.c'
libtoolize: copying file `ltdl/lt__alloc.c'
libtoolize: copying file `ltdl/lt__dirent.c'
libtoolize: copying file `ltdl/lt__strl.c'
libtoolize: copying file `ltdl/lt_dlloader.c'
libtoolize: copying file `ltdl/lt_error.c'
libtoolize: copying file `ltdl/ltdl.c'
libtoolize: copying file `ltdl/ltdl.h'
libtoolize: copying file `ltdl/slist.c'
libtoolize: Remember to add `LTDL_INIT' to configure.ac.
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
]])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
LT_CONFIG_LTDL_DIR([ltdl])
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
AC_CONFIG_AUX_DIR([build-aux])
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
AC_OUTPUT
]])
LT_AT_CHECK_LIBTOOLIZE([--ltdl --copy], 0, expout)
AT_CLEANUP
m4_popdef([_LT_AT_LTDL_SETUP])
## ------------------------------------------------------ ##
## Creating an aclocal.m4 without in-tree libtool macros. ##
## ------------------------------------------------------ ##
AT_SETUP([upgrading verbatim style aclocal.m4])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AC_CONFIG_AUX_DIR([build-aux])
LT_INIT
AC_OUTPUT
]])
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
AT_DATA([expout],
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize: `/usr/local/share/aclocal/libtool.m4'
libtoolize: `/usr/local/share/aclocal/ltoptions.m4'
libtoolize: `/usr/local/share/aclocal/ltsugar.m4'
libtoolize: `/usr/local/share/aclocal/ltversion.m4'
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
libtoolize: `/usr/local/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
## --------------------------------------- ##
## Upgrading a hand maintained aclocal.m4. ##
## --------------------------------------- ##
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
AC_OUTPUT
]])
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I m4
]])
AT_DATA([aclocal.m4],
[[# This should need upgrading:
# serial 25 LT_INIT
AC_DEFUN([LT_INIT],
[blah])
# This is newer than the upgrade version:
# serial 99999 ltoptions.m4
# This is older than the upgrade version:
# serial 1 ltversion.m4
]])
AT_DATA([expout],
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
[[libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: You should add the contents of `m4/ltsugar.m4' to `aclocal.m4'.
libtoolize: copying file `m4/ltversion.m4'
libtoolize: You should add the contents of `m4/ltversion.m4' to `aclocal.m4'.
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: You should add the contents of `m4/lt~obsolete.m4' to `aclocal.m4'.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
## ------------------------------------------- ##
## Upgrading an aclocal maintained aclocal.m4. ##
## ------------------------------------------- ##
LT_AT_ACLOCAL([-I m4])
rm -f m4/libtool.m4 m4/ltoptions.m4
# This file should be upgraded.
AT_DATA([m4/libtool.m4], [[
# serial 25 LT_INIT
AC_DEFUN([LT_INIT])
]])
# This file has a very high serial number, and should be left unchanged.
AT_DATA([m4/ltoptions.m4], [[
# serial 99999 ltoptions.m4
]])
AT_DATA([expout],
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
[[libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
]])
AT_DATA([experr],
[[libtoolize: error: `m4/ltoptions.m4' is newer: use `--force' to overwrite
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout, experr)
## ----------------------------------------------------------- ##
## Now, a forced update to downgrade files with newer serials. ##
## ----------------------------------------------------------- ##
AT_DATA(expout,
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --force], 0, expout)
AT_CLEANUP
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
## ------------------------------------------------------------------ ##
## Ensure libtoolize works when AC_CONFIG_MACRO_DIR is not specified. ##
## ------------------------------------------------------------------ ##
AT_SETUP([verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
LT_INIT
AC_OUTPUT
]])
AT_DATA([aclocal.m4],
[[# This should need upgrading:
# serial 25 LT_INIT
AC_DEFUN([LT_INIT],
[blah])
# This is newer than the upgrade version:
# serial 99999 ltoptions.m4
# This is older than the upgrade version:
# serial 1 ltversion.m4
]])
AT_DATA([expout],
[[libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize: `/usr/local/share/aclocal/libtool.m4'
libtoolize: `/usr/local/share/aclocal/ltsugar.m4'
libtoolize: `/usr/local/share/aclocal/ltversion.m4'
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
libtoolize: `/usr/local/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
## ----------------------------------------------------------------------- ##
## Upgrading an aclocal maintained aclocal.m4 without AC_CONFIG_MACRO_DIR. ##
## ----------------------------------------------------------------------- ##
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
LT_AT_ACLOCAL([-I $abs_top_srcdir/m4])
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
## The following code is adapted (and simplified) from libtoolize.in
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
####
: ${GREP="grep"}
: ${SED="sed"}
basename='s|^.*/||'
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
# func_grep expression filename
# Check whether EXPRESSION matches any line of FILENAME, without output.
func_grep ()
{
$GREP "$1" "$2" >/dev/null 2>&1
}
# func_serial filename [macro_regex]
# Output the value of the serial number comment in FILENAME, where the
# comment line must also match MACRO_REGEX, if given.
func_serial ()
{
my_filename=$1
my_macro_regex=$2
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
my_sed_serial='
/^# serial [1-9][0-9.]*[ ]*'"$my_macro_regex"'[ ]*$/ {
s|^# serial \([1-9][0-9.]*\).*$|\1|
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
q
}
d'
# Search FILENAME and all the files it m4_includes for a serial number
# in the file that AC_DEFUNs MACRO_REGEX.
my_serial=
if test -z "$my_macro_regex" ||
test aclocal.m4 = "$my_filename" ||
test "$my_macro_regex" = `echo "$my_filename" | $SED "$basename"` ||
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
func_grep '^AC_DEFUN(\@<:@'"$my_macro_regex" "$my_filename"
then
my_serial=`$SED -e "$my_sed_serial" "$my_filename"`
fi
# If the file has no serial number, something is badly wrong!
test -n "$my_serial" || exit 1
echo $my_serial
}
# Make the serial number in aclocal.m4 higher than installed ltoptions.m4,
# and the others match the macro files that libtoolize will compare against.
libtool_serial=`func_serial "$tst_aclocaldir/libtool.m4" LT_INIT`
ltversion_serial=`func_serial "$tst_aclocaldir/ltversion.m4" ltversion.m4`
ltsugar_serial=`func_serial "$tst_aclocaldir/ltsugar.m4" ltsugar.m4`
lt_obsolete_serial=`func_serial "$tst_aclocaldir/lt~obsolete.m4" lt~obsolete.m4`
$SED -e 's|^#.*serial.*ltoptions.m4$|# serial 99999 ltoptions.m4|' \
-e "s|^#.*serial.*libtool.m4\$|# serial $libtool_serial libtool.m4|" \
-e "s|^#.*serial.*ltversion.m4\$|# serial $ltversion_serial ltversion.m4|" \
-e "s|^#.*serial.*ltsugar.m4\$|# serial $ltsugar_serial ltsugar.m4|" \
-e "s|^#.*serial.*lt~obsolete.m4\$|# serial $lt_obsolete_serial lt~obsolete.m4|" \
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
< aclocal.m4 > aclocal.m4t
mv -f aclocal.m4t aclocal.m4
AT_DATA([expout],
[[libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
## --------------------- ##
## Now, a forced update. ##
## --------------------- ##
AT_DATA(expout,
[[libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about the macro files that are missing or not up-to-date. * libtoolize.m4sh (func_echo_once): New function that prints the contents of a named variable only on the first call. (func_aclocal_update_check): New function that compares serial numbers of libtool macros in aclocal.m4 and only diagnoses the missing files. (func_copy, func_copy_cb, func_copy_some_files, func_serial_update) (func_keyword_update, func_ltmain_update, func_config_update) (func_install_update): Accept a new argument naming a variable containing a header string to print with func_echo_once iff any body text is output by this function. (func_install_pkgmacro_subproject, func_install_pkgmacro_parent) (func_install_pkgltdl_files, func_install_pkgconfig_subproject) (func_install_pkgconfig_parent: Set and pass a suitable header string variable for the above functions. (func_serial_update_check): Don't advise rerunning `libtoolize --force' when aclocal.m4 is not m4_including libtoolize installed macro files. * tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic /usr/local/share/aclocal paths to point into the uninstalled libtool macro directory. * tests/libtoolize.at: Update tests that were checking for old behaviour of outputing `file is already up to date' even when --force was not passed. * tests/libtoolize.at: New tests to prevent regressions of these smarter messages. * NEWS: Updated. Reported by Olly Betts <olly@survex.com>
2008-04-23 06:55:20 +08:00
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --force], 0, expout)
AT_CLEANUP
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
## ------------------------------------------------------------- ##
## Check nonrecursive ltdl puts m4 files in AC_CONFIG_MACRO_DIR. ##
## ------------------------------------------------------------- ##
AT_SETUP([nonrecursive ltdl with AC_CONFIG_MACRO_DIR])
AT_DATA(expout,
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/config.guess'
libtoolize: copying file `build-aux/config.sub'
libtoolize: copying file `build-aux/install-sh'
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/argz.m4'
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltdl.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: putting libltdl files in LT_CONFIG_LTDL_DIR, `ltdl'.
libtoolize: copying file `ltdl/COPYING.LIB'
libtoolize: copying file `ltdl/README'
libtoolize: copying file `ltdl/argz_.h'
libtoolize: copying file `ltdl/argz.c'
libtoolize: copying file `ltdl/libltdl/lt__alloc.h'
libtoolize: copying file `ltdl/libltdl/lt__dirent.h'
libtoolize: copying file `ltdl/libltdl/lt__glibc.h'
libtoolize: copying file `ltdl/libltdl/lt__private.h'
libtoolize: copying file `ltdl/libltdl/lt__strl.h'
libtoolize: copying file `ltdl/libltdl/lt_dlloader.h'
libtoolize: copying file `ltdl/libltdl/lt_error.h'
libtoolize: copying file `ltdl/libltdl/lt_system.h'
libtoolize: copying file `ltdl/libltdl/slist.h'
libtoolize: copying file `ltdl/loaders/dld_link.c'
libtoolize: copying file `ltdl/loaders/dlopen.c'
libtoolize: copying file `ltdl/loaders/dyld.c'
libtoolize: copying file `ltdl/loaders/load_add_on.c'
libtoolize: copying file `ltdl/loaders/loadlibrary.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/loaders/preopen.c'
libtoolize: copying file `ltdl/loaders/shl_load.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt__alloc.c'
libtoolize: copying file `ltdl/lt__dirent.c'
libtoolize: copying file `ltdl/lt__strl.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt_dlloader.c'
libtoolize: copying file `ltdl/lt_error.c'
libtoolize: copying file `ltdl/ltdl.c'
libtoolize: copying file `ltdl/ltdl.h'
libtoolize: creating file `ltdl/ltdl.mk'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/slist.c'
]])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
LT_CONFIG_LTDL_DIR([ltdl])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
LTDL_INIT([nonrecursive])
AC_OUTPUT
]])
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I m4
]])
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
LT_AT_CHECK_LIBTOOLIZE([--copy --install --ltdl=ltdl], 0, expout)
AT_CLEANUP
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
## ------------------------------------------------- ##
## Check subproject ltdl with unconventional layout. ##
## ------------------------------------------------- ##
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
AT_SETUP([subproject ltdl with unconventional layout])
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AT_DATA(expout,
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
[[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `acaux'.
libtoolize: copying file `acaux/compile'
libtoolize: copying file `acaux/config.guess'
libtoolize: copying file `acaux/config.sub'
libtoolize: copying file `acaux/depcomp'
libtoolize: copying file `acaux/install-sh'
libtoolize: copying file `acaux/missing'
libtoolize: copying file `acaux/ltmain.sh'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `acm4'.
libtoolize: copying file `acm4/argz.m4'
libtoolize: copying file `acm4/libtool.m4'
libtoolize: copying file `acm4/ltdl.m4'
libtoolize: copying file `acm4/ltoptions.m4'
libtoolize: copying file `acm4/ltsugar.m4'
libtoolize: copying file `acm4/ltversion.m4'
libtoolize: copying file `acm4/lt~obsolete.m4'
libtoolize: putting libltdl files in LT_CONFIG_LTDL_DIR, `ltdl'.
libtoolize: copying file `ltdl/COPYING.LIB'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: creating file `ltdl/Makefile.am'
libtoolize: creating file `ltdl/Makefile.in'
libtoolize: copying file `ltdl/README'
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
libtoolize: creating file `ltdl/configure.ac'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: creating file `ltdl/aclocal.m4'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/argz_.h'
libtoolize: copying file `ltdl/argz.c'
libtoolize: copying file `ltdl/config-h.in'
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
libtoolize: creating file `ltdl/configure'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/libltdl/lt__alloc.h'
libtoolize: copying file `ltdl/libltdl/lt__dirent.h'
libtoolize: copying file `ltdl/libltdl/lt__glibc.h'
libtoolize: copying file `ltdl/libltdl/lt__private.h'
libtoolize: copying file `ltdl/libltdl/lt__strl.h'
libtoolize: copying file `ltdl/libltdl/lt_dlloader.h'
libtoolize: copying file `ltdl/libltdl/lt_error.h'
libtoolize: copying file `ltdl/libltdl/lt_system.h'
libtoolize: copying file `ltdl/libltdl/slist.h'
libtoolize: copying file `ltdl/loaders/dld_link.c'
libtoolize: copying file `ltdl/loaders/dlopen.c'
libtoolize: copying file `ltdl/loaders/dyld.c'
libtoolize: copying file `ltdl/loaders/load_add_on.c'
libtoolize: copying file `ltdl/loaders/loadlibrary.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/loaders/preopen.c'
libtoolize: copying file `ltdl/loaders/shl_load.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt__alloc.c'
libtoolize: copying file `ltdl/lt__dirent.c'
libtoolize: copying file `ltdl/lt__strl.c'
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
libtoolize: copying file `ltdl/lt_dlloader.c'
libtoolize: copying file `ltdl/lt_error.c'
libtoolize: copying file `ltdl/ltdl.c'
libtoolize: copying file `ltdl/ltdl.h'
libtoolize: copying file `ltdl/slist.c'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: Consider adding `-I acm4' to ACLOCAL_AMFLAGS in Makefile.am.
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
]])
AT_DATA([configure.ac],
[[AC_INIT([libtoolize-demo], ]AT_PACKAGE_VERSION[, ]AT_PACKAGE_BUGREPORT[)
LT_CONFIG_LTDL_DIR([ltdl])
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
AC_CONFIG_AUX_DIR([acaux])
There are 5 distinct batches of files that libtoolize might install into a project, depending on whether libltdl is being installed in subproject mode, and in that case whether the parent project shares the config and macro directories with the subproject ltdl. Make a separate function for each of those 5 batches (4 new functions below, plus the recently factored func_install_pkgltdl_files), and make a clearer distinction between when each of them is needed: * libtoolize.m4sh (func_install_pkgmacro_subproject): New function for installing and reporting on m4 files copied to a subproject ltdl directory. (func_install_pkgmacro_parent): Similar new function for m4 files copied solely for the use of the parent project, including serial checking. (func_install_pkgconfig_subproject): New function for installing and reporting on config helper files copied to a subproject ltdl directory. (func_install_pkgconfig_parent): Similar new function for config helper files copied solely for the use of the parent project, including serial checking. (func_install_pkgmacro_files, func_install_pkgconfig_files): Rewritten in terms of the above functions. * tests/libtoolize.at: Adjust test expout's to match newly regularized libtoolize output. Move parent project pkgconfig files to build-aux directory so that progress messages show an obvious difference to pkgconfig files installed to subproject `config' directory. (nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test. (diagnose missing LT_CONFIG_LTDL_DIR): New test. (subproject ltdl with non-shared directories): New test. Reported by Eric Blake <ebb9@byu.net>
2008-02-01 00:14:09 +08:00
AC_CONFIG_MACRO_DIR([acm4])
LT_INIT
LTDL_INIT([subproject])
AC_OUTPUT
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --install], 0, expout)
AT_CLEANUP
## ------------------------------------------- ##
## Create a working subproject without GNU M4. ##
## ------------------------------------------- ##
AT_SETUP([Subproject ltdl without GNU M4])
AT_DATA(expout,
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
[[libtoolize: putting auxiliary files in `ltdl'.
libtoolize: linking file `ltdl/compile'
libtoolize: linking file `ltdl/config.guess'
libtoolize: linking file `ltdl/config.sub'
libtoolize: linking file `ltdl/depcomp'
libtoolize: linking file `ltdl/install-sh'
libtoolize: linking file `ltdl/missing'
libtoolize: linking file `ltdl/ltmain.sh'
libtoolize: putting macros in `ltdl/m4'.
libtoolize: linking file `ltdl/m4/argz.m4'
libtoolize: linking file `ltdl/m4/libtool.m4'
libtoolize: linking file `ltdl/m4/ltdl.m4'
libtoolize: linking file `ltdl/m4/ltoptions.m4'
libtoolize: linking file `ltdl/m4/ltsugar.m4'
libtoolize: linking file `ltdl/m4/ltversion.m4'
libtoolize: linking file `ltdl/m4/lt~obsolete.m4'
libtoolize: putting libltdl files in `ltdl'.
libtoolize: linking file `ltdl/COPYING.LIB'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: creating file `ltdl/Makefile.am'
libtoolize: creating file `ltdl/Makefile.in'
libtoolize: linking file `ltdl/README'
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
libtoolize: creating file `ltdl/configure.ac'
libtoolize: rename `libltdl/m4' directory to standard `m4'. In addition to moving the autoconf macro directory into the place expected by GNU developers ($top_srcdir/m4), we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/m4' macro directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/m4. * libltdl/m4: Moved to it's parent directory. * Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT) (libltdl/Makefile.am, libltdl/aclocal.m4): Adjust. * configure.ac (AC_CONFIG_MACRO_DIR): Adjust. * libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The libtoolize script can pick up the project macro directory from ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing to regenerate configure for the sake of a different macro directory declared in the libltdl using client project. * libtoolize.m4sh (func_install_pkgmacro_subproject): Remove. (func_install_pkgmacro_parent): Remove. (subproject_macro_dir): Remove. (require_libltdl_Makefile_am, require_ltdl_aclocal_amflags) (require_ltdl_am_macro_dir): New functions, generated at runtime by adding libltdl/Makefile.am to the generation loop. (func_install_pkgmacro_files): Considerably simplified now that we have only a single macro directory to worry about. (require_ltdl_relative_macro_dir): New function. Calculate the relative path from $ltdl_dir to the parent project macro_dir. (require_Makefile_am_filter): Depending on $ltdl_mode, edit Makefile.am ACLOCAL_AMFLAGS to use the parent project macro directory if necessary. (require_aclocal_m4_filter): Make sure m4_includes point to the correct macro directory by editing the file as it is copied into the parent project. (func_install_pkgltdl_files): Use the filters. (func_check_macros): Remove various advice that no longer applies with an always shared macro directory. (func_require_ltdl_dir): Don't default ltdl_dir to subproject when `--ltdl' was not given. (func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is not set. (func_require_macro_dir): Default to $ltdl_dir/m4 in subproject mode with no other directory implied by AC_CONFIG_MACRO_DIR or ACLOCAL_AMFLAGS, otherwise m4 as before. * tests/libtoolize.at: Match new "creating file `Makefile.am'" messages correctly. (subproject ltdl with non-shared directories): This test no longer makes sense, so repurposed... (subproject ltdl with non-canonical macro dir): ...this, to ensure subproject ltdl continues to automatically share the parent macro directory. * tests/cdemo/Makefile.am, tests/demo/Makefile.am, tests/depdemo/Makefile.am, tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location of macro_dir. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 19:29:50 +08:00
libtoolize: creating file `ltdl/aclocal.m4'
libtoolize: linking file `ltdl/argz_.h'
libtoolize: linking file `ltdl/argz.c'
libtoolize: linking file `ltdl/config-h.in'
libtoolize: rename `libltdl/config' directory to standard `build-aux'. In addition to moving the autoconf auxiliary script directory into the place expected by GNU developers ($top_srcdir/build-aux) we also simplify libtoolize somewhat by having libltdl use whatever directory was specified by the parent project. This is much more flexible, allows libltdl client projects to also use a single canonical `$top_srcdir/build-aux' auxiliary script directory, and maintains backward compatibility with existing projects that wish to continue using $ltdl_dir/config. * libltdl/config: Moved whole directory from here... * build-aux: ...to here. * libtoolize.m4sh (func_install_pkgaux_subproject): Remove. (func_install_pkgaux_parent): Remove. (func_install_pkgaux_files): Considerably simplified now that we have only a single auxiliary directory to worry about. (subproject_aux_dir): Remove. * bootstrap.conf (libtool_readme_release_package_substitutions): No need to substitute our old unusual aux_dir location into README-release any more. * cfg.mk (_build-aux): Now that we use the standard location for this directory, no need to set this variable either. * configure.ac (AC_INIT): git-version-gen has moved. (AC_CONFIG_AUX_DIR): Adjust. * Makefile.am (stamp-mk, auxexefiles, auxfiles) (install-data-local): Use build-aux instead of config. (libltdl/stamp-mk): Ditto. * libltdl/configure.ac, tests/cdemo/configure.ac, tests/demo/configure.ac, tests/depdemo/configure.ac, tests/f77demo/configure.ac, tests/fcdemo/configure.ac, tests/mdemo/configure.ac, tests/mdemo2/configure.ac, tests/pdemo/configure.ac, tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto. * tests/defs.m4sh (aux_dir): Ditto. * tests/configure-iface.at, tests/getopt-m4sh.at, tests/libtoolize.at, tests/subproject.at, tests/testsuite.at: Ditto. * Makefile.am (ltdl_ac_aux_dir): Extract at build-time... * libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that libtoolize can access it at runtime without requiring GNU M4 via the extract-trace script. (require_Makefile_am_filter): Use it to determine whether the aux_dir declared in the current (parent) project configure is compatible with the declarations in installed ltdl autotools source files. (require_configure_ac_filter): New function to perform similar checks and rewrite configure.ac during installation if necessary. * NEWS: Updated. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2011-10-27 11:00:29 +08:00
libtoolize: creating file `ltdl/configure'
libtoolize: linking file `ltdl/libltdl/lt__alloc.h'
libtoolize: linking file `ltdl/libltdl/lt__dirent.h'
libtoolize: linking file `ltdl/libltdl/lt__glibc.h'
libtoolize: linking file `ltdl/libltdl/lt__private.h'
libtoolize: linking file `ltdl/libltdl/lt__strl.h'
libtoolize: linking file `ltdl/libltdl/lt_dlloader.h'
libtoolize: linking file `ltdl/libltdl/lt_error.h'
libtoolize: linking file `ltdl/libltdl/lt_system.h'
libtoolize: linking file `ltdl/libltdl/slist.h'
libtoolize: linking file `ltdl/loaders/dld_link.c'
libtoolize: linking file `ltdl/loaders/dlopen.c'
libtoolize: linking file `ltdl/loaders/dyld.c'
libtoolize: linking file `ltdl/loaders/load_add_on.c'
libtoolize: linking file `ltdl/loaders/loadlibrary.c'
libtoolize: linking file `ltdl/loaders/preopen.c'
libtoolize: linking file `ltdl/loaders/shl_load.c'
libtoolize: linking file `ltdl/lt__alloc.c'
libtoolize: linking file `ltdl/lt__dirent.c'
libtoolize: linking file `ltdl/lt__strl.c'
libtoolize: linking file `ltdl/lt_dlloader.c'
libtoolize: linking file `ltdl/lt_error.c'
libtoolize: linking file `ltdl/ltdl.c'
libtoolize: linking file `ltdl/ltdl.h'
libtoolize: linking file `ltdl/slist.c'
]])
AT_DATA([no-m4],
[[#! /bin/sh
echo 'error: do not call m4' >&2
exit 1
]])
chmod a+x ./no-m4
AT_CHECK([PATH=`pwd`:$PATH M4=`pwd`/no-m4 $LIBTOOLIZE --ltdl=ltdl], 0, expout)
AT_CLEANUP
## --------------------------- ##
## Garbled LIBTOOLIZE_OPTIONS. ##
## --------------------------- ##
AT_SETUP([LIBTOOLIZE_OPTIONS])
_LT_CONFIGURE_AC
LIBTOOLIZE_OPTIONS=narf
export LIBTOOLIZE_OPTIONS
AT_DATA(experr,
[[libtoolize: error: garbled LIBTOOLIZE_OPTIONS near `narf'
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 1, [ignore], experr)
## --------------------------- ##
## Unknown LIBTOOLIZE_OPTIONS. ##
## --------------------------- ##
LIBTOOLIZE_OPTIONS=--no-such-option
export LIBTOOLIZE_OPTIONS
AT_DATA(experr,
[[libtoolize: warning: unrecognized environment option `--no-such-option'
]])
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, [ignore], experr)
## ----------------------------- ##
## --no-warn environment option. ##
## ----------------------------- ##
LIBTOOLIZE_OPTIONS=--no-warn,--no-such-option
export LIBTOOLIZE_OPTIONS
: >experr
LT_AT_CHECK_LIBTOOLIZE([--copy], 0, [ignore], experr)
AT_CLEANUP
## ------------------------------------------------------ ##
## Remove file droppings from old libtoolize invocations. ##
## ------------------------------------------------------ ##
AT_SETUP([cleanup old installation])
_LT_CONFIGURE_AC
AT_DATA([Makefile.am],
[[ACLOCAL_AMFLAGS = -I m4
]])
AT_DATA([acinclude.m4],
[[AC_DEFUN([LT_INIT],
[: keep me, I might be hand maintained!]) # LT_INIT
]])
AT_DATA([libltdl/acinclude.m4],
[[AC_DEFUN([LT_INIT],
[: delete me, I was left here by on old libltdl build]) # LT_INIT
]])
LT_AT_CHECK_LIBTOOLIZE([--copy --force --ltdl], 0, [ignore])
# check files are left as expected
AT_CHECK([grep 'keep me' acinclude.m4], 0, [ignore])
AT_CHECK([test -f libltdl/acinclude.m4], 1, [ignore], [ignore])
AT_CLEANUP