- # Where to import.
- if test -z "$destdir"; then
- destdir=.
- fi
- test -d "$destdir" \
- || func_fatal_error "destination directory does not exist: $destdir"
-
- # Prefer configure.ac to configure.in
- test -f $destdir/configure.in && configure_ac=$destdir/configure.in
- test -f $destdir/configure.ac && configure_ac=$destdir/configure.ac
- test -f "$configure_ac" \
- || func_fatal_error "cannot find $destdir/configure.ac"
-
- # Get settings.
- my_sed_traces='s,#.*$,,; s,^dnl .*$,,; s, dnl .*$,,;
- /gl_MODULES[^_]/ {
- s,^.*gl_MODULES([[ ]*\([^])]*\).*$,ac_modules="\1",; p;
- };
- /gl_SOURCE_BASE/ {
- s,^.*gl_SOURCE_BASE([[ ]*\([^])]*\).*$,ac_sourcebase="\1",; p;
- };
- /gl_M4_BASE/ {
- s,^.*gl_M4_BASE([[ ]*\([^])]*\).*$,ac_m4base="\1",; p;
- };
- /gl_LIB/ {
- s,^.*gl_LIB([[ ]*\([^])]*\).*$,ac_libname="\1",; p;
- };
- /A[CM]_PROG_LIBTOOL/ { s,^.*$,seen_libtool=:,; p; };
- /LT_INIT/ { s,^.*$,seen_libtool=:,; p; };
- /gl_LGPL/ { s,^.*$,lgpl=true,; p; };
- d;'
- eval `cat $configure_ac | sed "$my_sed_traces"`
-
- # Override libname?
- if test -z "$supplied_libname" && test -n "$ac_libname"; then
- libname="$ac_libname"
- fi
-
- # Set up source base.
- test -z "$sourcebase" && sourcebase="$ac_sourcebase"
- test -z "$sourcebase" && sourcebase="lib"
- test -d "$destdir/$sourcebase" || \
- (test -z "$dry_run" && mkdir "$destdir/$sourcebase") || \
- func_fatal_error "source base $destdir/$sourcebase doesn't exist"
-
- # Set up m4 base.
- test -z "$m4base" && m4base="$ac_m4base"
- test -z "$m4base" && m4base="m4"
- test -d "$destdir/$m4base" || \
- (test -z "$dry_run" && mkdir "$destdir/$m4base") || \
- func_fatal_error "m4 base $destdir/$m4base doesn't exist"
-
- # Using libtool?
- if test x$seen_libtool != x; then
- libtool=true
- fi
-
- # What modules to extract.
- supplied_modules="$*"
- modules=`for m in $supplied_modules; do echo $m; done | sort | uniq`
- if test -z "$modules"; then
- modules="$ac_modules"
- fi
-
- # Determine final module list.
- while true; do
- xmodules=
- for module in $modules; do
- func_verify_module
- if test -n "$module"; then
- # Duplicate dependenies are harmless, but Jim wants a warning.
- duplicated_deps=`func_get_dependencies $module | sort | uniq -d`
- if test -n "$duplicated_deps"; then
- echo "warning: module $module has duplicated dependencies: "`echo $duplicated_deps` 1>&2
- fi
- xmodules="$xmodules $module "`func_get_dependencies $module`
- fi
- done
- xmodules=`for m in $xmodules; do echo $m; done | sort | uniq`
- if test "$xmodules" = "$modules"; then
- break
- fi
- modules="$xmodules"
- done
- echo "Module list with included dependencies:"
- echo "$modules" | sed -e 's/^/ /'
-
- # If --lgpl, check the license of modules are compatible.
- if test -n "$lgpl"; then
- for module in $modules; do
- license=`sed -n -e "/^License$sed_extract_prog" < "$gnulib_dir/modules/$module"`
- if test $license != LGPL; then
- func_fatal_error \
- "incompatible license on module \`$module\`: $license"
- fi
- done
- fi
-
- # Determine final file list.
- files=
- for module in $modules; do
- func_verify_module
- if test -n "$module"; then
- files="$files "`func_get_filelist $module`
- fi
- done
- files=`for f in $files; do echo $f; done | sort | uniq`
- echo "File list:"
- echo "$files" | sed -e 's/^/ /'
-
- test -n "$files" \
- || func_fatal_error "refusing to do nothing"
-
- # Copy files.
- for f in $files; do
- source=
- case "$f" in
- config/*) g=`echo "$f" | sed -e 's,^config/,,'` ;;
- lib/*) g=`echo "$f" | sed -e "s,^lib/,$sourcebase/,"`;
- source=true ;;
- m4/*) g=`echo "$f" | sed -e "s,^m4/,$m4base/,"` ;;
- *) g="$f" ;;
- esac
- test -n "$dry_run" && dry=echo
- $dry cp -p "$gnulib_dir/$f" "$destdir/$g"
- # Update license.
- if test -z "$dry_run" -a -n "$lgpl" -a -n "$source"; then
- perl -pi -e 's/GNU General/GNU Lesser General/g;' \
- -e 's/version 2([ ,])/version 2.1\1/g' $destdir/$g
- fi
- done
-
- # Commands printed in a comment in generated files.
- cmd="gnulib-tool $supplied_opts"
- opt_libtool=
- if test -n "$libtool"; then
- opt_libtool="--libtool"
- fi
- if test -n "$lgpl"; then
- opt_lgpl="--lgpl"
- fi
- actioncmd="gnulib-tool --import --dir=$destdir --lib=$libname --source-base=$sourcebase --m4-base=$m4base $opt_libtool $opt_lgpl `echo $modules`"
-
- # Create lib/Makefile.am.
- echo "Creating $destdir/$sourcebase/Makefile.am..."
- if test -n "$libtool"; then
- libext=la
- perhapsLT=LT
- else
- libext=a
- perhapsLT=
- fi
- (
- if test -z "$dry_run"; then
- exec > $destdir/$sourcebase/Makefile.am
- else
- echo "# $destdir/$sourcebase/Makefile.am"
- fi
- echo "## Process this file with automake to produce Makefile.in."
- echo "# Copyright (C) 2004 Free Software Foundation, Inc."
- echo "#"
- echo "# This file is free software, distributed under the terms of the GNU"
- echo "# General Public License. As a special exception to the GNU General"
- echo "# Public License, this file may be distributed as part of a program"
- echo "# that contains a configuration script generated by Automake, under"
- echo "# the same distribution terms as the rest of that program."
- echo "#"
- echo "# Generated by gnulib-tool."
- echo "#"
- echo "# Invoked as: $cmd"
- echo "# Reproduce by: $actioncmd"
- echo
- echo "AUTOMAKE_OPTIONS = 1.8 gnits"
- echo
- echo "noinst_${perhapsLT}LIBRARIES = $libname.$libext"
- echo
- echo "${libname}_${libext}_SOURCES ="
- echo "${libname}_${libext}_LIBADD = @${perhapsLT}LIBOBJS@"
- echo "EXTRA_DIST ="
- echo "BUILT_SOURCES ="
- echo "SUFFIXES ="
- echo "MOSTLYCLEANFILES ="
- echo "CLEANFILES ="
- echo "DISTCLEANFILES ="
- echo "MAINTAINERCLEANFILES ="
- for module in $modules; do
- func_verify_module
- if test -n "$module"; then
- func_get_automake_snippet "$module" | sed -e "s,lib_SOURCES,${libname}_${libext}_SOURCES,g" -e "s,lib_OBJECTS,${libname}_${libext}_OBJECTS,g"
- if test "$module" = 'alloca'; then
- echo "${libname}_${libext}_LIBADD += @ALLOCA@"
- fi
- fi
- done
- echo
- echo "# Makefile.am ends here"
- )
-
- # Create gnulib.m4.
- echo "Creating $destdir/$m4base/gnulib.m4..."
- (
- if test -z "$dry_run"; then
- exec > $destdir/$m4base/gnulib.m4
- else
- echo "# $destdir/$m4base/gnulib.m4"
- fi
- echo "# Copyright (C) 2004 Free Software Foundation, Inc."
- echo "# This file is free software, distributed under the terms of the GNU"
- echo "# General Public License. As a special exception to the GNU General"
- echo "# Public License, this file may be distributed as part of a program"
- echo "# that contains a configuration script generated by Autoconf, under"
- echo "# the same distribution terms as the rest of that program."
- echo "#"
- echo "# Generated by gnulib-tool."
- echo "#"
- echo "# Invoked as: $cmd"
- echo "# Reproduce by: $actioncmd"
- echo
- echo "AC_DEFUN([gl_EARLY],"
- echo "["
- if grep AC_GNU_SOURCE "$destdir"/$m4base/*.m4 > /dev/null; then
- echo " AC_GNU_SOURCE"
- fi
- if grep gl_USE_SYSTEM_EXTENSIONS "$destdir"/$m4base/*.m4 > /dev/null; then
- echo " gl_USE_SYSTEM_EXTENSIONS"
- fi
- echo "])"
- echo
- echo "AC_DEFUN([gl_INIT],"
- echo "["
- for module in $modules; do
- func_verify_module
- if test -n "$module"; then
- func_get_autoconf_snippet "$module" | sed -e '/^$/d;' -e 's/^/ /' -e 's/AM_GNU_GETTEXT(\[external\])/dnl you must add AM_GNU_GETTEXT([external]) or similar to configure.ac./'
- fi
- done
- echo "])"
- echo
- echo "dnl Usage: gl_MODULES(module1 module2 ...)"
- echo "AC_DEFUN([gl_MODULES], [])"
- echo
- echo "dnl Usage: gl_SOURCE_BASE(DIR)"
- echo "AC_DEFUN([gl_SOURCE_BASE], [])"
- echo
- echo "dnl Usage: gl_M4_BASE(DIR)"
- echo "AC_DEFUN([gl_M4_BASE], [])"
- echo
- echo "dnl Usage: gl_LIB(LIBNAME)"
- echo "AC_DEFUN([gl_LIB], [])"
- echo
- echo "dnl Usage: gl_LGPL"
- echo "AC_DEFUN([gl_LGPL], [])"
- echo
- echo "# gnulib.m4 ends here"
- )
- echo "Finished."
- echo
- echo "Don't forget to add \"$sourcebase/Makefile\""
- echo "to AC_CONFIG_FILES in \"$configure_ac\" and to mention"
- echo "\"`basename $sourcebase`\" in SUBDIRS in some Makefile.am."
- ;;
+ # Where to import.
+ if test -z "$destdir"; then
+ destdir=.
+ fi
+ test -d "$destdir" \
+ || func_fatal_error "destination directory does not exist: $destdir"
+
+ # Prefer configure.ac to configure.in
+ test -f $destdir/configure.in && configure_ac=$destdir/configure.in
+ test -f $destdir/configure.ac && configure_ac=$destdir/configure.ac
+ test -f "$configure_ac" \
+ || func_fatal_error "cannot find $destdir/configure.ac"
+
+ # Get settings.
+ my_sed_traces='s,#.*$,,; s,^dnl .*$,,; s, dnl .*$,,;
+ /gl_MODULES[^_]/ {
+ s,^.*gl_MODULES([[ ]*\([^])]*\).*$,ac_modules="\1",; p;
+ };
+ /gl_SOURCE_BASE/ {
+ s,^.*gl_SOURCE_BASE([[ ]*\([^])]*\).*$,ac_sourcebase="\1",; p;
+ };
+ /gl_M4_BASE/ {
+ s,^.*gl_M4_BASE([[ ]*\([^])]*\).*$,ac_m4base="\1",; p;
+ };
+ /gl_LIB/ {
+ s,^.*gl_LIB([[ ]*\([^])]*\).*$,ac_libname="\1",; p;
+ };
+ /AC_CONFIG_AUX_DIR/ {
+ s,^.*AC_CONFIG_AUX_DIR([[ ]*\([^])]*\).*$,ac_auxdir="\1",; p;
+ }
+ /A[CM]_PROG_LIBTOOL/ { s,^.*$,seen_libtool=:,; p; };
+ /LT_INIT/ { s,^.*$,seen_libtool=:,; p; };
+ /gl_LGPL/ { s,^.*$,lgpl=true,; p; };
+ d;'
+ eval `cat $configure_ac | sed "$my_sed_traces"`
+
+ # Override libname?
+ if test -z "$supplied_libname" && test -n "$ac_libname"; then
+ libname="$ac_libname"
+ fi
+
+ # Set up source base.
+ test -z "$sourcebase" && sourcebase="$ac_sourcebase"
+ test -z "$sourcebase" && sourcebase="lib"
+ test -d "$destdir/$sourcebase" \
+ || (test -z "$dry_run" && mkdir "$destdir/$sourcebase") \
+ || func_fatal_error "source base $destdir/$sourcebase doesn't exist"
+
+ # Set up m4 base.
+ test -z "$m4base" && m4base="$ac_m4base"
+ test -z "$m4base" && m4base="m4"
+ test -d "$destdir/$m4base" \
+ || (test -z "$dry_run" && mkdir "$destdir/$m4base") \
+ || func_fatal_error "m4 base $destdir/$m4base doesn't exist"
+
+ # Set up auxiliary directory.
+ test -z "$auxdir" && auxdir="$ac_auxdir"
+ test -z "$auxdir" && auxdir="."
+ test -d "$destdir/$auxdir" \
+ || (test -z "$dry_run" && mkdir "$destdir/$auxdir") \
+ || func_fatal_error "aux directory $destdir/$auxdir doesn't exist"
+
+ # Using libtool?
+ if test -n "$seen_libtool"; then
+ libtool=true
+ fi
+
+ # What modules to extract.
+ if test $# = 0; then
+ modules="$ac_modules"
+ else
+ modules="$*"
+ fi
+
+ func_import "$modules"
+ ;;