This is the mail archive of the
cygwin-patches
mailing list for the Cygwin project.
Re: [PATCH] fix make after clean
- From: Christopher Faylor <cgf-use-the-mailinglist-please at cygwin dot com>
- To: cygwin-patches at cygwin dot com
- Date: Sun, 3 Apr 2011 19:03:50 -0400
- Subject: Re: [PATCH] fix make after clean
- References: <1301870258.3104.11.camel@YAAKOV04>
- Reply-to: cygwin-patches at cygwin dot com
On Sun, Apr 03, 2011 at 05:37:38PM -0500, Yaakov (Cygwin/X) wrote:
>If you run make clean in winsup/cygwin followed by make -jX, the build
>fails because devices.cc is not found; it was removed by make clean but
>nothing forced it to be regenerated in time.
>
>Patch attached.
>
>
>Yaakov
>
>2011-04-03 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
>
> * Makefile.in (devices.o): New rule with dependency on devices.cc
> to assure that the latter exists and is current.
>
>Index: Makefile.in
>===================================================================
>RCS file: /cvs/src/src/winsup/cygwin/Makefile.in,v
>retrieving revision 1.243
>diff -u -r1.243 Makefile.in
>--- Makefile.in 1 Apr 2011 19:48:19 -0000 1.243
>+++ Makefile.in 3 Apr 2011 21:33:27 -0000
>@@ -443,6 +443,9 @@
> $(srcdir)/devices.cc: gendevices devices.in devices.h
> ${wordlist 1,2,$^} $@
>
>+devices.o: $(srcdir)/devices.cc
>+ $(COMPILE_CXX) -o $@ $<
>+
This can't be right. In all of the times that I've run a "make clean",
I have never needed this. A .o relying on .cc is a given. You don't
need an explicit rule.
cgf