mirror of
https://github.com/mirror/make.git
synced 2026-09-05 14:15:00 +08:00
Release GNU make 3.82
- Update tests for Solaris bizarre-ness - Update files for release
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user