On SMP systems build can fail because of not full dependencies in Makefile with next error: gawk -f /home/svd/RPM/BUILD/httpd-2.0.48/build/make_var_export.awk `cat export_files` > export_vars.h make[2]: *** No rule to make target `exports.c', needed by `httpd.exp'. Stop. To fix it I'm using this patch: --- httpd-2.0.48/server/Makefile.in~ 2003-03-11 17:41:55 +0200 +++ httpd-2.0.48/server/Makefile.in 2003-11-12 13:57:18 +0200 @@ -64,6 +64,8 @@ $(top_builddir)/server/exports.c: export_files $(AWK) -f $(top_srcdir)/build/make_exports.awk `cat $?` > $@ +exports.c: $(top_builddir)/server/exports.c + export_vars.h: export_files $(AWK) -f $(top_srcdir)/build/make_var_export.awk `cat $?` > $@
What's the issue with SMP systems? Do you mean that the box where it failed is SMP? What commands are you using to build Apache? What Linux is it?
It fails with a parallel make i.e. make -j2 with GNU make... HEAD has this change: # Needed to allow exports.c to be generated in a parallel build successfully .NOTPARALLEL: $(top_builddir)/server/exports.c I'm not sure whether this is really needed or whether the paths to exports.c just need to be fixed to be either absolute or not all through that Makefile, it seems confused.
Sorry for not very accurate report, yes, it fails when make satrted as "make -j2". And it seems that adding .NOTPARALLEL: $(top_builddir)/server/exports.c also helps. I hope, it's better solution. I'm not so experienced in Makefiles, so I think you'll do it better than me. Thanks.
Created attachment 9357 [details] unfixes for server/Makefile.in
Attached what looks like the right fix to me (for HEAD); awaiting review before committing.
Fixed for 2.0.49 - thanks for the report.