comparison gnulib-tool @ 6550:3bb57675fc1b

Avoid error due to empty archive on MacOS X.
author Bruno Haible <bruno@clisp.org>
date Wed, 11 Jan 2006 13:03:25 +0000
parents 2f04f595e14e
children d37637700b4e
comparison
equal deleted inserted replaced
6549:2f04f595e14e 6550:3bb57675fc1b
20 # This program is meant for authors or maintainers which want to import 20 # This program is meant for authors or maintainers which want to import
21 # modules from gnulib into their packages. 21 # modules from gnulib into their packages.
22 22
23 progname=$0 23 progname=$0
24 package=gnulib 24 package=gnulib
25 cvsdatestamp='$Date: 2006-01-11 13:01:13 $' 25 cvsdatestamp='$Date: 2006-01-11 13:03:25 $'
26 last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'` 26 last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'`
27 version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'` 27 version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'`
28 28
29 # You can set AUTOCONFPATH to empty if autoconf 2.57 is already in your PATH. 29 # You can set AUTOCONFPATH to empty if autoconf 2.57 is already in your PATH.
30 AUTOCONFPATH= 30 AUTOCONFPATH=
630 if test "$xmodules" = "$modules"; then 630 if test "$xmodules" = "$modules"; then
631 break 631 break
632 fi 632 fi
633 modules="$xmodules" 633 modules="$xmodules"
634 done 634 done
635 }
636
637 # func_modules_add_dummy
638 # Input:
639 # - modules list of modules, including dependencies
640 # Output:
641 # - modules list of modules, including 'dummy' if needed
642 func_modules_add_dummy ()
643 {
644 have_lib_SOURCES=
645 sed_remove_backslash_newline=':a
646 /\\$/{
647 s/\\$//
648 N
649 s/\n//
650 ba
651 }'
652 for module in $modules; do
653 func_verify_nontests_module
654 if test -n "$module"; then
655 # Extract the value of "lib_SOURCES += ...".
656 for file in `func_get_automake_snippet "$module" | sed -e "$sed_remove_backslash_newline" | sed -n -e 's,^lib_SOURCES[ ]*+=\([^#]*\).*$,\1,p'`; do
657 # Ignore .h files since they are not compiled.
658 case "$file" in
659 *.h) ;;
660 *) have_lib_SOURCES=yes ;;
661 esac
662 done
663 fi
664 done
665 # Add the dummy module, to make sure the library will be non-empty.
666 if test -z "$have_lib_SOURCES"; then
667 modules="$modules dummy"
668 fi
635 } 669 }
636 670
637 # func_modules_to_filelist 671 # func_modules_to_filelist
638 # Input: 672 # Input:
639 # - modules list of modules, including dependencies 673 # - modules list of modules, including dependencies
943 modules="$specified_modules" 977 modules="$specified_modules"
944 func_modules_transitive_closure 978 func_modules_transitive_closure
945 echo "Module list with included dependencies:" 979 echo "Module list with included dependencies:"
946 echo "$modules" | sed -e 's/^/ /' 980 echo "$modules" | sed -e 's/^/ /'
947 981
982 # Add the dummy module if needed.
983 func_modules_add_dummy
984
948 # If --lgpl, check the license of modules are compatible. 985 # If --lgpl, check the license of modules are compatible.
949 if test -n "$lgpl"; then 986 if test -n "$lgpl"; then
950 for module in $modules; do 987 for module in $modules; do
951 license=`func_get_license $module` 988 license=`func_get_license $module`
952 case $license in 989 case $license in
1397 1434
1398 # Determine final module list. 1435 # Determine final module list.
1399 func_modules_transitive_closure 1436 func_modules_transitive_closure
1400 echo "Module list with included dependencies:" 1437 echo "Module list with included dependencies:"
1401 echo "$modules" | sed -e 's/^/ /' 1438 echo "$modules" | sed -e 's/^/ /'
1439
1440 # Add the dummy module if needed.
1441 func_modules_add_dummy
1402 1442
1403 # Determine final file list. 1443 # Determine final file list.
1404 func_modules_to_filelist 1444 func_modules_to_filelist
1405 echo "File list:" 1445 echo "File list:"
1406 echo "$files" | sed -e 's/^/ /' 1446 echo "$files" | sed -e 's/^/ /'