[PATCH 3/6] gendef generates sigfe.s and cygwin.def

Jon Turney jon.turney@dronecode.org.uk
Tue Oct 27 16:09:11 GMT 2020


On 21/10/2020 15:31, Jon Turney wrote:
> On 20/10/2020 14:43, Jon Turney wrote:
>> Express that gendef generates sigfe.s and cygwin.def in a slightly less
>> nutty way.
>> ---
>>   winsup/cygwin/Makefile.in | 5 +----
>>   1 file changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/winsup/cygwin/Makefile.in b/winsup/cygwin/Makefile.in
>> index a56a311b8..9d05b17b3 100644
>> --- a/winsup/cygwin/Makefile.in
>> +++ b/winsup/cygwin/Makefile.in
>> @@ -785,16 +785,13 @@ $(VERSION_OFILES): version.cc
>>   Makefile: ${srcdir}/Makefile.in
>>       /bin/sh ./config.status
>> -$(DEF_FILE): gendef $(srcdir)/$(TLSOFFSETS_H) $(DIN_FILE)
>> +$(DEF_FILE) sigfe.s: gendef $(srcdir)/$(TLSOFFSETS_H) $(DIN_FILE)
>>       $(word 1,$^) --cpu=${target_cpu} --output-def=$@  
>> --tlsoffsets=$(word 2,$^) $(wordlist 3,99,$^)
> 
> Using $@ is wrong if make decides to build sigfe.s first, and $^ will 
> contain an unwanted $(DEF_FILE) from the dependency below.
> 
> So please try the attached instead.
> 
> But maybe I need to do a bit more staring at [1].
> 
> [1] 
> https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html 
> 

Notwithstanding that, this formulation doesn't actually seem to avoid 
invoking the rule twice in a parallel build, so I think I need to revert 
this.


More information about the Cygwin-patches mailing list