From edc4f86ad282702ab7c029cf65b87ec616bda05e Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 13 Feb 2004 19:34:32 +0000 Subject: * Makefile.in (clean): Remove sigfe.s. (sigfe.s): Ensure that sigfe.s will be regenerated if it does not exist. * dll_init.cc (dll_dllcrt0): Simplify initializing tests. * exceptions.cc (setup_handler): Detect when stub caller is either spinning or has acquired the lock after being suspended to avoid windows problems with suspending a win32 API call. * cygtls.h (_cygtls::spinning): Declare new element. * gendef: Remove unused _siglist_index and _siglist declaration. (_sigfe): Set spinning element when potentially looping, waiting for lock. (_sigbe): Ditto. (_cygtls::lock): Ditto. (_longjmp): Ditto. * tlsoffsets.h: Regenerate. * pinfo.cc (_pinfo::exit): Set final exit state here. Call sigproc_terminate if invoked with 'norecord'. Clear any residual _cygtls stuff. * winsup.h (exit_states): Define ES_FINAL. * spawn.cc (spawn_guts): Don't call proc_terminate specifically when execing. Let _pinfo::exit handle that case. * sigproc.cc (wait_subproc): Always exit loop early when proc_loop_wait. * init.cc (munge_threadfunc): Eliminate unused argument. (dll_entry): Reflect above change in call to munge_threadfunc. --- winsup/cygwin/Makefile.in | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'winsup/cygwin/Makefile.in') diff --git a/winsup/cygwin/Makefile.in b/winsup/cygwin/Makefile.in index 54ae6e991..887ab1e44 100644 --- a/winsup/cygwin/Makefile.in +++ b/winsup/cygwin/Makefile.in @@ -224,6 +224,7 @@ cygthread_CFLAGS:=-fomit-frame-pointer cygtls_CFLAGS:=-fomit-frame-pointer devices_CFLAGS:=-fomit-frame-pointer -Os dir_CFLAGS:=-fomit-frame-pointer +dll_init_CFLAGS:=-fomit-frame-pointer fcntl_CFLAGS:=-fomit-frame-pointer fhandler_CFLAGS:=-fomit-frame-pointer fhandler_clipboard_CFLAGS:=-fomit-frame-pointer @@ -346,7 +347,7 @@ uninstall-man: done clean: - -rm -f *.o *.dll *.a *.exp junk *.base version.cc regexp/*.o winver_stamp *.exe *.d *stamp* *_magic.h + -rm -f *.o *.dll *.a *.exp junk *.base version.cc regexp/*.o winver_stamp *.exe *.d *stamp* *_magic.h sigfe.s maintainer-clean realclean: clean @echo "This command is intended for maintainers to use;" @@ -437,7 +438,9 @@ $(srcdir)/tlsoffsets.h: gentls_offsets cygtls.h $^ $@ $(COMPILE_CXX) sigfe.s: $(DEF_FILE) - @touch $@ + @[ -s $@ ] || \ + { rm -f $(DEF_FILE); $(MAKE) -s -j1 $(DEF_FILE); }; \ + [ -s $@ ] && touch $@ sigfe.o: sigfe.s $(CC) -c -o $@ $? -- cgit v1.2.3