Apply spelling corrections from Fossies spellcheck

See https://fossies.org/features.html#codespell
Spelling issues in Git commit messages or lib/* source are not applied.

* README.OS2.template: Apply spelling corrections.
* README.VMS: Ditto.
* src/commands.c: Ditto.
* src/config.ami.template: Ditto.
* src/configh.dos.template: Ditto.
* src/job.c: Ditto.
* src/job.h: Ditto.
* src/read.c: Ditto.
* src/variable.c: Ditto.
* src/vms_exit.c: Ditto.
* src/vms_export_symbol.c: Ditto.
* src/vms_progname.c: Ditto.
* src/vmsfunctions.c: Ditto.
* src/vmsjobs.c: Ditto.
* src/w32/pathstuff.c: Ditto.
* tests/scripts/variables/automatic: Ditto.
* tests/test_driver.pl: Ditto.
This commit is contained in:
Paul Smith 2020-01-20 19:16:52 -05:00
parent 68fbad6667
commit 4533348826
17 changed files with 59 additions and 58 deletions

View File

@ -138,7 +138,7 @@ testsuite itself. -DNO_CMD_DEFAULT causes make to use /bin/sh as default
shell in every case. Normally you could simply set MAKESHELL="/bin/sh" shell in every case. Normally you could simply set MAKESHELL="/bin/sh"
to do this but the testsuite ignores the environment. -DNO_CHDIR2 causes to do this but the testsuite ignores the environment. -DNO_CHDIR2 causes
make not to use drive letters for directory names (i.e. _chdir2() and make not to use drive letters for directory names (i.e. _chdir2() and
_getcwd2() are NOT used). The testsuite interpretes the whole output of _getcwd2() are NOT used). The testsuite interprets the whole output of
make, especially statements like make[1]: Entering directory make, especially statements like make[1]: Entering directory
'C:/somewhere/make-3.79.1/tests' where the testsuite does not expect the 'C:/somewhere/make-3.79.1/tests' where the testsuite does not expect the
drive letter. This would be interpreted as an error even if there is drive letter. This would be interpreted as an error even if there is

View File

@ -11,7 +11,7 @@ Overview: -*-text-mode-*-
There is an older implementation of GNU Make that was ported to GNV. There is an older implementation of GNU Make that was ported to GNV.
Work is now in progress to merge that port to get a single version Work is now in progress to merge that port to get a single version
of GNU Make available. When that merge is done, GNU Make will auto of GNU Make available. When that merge is done, GNU Make will auto
detect that it is running under a Posix shell and then operate as close to detect that it is running under a POSIX shell and then operate as close to
GNU Make on Unix as possible. GNU Make on Unix as possible.
The descriptions below are for running GNU make from DCL or equivalent. The descriptions below are for running GNU make from DCL or equivalent.
@ -62,15 +62,15 @@ Recipe differences:
enabled if the GNU Make is set to the older behavior. enabled if the GNU Make is set to the older behavior.
The name GNV$MAKE_SHELL_SIM when enabled will cause GNU Make to try to The name GNV$MAKE_SHELL_SIM when enabled will cause GNU Make to try to
simulate a Posix shell more closely. The following behaviors occur: simulate a POSIX shell more closely. The following behaviors occur:
* Single quotes are converted to double quotes and any double * Single quotes are converted to double quotes and any double
quotes inside of them are doubled. No environment variable expansion quotes inside of them are doubled. No environment variable expansion
is simulated. is simulated.
* A exit command status will be converted to a Posix Exit * A exit command status will be converted to a POSIX Exit
where 0 is success and non-zero is failure. where 0 is success and non-zero is failure.
* The $ character will cause environment variable expansion. * The $ character will cause environment variable expansion.
* Environent variables can be set on the command line before a command. * Environment variables can be set on the command line before a command.
VMS generally uses logical name search lists instead of path variables VMS generally uses logical name search lists instead of path variables
where the resolution is handled by VMS independent of the program. Which where the resolution is handled by VMS independent of the program. Which
@ -88,7 +88,7 @@ Recipe differences:
If you are creating a OpenVMS specific makefile from scratch, you should also If you are creating a OpenVMS specific makefile from scratch, you should also
look at MMK (Madgoat Make) available at https://github.com/endlesssoftware/mmk look at MMK (Madgoat Make) available at https://github.com/endlesssoftware/mmk
MMK uses full OpenVMS syntax and a persistent subprocess is used for the MMK uses full OpenVMS syntax and a persistent sub-process is used for the
recipe lines, allowing multiple line rules. recipe lines, allowing multiple line rules.
The default makefile search order is "makefile.vms", "gnumakefile", The default makefile search order is "makefile.vms", "gnumakefile",
@ -207,15 +207,15 @@ foo: $(addsuffix .3,$(subs $(comma),$(space),$^)
override OpenVMS symbols/logicals. override OpenVMS symbols/logicals.
OpenVMS logical and symbols names show up as "environment" using the OpenVMS logical and symbols names show up as "environment" using the
origin function. when the "-e" option is specified, the origion function origin function. when the "-e" option is specified, the origin function
shows them as "environment override". On Posix the test scripts indicate shows them as "environment override". On POSIX the test scripts indicate
that they should show up just as "environment". that they should show up just as "environment".
When GNU make reads in a symbol or logical name into the environment, it When GNU make reads in a symbol or logical name into the environment, it
converts any dollar signs found to double dollar signs for convenience in converts any dollar signs found to double dollar signs for convenience in
using DCL symbols and logical names in recipes. When GNU make exports a using DCL symbols and logical names in recipes. When GNU make exports a
DCL symbol for a child process, if the first dollar sign found is followed DCL symbol for a child process, if the first dollar sign found is followed
by second dollar sign, then all double dollar signs will be convirted to by second dollar sign, then all double dollar signs will be converted to
single dollar signs. single dollar signs.
The variable $(ARCH) is predefined as IA64, ALPHA or VAX respectively. The variable $(ARCH) is predefined as IA64, ALPHA or VAX respectively.
@ -233,17 +233,17 @@ endif
Empty commands are handled correctly and don't end in a new DCL process. Empty commands are handled correctly and don't end in a new DCL process.
The exit command needs to have OpenVMS exit codes. To pass a Posix code The exit command needs to have OpenVMS exit codes. To pass a POSIX code
back to the make script, you need to encode it by multiplying it by 8 back to the make script, you need to encode it by multiplying it by 8
and then adding %x1035a002 for a failure code and %x1035a001 for a and then adding %x1035a002 for a failure code and %x1035a001 for a
success. Make will interpret any posix code other than 0 as a failure. success. Make will interpret any POSIX code other than 0 as a failure.
TODO: Add an option have simulate Posix exit commands in recipes. TODO: Add an option have simulate POSIX exit commands in recipes.
Lexical functions can be used in pipes to simulate shell file test rules. Lexical functions can be used in pipes to simulate shell file test rules.
Example: Example:
Posix: POSIX:
b : c ; [ -f $@ ] || echo >> $@ b : c ; [ -f $@ ] || echo >> $@
OpenVMS: OpenVMS:
@ -261,16 +261,16 @@ x = %x1035a00a
Runtime issues: Runtime issues:
The OpenVMS C Runtime has a convention for encoding a Posix exit status into The OpenVMS C Runtime has a convention for encoding a POSIX exit status into
to OpenVMS exit codes. These status codes will have the hex value of to OpenVMS exit codes. These status codes will have the hex value of
0x35a000. OpenVMS exit code may also have a hex value of %x10000000 set on 0x35a000. OpenVMS exit code may also have a hex value of %x10000000 set on
them. This is a flag to tell DCL not to write out the exit code. them. This is a flag to tell DCL not to write out the exit code.
To convert an OpenVMS encoded Posix exit status code to the original code To convert an OpenVMS encoded POSIX exit status code to the original code
You subtract %x35a000 and any flags from the OpenVMS code and divide it by 8. You subtract %x35a000 and any flags from the OpenVMS code and divide it by 8.
WARNING: Backward-incompatibility! WARNING: Backward-incompatibility!
The make program exit now returns the same encoded Posix exit code as on The make program exit now returns the same encoded POSIX exit code as on
Unix. Previous versions returned the OpenVMS exit status code if that is what Unix. Previous versions returned the OpenVMS exit status code if that is what
caused the recipe to fail. caused the recipe to fail.
TODO: Provide a way for scripts calling make to obtain that OpenVMS status TODO: Provide a way for scripts calling make to obtain that OpenVMS status
@ -280,9 +280,9 @@ Runtime issues:
will have the error "-E-" severity set on exit. will have the error "-E-" severity set on exit.
MAKE_TROUBLE is returned only if the option "-q" or "--question" is used and MAKE_TROUBLE is returned only if the option "-q" or "--question" is used and
has a Posix value of 1 and an OpenVMS status of %x1035a00a. has a POSIX value of 1 and an OpenVMS status of %x1035a00a.
MAKE_FAILURE has a Posix value of 2 and an OpenVMS status of %x1035a012. MAKE_FAILURE has a POSIX value of 2 and an OpenVMS status of %x1035a012.
Output from GNU make may have single quotes around some values where on Output from GNU make may have single quotes around some values where on
other platforms it does not. Also output that would be in double quotes other platforms it does not. Also output that would be in double quotes
@ -294,10 +294,10 @@ Runtime issues:
There may be a "Waiting for unfinished jobs..." show up in the output. There may be a "Waiting for unfinished jobs..." show up in the output.
Error messages generated by Make or Unix utilities may slightly vary from Error messages generated by Make or Unix utilities may slightly vary from
Posix platforms. Typically the case may be different. POSIX platforms. Typically the case may be different.
When make deletes files, on posix platforms it writes out 'rm' and the list When make deletes files, on POSIX platforms it writes out 'rm' and the list
of files. On VMS, only the files are writen out, one per line. of files. On VMS, only the files are written out, one per line.
TODO: VMS TODO: VMS
There may be extra leading white space or additional or missing whitespace There may be extra leading white space or additional or missing whitespace
@ -323,15 +323,15 @@ Runtime issues:
to override this in your makefile, or whatever). to override this in your makefile, or whatever).
Unix compatibilty features: Unix compatibility features:
--------------------------- ----------------------------
If the command 'echo' is seen, any single quotes on the line will be If the command 'echo' is seen, any single quotes on the line will be
converted to double quotes. converted to double quotes.
The variable $(CD) is implemented as a built in Change Directory The variable $(CD) is implemented as a built in Change Directory
command. This invokes the 'builtin_cd' Executing a 'set default' command. This invokes the 'builtin_cd' Executing a 'set default'
recipe doesn't do the trick, since it only affects the subprocess recipe doesn't do the trick, since it only affects the sub-process
spawned for that command. spawned for that command.
The 'builtin_cd' is generally expected to be on its own line. The 'builtin_cd' is generally expected to be on its own line.
@ -347,7 +347,7 @@ Unix compatibilty features:
Unix shell style I/O redirection is supported. You can now write lines like: Unix shell style I/O redirection is supported. You can now write lines like:
"<tab>mcr sys$disk:[]program.exe < input.txt > output.txt &> error.txt" "<tab>mcr sys$disk:[]program.exe < input.txt > output.txt &> error.txt"
Posix shells have ":" as a null command. These are now handled. POSIX shells have ":" as a null command. These are now handled.
https://savannah.gnu.org/bugs/index.php?41761 https://savannah.gnu.org/bugs/index.php?41761
A note on appending the redirected output. A simple mechanism is A note on appending the redirected output. A simple mechanism is
@ -367,10 +367,10 @@ Unix compatibilty features:
The older implementation wrote the output to a temporary file in The older implementation wrote the output to a temporary file in
in sys$scratch: and then attempted to append the file to the existing file. in sys$scratch: and then attempted to append the file to the existing file.
The temporary file names looked like "CMDxxxxx.". Any time the created The temporary file names looked like "CMDxxxxx.". Any time the created
command procedure can not complete, this happens. Pressing Ctrl+Y to command procedure can not complete, this happens. Pressing CTRL+Y to
abort make is one case. abort make is one case.
In case of Ctrl+Y the associated command procedure is left in SYS$SCRATCH:. In case of CTRL+Y the associated command procedure is left in SYS$SCRATCH:.
The command procedures will be named gnv$make_cmd*.com. The command procedures will be named gnv$make_cmd*.com.
The CtrlY handler now uses $delprc to delete all children. This way also The CtrlY handler now uses $delprc to delete all children. This way also
@ -378,12 +378,12 @@ Unix compatibilty features:
then sends SIGQUIT to itself, which is handled in common code. then sends SIGQUIT to itself, which is handled in common code.
Temporary command files are now deleted in the OpenVMS child termination Temporary command files are now deleted in the OpenVMS child termination
handler. That deletes them even if a Ctrl+C was pressed. handler. That deletes them even if a CTRL+C was pressed.
TODO: Does the previous section about >> leaving files still apply? TODO: Does the previous section about >> leaving files still apply?
The behavior of pressing Ctrl+C is not changed. It still has only an effect, The behavior of pressing CTRL+C is not changed. It still has only an effect,
after the current action is terminated. If that doesn't happen or takes too after the current action is terminated. If that doesn't happen or takes too
long, Ctrl+Y should be used instead. long, CTRL+Y should be used instead.
Build Options: Build Options:
@ -422,7 +422,7 @@ Self test failures and todos:
child. child.
GNU make was not currently translating the OpenVMS encoded POSIX values GNU make was not currently translating the OpenVMS encoded POSIX values
returned to it back to the Posix values. I have temporarily modified the returned to it back to the POSIX values. I have temporarily modified the
Perl test script to compensate for it. This should be being handled Perl test script to compensate for it. This should be being handled
internally to Make. internally to Make.
TODO: Verify and update the Perl test script. TODO: Verify and update the Perl test script.
@ -435,7 +435,7 @@ Self test failures and todos:
Symlink support is not present. Symlinks are supported by OpenVMS 8.3 and Symlink support is not present. Symlinks are supported by OpenVMS 8.3 and
later. later.
Error messages should be supressed with the "-" at the beginning of a line. Error messages should be suppressed with the "-" at the beginning of a line.
On openVMS they were showing up. TODO: Is this still an issue? On openVMS they were showing up. TODO: Is this still an issue?
The internal vmsify and unixify OpenVMS to/from UNIX are not handling logical The internal vmsify and unixify OpenVMS to/from UNIX are not handling logical
@ -443,7 +443,7 @@ Self test failures and todos:
Build instructions: Build instructions:
------------------ -------------------
Don't use the HP C V7.2-001 compiler, which has an incompatible change Don't use the HP C V7.2-001 compiler, which has an incompatible change
how __STDC__ is defined. This results at least in compile time warnings. how __STDC__ is defined. This results at least in compile time warnings.
@ -478,7 +478,7 @@ Running the tests:
https://sourceforge.net/projects/gnv/files/ https://sourceforge.net/projects/gnv/files/
As the test scripts need to create some foreign commands that persist As the test scripts need to create some foreign commands that persist
after the test is run, it is recommend that either you use a subprocess or after the test is run, it is recommend that either you use a sub-process or
a dedicated login to run the tests. a dedicated login to run the tests.
To get detailed information for running the tests: To get detailed information for running the tests:
@ -499,12 +499,12 @@ Running the tests:
$ perl run_make_tests.pl $ perl run_make_tests.pl
Acknowlegements: Acknowledgments:
---------------- ----------------
See NEWS. for details of past changes. See NEWS. for details of past changes.
These are the currently known contributers to this port. These are the currently known contributors to this port.
Hartmut Becker Hartmut Becker
John Malmberg John Malmberg

View File

@ -508,7 +508,7 @@ fatal_error_signal (int sig)
#ifdef WINDOWS32 #ifdef WINDOWS32
extern HANDLE main_thread; extern HANDLE main_thread;
/* Windows creates a sperate thread for handling Ctrl+C, so we need /* Windows creates a separate thread for handling Ctrl+C, so we need
to suspend the main thread, or else we will have race conditions to suspend the main thread, or else we will have race conditions
when both threads call reap_children. */ when both threads call reap_children. */
if (main_thread) if (main_thread)

