projects
/
pspp
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c16199c
)
In testing directories, link the test programs already during "make", not
author
Bruno Haible
<bruno@clisp.org>
Sat, 27 Jan 2007 13:53:54 +0000
(13:53 +0000)
committer
Bruno Haible
<bruno@clisp.org>
Sat, 27 Jan 2007 13:53:54 +0000
(13:53 +0000)
during "make check".
ChangeLog
patch
|
blob
|
history
gnulib-tool
patch
|
blob
|
history
diff --git
a/ChangeLog
b/ChangeLog
index cf7107dc49eb2c363660203fcb60c27f4c76bd58..5b03bf98c0e252a531d4c12b91bf996ea3d1ba8d 100644
(file)
--- a/
ChangeLog
+++ b/
ChangeLog
@@
-1,3
+1,12
@@
+2007-01-27 Bruno Haible <bruno@clisp.org>
+
+ * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
+ check_PROGRAMS into noinst_PROGRAMS.
+ (func_emit_tests_Makefile_am): Likewise. Also don't initialize
+ check_PROGRAMS in this case.
+ (func_import): Set for_test to false.
+ (func_create_testdir): Set for_test to true.
+
2007-01-27 Yoann Vandoorselaere <yoann.v@prelude-ids.com>
Bruno Haible <bruno@clisp.org>
2007-01-27 Yoann Vandoorselaere <yoann.v@prelude-ids.com>
Bruno Haible <bruno@clisp.org>
diff --git
a/gnulib-tool
b/gnulib-tool
index 547e29a576489f23fe28aea3191762e8305cca68..cd73eb15230f499cc4a25962465c49b3bc221422 100755
(executable)
--- a/
gnulib-tool
+++ b/
gnulib-tool
@@
-22,7
+22,7
@@
progname=$0
package=gnulib
progname=$0
package=gnulib
-cvsdatestamp='$Date: 2007-01-2
1 20:07:09
$'
+cvsdatestamp='$Date: 2007-01-2
7 13:53:54
$'
last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'`
version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'`
nl='
last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'`
version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'`
nl='
@@
-1180,6
+1180,7
@@
func_modules_to_filelist ()
# - libtool true if libtool will be used, false or blank otherwise
# - macro_prefix prefix of gl_LIBOBJS macros to use
# - actioncmd (optional) command that will reproduce this invocation
# - libtool true if libtool will be used, false or blank otherwise
# - macro_prefix prefix of gl_LIBOBJS macros to use
# - actioncmd (optional) command that will reproduce this invocation
+# - for_test true if creating a package for testing, false otherwise
# Output:
# - uses_subdirs nonempty if object files in subdirs exist
func_emit_lib_Makefile_am ()
# Output:
# - uses_subdirs nonempty if object files in subdirs exist
func_emit_lib_Makefile_am ()
@@
-1200,6
+1201,15
@@
func_emit_lib_Makefile_am ()
perhapsLT=
sed_eliminate_LDFLAGS='/^lib_LDFLAGS[ ]*+=/d'
fi
perhapsLT=
sed_eliminate_LDFLAGS='/^lib_LDFLAGS[ ]*+=/d'
fi
+ if $for_test; then
+ # When creating a package for testing: Attempt to provoke failures,
+ # especially link errors, already during "make" rather than during
+ # "make check", because "make check" is not possible in a cross-compiling
+ # situation. Turn check_PROGRAMS into noinst_PROGRAMS.
+ sed_transform_check_PROGRAMS='s,check_PROGRAMS,noinst_PROGRAMS,g'
+ else
+ sed_transform_check_PROGRAMS=
+ fi
echo "## DO NOT EDIT! GENERATED AUTOMATICALLY!"
echo "## Process this file with automake to produce Makefile.in."
func_emit_copyright_notice
echo "## DO NOT EDIT! GENERATED AUTOMATICALLY!"
echo "## Process this file with automake to produce Makefile.in."
func_emit_copyright_notice
@@
-1219,7
+1229,8
@@
func_emit_lib_Makefile_am ()
sed -e "$sed_eliminate_LDFLAGS" |
sed -e 's,lib_\([A-Z][A-Z]*\),'"${libname}_${libext}"'_\1,g' |
sed -e 's,lib%_LIBRARIES,lib_LIBRARIES,g' \
sed -e "$sed_eliminate_LDFLAGS" |
sed -e 's,lib_\([A-Z][A-Z]*\),'"${libname}_${libext}"'_\1,g' |
sed -e 's,lib%_LIBRARIES,lib_LIBRARIES,g' \
- -e 's,lib%_LTLIBRARIES,lib_LTLIBRARIES,g'
+ -e 's,lib%_LTLIBRARIES,lib_LTLIBRARIES,g' |
+ sed -e "$sed_transform_check_PROGRAMS"
if test "$module" = 'alloca'; then
echo "${libname}_${libext}_LIBADD += @${perhapsLT}ALLOCA@"
echo "${libname}_${libext}_DEPENDENCIES += @${perhapsLT}ALLOCA@"
if test "$module" = 'alloca'; then
echo "${libname}_${libext}_LIBADD += @${perhapsLT}ALLOCA@"
echo "${libname}_${libext}_DEPENDENCIES += @${perhapsLT}ALLOCA@"
@@
-1318,6
+1329,7
@@
func_emit_lib_Makefile_am ()
# - sourcebase relative directory containing lib source code
# - m4base relative directory containing autoconf macros
# - testsbase relative directory containing unit test code
# - sourcebase relative directory containing lib source code
# - m4base relative directory containing autoconf macros
# - testsbase relative directory containing unit test code
+# - for_test true if creating a package for testing, false otherwise
func_emit_tests_Makefile_am ()
{
if test "$libtool" = true; then
func_emit_tests_Makefile_am ()
{
if test "$libtool" = true; then
@@
-1332,6
+1344,15
@@
func_emit_tests_Makefile_am ()
libext=a
sed_eliminate_LDFLAGS='/^lib_LDFLAGS[ ]*+=/d'
fi
libext=a
sed_eliminate_LDFLAGS='/^lib_LDFLAGS[ ]*+=/d'
fi
+ if $for_test; then
+ # When creating a package for testing: Attempt to provoke failures,
+ # especially link errors, already during "make" rather than during
+ # "make check", because "make check" is not possible in a cross-compiling
+ # situation. Turn check_PROGRAMS into noinst_PROGRAMS.
+ sed_transform_check_PROGRAMS='s,check_PROGRAMS,noinst_PROGRAMS,g'
+ else
+ sed_transform_check_PROGRAMS=
+ fi
testsbase_inverse=`echo "$testsbase" | sed -e 's,/$,,' | sed -e 's,[^/][^/]*,..,g'`
echo "## DO NOT EDIT! GENERATED AUTOMATICALLY!"
echo "## Process this file with automake to produce Makefile.in."
testsbase_inverse=`echo "$testsbase" | sed -e 's,/$,,' | sed -e 's,[^/][^/]*,..,g'`
echo "## DO NOT EDIT! GENERATED AUTOMATICALLY!"
echo "## Process this file with automake to produce Makefile.in."
@@
-1353,7
+1374,8
@@
func_emit_tests_Makefile_am ()
sed -e "$sed_eliminate_LDFLAGS" |
sed -e 's,lib_\([A-Z][A-Z]*\),'"${libname}_${libext}"'_\1,g' |
sed -e 's,lib%_LIBRARIES,lib_LIBRARIES,g' \
sed -e "$sed_eliminate_LDFLAGS" |
sed -e 's,lib_\([A-Z][A-Z]*\),'"${libname}_${libext}"'_\1,g' |
sed -e 's,lib%_LIBRARIES,lib_LIBRARIES,g' \
- -e 's,lib%_LTLIBRARIES,lib_LTLIBRARIES,g'
+ -e 's,lib%_LTLIBRARIES,lib_LTLIBRARIES,g' |
+ sed -e "$sed_transform_check_PROGRAMS"
} > amsnippet.tmp
# Skip the contents if its entirely empty.
if grep '[^ ]' amsnippet.tmp > /dev/null ; then
} > amsnippet.tmp
# Skip the contents if its entirely empty.
if grep '[^ ]' amsnippet.tmp > /dev/null ; then
@@
-1374,7
+1396,9
@@
func_emit_tests_Makefile_am ()
echo "TESTS ="
echo "TESTS_ENVIRONMENT ="
echo "noinst_PROGRAMS ="
echo "TESTS ="
echo "TESTS_ENVIRONMENT ="
echo "noinst_PROGRAMS ="
- echo "check_PROGRAMS ="
+ if ! $for_test; then
+ echo "check_PROGRAMS ="
+ fi
echo "noinst_HEADERS ="
if grep '^pkgdata_DATA *+=' allsnippets.tmp > /dev/null; then
echo "pkgdata_DATA ="
echo "noinst_HEADERS ="
if grep '^pkgdata_DATA *+=' allsnippets.tmp > /dev/null; then
echo "pkgdata_DATA ="
@@
-1942,6
+1966,9
@@
func_import ()
makefile_am=Makefile.am
fi
makefile_am=Makefile.am
fi
+ # Create normal Makefile.ams.
+ for_test=false
+
# Create library makefile.
func_dest_tmpfilename $sourcebase/$makefile_am
func_emit_lib_Makefile_am > "$tmpfile"
# Create library makefile.
func_dest_tmpfilename $sourcebase/$makefile_am
func_emit_lib_Makefile_am > "$tmpfile"
@@
-2373,6
+2400,9
@@
func_create_testdir ()
exec 0<&5 5<&-
}
exec 0<&5 5<&-
}
+ # Create Makefile.ams that are for testing.
+ for_test=true
+
# Create $sourcebase/Makefile.am.
mkdir -p "$testdir/$sourcebase"
func_emit_lib_Makefile_am > "$testdir/$sourcebase/Makefile.am"
# Create $sourcebase/Makefile.am.
mkdir -p "$testdir/$sourcebase"
func_emit_lib_Makefile_am > "$testdir/$sourcebase/Makefile.am"