ldc: fix for structured attrs

This commit is contained in:
Robin Gloster 2019-11-09 22:18:05 +01:00 committed by Jan Tojnar
parent cbbba87b98
commit a012d5eebb
No known key found for this signature in database
GPG key ID: 7FAB2A15F7A607A4

View file

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "fortify" ];
postUnpack = ''
patchShebangs .
patchShebangs .
''
+ stdenv.lib.optionalString (!bootstrapVersion) ''
@ -76,47 +76,31 @@ stdenv.mkDerivation rec {
'';
nativeBuildInputs = [ cmake ninja makeWrapper unzip ]
++ stdenv.lib.optional (!bootstrapVersion) [
bootstrapLdc python lit
]
++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin) [
# https://github.com/NixOS/nixpkgs/issues/57120
# https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515
llvm_5
]
++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) [
llvm_8
]
++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin) [
# https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818
gdb
]
++ stdenv.lib.optional (bootstrapVersion) [
libconfig llvm_5
]
++ stdenv.lib.optional stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
Foundation
]);
++ stdenv.lib.optionals (!bootstrapVersion) [
bootstrapLdc python lit
]
++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin)
# https://github.com/NixOS/nixpkgs/issues/57120
# https://github.com/NixOS/nixpkgs/pull/59197#issuecomment-481972515
llvm_5
++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin)
llvm_8
++ stdenv.lib.optional (!bootstrapVersion && !stdenv.hostPlatform.isDarwin)
# https://github.com/NixOS/nixpkgs/pull/36378#issuecomment-385034818
gdb
++ stdenv.lib.optionals (bootstrapVersion) [
libconfig llvm_5
]
++ stdenv.lib.optional stdenv.hostPlatform.isDarwin
darwin.apple_sdk.frameworks.Foundation;
buildInputs = [ curl tzdata ];
cmakeFlagsString = stdenv.lib.optionalString (!bootstrapVersion) ''
cmakeFlags = stdenv.lib.optionals (!bootstrapVersion) [
"-DD_FLAGS=-d-version=TZDatabaseDir;-d-version=LibcurlPath;-J$PWD"
"-DCMAKE_BUILD_TYPE=Release"
'';
preConfigure = stdenv.lib.optionalString (!bootstrapVersion) ''
cmakeFlagsArray=(
${cmakeFlagsString}
)
'';
];
postConfigure = ''
export DMD=$PWD/bin/ldmd2
@ -124,7 +108,7 @@ stdenv.mkDerivation rec {
makeFlags = [ "DMD=$DMD" ];
fixNames = if stdenv.hostPlatform.isDarwin then ''
fixNames = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin ''
fixDarwinDylibNames() {
local flags=()
@ -141,15 +125,11 @@ stdenv.mkDerivation rec {
fixDarwinDylibNames $(find "$(pwd)/lib" -name "*.dylib")
export DYLD_LIBRARY_PATH=$(pwd)/lib
''
else
"";
'';
# https://github.com/ldc-developers/ldc/issues/2497#issuecomment-459633746
additionalExceptions = if stdenv.hostPlatform.isDarwin then
"|druntime-test-shared"
else
"";
additionalExceptions = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin
"|druntime-test-shared";
doCheck = !bootstrapVersion;