diff options
Diffstat (limited to 'bootstrap.conf')
-rw-r--r-- | bootstrap.conf | 405 |
1 files changed, 405 insertions, 0 deletions
diff --git a/bootstrap.conf b/bootstrap.conf new file mode 100644 index 0000000..793d368 --- /dev/null +++ b/bootstrap.conf @@ -0,0 +1,405 @@ +# bootstrap.conf (GNU Libtool) version 2014-11-18 +# +# Copyright (C) 2010-2015 Free Software Foundation, Inc. +# Written by Gary V. Vaughan, 2010 + +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# 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. +# +# You should have received a copy of the GNU General Public License +# 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. + + +## -------------------------------- ## +## User overrideable command paths. ## +## -------------------------------- ## + +: "${MAKE=make}" + +export MAKE + + + +## -------------- ## +## Configuration. ## +## -------------- ## + +# File that should exist in the top directory of a checked out hierarchy, +# but not in a distribution tarball. +checkout_only_file=HACKING + +# List of programs (and minimum versions) required to bootstrap, maintain +# and release Libtool. +buildreq=" + help2man 1.29 http://www.gnu.org/s/help2man + make 3.81 http://www.gnu.org/s/make + makeinfo 4.8 http://www.gnu.org/s/texinfo + xz 4.999.8beta http://tukaani.org/xz +" + +# Instructions on how to install packages in $buildreq. +buildreq_readme=HACKING + +# Non-default gnulib directory options. +local_gl_dir=gl + +# Additional gnulib-tool options to use. +gnulib_tool_options=$gnulib_tool_options" + --avoid=dummy + --libtool + --macro-prefix=GL +" + +# gnulib modules used by this package. +gnulib_modules=' + announce-gen + bootstrap + do-release-commit-and-tag + extract-trace + gendocs + git-version-gen + gitlog-to-changelog + gnu-web-doc-update + gnupload + inline-source + maintainer-makefile + options-parser + readme-release + update-copyright +' + +# Extra gnulib files that are not in modules, which override files of +# the same name installed by other bootstrap tools. +gnulib_non_module_files=$gnulib_non_module_files' + doc/COPYINGv2 + doc/fdl.texi +' + +# What ignore files to maintain. +vc_ignore=.gitignore + +# Running the installed 'libtoolize' will trash the local (newer) libtool.m4 +# among others. Don't use ':', since autoreconf can't exec it! +LIBTOOLIZE=true + +# List of file droppings from old releases of Libtool. +libtool_obsolete_files=" + acinclude.m4 + argz.c + libltdl/config.h + lt__dirent.c + lt__strl.c +" + + +## ------------------- ## +## Override functions. ## +## ------------------- ## + +# func_autopoint +# -------------- +# Libtool does not use autopoint. +func_autopoint () +{ + $debug_cmd +} + + +# func_libtoolize +# --------------- +# Libtoolize is part of Libtool! +func_libtoolize () +{ + $debug_cmd +} + + + +## ---------------------------- ## +## Libtool bootstrap functions. ## +## ---------------------------- ## + +# libtool_prep +# ------------ +# Libtool bootstrap initialisation after successful option parse and +# validation. +libtool_prep () +{ + $debug_cmd + + # initial clean-up of checked out tree + find . -depth \( -name autom4te.cache -o -name libtool \) -print \ + | grep -v '{arch}' \ + | xargs rm -rf + + # remove obsolete file droppings from old Libtool versions + for file in $libtool_obsolete_files; do + rm -f $file + done +} +func_add_hook func_prep libtool_prep + + +# libtool_add_libltdl_copying +# --------------------------- +# Use the canonical COPYING.LESSERv2 from gnulib. +libtool_add_libltdl_copying () +{ + $debug_cmd + + func_gnulib_tool_copy_file doc/COPYING.LESSERv2 libltdl/COPYING.LIB +} +func_add_hook func_gnulib_tool libtool_add_libltdl_copying + + +# libtool_build_prerequisites +# --------------------------- +# Libtool generates some files that are required before any autotools +# can be run successfully. +libtool_build_prerequisites () +{ + $debug_cmd + + $require_build_aux + $require_ltdl_dir + $require_macro_dir + $require_package + $require_package_bugreport + $require_package_name + $require_package_url + $require_package_version + + # Whip up a dirty Makefile: + makes='Makefile.am libltdl/ltdl.mk' + rm -f Makefile + { + echo "aux_dir = $build_aux" + echo "ltdl_dir = $ltdl_dir" + echo "macro_dir = $macro_dir" + + # The following allow us to tie bootstrap-deps output verbosity + # into the bootstrap --verbose option: + echo 'AM_V_GEN = $(am__v_GEN_$(V))' + echo 'am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))' + echo 'am__v_GEN_0 = @echo " GEN " $@;' + echo 'AM_V_at = $(am__v_at_$(V))' + echo 'am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))' + echo 'am__v_at_0 = @' + + $SED '/^if /,/^endif$/d;/^else$/,/^endif$/d;/^include /d' $makes + } > Makefile + + # Building distributed files from configure is bad for automake, so we + # generate them here, and have Makefile rules to keep them up to date. + func_show_eval "$MAKE bootstrap-deps \ + AM_DEFAULT_VERBOSITY=0 `$opt_verbose && echo V=1` \ + PACKAGE='$package' PACKAGE_BUGREPORT='$package_bugreport' \ + PACKAGE_NAME='$package_name' PACKAGE_URL='$package_url' \ + SED='$SED' srcdir=. VERSION='$package_version'" + status=$? + + rm -f Makefile + test 0 -eq "$status" ||exit $EXIT_FAILURE +} +func_add_hook func_gnulib_tool libtool_build_prerequisites + + +# libtool_autoreconf_libltdl +# -------------------------- +# Libtldl directory needs to be autoreconfed too. +libtool_autoreconf_libltdl () +{ + $debug_cmd + + # Also bootstrap libltdl ready for installation. + func_autoreconf libltdl +} +func_add_hook func_reconfigure libtool_autoreconf_libltdl + + +# libtool_readme_release_package_substitutions +# -------------------------------------------- +# Show our own package details instead of generic strings. +libtool_readme_release_package_substitutions () +{ + $debug_cmd + + $require_build_aux + $require_package + + my_readme=README-release + + test -f "$my_readme" \ + || func_fatal_error "error: '$my_readme' does not exist" + + # Perform substitutions to a temporary file + $SED -e "\ + s|\@PACKAGE\@|$package|g + " "$my_readme" > "${my_readme}T" \ + && mv "${my_readme}T" "$my_readme" +} +func_add_hook func_fini libtool_readme_release_package_substitutions + + +# libtool_fudge_timestamps +# ------------------------ +# Autoheader valiantly tries to prevent needless reconfigurations by +# not changing the timestamp of config-h.in unless the file contents +# are updated. Unfortunately config-h.in depends on aclocal.m4, which +# *is* updated, so running 'libtoolize --ltdl=. && configure && make' +# causes autoheader to be called... undesireable for users that do not +# have it! Fudge the timestamp to prevent that: +libtool_fudge_timestamps () +{ + $debug_cmd + + sleep 2 && touch libltdl/config-h.in +} +func_add_hook func_fini libtool_fudge_timestamps + + +# libtool_cleanup +# --------------- +libtool_cleanup () +{ + $debug_cmd + + # These files can cause an infinite configure loop if left behind. + rm -f Makefile libltdl/Makefile libtool vcl.tmp +} +func_add_hook func_fini libtool_cleanup + + +# libtool_check_for_bogus_macros +# ------------------------------ +# Try to catch the case where 'aclocal' pulls installed libtool macro +# file contents from another version of libtool into the current package +# 'aclocal.m4'. +libtool_check_for_bogus_macros () +{ + $debug_cmd + + $opt_dry_run || + for macro in LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL; do + if grep $macro aclocal.m4 libltdl/aclocal.m4; then + func_fatal_error "Bogus $macro macro contents in an aclocal.m4 file" + else :; fi + done +} +func_add_hook func_fini libtool_check_for_bogus_macros + + +# libtool_cleanup_empty_dirs +# -------------------------- +# Gnulib leaves behind a few files we don't need. +libtool_cleanup_empty_dirs () +{ + $debug_cmd + + my_gnulib_source=${source_base:-'lib'} + + if test -d "$my_gnulib_source"; then + rm -f "$my_gnulib_source/.gitignore" "$my_gnulib_source/Makefile.am" || exit 1 + rmdir "$my_gnulib_source" || exit 1 + fi +} +func_add_hook func_fini libtool_cleanup_empty_dirs + + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# require_ltdl_dir +# ---------------- +# Extract libtool's ltdl directory from configure.ac. +require_ltdl_dir=func_require_ltdl_dir +func_require_ltdl_dir () +{ + $debug_cmd + + $require_configure_ac + + func_extract_trace LT_CONFIG_LTDL_DIR + + save_ifs=$IFS + IFS=: + set dummy $func_extract_trace_result + IFS=$save_ifs + shift + + ltdl_dir=$1 + func_check_configuration ltdl_dir \ + "LT_CONFIG_LTDL_DIR([name of your libltdl directory])" + + func_verbose "ltdl_dir='$ltdl_dir'" + + require_ltdl_dir=: +} + + +# require_package_url +# ------------------- +# Ensure that package_url has a sensible default. +require_package_url=libtool_require_package_url +libtool_require_package_url () +{ + $debug_cmd + + $require_configure_ac + + func_extract_trace AC_INIT + + save_IFS=$IFS + IFS=: + set dummy $func_extract_trace_result + IFS=$save_IFS + shift + + test -n "$package_url " || package_url=$5 + test -n "$package_url" || { + # How to extract the parameters for 'make bootstrap-deps' from + # configure.ac. This is very specific to the way Libtool's + # configure.ac layout. + sed_extract_package_url='s|#.*$||; s|^dnl .*$||; s| dnl .*$||; + /AC_SUBST([[]*PACKAGE_URL/{ + s|.*AC_SUBST([[ ]*PACKAGE_URL[] ]*,[[ ]*|package_url="| + s|[]) ]*$|"| + p + }' + + # Extract package_url setting from configure.ac. + eval `$SED -n "$sed_extract_package_url" < configure.ac` + } + + test -n "$package_url" \ + || func_fatal_error "unable to determine 'package_url' from '$configure_ac'." + + func_verbose "package_url='$package_url'" + + require_package_url=: +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "# bootstrap.conf (GNU Libtool) version " +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "$" +# End: |