From db7041a0471924ad17c9bf6308fbfd4eea15209c Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Sat, 23 Jun 2018 12:11:18 -0500 Subject: libc++{,abi}_38: musl fixes, cmake is nativeBuildInput --- pkgs/development/compilers/llvm/3.8/libc++/default.nix | 13 ++++++++++--- pkgs/development/compilers/llvm/3.8/libc++abi.nix | 3 +++ 2 files changed, 13 insertions(+), 3 deletions(-) (limited to 'pkgs/development/compilers') diff --git a/pkgs/development/compilers/llvm/3.8/libc++/default.nix b/pkgs/development/compilers/llvm/3.8/libc++/default.nix index cc3f5545146c..5a0410302f2f 100644 --- a/pkgs/development/compilers/llvm/3.8/libc++/default.nix +++ b/pkgs/development/compilers/llvm/3.8/libc++/default.nix @@ -17,15 +17,22 @@ stdenv.mkDerivation rec { patches = [ # glibc 2.26 fix ../../3.9/libc++/xlocale-glibc-2.26.patch - ] ++ lib.optional stdenv.isDarwin ./darwin.patch; + ] + ++ lib.optional stdenv.isDarwin ./darwin.patch + ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [ + ../../libcxx-0001-musl-hacks.patch + ../../libcxx-max_align_t.patch + ]; + + nativeBuildInputs = [ cmake ]; - buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; + buildInputs = [ libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; cmakeFlags = [ "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib" "-DLIBCXX_LIBCPPABI_VERSION=2" "-DLIBCXX_CXX_ABI=libcxxabi" - ]; + ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "-DLIBCXX_HAS_MUSL_LIBC=1"; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/llvm/3.8/libc++abi.nix b/pkgs/development/compilers/llvm/3.8/libc++abi.nix index 45fb7b5be4f6..8b25681c2dbf 100644 --- a/pkgs/development/compilers/llvm/3.8/libc++abi.nix +++ b/pkgs/development/compilers/llvm/3.8/libc++abi.nix @@ -15,6 +15,9 @@ stdenv.mkDerivation { export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_INCLUDES=$PWD/$(ls -d libcxx-*)/include" '' + stdenv.lib.optionalString stdenv.isDarwin '' export TRIPLE=x86_64-apple-darwin + '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' + patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch} + patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-max_align_t.patch} ''; installPhase = if stdenv.isDarwin -- cgit 1.4.1