https://sourceware.org/bugzilla/show_bug.cgi?id=33397

            Bug ID: 33397
           Summary: GENSCRIPTS isn't safe for parallel build
           Product: binutils
           Version: 2.46 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: hjl.tools at gmail dot com
  Target Milestone: ---

Makefile.am has

GENSCRIPTS = $(SHELL) $(srcdir)/genscripts.sh "${srcdir}" "${libdir}"
"${prefix}" "${exec_prefix}" @host@ @target@ @target_alias@ "$(GENDEPDIR)"
"${LIB_PATH}" "@EMULATION_LIBPATH@" "@NATIVE_LIB_DIRS@" @use_sysroot@
@enable_initfini_array@
GEN_DEPENDS = $(srcdir)/genscripts.sh ldscripts/stamp

@TDIRS@

e%.c:
        $(AM_V_GEN)${GENSCRIPTS} $* "$(tdir_$*)"

With "make -j12 V=1" on Linux/x86-64, I got

test -d ldscripts || mkdir ldscripts; touch ldscripts/stamp
/bin/sh /export/gnu/import/git/sources/binutils-gdb/ld/genscripts.sh
"/export/gnu/import/git/sources/binutils-gdb/ld" "/usr/local/lib" "/usr/local"
"/usr/local" x86_64-pc-linux-gnu x86_64-pc-linux-gnu x86_64-pc-linux-gnu
".deps" "" "elf_x86_64 elf_i386 elf32_x86_64" "/usr/local/lib /lib /usr/lib"
yes yes elf_x86_64 "x86_64-pc-linux-gnu"
/bin/sh /export/gnu/import/git/sources/binutils-gdb/ld/genscripts.sh
"/export/gnu/import/git/sources/binutils-gdb/ld" "/usr/local/lib" "/usr/local"
"/usr/local" x86_64-pc-linux-gnu x86_64-pc-linux-gnu x86_64-pc-linux-gnu
".deps" "" "elf_x86_64 elf_i386 elf32_x86_64" "/usr/local/lib /lib /usr/lib"
yes yes elf32_x86_64 "x86_64-pc-linux-gnu"
/bin/sh /export/gnu/import/git/sources/binutils-gdb/ld/genscripts.sh
"/export/gnu/import/git/sources/binutils-gdb/ld" "/usr/local/lib" "/usr/local"
"/usr/local" x86_64-pc-linux-gnu x86_64-pc-linux-gnu x86_64-pc-linux-gnu
".deps" "" "elf_x86_64 elf_i386 elf32_x86_64" "/usr/local/lib /lib /usr/lib"
yes yes elf_i386 "i386-pc-linux-gnu"
/bin/sh /export/gnu/import/git/sources/binutils-gdb/ld/genscripts.sh
"/export/gnu/import/git/sources/binutils-gdb/ld" "/usr/local/lib" "/usr/local"
"/usr/local" x86_64-pc-linux-gnu x86_64-pc-linux-gnu x86_64-pc-linux-gnu
".deps" "" "elf_x86_64 elf_i386 elf32_x86_64" "/usr/local/lib /lib /usr/lib"
yes yes elf_iamcu "x86_64-pc-linux-gnu"

4 instances of genscripts.sh were run in parallel.  On a slow filesystem,
outputs if 4 instances of genscripts.sh may override each other.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to