* Makefile.in: Generate libcygwin.a during the link pass rather than as a
separate dlltool step. * dcrt0.cc (_dll_crt0): pppid_handle could be NULL. Don't close it if so.
This commit is contained in:
parent
d409c077df
commit
74509af276
|
@ -1,3 +1,10 @@
|
||||||
|
Sat Sep 15 00:28:40 2001 Christopher Faylor <cgf@cygnus.com>
|
||||||
|
|
||||||
|
* Makefile.in: Generate libcygwin.a during the link pass rather than as
|
||||||
|
a separate dlltool step.
|
||||||
|
* dcrt0.cc (_dll_crt0): pppid_handle could be NULL. Don't close it if
|
||||||
|
so.
|
||||||
|
|
||||||
Fri Sep 14 20:48:18 2001 Christopher Faylor <cgf@cygnus.com>
|
Fri Sep 14 20:48:18 2001 Christopher Faylor <cgf@cygnus.com>
|
||||||
|
|
||||||
* dcrt0.cc (dll_crt0_1): Create vfork main storage here so that it can
|
* dcrt0.cc (dll_crt0_1): Create vfork main storage here so that it can
|
||||||
|
|
|
@ -142,9 +142,9 @@ GMON_OFILES:= gmon.o mcount.o profil.o
|
||||||
all_host=@all_host@
|
all_host=@all_host@
|
||||||
install_host=@install_host@
|
install_host=@install_host@
|
||||||
|
|
||||||
all: new-$(DLL_NAME) $(all_host) all_target
|
all: all_target $(all_host)
|
||||||
|
|
||||||
all_target: $(LIBGMON_A) $(LIB_NAME) automode.o binmode.o textmode.o
|
all_target: $(LIB_NAME) automode.o binmode.o textmode.o $(LIBGMON_A)
|
||||||
|
|
||||||
all_host: new-$(LIB_NAME) cygrun.exe
|
all_host: new-$(LIB_NAME) cygrun.exe
|
||||||
|
|
||||||
|
@ -179,10 +179,8 @@ maintainer-clean realclean: clean
|
||||||
|
|
||||||
# Rule to build libcygwin.a
|
# Rule to build libcygwin.a
|
||||||
|
|
||||||
$(LIB_NAME): $(DEF_FILE) $(LIBCOS)
|
$(LIB_NAME): new-$(DLL_NAME) $(LIBCOS)
|
||||||
$(DLLTOOL) --as=$(AS) --dllname $(DLL_NAME) --def $(DEF_FILE) --output-lib templib.a
|
$(AR) rcv $(LIB_NAME) $(LIBCOS)
|
||||||
$(AR) rcv templib.a $(LIBCOS)
|
|
||||||
mv templib.a $(LIB_NAME)
|
|
||||||
|
|
||||||
# Rule to make stub library used by testsuite
|
# Rule to make stub library used by testsuite
|
||||||
|
|
||||||
|
@ -196,7 +194,7 @@ new-$(LIB_NAME): $(LIB_NAME)
|
||||||
# Rule to build cygwin.dll
|
# Rule to build cygwin.dll
|
||||||
|
|
||||||
new-$(DLL_NAME): $(LDSCRIPT) $(DLL_OFILES) $(DEF_FILE) $(DLL_IMPORTS) $(LIBC) $(LIBM) Makefile winver_stamp
|
new-$(DLL_NAME): $(LDSCRIPT) $(DLL_OFILES) $(DEF_FILE) $(DLL_IMPORTS) $(LIBC) $(LIBM) Makefile winver_stamp
|
||||||
$(CXX) $(CXXFLAGS) -nostdlib -Wl,-T$(firstword $^) -shared -o $@ \
|
$(CXX) $(CXXFLAGS) -nostdlib -Wl,-T$(firstword $^) -Wl,--out-implib,$(LIB_NAME) -shared -o $@ \
|
||||||
-e $(DLL_ENTRY) $(DEF_FILE) $(DLL_OFILES) version.o winver.o \
|
-e $(DLL_ENTRY) $(DEF_FILE) $(DLL_OFILES) version.o winver.o \
|
||||||
$(DLL_IMPORTS) $(MALLOC_OBJ) $(LIBM) $(LIBC) \
|
$(DLL_IMPORTS) $(MALLOC_OBJ) $(LIBM) $(LIBC) \
|
||||||
-lstdc++ -lgcc -lshell32 -luuid
|
-lstdc++ -lgcc -lshell32 -luuid
|
||||||
|
|
|
@ -808,7 +808,7 @@ _dll_crt0 ()
|
||||||
hMainProc = GetCurrentProcess ();
|
hMainProc = GetCurrentProcess ();
|
||||||
|
|
||||||
DuplicateHandle (hMainProc, GetCurrentThread (), hMainProc,
|
DuplicateHandle (hMainProc, GetCurrentThread (), hMainProc,
|
||||||
&hMainThread, 0, FALSE, DUPLICATE_SAME_ACCESS);
|
&hMainThread, 0, false, DUPLICATE_SAME_ACCESS);
|
||||||
|
|
||||||
GetStartupInfo (&si);
|
GetStartupInfo (&si);
|
||||||
if (si.cbReserved2 >= EXEC_MAGIC_SIZE &&
|
if (si.cbReserved2 >= EXEC_MAGIC_SIZE &&
|
||||||
|
@ -820,6 +820,7 @@ _dll_crt0 ()
|
||||||
case PROC_FORK1:
|
case PROC_FORK1:
|
||||||
user_data->forkee = fork_info->cygpid;
|
user_data->forkee = fork_info->cygpid;
|
||||||
case PROC_SPAWN:
|
case PROC_SPAWN:
|
||||||
|
if (fork_info->pppid_handle)
|
||||||
CloseHandle (fork_info->pppid_handle);
|
CloseHandle (fork_info->pppid_handle);
|
||||||
case PROC_EXEC:
|
case PROC_EXEC:
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue