Release GNU make 3.82

- Update tests for Solaris bizarre-ness
- Update files for release
This commit is contained in:
Paul Smith
2010-07-28 05:39:50 +00:00
parent 59691939f9
commit 95f1a32d27
7 changed files with 104 additions and 64 deletions

View File

@@ -6,23 +6,28 @@ $details = "";
# Ensure turning on .POSIX enables the -e flag for the shell
# We can't just use "false" because on different systems it provides a
# different exit code.
# We can't assume the exit value of "false" because on different systems it's
# different.
run_make_test(q!
my $script = 'false; true';
my $flags = '-ec';
my $out = `/bin/sh $flags '$script' 2>&1`;
my $err = $? >> 8;
run_make_test(qq!
.POSIX:
all: ; @r() { return 1; }; r; true
all: ; \@$script
!,
'', "#MAKE#: *** [all] Error 1\n", 512);
'', "#MAKE#: *** [all] Error $err\n", 512);
# User settings must override .POSIX
run_make_test(q!
.SHELLFLAGS = -xc
$flags = '-xc';
$out = `/bin/sh $flags '$script' 2>&1`;
run_make_test(qq!
.SHELLFLAGS = $flags
.POSIX:
all: ; @r() { return 1; }; r; true
all: ; \@$script
!,
'', "+ r\n+ return 1\n+ true\n");
'', $out);
# This tells the test driver that the perl test script executed properly.
1;

View File

@@ -58,27 +58,29 @@ one two:;@echo "$@: $(SHELL) $$SHELL"
# Test .SHELLFLAGS
# We can't assume the value here: on Solaris for example, every line printed
# We don't know the output here: on Solaris for example, every line printed
# by the shell in -x mode has a trailing space (!!)
my $script = 'true';
my $out = `/bin/sh -xc '$script' 2>&1`;
my $script = 'true; true';
my $flags = '-xc';
my $out = `/bin/sh $flags '$script' 2>&1`;
run_make_test(qq!
.SHELLFLAGS = -xc
.SHELLFLAGS = $flags
all: ; \@$script
!,
'', $out);
# We can't just use "false" because on different systems it provides a
# different exit code.
my $script = 'r() { return 1; }; true; r; true';
my $out = `/bin/sh -xec '$script' 2>&1`;
# different exit code--once again Solaris: false exits with 255 not 1
$script = 'true; false; true';
$flags = '-xec';
$out = `/bin/sh $flags '$script' 2>&1`;
my $err = $? >> 8;
run_make_test(qq!
.SHELLFLAGS = -xec
.SHELLFLAGS = $flags
all: ; \@$script
!,
'', "$out#MAKE#: *** [all] Error 1\n", 512);
'', "$out#MAKE#: *** [all] Error $err\n", 512);
1;