|
|
|
@ -258,13 +258,14 @@ stdenv.mkDerivation ({ |
|
|
|
|
let |
|
|
|
|
libc = if libcCross != null then libcCross else stdenv.cc.libc; |
|
|
|
|
in |
|
|
|
|
'' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..." |
|
|
|
|
'' echo "fixing the \`GLIBC_DYNAMIC_LINKER', \`UCLIBC_DYNAMIC_LINKER', and \`MUSL_DYNAMIC_LINKER' macros..." |
|
|
|
|
for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h |
|
|
|
|
do |
|
|
|
|
grep -q LIBC_DYNAMIC_LINKER "$header" || continue |
|
|
|
|
echo " fixing \`$header'..." |
|
|
|
|
sed -i "$header" \ |
|
|
|
|
-e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc.out}\3"|g' |
|
|
|
|
-e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc.out}\3"|g' \ |
|
|
|
|
-e 's|define[[:blank:]]*MUSL_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define MUSL_DYNAMIC_LINKER\1 "${libc.out}\2"|g' |
|
|
|
|
done |
|
|
|
|
'' |
|
|
|
|
else null; |
|
|
|
@ -396,6 +397,7 @@ stdenv.mkDerivation ({ |
|
|
|
|
# On Illumos/Solaris GNU as is preferred |
|
|
|
|
"--with-gnu-as" "--without-gnu-ld" |
|
|
|
|
] |
|
|
|
|
++ optional (targetPlatform == hostPlatform && targetPlatform.libc == "musl") "--disable-libsanitizer" |
|
|
|
|
; |
|
|
|
|
|
|
|
|
|
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null; |
|
|
|
|