Hi,
Given following makefile in empty directory:
#==================
.PHONY: all
all: cap
cap:
touch $(@)
#==================
Running make 3.81 from command line gives different exit code then 4.0 i.e
make 3.81
/usr/bin/make -q ; echo $?
1
make 4.0
/opt/make-4.0/bin/make -q ; echo $?
2
3.81 correctly reports that target is out of date (since there is no cap
file in current dir)
but make 4.0 reports that there is error but no error message is
actually printed.
I traced down this to be a change in remake.c
(Modify the update_status field in struct file to be an enum. git
commit 4b81f5ca920d716c08430583f5edb2c125f1f123 )
If I only revert below change in remake.c all works fine (for me that is
@@ -664,7 +666,7 @@ update_file_1 (struct file *file, unsigned int depth)
if (dep_status != 0)
{
- file->update_status = dep_status;
+ file->update_status = us_failed;
notice_finished_file (file);
Thanks
Krzysztof
_______________________________________________
Bug-make mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-make