X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=gnulib-tool;h=6dcee926509ff014ec7e8ed0e4482848ef080543;hb=6286aba7da0cee73276babaf4d79d67f91f368d2;hp=53c2e840aca7a9aaa73408cf243ed24458297a74;hpb=5143f4e91f44130093914be7cf05873c7d8a4369;p=gnulib.git diff --git a/gnulib-tool b/gnulib-tool index 53c2e840a..6dcee9265 100755 --- a/gnulib-tool +++ b/gnulib-tool @@ -22,7 +22,7 @@ progname=$0 package=gnulib -cvsdatestamp='$Date: 2004-09-22 15:11:04 $' +cvsdatestamp='$Date: 2004-09-29 05:58:14 $' last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'` version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'` @@ -88,6 +88,8 @@ Options: placed (default \"lib\"), for --import. --m4-base=DIRECTORY Directory relative --dir where *.m4 macros are placed (default \"m4\"), for --import. + --lgpl Abort if modules aren't available under the LGPL. + Also modify license template from GPL to LGPL. --libtool Use libtool rules, for --import. --no-changelog don't update or create ChangeLog files --dry-run For --import, only print what would have been done. @@ -134,6 +136,7 @@ func_fatal_error () libtool= do_changelog=: dry_run= + lgpl= supplied_opts="$@" @@ -205,6 +208,9 @@ func_fatal_error () --libtool ) libtool=true shift ;; + --lgpl ) + lgpl=true + shift ;; --no-changelog | --no-changelo | --no-changel | --no-change | --no-chang | --no-chan | --no-cha | --no-ch | --no-c ) do_changelog=false shift ;; @@ -608,6 +614,7 @@ case $mode in }; /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"` @@ -625,7 +632,7 @@ case $mode in # Set up m4 base. test -z "$m4base" && m4base="$ac_m4base" - test -z "$sourcebase" && m4base="m4" + 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" @@ -665,6 +672,17 @@ case $mode in 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 @@ -682,14 +700,21 @@ case $mode in # 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/,"` ;; + 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. @@ -698,7 +723,10 @@ case $mode in if test -n "$libtool"; then opt_libtool="--libtool" fi - actioncmd="gnulib-tool --import --dir=$destdir --lib=$libname --source-base=$sourcebase --m4-base=$m4base $opt_libtool `echo $modules`" + 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..." @@ -807,6 +835,9 @@ case $mode in 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."