NetBSD-Bugs archive

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

bin/48907: make issues fatal errors as warnings



>Number:         48907
>Category:       bin
>Synopsis:       make issues fatal errors as warnings
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    bin-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Sat Jun 14 08:05:00 +0000 2014
>Originator:     Martin Husemann
>Release:        NetBSD 6.99.43
>Organization:
The NetBSD Foundation, Inc
>Environment:

System: NetBSD night-owl.duskware.de 6.99.43 NetBSD 6.99.43 (NIGHT-OWL) #261: 
Sat Jun 7 11:51:30 CEST 2014 
martin%night-owl.duskware.de@localhost:/usr/src/sys/arch/amd64/compile/NIGHT-OWL
 amd64
Architecture: x86_64
Machine: amd64
>Description:
When handling VAR := assignements, make uses this code in usr.bin/make/parse.c:

        res = Cmd_Exec(cp, &error);
        Var_Set(line, res, ctxt, 0);
        free(res);
 
        if (error)
            Parse_Error(PARSE_WARNING, error, cp);

This is the only case where Cmd_Exec returns an error message and the result
is issued as a warning, not an error.

Thise may lead to hard to track down build failures, e.g. an example from
the NetBSD build cluster:

nbmake[8]: 
"/home/builds/ab/HEAD/src/crypto/external/bsd/openssl/lib/libcrypto/Makefile" 
line 45: warning: Couldn't exec "/bin/sh 
/home/builds/ab/HEAD/src/sys/conf/osrelease.sh"

Also maybe the errno should be printed (in this case it is important to know
wether we hit a resource limit or the file did not exist) - but of course
we do know that /bin/sh existed.

>How-To-Repeat:
read the code

>Fix:
n/a



Home | Main Index | Thread Index | Old Index