diff options
author | Matthew Bauer <mjbauer95@gmail.com> | 2020-12-31 00:19:10 -0600 |
---|---|---|
committer | Matthew Bauer <mjbauer95@gmail.com> | 2021-01-21 16:25:48 -0600 |
commit | 4bdcddf9aac73d1ca1ace4eb26c14af18c1b0a31 (patch) | |
tree | e015c59cacce9b29f251194dba246ba53e7fabff | |
parent | 27c8ef972cbfc022b01c9f8bc6ac53c39e630eb6 (diff) |
gcc: allow stripping gcc libraries
When cross compiling to the same kernel / arch combination, it is safe
to use strip of libraries. This happens when cross-compiling musl
programs. dontStrip is now set in each gcc compiler instead of in
gcc/builder.sh.
Fixes #75476
-rw-r--r-- | pkgs/development/compilers/gcc/10/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/6/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/7/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/8/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/9/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/builder.sh | 6 |
6 files changed, 13 insertions, 13 deletions
diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix index c31e7c426e02..ecbe7c9eb4b9 100644 --- a/pkgs/development/compilers/gcc/10/default.nix +++ b/pkgs/development/compilers/gcc/10/default.nix @@ -28,8 +28,8 @@ , threadsCross ? null # for MinGW , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? stdenv.hostPlatform == stdenv.buildPlatform - && stdenv.targetPlatform == stdenv.hostPlatform + stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system + && stdenv.targetPlatform.system == stdenv.hostPlatform.system , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , buildPackages diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 908f7e0f699f..ed97e6a0ce87 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -36,8 +36,8 @@ , threadsCross ? null # for MinGW , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? stdenv.hostPlatform == stdenv.buildPlatform - && stdenv.targetPlatform == stdenv.hostPlatform + stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system + && stdenv.targetPlatform.system == stdenv.hostPlatform.system , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , buildPackages diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index d950d6ac35bb..4bd776e6f8b8 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -26,8 +26,8 @@ , threadsCross ? null # for MinGW , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? stdenv.hostPlatform == stdenv.buildPlatform - && stdenv.targetPlatform == stdenv.hostPlatform + stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system + && stdenv.targetPlatform.system == stdenv.hostPlatform.system , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , buildPackages diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index 683a9edfe09d..d9234a75530f 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -26,8 +26,8 @@ , threadsCross ? null # for MinGW , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? stdenv.hostPlatform == stdenv.buildPlatform - && stdenv.targetPlatform == stdenv.hostPlatform + stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system + && stdenv.targetPlatform.system == stdenv.hostPlatform.system , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , buildPackages diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix index 7827cb985053..40af21a1fa3f 100644 --- a/pkgs/development/compilers/gcc/9/default.nix +++ b/pkgs/development/compilers/gcc/9/default.nix @@ -29,8 +29,8 @@ , threadsCross ? null # for MinGW , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? stdenv.hostPlatform == stdenv.buildPlatform - && stdenv.targetPlatform == stdenv.hostPlatform + stripped ? stdenv.hostPlatform.system == stdenv.buildPlatform.system + && stdenv.targetPlatform.system == stdenv.hostPlatform.system , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , buildPackages diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh index 7d104b96624e..e6d41d7b29ab 100644 --- a/pkgs/development/compilers/gcc/builder.sh +++ b/pkgs/development/compilers/gcc/builder.sh @@ -147,9 +147,9 @@ if test "$noSysDirs" = "1"; then fi fi -if test -n "${targetConfig-}"; then - # The host strip will destroy some important details of the objects - dontStrip=1 +if [ -n "${targetConfig-}" ]; then + # if stripping gcc, include target directory too + stripDebugList="${stripDebugList-lib lib32 lib64 libexec bin sbin} $targetConfig" fi eval "$oldOpts" |