Only regenerate tlsoffsets{64}.h if cygtls.h can be compiled

The rule to make tlsoffset{64}.h has a flaw.  If cygtls.h can't be
built for whatever reason, it *still* regenerates tlsoffsets{64}.h,
just with size 0.  If the bug is not in cygtls.h itself, this behaviour
breaks further building, because fixing the problem won't result in
regenerating tlsoffset{64}.h.  Manual intervention is required.

Fix that by removing tlsoffsets{64}.h if gentls_offsets fails.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
Corinna Vinschen 2016-06-06 11:44:54 +02:00
parent f4edc7fd6d
commit 7abe634731
1 changed files with 1 additions and 1 deletions

View File

@ -758,7 +758,7 @@ $(DEF_FILE): gendef $(srcdir)/$(TLSOFFSETS_H) $(DIN_FILE)
$(word 1,$^) --cpu=${target_cpu} --output-def=$@ --tlsoffsets=$(word 2,$^) $(wordlist 3,99,$^) $(word 1,$^) --cpu=${target_cpu} --output-def=$@ --tlsoffsets=$(word 2,$^) $(wordlist 3,99,$^)
$(srcdir)/$(TLSOFFSETS_H): gentls_offsets cygtls.h $(srcdir)/$(TLSOFFSETS_H): gentls_offsets cygtls.h
$^ $@ $(target_cpu) $(COMPILE.cc) -c $^ $@ $(target_cpu) $(COMPILE.cc) -c || rm $@
sigfe.s: $(DEF_FILE) sigfe.s: $(DEF_FILE)
@[ -s $@ ] || \ @[ -s $@ ] || \