make isClang work the way a user might expect
This commit is contained in:
parent
dc74a81129
commit
ef95107ddc
@ -9,7 +9,7 @@
|
||||
, cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell
|
||||
, zlib ? null, extraPackages ? [], extraBuildCommands ? ""
|
||||
, dyld ? null # TODO: should this be a setup-hook on dyld?
|
||||
, isGNU ? false, isClang ? false
|
||||
, isGNU ? false, isClang ? cc.isClang or false
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
@ -253,7 +253,7 @@ stdenv.mkDerivation rec {
|
||||
# On some ARM platforms --enable-thumb
|
||||
"--enable-shared --disable-static"
|
||||
(enableFeature true "pic")
|
||||
(if (stdenv.cc.cc.isClang or false) then "--cc=clang" else null)
|
||||
(if stdenv.cc.isClang then "--cc=clang" else null)
|
||||
(enableFeature smallBuild "small")
|
||||
(enableFeature runtimeCpuDetectBuild "runtime-cpudetect")
|
||||
(enableFeature grayBuild "gray")
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
let
|
||||
inherit (stdenv.lib) optional;
|
||||
isClang = (stdenv.cc.cc.isClang or false);
|
||||
in
|
||||
stdenv.mkDerivation rec{
|
||||
name = "iniparser-3.1";
|
||||
@ -15,8 +14,7 @@ stdenv.mkDerivation rec{
|
||||
patches = ./no-usr.patch;
|
||||
|
||||
# TODO: Build dylib on Darwin
|
||||
buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ])
|
||||
++ optional isClang "CC=clang";
|
||||
buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ]) ++ [ "CC=cc" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib
|
||||
|
@ -1,5 +1,8 @@
|
||||
{ stdenv, appleDerivation, icu, dyld, libdispatch, launchd, libclosure }:
|
||||
|
||||
# this project uses blocks, a clang-only extension
|
||||
assert stdenv.cc.isClang;
|
||||
|
||||
appleDerivation {
|
||||
buildInputs = [ dyld icu libdispatch launchd libclosure ];
|
||||
|
||||
|
@ -81,6 +81,7 @@ in rec {
|
||||
nativePrefix = bootstrapTools;
|
||||
nativeLibc = false;
|
||||
libc = last.pkgs.darwin.Libsystem;
|
||||
isClang = true;
|
||||
cc = { name = "clang-9.9.9"; outPath = bootstrapTools; };
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user