make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Schedule for GNU make 3.81


From: Alessandro Vesely
Subject: Re: Schedule for GNU make 3.81
Date: Mon, 21 Feb 2005 23:59:10 +0100

Earnie Boyd wrote:
> 
> <quote who="Paul D. Smith">
> > %% "Earnie Boyd" <address@hidden> writes:
> >
> >   eb> Perhaps the easiest solution is to grab the contents of Path,
> >   eb> remove Path, then set PATH with the saved contents on startup.
> >   eb> Windows doesn't care if it is Path or PATH.  Unfortunately getenv
> >   eb> is case sensitive.
> >
> > I'm no expert, but there's definitely some code in GNU make which I
> > _THINK_ is trying to take care of the Path vs. PATH situation... it
> > seems to be looking for both of them.
> >
> 
> But if some ported tool only looks for PATH ... never mind, one should go
> fix the ported tool.

Hmmm... command.com is not a ported tool. Dunno why it only looks for PATH.
In ChangeLog.2, there is a note like
Wed Oct  1 15:45:09 1997  Rob Tulloh <address@hidden>

        * main.c [WINDOWS32]: Any arbitrary spelling of Path can be
        detected. Make will ensure that the special spelling `Path' is
        inserted into the environment when the path variable is propagated
        within itself and to make's children.

But it doesn't say why.

I had a hard time trying to run make tests, and several failures.

First of all, when I `echo 'all:;echo blah' | gmake -f-` my borland-compiled
3.81beta2 hangs. Running a similar command from a dos shell works. In facts,
gmake won't stop reading stdin, it gets a broken-pipe error rather than eof.
Patching as follows makes it work.

--- main.original.c     Wed Feb 16 06:03:42 2005
+++ main.c      Mon Feb 21 16:38:28 2005
@@ -1438,7 +1438,7 @@
             outfile = open_tmpfile (&stdin_nm, template);
             if (outfile == 0)
               pfatal_with_name (_("fopen (temporary file)"));
-            while (!feof (stdin))
+            while (!feof (stdin) && !ferror(stdin))
               {
                 char buf[2048];
                 unsigned int n = fread (buf, 1, sizeof (buf), stdin);

I was going to file this as a bug, but I didn't: whose bug is it,
GNU make? Borland BCC32? MingW sh.exe? Dunno.

I run the tests with ActiveState perl on Win98 and still had some difficulties
(unlink($pure_log) was deleting the executable, strange problem).

I paste tests results below.

Some failures are just
C:\UTIL\GMAKE.EXE: Entering directory `D:\tmp\TOOLS\make\make-3.81beta2\tests'
vs
C:\UTIL\GMAKE.EXE: Entering directory `D:/tmp/TOOLS/make/make-3.81beta2/tests'

but I notice all of the SHELL tests fail.
------------------------------------------------------------------------------
  Running tests for GNU make on MINGW32_98-4.10 PCALE 1.0.10(0.46/3/2) i686
                                       
------------------------------------------------------------------------------

Clearing work...
Finding tests...

features/comments ....................................... ok     (1 passed)
features/conditionals ................................... ok     (2 passed)
features/default_names .................................. 
*** Test died (features/default_names): test_driver.pl: 423: abort at 
test_driver.pl line 608.

ok     (2 passed)
features/double_colon ................................... ok     (9 passed)
features/echoing ........................................ ok     (4 passed)
features/errors ......................................... FAILED (0/2 passed)
features/escape ......................................... Error running 
C:/UTIL/GMAKE.EXE (expected 512; got 0): C:/UTIL/GMAKE.EXE -f 
work/features/escape.mk 'path=p\\:'
Error running C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/features/escape.mk 'foo bar'
FAILED (3/6 passed)
features/export ......................................... FAILED (9/10 passed)
features/include ........................................ ok     (5 passed)
features/mult_rules ..................................... ok     (2 passed)
features/mult_targets ................................... ok     (2 passed)
features/order_only ..................................... ok     (9 passed)
features/override ....................................... ok     (1 passed)
features/parallelism .................................... FAILED (2/3 passed)
features/patspecific_vars ............................... Error running 
C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/features/patspecific_vars.mk
FAILED (6/7 passed)
features/patternrules ................................... ok     (1 passed)
features/quoting ........................................ ok     (1 passed)
features/recursion ...................................... FAILED (1/2 passed)
features/reinvoke ....................................... ok     (3 passed)
features/statipattrules ................................. ok     (4 passed)
features/targetvars ..................................... ok     (18 passed)
features/varnesting ..................................... ok     (1 passed)
features/vpath .......................................... ok     (1 passed)
features/vpath2 ......................................... ok     (1 passed)
features/vpathgpath ..................................... ok     (1 passed)
features/vpathplus ...................................... ok     (4 passed)
functions/abspath ....................................... Error running 
C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/functions/abspath.mk
FAILED (0/1 passed)
functions/addprefix ..................................... ok     (1 passed)
functions/addsuffix ..................................... ok     (2 passed)
functions/basename ...................................... ok     (1 passed)
functions/call .......................................... ok     (2 passed)
functions/dir ........................................... ok     (1 passed)
functions/error ......................................... ok     (4 passed)
functions/eval .......................................... ok     (8 passed)
functions/filter-out .................................... ok     (1 passed)
functions/findstring .................................... ok     (1 passed)
functions/foreach ....................................... ok     (1 passed)
functions/if ............................................ ok     (1 passed)
functions/join .......................................... ok     (1 passed)
functions/notdir ........................................ ok     (1 passed)
functions/origin ........................................ ok     (1 passed)
functions/realpath ...................................... ok     (1 passed)
functions/sort .......................................... ok     (1 passed)
functions/strip ......................................... ok     (2 passed)
functions/substitution .................................. ok     (3 passed)
functions/suffix ........................................ ok     (1 passed)
functions/value ......................................... ok     (1 passed)
functions/warning ....................................... ok     (4 passed)
functions/wildcard ...................................... ok     (3 passed)
functions/word .......................................... ok     (9 passed)
misc/general1 ........................................... ok     (1 passed)
misc/general2 ........................................... ok     (1 passed)
misc/general3 ........................................... ok     (2 passed)
misc/general4 ........................................... ok     (1 passed)
options/dash-B .......................................... ok     (3 passed)
options/dash-C .......................................... FAILED (0/2 passed)
options/dash-I .......................................... 
*** Test returned 0
FAILED (0/2 passed)
options/dash-e .......................................... ok     (1 passed)
options/dash-f .......................................... ok     (4 passed)
options/dash-k .......................................... FAILED (2/3 passed)
options/dash-l .......................................... FAILED (0/1 passed)
options/dash-n .......................................... ok     (4 passed)
options/dash-q .......................................... ok     (7 passed)
options/dash-t .......................................... ok     (2 passed)
options/general ......................................... FAILED (0/1 passed)
targets/DEFAULT ......................................... FAILED (0/1 passed)
targets/FORCE ........................................... ok     (1 passed)
targets/INTERMEDIATE .................................... FAILED (7/8 passed)
targets/PHONY ........................................... ok     (1 passed)
targets/SECONDARY ....................................... FAILED (4/7 passed)
targets/SILENT .......................................... ok     (1 passed)
targets/clean ........................................... ok     (2 passed)
variables/CURDIR ........................................ FAILED (0/1 passed)
variables/MAKE .......................................... FAILED (0/1 passed)
variables/MAKECMDGOALS .................................. ok     (3 passed)
variables/MAKEFILES ..................................... Error running 
C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/variables/MAKEFILES.mk MAKEFILES='work/variables/MAKEFILES.mk.1 
work/variables/MAKEFILES.mk.2'
FAILED (0/1 passed)
variables/MAKEFILE_LIST ................................. ok     (1 passed)
variables/MAKELEVEL ..................................... ok     (1 passed)
variables/SHELL ......................................... 
D:/tmp/TOOLS/make/make-3.81beta2/tests/make-153230803-1.sh: line 1: unexpected 
EOF while looking for matching `''
D:/tmp/TOOLS/make/make-3.81beta2/tests/make-153230803-1.sh: line 2: syntax 
error: unexpected end of file
C:\UTIL\GMAKE.EXE: *** ['all] Error 258
Error running C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/variables/SHELL.mk.1
Error running C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/variables/SHELL.mk.2
Error running C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/variables/SHELL.mk.3
Error running C:/UTIL/GMAKE.EXE (expected 0; got 512): C:/UTIL/GMAKE.EXE -f 
work/variables/SHELL.mk.4
FAILED (0/5 passed)
variables/automatic ..................................... ok     (4 passed)
variables/flavors ....................................... ok     (10 passed)
variables/special ....................................... ok     (1 passed)

30 Tests in 20 Categories Failed (See .diff files in work dir for details) :-(




reply via email to

[Prev in Thread] Current Thread [Next in Thread]