diff options
Diffstat (limited to 'pkgs/development/compilers/gcc/builder.sh')
-rw-r--r-- | pkgs/development/compilers/gcc/builder.sh | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh index 6b09cfd59edb5..22107e72ef703 100644 --- a/pkgs/development/compilers/gcc/builder.sh +++ b/pkgs/development/compilers/gcc/builder.sh @@ -70,6 +70,10 @@ if test "$noSysDirs" = "1"; then # gcj in. unset LIBRARY_PATH unset CPATH + if test -z "$crossStageStatic"; then + EXTRA_TARGET_CFLAGS="-B${libcCross}/lib -idirafter ${libcCross}/include" + EXTRA_TARGET_LDFLAGS="-Wl,-L${libcCross}/lib -Wl,-rpath,${libcCross}/lib -Wl,-rpath-link,${libcCross}/lib" + fi else if test -z "$NIX_CC_CROSS"; then EXTRA_TARGET_CFLAGS="$EXTRA_FLAGS" @@ -86,16 +90,15 @@ if test "$noSysDirs" = "1"; then extraFlags="$(cat $NIX_CC_CROSS/nix-support/libc-cflags)" extraLDFlags="$(cat $NIX_CC_CROSS/nix-support/libc-ldflags) $(cat $NIX_CC_CROSS/nix-support/libc-ldflags-before)" - # The path to the Glibc binaries such as `crti.o'. - glibc_dir="$(cat $NIX_CC_CROSS/nix-support/orig-libc)" - glibc_libdir="$glibc_dir/lib" - glibc_devdir="$(cat $NIX_CC_CROSS/nix-support/orig-libc-dev)" - configureFlags="$configureFlags --with-native-system-header-dir=$glibc_devdir/include" - # Use *real* header files, otherwise a limits.h is generated # that does not include Glibc's limits.h (notably missing # SSIZE_MAX, which breaks the build). - NIX_FIXINC_DUMMY_CROSS="$glibc_devdir/include" + NIX_FIXINC_DUMMY_CROSS=$(cat $NIX_CC_CROSS/nix-support/orig-libc)/include + + # The path to the Glibc binaries such as `crti.o'. + glibc_dir="$(cat $NIX_CC_CROSS/nix-support/orig-libc)" + glibc_libdir="$glibc_dir/lib" + configureFlags="$configureFlags --with-native-system-header-dir=$glibc_dir/include" extraFlags="-I$NIX_FIXINC_DUMMY_CROSS $extraFlags" extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" |