From 3cc00c95020b92705031a0426cebe5f42809cd5e Mon Sep 17 00:00:00 2001 From: Hubert Jasudowicz Date: Thu, 7 Sep 2023 03:25:39 +0200 Subject: stdenvBootstrapTools: Bundle all *.o files from libc Include all runtime object files in output package, enabling different kinds of build modes - non-PIE, PIE, static PIE and profile-generated. Suggested by @trofi: https://github.com/NixOS/nixpkgs/pull/252310#issuecomment-1709425791 --- pkgs/stdenv/linux/make-bootstrap-tools.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'pkgs/stdenv') diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix index d6c4da0ab2b..1334c13ad17 100644 --- a/pkgs/stdenv/linux/make-bootstrap-tools.nix +++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix @@ -78,7 +78,8 @@ in with pkgs; rec { cp -d ${libc.out}/lib/libutil*.so* $out/lib cp -d ${libc.out}/lib/libnss*.so* $out/lib cp -d ${libc.out}/lib/libresolv*.so* $out/lib - cp -d ${libc.out}/lib/crt?.o $out/lib + # Copy all runtime files to enable non-PIE, PIE, static PIE and profile-generated builds + cp -d ${libc.out}/lib/*.o $out/lib # Hacky compat with our current unpack-bootstrap-tools.sh ln -s librt.so "$out"/lib/librt-dummy.so -- cgit 1.4.1