View File

@ -324,10 +324,10 @@ this program. If not, see <http://www.gnu.org/licenses/>. */
/* Define if you have the sun library (-lsun). */ /* Define if you have the sun library (-lsun). */
/* #undef HAVE_LIBSUN */ /* #undef HAVE_LIBSUN */
/* Output sync sypport */ /* Output sync support */
#define NO_OUTPUT_SYNC #define NO_OUTPUT_SYNC
/* Define for Case Insensitve behavior */ /* Define for Case Insensitive behavior */
#define HAVE_CASE_INSENSITIVE_FS #define HAVE_CASE_INSENSITIVE_FS
/* Build host information. */ /* Build host information. */

View File

@ -100,7 +100,7 @@ this program. If not, see <http://www.gnu.org/licenses/>. */
/* Define to the version of this package. */ /* Define to the version of this package. */
#define PACKAGE_VERSION "%VERSION%" #define PACKAGE_VERSION "%VERSION%"
/* Output sync sypport */ /* Output sync support */
#define NO_OUTPUT_SYNC #define NO_OUTPUT_SYNC
/* Version number of package */ /* Version number of package */

View File

@ -2754,7 +2754,7 @@ construct_command_argv_internal (char *line, char **restp, const char *shell,
/* We used to have a double quote (") in sh_chars_dos[] below, but /* We used to have a double quote (") in sh_chars_dos[] below, but
that caused any command line with quoted file names be run that caused any command line with quoted file names be run
through a temporary batch file, which introduces command-line through a temporary batch file, which introduces command-line
limit of 4K charcaters imposed by cmd.exe. Since CreateProcess limit of 4K characters imposed by cmd.exe. Since CreateProcess
can handle quoted file names just fine, removing the quote lifts can handle quoted file names just fine, removing the quote lifts
the limit from a very frequent use case, because using quoted the limit from a very frequent use case, because using quoted
file names is commonplace on MS-Windows. */ file names is commonplace on MS-Windows. */

View File

@ -29,7 +29,7 @@ this program. If not, see <http://www.gnu.org/licenses/>. */
#endif #endif
#define CHILDBASE \ #define CHILDBASE \
char *cmd_name; /* Alloced copy of command run. */ \ char *cmd_name; /* Allocated copy of command run. */ \
char **environment; /* Environment for commands. */ \ char **environment; /* Environment for commands. */ \
VMSCHILD \ VMSCHILD \
struct output output /* Output for this child. */ struct output output /* Output for this child. */

View File

@ -3215,10 +3215,10 @@ parse_file_seq (char **stringp, size_t size, int stopmap,
/* Strip leading "this directory" references. */ /* Strip leading "this directory" references. */
if (NONE_SET (flags, PARSEFS_NOSTRIP)) if (NONE_SET (flags, PARSEFS_NOSTRIP))
#ifdef VMS #ifdef VMS
/* Skip leading '[]'s. should only be one set or bug somwhere else */ /* Skip leading '[]'s. should only be one set or bug somewhere else */
if (p - s > 2 && s[0] == '[' && s[1] == ']') if (p - s > 2 && s[0] == '[' && s[1] == ']')
s += 2; s += 2;
/* Skip leading '<>'s. should only be one set or bug somwhere else */ /* Skip leading '<>'s. should only be one set or bug somewhere else */
if (p - s > 2 && s[0] == '<' && s[1] == '>') if (p - s > 2 && s[0] == '<' && s[1] == '>')
s += 2; s += 2;
#endif #endif

View File

@ -212,9 +212,9 @@ define_variable_in_set (const char *name, size_t length,
#ifdef VMS #ifdef VMS
/* VMS does not populate envp[] with DCL symbols and logical names which /* VMS does not populate envp[] with DCL symbols and logical names which
historically are mapped to environent variables. historically are mapped to environment variables.
If the variable is not yet defined, then we need to check if getenv() If the variable is not yet defined, then we need to check if getenv()
can find it. Do not do this for origin == o_env to avoid infinte can find it. Do not do this for origin == o_env to avoid infinite
recursion */ recursion */
if (HASH_VACANT (v) && (origin != o_env)) if (HASH_VACANT (v) && (origin != o_env))
{ {
@ -475,8 +475,9 @@ lookup_variable (const char *name, size_t length)
} }
#ifdef VMS #ifdef VMS
/* VMS does not populate envp[] with DCL symbols and logical names which /* VMS doesn't populate envp[] with DCL symbols and logical names, which
historically are mapped to enviroment varables and returned by getenv() */ historically are mapped to environment variables and returned by
getenv(). */
{ {
char *vname = alloca (length + 1); char *vname = alloca (length + 1);
char *value; char *value;

View File

@ -1,6 +1,6 @@
/* vms_exit.c /* vms_exit.c
* *
* Wrapper for the VMS exit() command to tranlate UNIX codes to be * Wrapper for the VMS exit() command to translate UNIX codes to be
* encoded for POSIX, but also have VMS severity levels. * encoded for POSIX, but also have VMS severity levels.
* The posix_exit() variant only sets a severity level for status code 1. * The posix_exit() variant only sets a severity level for status code 1.
* *

View File

@ -77,7 +77,7 @@ struct dcl_symbol
struct dsc$descriptor_s value_desc; struct dsc$descriptor_s value_desc;
char name[MAX_DCL_SYMBOL_LEN + 1]; /* + 1 byte for null terminator */ char name[MAX_DCL_SYMBOL_LEN + 1]; /* + 1 byte for null terminator */
char value[MAX_DCL_SYMBOL_VALUE +1]; /* + 1 byte for null terminator */ char value[MAX_DCL_SYMBOL_VALUE +1]; /* + 1 byte for null terminator */
char pad[3]; /* Pad structure to longword allignment */ char pad[3]; /* Pad structure to longword alignment */
}; };
static struct dcl_symbol * vms_dcl_symbol_head = NULL; static struct dcl_symbol * vms_dcl_symbol_head = NULL;
@ -108,7 +108,7 @@ clear_exported_symbols (void)
symbol = vms_dcl_symbol_head; symbol = vms_dcl_symbol_head;
/* Walk the list of symbols. This is done durring exit, /* Walk the list of symbols. This is done during exit,
* so no need to free memory. * so no need to free memory.
*/ */
while (symbol != NULL) while (symbol != NULL)

View File

@ -417,7 +417,7 @@ set_program_name (const char *argv0)
} }
} }
/* Find the .exe on the name (case insenstive) and toss it */ /* Find the .exe on the name (case insensitive) and toss it */
dotexe = strrchr (vms_new_nam, '.'); dotexe = strrchr (vms_new_nam, '.');
if (dotexe != NULL) { if (dotexe != NULL) {
if ((dotexe[1] == 'e' || dotexe[1] == 'E') && if ((dotexe[1] == 'e' || dotexe[1] == 'E') &&

View File

@ -149,7 +149,7 @@ vms_command(const char* argv0)
If something goes wrong in sys$parse (unlikely, this is a VMS/CRTL supplied If something goes wrong in sys$parse (unlikely, this is a VMS/CRTL supplied
file specification) or if there is an empty name part (not easy to produce, file specification) or if there is an empty name part (not easy to produce,
but it is possible) just return "make". but it is possible) just return "make".
Somes notes ... Some notes ...
NAM[L]$M_SYNCHK requests a syntax check, only. NAM[L]$M_SYNCHK requests a syntax check, only.
NAM is for ODS2 names (shorter parts, output usually converted to UPPERCASE). NAM is for ODS2 names (shorter parts, output usually converted to UPPERCASE).
NAML is for ODS2/ODS5 names (longer parts, output unchanged). NAML is for ODS2/ODS5 names (longer parts, output unchanged).

View File

@ -331,7 +331,7 @@ posix_parse_sq (struct token_info *token)
static char * static char *
posix_parse_dq (struct token_info *token) posix_parse_dq (struct token_info *token)
{ {
/* Unix mode: Any imbedded \" becomes doubled. /* Unix mode: Any embedded \" becomes doubled.
\t is tab, \\, \$ leading character stripped. \t is tab, \\, \$ leading character stripped.
$ character replaced with \' unless escaped. $ character replaced with \' unless escaped.
*/ */
@ -463,7 +463,7 @@ vms_parse_quotes (struct token_info *token)
} }
break; break;
case '\'': case '\'':
/* Symbol substitution ony in double quotes */ /* Symbol substitution only in double quotes */
if ((p[1] == '\'') && (parse_level[nest] == '"')) if ((p[1] == '\'') && (parse_level[nest] == '"'))
{ {
nest++; nest++;

View File

@ -177,7 +177,7 @@ convert_path_to_nutc(char *path)
*pathp = '\0'; *pathp = '\0';
/* /*
* Loop through PATH and convert one elemnt of the path at at * Loop through PATH and convert one element of the path at at
* a time. Single file pathnames will fail this and fall * a time. Single file pathnames will fail this and fall
* to the logic below loop. * to the logic below loop.
*/ */

View File

@ -107,7 +107,7 @@ bar: ;',
unlink('foo'); unlink('foo');
# TEST #4: ensure prereq ordering is correct when the commmand target has none # TEST #4: ensure prereq ordering is correct when the command target has none
# See Savannah bug #21198 # See Savannah bug #21198
run_make_test(' run_make_test('

View File

@ -266,7 +266,7 @@ sub toplevel
foreach my $dir (@dirs) { foreach my $dir (@dirs) {
next if ($dir =~ /^(\..*|CVS|RCS)$/ || ! -d "$scriptpath/$dir"); next if ($dir =~ /^(\..*|CVS|RCS)$/ || ! -d "$scriptpath/$dir");
push (@rmdirs, $dir); push (@rmdirs, $dir);
# VMS can have overlayed file systems, so directories may repeat. # VMS can have overlaid file systems, so directories may repeat.
next if -d "$workpath/$dir"; next if -d "$workpath/$dir";
mkdir ("$workpath/$dir", 0777) mkdir ("$workpath/$dir", 0777)
or &error ("Couldn't mkdir $workpath/$dir: $!\n"); or &error ("Couldn't mkdir $workpath/$dir: $!\n");