Merge commit 'cb21b77' into master.upstream

This is a partial merge of staging for builds which are working
This commit is contained in:
William A. Kennington III
2015-11-13 15:53:10 -08:00
392 changed files with 7282 additions and 7266 deletions

View File

@@ -12,15 +12,6 @@ stdenv.mkDerivation rec {
preConfigure = ''
# Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$NIX_BUILD_TOP/libcxxabi-${version}.src/include")
'' +
stdenv.lib.optionalString stdenv.isDarwin ''
# instead of allowing libc++ to link with /usr/lib/libc++abi.dylib,
# force it to link with our copy
substituteInPlace lib/CMakeLists.txt \
--replace 'OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib' \
'OSX_RE_EXPORT_LINE "${libcxxabi}/lib/libc++abi.dylib' \
--replace '"''${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib"' \
'"${libcxxabi}/lib/libc++abi.dylib"'
'';
patches = [ ./darwin.patch ];

View File

@@ -27,7 +27,7 @@ stdenv.mkDerivation {
done
make install
install -d 755 $out/include
install -m 644 ../include/cxxabi.h $out/include
install -m 644 ../include/*.h $out/include
''
else ''
install -d -m 755 $out/include $out/lib

View File

@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
mv compiler-rt-* $sourceRoot/projects/compiler-rt
'';
buildInputs = [ perl groff cmake libxml2 python libffi ] /* ++ stdenv.lib.optional stdenv.isLinux valgrind */
buildInputs = [ perl groff cmake libxml2 python libffi ]
++ stdenv.lib.optional stdenv.isDarwin libcxxabi;
propagatedBuildInputs = [ ncurses zlib ];
@@ -50,7 +50,7 @@ in stdenv.mkDerivation rec {
"-DBUILD_SHARED_LIBS=ON"
"-DLLVM_BINUTILS_INCDIR=${binutils}/include"
] ++ stdenv.lib.optionals ( isDarwin) [
"-DCMAKE_CXX_FLAGS=-stdlib=libc++"
"-DLLVM_ENABLE_LIBCXX=ON"
"-DCAN_TARGET_i386=false"
];

View File

@@ -38,6 +38,9 @@ stdenv.mkDerivation rec {
buildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin
cp -p src/runtime/sbcl $out/bin
mkdir -p $out/share/sbcl
cp -p src/runtime/sbcl $out/share/sbcl
cp -p output/sbcl.core $out/share/sbcl