[RFC] ppc64le enablement (#45340)

* ppc64le enablement

* gcc, glibc: properly handle __float128

* lib/systems, stdenv: syntax cleanup

* gcc7: remove ugly hack

* gcc: add/update __float128 flags

* stdenv: add another pair of quotes for consistency

* gcc: move __float128 flag for ppc64le-glibc into common/platform-flags.nix
This commit is contained in:
CrystalGamma
2018-08-21 21:31:34 +02:00
committed by John Ericson
parent cb44c3ff4c
commit 72d161f548
16 changed files with 87 additions and 23 deletions

View File

@@ -98,6 +98,7 @@ let
sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g ; s|/sbin/||g'
done
sed -i Makefile -e 's|= depmod|= ${buildPackages.kmod}/bin/depmod|'
sed -i scripts/ld-version.sh -e "s|/usr/bin/awk|${buildPackages.gawk}/bin/awk|"
'';
configurePhase = ''
@@ -145,9 +146,12 @@ let
++ optional installsFirmware "INSTALL_FW_PATH=$(out)/lib/firmware";
# Some image types need special install targets (e.g. uImage is installed with make uinstall)
installTargets = [ (if platform.kernelTarget == "uImage" then "uinstall" else
if platform.kernelTarget == "zImage" || platform.kernelTarget == "Image.gz" then "zinstall" else
"install") ];
installTargets = [ (
if platform ? kernelInstallTarget then platform.kernelInstallTarget
else if platform.kernelTarget == "uImage" then "uinstall"
else if platform.kernelTarget == "zImage" || platform.kernelTarget == "Image.gz" then "zinstall"
else "install"
) ];
postInstall = (optionalString installsFirmware ''
mkdir -p $out/lib/firmware

View File

@@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl
{ stdenv, lib, fetchurl, hostPlatform
, linuxHeaders ? null
, useBSDCompatHeaders ? true
}:
@@ -61,11 +61,12 @@ stdenv.mkDerivation rec {
configureFlagsArray+=("--syslibdir=$out/lib")
'';
CFLAGS="-fstack-protector-strong" + lib.optionalString hostPlatform.isPower " -mlong-double-64";
configureFlags = [
"--enable-shared"
"--enable-static"
"--enable-debug"
"CFLAGS=-fstack-protector-strong"
"--enable-wrapper=all"
];