This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
We should create a temporary file first and rename it later. But I am not 100% sure if this patch is parallel build safe. H.J. ----- 2004-09-27 H.J. Lu <hongjiu.lu@intel.com> PR bootstrap/17684 * config/t-libunwind-elf (SHLIBUNWIND_LINK): Use a temporary file for the shared library to be created. * config/t-slibgcc-darwin (SHLIB_LINK): Likewise. * config/t-slibgcc-elf-ver (SHLIB_LINK): Likewise. * config/t-slibgcc-sld (SHLIB_LINK): Likewise. --- gcc/config/t-libunwind-elf.busy 2004-09-08 08:16:15.000000000 -0700 +++ gcc/config/t-libunwind-elf 2004-09-27 08:47:50.000000000 -0700 @@ -10,9 +10,10 @@ SHLIBUNWIND_NAME = @shlib_dir@@shlib_so_ SHLIBUNWIND_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared \ -nodefaultlibs -Wl,-h,$(SHLIBUNWIND_SONAME) \ - -Wl,-z,text -Wl,-z,defs \ - -o $(SHLIBUNWIND_NAME) @multilib_flags@ $(SHLIB_OBJS) -lc && \ - rm -f $(SHLIB_SOLINK) && \ + -Wl,-z,text -Wl,-z,defs -o $(SHLIBUNWIND_NAME).tmp \ + @multilib_flags@ $(SHLIB_OBJS) -lc && \ + rm -f $(SHLIB_SOLINK) $(SHLIBUNWIND_NAME) && \ + mv $(SHLIBUNWIND_NAME).tmp $(SHLIBUNWIND_NAME) && \ $(LN_S) $(SHLIBUNWIND_NAME) $(SHLIB_SOLINK) # $(slibdir) double quoted to protect it from expansion while building --- gcc/config/t-slibgcc-darwin.busy 2004-02-23 13:24:33.000000000 -0800 +++ gcc/config/t-slibgcc-darwin 2004-09-27 08:48:21.000000000 -0700 @@ -12,10 +12,11 @@ SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -dynamiclib -nodefaultlibs \ -Wl,-install_name,$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME) \ - -Wl,-flat_namespace -o $(SHLIB_NAME) \ + -Wl,-flat_namespace -o $(SHLIB_NAME).tmp \ $(SHLIB_VERSTRING) \ @multilib_flags@ $(SHLIB_OBJS) -lc && \ - rm -f $(SHLIB_SOLINK) && \ + rm -f $(SHLIB_SOLINK) $(SHLIB_NAME).tmp && \ + mv $(SHLIB_NAME).tmp $(SHLIB_NAME) && \ $(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK) # $(slibdir) double quoted to protect it from expansion while building # libgcc.mk. We want this delayed until actual install time. --- gcc/config/t-slibgcc-elf-ver.busy 2004-02-23 13:24:33.000000000 -0800 +++ gcc/config/t-slibgcc-elf-ver 2004-09-27 08:48:59.000000000 -0700 @@ -14,8 +14,9 @@ SHLIB_LC = -lc SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ -Wl,--soname=$(SHLIB_SONAME) \ -Wl,--version-script=$(SHLIB_MAP) \ - -o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC) && \ - rm -f $(SHLIB_SOLINK) && \ + -o $(SHLIB_NAME).tmp @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC) && \ + rm -f $(SHLIB_SOLINK) $(SHLIB_NAME) && \ + mv $(SHLIB_NAME).tmp $(SHLIB_NAME) && \ $(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK) # $(slibdir) double quoted to protect it from expansion while building # libgcc.mk. We want this delayed until actual install time. --- gcc/config/t-slibgcc-sld.busy 2004-02-23 13:24:33.000000000 -0800 +++ gcc/config/t-slibgcc-sld 2004-09-27 08:49:20.000000000 -0700 @@ -10,9 +10,10 @@ SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ -Wl,-h,$(SHLIB_SONAME) -Wl,-z,text -Wl,-z,defs \ - -Wl,-M,$(SHLIB_MAP) -o $(SHLIB_NAME) \ + -Wl,-M,$(SHLIB_MAP) -o $(SHLIB_NAME).tmp \ @multilib_flags@ $(SHLIB_OBJS) -lc && \ - rm -f $(SHLIB_SOLINK) && \ + rm -f $(SHLIB_SOLINK) $(SHLIB_NAME) && \ + mv $(SHLIB_NAME).tmp $(SHLIB_NAME) && \ $(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK) # $(slibdir) double quoted to protect it from expansion while building # libgcc.mk. We want this delayed until actual install time.
Attachment:
gcc-ld-path-6.patch
Description: Text document
Attachment:
gcc-3.4-ld-path-13.patch
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |