Merge branch 'staging' (early part)

The comparison looks nice on Hydra.
This commit is contained in:
Vladimír Čunát 2017-05-30 16:08:21 +02:00
commit 538aa0f808
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
24 changed files with 202 additions and 85 deletions

View File

@ -1,4 +1,6 @@
{ stdenv, fetch, cmake, libxml2, libedit, llvm, version, release_version, clang-tools-extra_src, python }: { stdenv, fetch, cmake, libxml2, libedit, llvm, version, release_version, clang-tools-extra_src, python
, fixDarwinDylibNames
}:
let let
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc; gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
@ -13,10 +15,17 @@ let
mv clang-tools-extra-* $sourceRoot/tools/extra mv clang-tools-extra-* $sourceRoot/tools/extra
''; '';
buildInputs = [ cmake libedit libxml2 llvm python ]; nativeBuildInputs = [ cmake python python.pkgs.sphinx ];
buildInputs = [ libedit libxml2 llvm ]
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
cmakeFlags = [ cmakeFlags = [
"-DCMAKE_CXX_FLAGS=-std=c++11" "-DCMAKE_CXX_FLAGS=-std=c++11"
"-DCLANG_INCLUDE_DOCS=ON"
"-DLLVM_ENABLE_SPHINX=ON"
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
] ++ ] ++
# Maybe with compiler-rt this won't be needed? # Maybe with compiler-rt this won't be needed?
(stdenv.lib.optional stdenv.isLinux "-DGCC_INSTALL_PREFIX=${gcc}") ++ (stdenv.lib.optional stdenv.isLinux "-DGCC_INSTALL_PREFIX=${gcc}") ++
@ -24,12 +33,19 @@ let
patches = [ ./purity.patch ]; patches = [ ./purity.patch ];
postBuild = ''
cmake --build . --target docs-clang-man
'';
postPatch = '' postPatch = ''
sed -i -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/Tools.cpp sed -i -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/Tools.cpp
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
# Patch for standalone doc building
sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
''; '';
outputs = [ "out" "python" ]; outputs = [ "out" "man" "python" ];
# Clang expects to find LLVMgold in its own prefix # Clang expects to find LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix # Clang expects to find sanitizer libraries in its own prefix
@ -46,6 +62,12 @@ let
mv $out/share/clang/*.py $python/share/clang mv $out/share/clang/*.py $python/share/clang
rm $out/bin/c-index-test rm $out/bin/c-index-test
# Manually install clang manpage
cp docs/man/*.1 $out/share/man/man1/
# Move it and other man pages to 'man' output
moveToOutput "share/man" "$man"
''; '';
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -5,7 +5,8 @@ stdenv.mkDerivation {
src = fetch "libcxxabi" "1n416kv27anabg9jsw6331r28ic30xk46p381lx2vbb2jrhwpafw"; src = fetch "libcxxabi" "1n416kv27anabg9jsw6331r28ic30xk46p381lx2vbb2jrhwpafw";
buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind; nativeBuildInputs = [ cmake ];
buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
postUnpack = '' postUnpack = ''
unpackFile ${libcxx.src} unpackFile ${libcxx.src}

View File

@ -12,7 +12,8 @@ stdenv.mkDerivation {
src = fetch "lld" "00km1qawk146pyjqa6aphcdzgkzrmg6cgk0ikg4661ffp5bn9q1k"; src = fetch "lld" "00km1qawk146pyjqa6aphcdzgkzrmg6cgk0ikg4661ffp5bn9q1k";
buildInputs = [ cmake llvm ]; nativeBuildInputs = [ cmake ];
buildInputs = [ llvm ];
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View File

@ -30,7 +30,8 @@ stdenv.mkDerivation {
cmake/modules/LLDBStandalone.cmake cmake/modules/LLDBStandalone.cmake
''; '';
buildInputs = [ cmake python which swig ncurses zlib libedit libxml2 llvm ] nativeBuildInputs = [ cmake python which swig ];
buildInputs = [ ncurses zlib libedit libxml2 llvm ]
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc ]; ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.libobjc darwin.apple_sdk.libs.xpc ];
CXXFLAGS = "-fno-rtti"; CXXFLAGS = "-fno-rtti";

View File

@ -38,9 +38,10 @@ in stdenv.mkDerivation rec {
mv compiler-rt-* $sourceRoot/projects/compiler-rt mv compiler-rt-* $sourceRoot/projects/compiler-rt
''; '';
outputs = [ "out" ] ++ stdenv.lib.optional enableSharedLibraries "lib"; outputs = [ "out" "man" ] ++ stdenv.lib.optional enableSharedLibraries "lib";
buildInputs = [ perl groff cmake libxml2 python libffi ] nativeBuildInputs = [ perl groff cmake python python.pkgs.sphinx ];
buildInputs = [ libxml2 libffi ]
++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi ]; ++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi ];
propagatedBuildInputs = [ ncurses zlib ]; propagatedBuildInputs = [ ncurses zlib ];
@ -80,6 +81,11 @@ in stdenv.mkDerivation rec {
"-DLLVM_ENABLE_FFI=ON" "-DLLVM_ENABLE_FFI=ON"
"-DLLVM_ENABLE_RTTI=ON" "-DLLVM_ENABLE_RTTI=ON"
"-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code "-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code
"-DLLVM_BUILD_DOCS=ON"
"-DLLVM_ENABLE_SPHINX=ON"
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
] ++ stdenv.lib.optional enableSharedLibraries [ ] ++ stdenv.lib.optional enableSharedLibraries [
"-DLLVM_LINK_LLVM_DYLIB=ON" "-DLLVM_LINK_LLVM_DYLIB=ON"
] ++ stdenv.lib.optional (!isDarwin) ] ++ stdenv.lib.optional (!isDarwin)
@ -103,7 +109,9 @@ in stdenv.mkDerivation rec {
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib
''; '';
postInstall = "" postInstall = ''
moveToOutput "share/man" "$man"
''
+ stdenv.lib.optionalString (enableSharedLibraries) '' + stdenv.lib.optionalString (enableSharedLibraries) ''
moveToOutput "lib/libLLVM-*" "$lib" moveToOutput "lib/libLLVM-*" "$lib"
moveToOutput "lib/libLLVM.${shlib}" "$lib" moveToOutput "lib/libLLVM.${shlib}" "$lib"

View File

@ -12,7 +12,8 @@ stdenv.mkDerivation {
src = fetch "openmp" "09kf41zgv551fnv628kqhlwgqkd2bkiwii9gqi6q12djgdddhmfv"; src = fetch "openmp" "09kf41zgv551fnv628kqhlwgqkd2bkiwii9gqi6q12djgdddhmfv";
buildInputs = [ cmake llvm perl ]; nativeBuildInputs = [ cmake perl ];
buildInputs = [ llvm ];
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -1,17 +1,17 @@
{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind }: { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind-light }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libdrm-2.4.79"; name = "libdrm-2.4.81";
src = fetchurl { src = fetchurl {
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2"; url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
sha256 = "c6aaf319293bce38023e9a637471b0f45c93c807d2a279060d741fc7a2e5b197"; sha256 = "8cc05c195ac8708199979a94c4e4d1a928c14ec338ecbcb38ead09f54dae11ae";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libpthreadstubs libpciaccess ]; buildInputs = [ libpthreadstubs libpciaccess valgrind-light ];
# libdrm as of 2.4.70 does not actually do anything with udev. # libdrm as of 2.4.70 does not actually do anything with udev.
patches = stdenv.lib.optional stdenv.isDarwin ./libdrm-apple.patch; patches = stdenv.lib.optional stdenv.isDarwin ./libdrm-apple.patch;
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
preConfigure = stdenv.lib.optionalString stdenv.isDarwin preConfigure = stdenv.lib.optionalString stdenv.isDarwin
"echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache"; "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache";
configureFlags = [ "--disable-valgrind" ] configureFlags = [ ]
++ stdenv.lib.optionals (stdenv.isArm || stdenv.isAarch64) [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ] ++ stdenv.lib.optionals (stdenv.isArm || stdenv.isAarch64) [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ]
++ stdenv.lib.optional stdenv.isDarwin "-C"; ++ stdenv.lib.optional stdenv.isDarwin "-C";

View File

@ -8,6 +8,14 @@ stdenv.mkDerivation rec {
sha256 = "00jsix5hny0g768zv4hk78dib7w0qmk5fbizf4jj37r51nd4s6k8"; sha256 = "00jsix5hny0g768zv4hk78dib7w0qmk5fbizf4jj37r51nd4s6k8";
}; };
patches = [
(fetchurl {
name = "CVE-2017-6891.patch";
url = "https://git.savannah.gnu.org/gitweb/?p=libtasn1.git;a=patch;h=5520704d075802df25ce4ffccc010ba1641bd484";
sha256 = "000r6wb87zkx8yhzkf1c3h7p5akwhjw51cv8f1yjnplrqqrr7h2k";
})
];
outputs = [ "out" "dev" "devdoc" ]; outputs = [ "out" "dev" "devdoc" ];
outputBin = "dev"; outputBin = "dev";

View File

@ -2,7 +2,7 @@
, pkgconfig, intltool, autoreconfHook, substituteAll , pkgconfig, intltool, autoreconfHook, substituteAll
, file, expat, libdrm, xorg, wayland, openssl , file, expat, libdrm, xorg, wayland, openssl
, llvmPackages, libffi, libomxil-bellagio, libva , llvmPackages, libffi, libomxil-bellagio, libva
, libelf, libvdpau, python2 , libelf, libvdpau
, grsecEnabled ? false , grsecEnabled ? false
, enableRadv ? false , enableRadv ? false
# Texture floats are patented, see docs/patents.txt, so we don't enable them for full Mesa. # Texture floats are patented, see docs/patents.txt, so we don't enable them for full Mesa.
@ -36,7 +36,7 @@ let
then ["nouveau" "freedreno" "vc4" "etnaviv" "imx"] then ["nouveau" "freedreno" "vc4" "etnaviv" "imx"]
else if stdenv.isAarch64 else if stdenv.isAarch64
then ["nouveau" "vc4" ] then ["nouveau" "vc4" ]
else ["i915" "ilo" "r300" "r600" "radeonsi" "nouveau"]; else ["i915" "r300" "r600" "radeonsi" "nouveau"];
defaultDriDrivers = defaultDriDrivers =
if (stdenv.isArm || stdenv.isAarch64) if (stdenv.isArm || stdenv.isAarch64)
then ["nouveau"] then ["nouveau"]
@ -67,7 +67,7 @@ let
in in
let let
version = "17.0.6"; version = "17.1.1";
branch = head (splitString "." version); branch = head (splitString "." version);
driverLink = "/run/opengl-driver" + optionalString stdenv.isi686 "-32"; driverLink = "/run/opengl-driver" + optionalString stdenv.isi686 "-32";
in in
@ -82,7 +82,7 @@ stdenv.mkDerivation {
"ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
"https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz"
]; ];
sha256 = "17d60jjzg4ddm95gk2cqx0xz6b9anmmz6ax4majwr3gis2yg7v49"; sha256 = "aed503f94c0c1630a162a3e276f4ee12a86764cee4cb92338ea2dea99a04e7ef";
}; };
prePatch = "patchShebangs ."; prePatch = "patchShebangs .";
@ -103,7 +103,7 @@ stdenv.mkDerivation {
"--localstatedir=/var" "--localstatedir=/var"
"--with-dri-driverdir=$(drivers)/lib/dri" "--with-dri-driverdir=$(drivers)/lib/dri"
"--with-dri-searchpath=${driverLink}/lib/dri" "--with-dri-searchpath=${driverLink}/lib/dri"
"--with-egl-platforms=x11,wayland,drm" "--with-platforms=x11,wayland,drm"
] ]
++ (optional (galliumDrivers != []) ++ (optional (galliumDrivers != [])
("--with-gallium-drivers=" + ("--with-gallium-drivers=" +
@ -126,7 +126,7 @@ stdenv.mkDerivation {
"--enable-glx" "--enable-glx"
"--enable-glx-tls" "--enable-glx-tls"
"--enable-gallium-osmesa" # used by wine "--enable-gallium-osmesa" # used by wine
"--enable-gallium-llvm" "--enable-llvm"
"--enable-egl" "--enable-egl"
"--enable-xa" # used in vmware driver "--enable-xa" # used in vmware driver
"--enable-gbm" "--enable-gbm"
@ -152,7 +152,6 @@ stdenv.mkDerivation {
libX11 libXext libxcb libXt libXfixes libxshmfence libX11 libXext libxcb libXt libXfixes libxshmfence
libffi wayland libvdpau libelf libXvMC libffi wayland libvdpau libelf libXvMC
libomxil-bellagio libva libpthreadstubs openssl/*or another sha1 provider*/ libomxil-bellagio libva libpthreadstubs openssl/*or another sha1 provider*/
(python2.withPackages (ps: [ ps.Mako ]))
]; ];

View File

@ -14,8 +14,9 @@ diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/dri/Makefile.am mesa-12.0.
+ ln -srf $(DESTDIR)$(dridir)/gallium_dri.so \ + ln -srf $(DESTDIR)$(dridir)/gallium_dri.so \
$(DESTDIR)$(dridir)/$${i}_dri.so; \ $(DESTDIR)$(dridir)/$${i}_dri.so; \
done; \ done; \
- $(RM) $(DESTDIR)$(dridir)/gallium_dri.* - $(RM) $(DESTDIR)$(dridir)/gallium_dri.*; \
+ $(RM) $(DESTDIR)$(dridir)/gallium_dri.la + $(RM) $(DESTDIR)$(dridir)/gallium_dri.la \
$(RM) -d $(DESTDIR)$(dridir) &>/dev/null || true
uninstall-hook: uninstall-hook:
for i in $(TARGET_DRIVERS); do \ for i in $(TARGET_DRIVERS); do \
@ -60,8 +61,9 @@ diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/vdpau/Makefile.am mesa-12.
ln -sf $${l} \ ln -sf $${l} \
$${dest_dir}/$${k}; \ $${dest_dir}/$${k}; \
done; \ done; \
- $(RM) $${dest_dir}/libvdpau_gallium.* - $(RM) $${dest_dir}/libvdpau_gallium.*; \
+ $(RM) $${dest_dir}/libvdpau_gallium.la + $(RM) $${dest_dir}/libvdpau_gallium.la \
$(RM) -d $${dest_dir} &>/dev/null || true
uninstall-hook: uninstall-hook:
for i in $(TARGET_DRIVERS); do \ for i in $(TARGET_DRIVERS); do \
@ -81,8 +83,9 @@ diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/xvmc/Makefile.am mesa-12.0
ln -sf $${l} \ ln -sf $${l} \
$${dest_dir}/$${k}; \ $${dest_dir}/$${k}; \
done; \ done; \
- $(RM) $${dest_dir}/libXvMCgallium.* - $(RM) $${dest_dir}/libXvMCgallium.*; \
+ $(RM) $${dest_dir}/libXvMCgallium.la + $(RM) $${dest_dir}/libXvMCgallium.la \
$(RM) -d $${dest_dir} &>/dev/null || true
uninstall-hook: uninstall-hook:
for i in $(TARGET_DRIVERS); do \ for i in $(TARGET_DRIVERS); do \

View File

@ -1,6 +1,8 @@
{ stdenv, fetchurl, pkgconfig, glib, expat, pam, intltool, spidermonkey_17 { stdenv, fetchurl, fetchpatch, autoreconfHook, pkgconfig, glib, expat, pam
, gobjectIntrospection, libxslt, docbook_xsl, docbook_xml_dtd_412 , intltool, spidermonkey_17 , gobjectIntrospection, libxslt, docbook_xsl
, useSystemd ? stdenv.isLinux, systemd }: , docbook_xml_dtd_412, gtk_doc
, useSystemd ? stdenv.isLinux, systemd
}:
let let
@ -22,11 +24,28 @@ stdenv.mkDerivation rec {
sha256 = "109w86kfqrgz83g9ivggplmgc77rz8kx8646izvm2jb57h4rbh71"; sha256 = "109w86kfqrgz83g9ivggplmgc77rz8kx8646izvm2jb57h4rbh71";
}; };
patches = [
(fetchpatch {
url = "http://pkgs.fedoraproject.org/cgit/rpms/polkit.git/plain/polkit-0.113-agent-leaks.patch?id=fa6fd575804de92886c95d3bc2b7eb2abcd13760";
sha256 = "1cxnhj0y30g7ldqq1y6zwsbdwcx7h97d3mpd3h5jy7dhg3h9ym91";
})
(fetchpatch {
url = "http://pkgs.fedoraproject.org/cgit/rpms/polkit.git/plain/polkit-0.113-polkitpermission-leak.patch?id=fa6fd575804de92886c95d3bc2b7eb2abcd13760";
sha256 = "1h1rkd4avqyyr8q6836zzr3w10jf521gcqnvhrhzwdpgp1ay4si7";
})
(fetchpatch {
url = "http://pkgs.fedoraproject.org/cgit/rpms/polkit.git/plain/polkit-0.113-itstool.patch?id=fa6fd575804de92886c95d3bc2b7eb2abcd13760";
sha256 = "0bxmjwp8ahy1y5g1l0kxmld0l3mlvb2l0i5n1qabia3d5iyjkyfh";
})
];
outputs = [ "bin" "dev" "out" ]; # small man pages in $bin outputs = [ "bin" "dev" "out" ]; # small man pages in $bin
nativeBuildInputs =
[ gtk_doc pkgconfig autoreconfHook ]
++ [ libxslt docbook_xsl docbook_xml_dtd_412 ]; # man pages
buildInputs = buildInputs =
[ pkgconfig glib expat pam intltool spidermonkey_17 gobjectIntrospection ] [ glib expat pam intltool spidermonkey_17 gobjectIntrospection ]
++ [ libxslt docbook_xsl docbook_xml_dtd_412 ] # man pages
++ stdenv.lib.optional useSystemd systemd; ++ stdenv.lib.optional useSystemd systemd;
# Ugly hack to overwrite hardcoded directories # Ugly hack to overwrite hardcoded directories

View File

@ -1,4 +1,4 @@
{ buildPythonPackage, isPy3k, fetchPypi { lib, writeText, buildPythonPackage, isPy3k, fetchPypi
, openldap, cyrus_sasl, openssl }: , openldap, cyrus_sasl, openssl }:
buildPythonPackage rec { buildPythonPackage rec {
@ -12,6 +12,28 @@ buildPythonPackage rec {
sha256 = "88bab69e519dd8bd83becbe36bd141c174b0fe309e84936cf1bae685b31be779"; sha256 = "88bab69e519dd8bd83becbe36bd141c174b0fe309e84936cf1bae685b31be779";
}; };
# Needed by tests to setup a mockup ldap server.
BIN = "${openldap}/bin";
SBIN = "${openldap}/bin";
SLAPD = "${openldap}/libexec/slapd";
SCHEMA = "${openldap}/etc/schema";
patches = lib.singleton (writeText "avoid-syslog.diff" ''
diff a/Lib/slapdtest.py b/Lib/slapdtest.py
--- a/Lib/slapdtest.py
+++ b/Lib/slapdtest.py
@@ -60,7 +60,8 @@ def combined_logger(
pass
# for writing to syslog
new_logger = logging.getLogger(log_name)
- if sys_log_format:
+ # /dev/log does not exist in nix build environment.
+ if False:
my_syslog_formatter = logging.Formatter(
fmt=' '.join((log_name, sys_log_format)))
my_syslog_handler = logging.handlers.SysLogHandler(
'');
NIX_CFLAGS_COMPILE = "-I${cyrus_sasl.dev}/include/sasl"; NIX_CFLAGS_COMPILE = "-I${cyrus_sasl.dev}/include/sasl";
propagatedBuildInputs = [openldap cyrus_sasl openssl]; propagatedBuildInputs = [openldap cyrus_sasl openssl];
} }

View File

@ -22,12 +22,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
postInstall = lib.optionalString stdenv.isDarwin ''
for f in $out/bin/{rc,rdm,rp}; do
install_name_tool -change @rpath/libclang.dylib ${llvmPackages.clang.cc}/lib/libclang.dylib ''${f}
done
'';
meta = { meta = {
description = "C/C++ client-server indexer based on clang"; description = "C/C++ client-server indexer based on clang";
homepage = https://github.com/andersbakken/rtags; homepage = https://github.com/andersbakken/rtags;

View File

@ -1,18 +0,0 @@
--- CF-855.17/CFRuntime.c 2014-11-26 21:29:48.000000000 -0800
+++ CF-855.17/CFRuntime.c.new 2014-11-26 21:30:01.000000000 -0800
@@ -756,6 +756,7 @@
extern void __CFErrorInitialize(void);
extern void __CFTreeInitialize(void);
extern void __CFURLInitialize(void);
+extern void __CFPreferencesDomainInitialize(void);
#if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED || DEPLOYMENT_TARGET_EMBEDDED_MINI
extern void __CFMachPortInitialize(void);
#endif
@@ -1015,6 +1016,7 @@
__CFErrorInitialize();
__CFTreeInitialize();
__CFURLInitialize();
+ __CFPreferencesDomainInitialize();
#if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED || DEPLOYMENT_TARGET_WINDOWS
__CFBundleInitialize();

View File

@ -1,12 +1,12 @@
{ stdenv, appleDerivation, icu, dyld, libdispatch, launchd, libclosure }: { stdenv, appleDerivation, ICU, dyld, libdispatch, libplatform, launchd, libclosure }:
# this project uses blocks, a clang-only extension # this project uses blocks, a clang-only extension
assert stdenv.cc.isClang; assert stdenv.cc.isClang;
appleDerivation { appleDerivation {
buildInputs = [ dyld icu libdispatch launchd libclosure ]; buildInputs = [ dyld ICU libdispatch libplatform launchd libclosure ];
patches = [ ./add-cf-initialize.patch ./add-cfmachport.patch ./cf-bridging.patch ]; patches = [ ./add-cfmachport.patch ./cf-bridging.patch ./remove-xpc.patch ];
__propagatedImpureHostDeps = [ "/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation" ]; __propagatedImpureHostDeps = [ "/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation" ];
@ -19,7 +19,6 @@ appleDerivation {
--replace "/bin/" "" \ --replace "/bin/" "" \
--replace "INSTALLNAME=/System" "INSTALLNAME=$out" \ --replace "INSTALLNAME=/System" "INSTALLNAME=$out" \
--replace "install_name_tool -id /System" "install_name_tool -id $out" \ --replace "install_name_tool -id /System" "install_name_tool -id $out" \
--replace "-licucore.A" "-licui18n -licuuc" \
--replace 'chown -RH -f root:wheel $(DSTBASE)/CoreFoundation.framework' "" \ --replace 'chown -RH -f root:wheel $(DSTBASE)/CoreFoundation.framework' "" \
--replace 'chmod -RH' 'chmod -R' --replace 'chmod -RH' 'chmod -R'

View File

@ -0,0 +1,17 @@
diff --git a/CFBundlePriv.h b/CFBundlePriv.h
index d4feb5f..e7b52e8 100644
--- a/CFBundlePriv.h
+++ b/CFBundlePriv.h
@@ -254,12 +254,6 @@ Boolean _CFBundleGetStringsFilesShared(CFBundleRef bundle);
CF_EXPORT
CFURLRef _CFBundleCopyFrameworkURLForExecutablePath(CFStringRef executablePath);
-#if (TARGET_OS_MAC && !(TARGET_OS_EMBEDDED || TARGET_OS_IPHONE)) || (TARGET_OS_EMBEDDED || TARGET_OS_IPHONE)
-#include <xpc/xpc.h>
-CF_EXPORT
-void _CFBundleSetupXPCBootstrap(xpc_object_t bootstrap) CF_AVAILABLE(10_10, 8_0);
-#endif
-
/* Functions deprecated as SPI */
CF_EXPORT

View File

@ -0,0 +1,22 @@
{ stdenv, cctools, appleDerivation }:
appleDerivation {
buildInputs = [ cctools ];
postPatch = ''
substituteInPlace makefile \
--replace /usr/bin/ "" \
--replace '$(ISYSROOT)' "" \
--replace 'shell xcodebuild -version -sdk' 'shell true' \
--replace 'shell xcrun -sdk $(SDKPATH) -find' 'shell echo' \
--replace '-install_name $(libdir)' "-install_name $out/lib/" \
--replace /usr/local/bin/ /bin/ \
--replace /usr/lib/ /lib/ \
'';
makeFlags = [ "DSTROOT=$(out)" ];
postInstall = ''
mv $out/usr/local/include $out/include
'';
}

View File

@ -1,6 +1,6 @@
{ stdenv, appleDerivation, cpio, bootstrap_cmds, xnu, Libc, Libm, libdispatch, cctools, Libinfo, { stdenv, appleDerivation, cpio, bootstrap_cmds, xnu, Libc, Libm, libdispatch, cctools, Libinfo,
dyld, Csu, architecture, libclosure, CarbonHeaders, ncurses, CommonCrypto, copyfile, dyld, Csu, architecture, libclosure, CarbonHeaders, ncurses, CommonCrypto, copyfile,
removefile, libresolv, Libnotify, libpthread, mDNSResponder, launchd, libutil, version }: removefile, libresolv, Libnotify, libplatform, libpthread, mDNSResponder, launchd, libutil, version }:
appleDerivation rec { appleDerivation rec {
phases = [ "unpackPhase" "installPhase" ]; phases = [ "unpackPhase" "installPhase" ];
@ -19,7 +19,7 @@ appleDerivation rec {
for dep in ${Libc} ${Libm} ${Libinfo} ${dyld} ${architecture} ${libclosure} ${CarbonHeaders} \ for dep in ${Libc} ${Libm} ${Libinfo} ${dyld} ${architecture} ${libclosure} ${CarbonHeaders} \
${libdispatch} ${ncurses.dev} ${CommonCrypto} ${copyfile} ${removefile} ${libresolv} \ ${libdispatch} ${ncurses.dev} ${CommonCrypto} ${copyfile} ${removefile} ${libresolv} \
${Libnotify} ${mDNSResponder} ${launchd} ${libutil} ${libpthread}; do ${Libnotify} ${libplatform} ${mDNSResponder} ${launchd} ${libutil} ${libpthread}; do
(cd $dep/include && find . -name '*.h' | cpio -pdm $out/include) (cd $dep/include && find . -name '*.h' | cpio -pdm $out/include)
done done

View File

@ -30,6 +30,7 @@ let
# is the right one, even though it isn't. The version I have here doesn't appear to be linked # is the right one, even though it isn't. The version I have here doesn't appear to be linked
# to any OS releases, but Apple also doesn't mention mDNSResponder from 10.11 to 10.11.6, and # to any OS releases, but Apple also doesn't mention mDNSResponder from 10.11 to 10.11.6, and
# neither of those versions are publicly available. # neither of those versions are publicly available.
libplatform = "125";
mDNSResponder = "625.41.2"; mDNSResponder = "625.41.2";
libutil = "43"; libutil = "43";
@ -47,6 +48,9 @@ let
}; };
"osx-10.10.5" = { "osx-10.10.5" = {
adv_cmds = "158"; adv_cmds = "158";
CF = "1153.18";
ICU = "531.48";
libdispatch = "442.1.4";
Security = "57031.40.6"; Security = "57031.40.6";
IOAudioFamily = "203.3"; IOAudioFamily = "203.3";
@ -66,11 +70,9 @@ let
IOKitUser = "1050.20.2"; IOKitUser = "1050.20.2";
}; };
"osx-10.9.5" = { "osx-10.9.5" = {
CF = "855.17";
launchd = "842.92.1"; launchd = "842.92.1";
libauto = "185.5"; libauto = "185.5";
Libc = "997.90.3"; # We use this, but not from here Libc = "997.90.3"; # We use this, but not from here
libdispatch = "339.92.1";
Libsystem = "1197.1.1"; Libsystem = "1197.1.1";
Security = "55471.14.18"; Security = "55471.14.18";
security_dotmac_tp = "55107.1"; security_dotmac_tp = "55107.1";
@ -189,7 +191,7 @@ let
bootstrap_cmds = applePackage "bootstrap_cmds" "dev-tools-7.0" "1v5dv2q3af1xwj5kz0a5g54fd5dm6j4c9dd2g66n4kc44ixyrhp3" {}; bootstrap_cmds = applePackage "bootstrap_cmds" "dev-tools-7.0" "1v5dv2q3af1xwj5kz0a5g54fd5dm6j4c9dd2g66n4kc44ixyrhp3" {};
bsdmake = applePackage "bsdmake" "dev-tools-3.2.6" "11a9kkhz5bfgi1i8kpdkis78lhc6b5vxmhd598fcdgra1jw4iac2" {}; bsdmake = applePackage "bsdmake" "dev-tools-3.2.6" "11a9kkhz5bfgi1i8kpdkis78lhc6b5vxmhd598fcdgra1jw4iac2" {};
CarbonHeaders = applePackage "CarbonHeaders" "osx-10.6.2" "1zam29847cxr6y9rnl76zqmkbac53nx0szmqm9w5p469a6wzjqar" {}; CarbonHeaders = applePackage "CarbonHeaders" "osx-10.6.2" "1zam29847cxr6y9rnl76zqmkbac53nx0szmqm9w5p469a6wzjqar" {};
CF = applePackage "CF" "osx-10.9.5" "1sadmxi9fsvsmdyxvg2133sdzvkzwil5fvyyidxsyk1iyfzqsvln" {}; CF = applePackage "CF" "osx-10.10.5" "07f5psjxi7wyd13ci4x83ya5hy6p69sjfqcpp2mmxdlhd8yzkf74" {};
CommonCrypto = applePackage "CommonCrypto" "osx-10.11.6" "0vllfpb8f4f97wj2vpdd7w5k9ibnsbr6ff1zslpp6q323h01n25y" {}; CommonCrypto = applePackage "CommonCrypto" "osx-10.11.6" "0vllfpb8f4f97wj2vpdd7w5k9ibnsbr6ff1zslpp6q323h01n25y" {};
configd = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" {}; configd = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" {};
copyfile = applePackage "copyfile" "osx-10.11.6" "1rkf3iaxmjz5ycgrmf0g971kh90jb2z1zqxg5vlqz001s4y457gs" {}; copyfile = applePackage "copyfile" "osx-10.11.6" "1rkf3iaxmjz5ycgrmf0g971kh90jb2z1zqxg5vlqz001s4y457gs" {};
@ -197,6 +199,7 @@ let
dtrace = applePackage "dtrace" "osx-10.11.6" "0pp5x8dgvzmg9vvg32hpy2brm17dpmbwrcr4prsmdmfvd4767wc0" {}; dtrace = applePackage "dtrace" "osx-10.11.6" "0pp5x8dgvzmg9vvg32hpy2brm17dpmbwrcr4prsmdmfvd4767wc0" {};
dyld = applePackage "dyld" "osx-10.11.6" "0qkjmjazm2zpgvwqizhandybr9cm3gz9pckx8rmf0py03faafc08" {}; dyld = applePackage "dyld" "osx-10.11.6" "0qkjmjazm2zpgvwqizhandybr9cm3gz9pckx8rmf0py03faafc08" {};
eap8021x = applePackage "eap8021x" "osx-10.11.6" "0iw0qdib59hihyx2275rwq507bq2a06gaj8db4a8z1rkaj1frskh" {}; eap8021x = applePackage "eap8021x" "osx-10.11.6" "0iw0qdib59hihyx2275rwq507bq2a06gaj8db4a8z1rkaj1frskh" {};
ICU = applePackage "ICU" "osx-10.10.5" "1qihlp42n5g4dl0sn0f9pc0bkxy1452dxzf0vr6y5gqpshlzy03p" {};
IOKit = applePackage "IOKit" "osx-10.11.6" "0kcbrlyxcyirvg5p95hjd9k8a01k161zg0bsfgfhkb90kh2s8x00" { inherit IOKitSrcs; }; IOKit = applePackage "IOKit" "osx-10.11.6" "0kcbrlyxcyirvg5p95hjd9k8a01k161zg0bsfgfhkb90kh2s8x00" { inherit IOKitSrcs; };
launchd = applePackage "launchd" "osx-10.9.5" "0w30hvwqq8j5n90s3qyp0fccxflvrmmjnicjri4i1vd2g196jdgj" {}; launchd = applePackage "launchd" "osx-10.9.5" "0w30hvwqq8j5n90s3qyp0fccxflvrmmjnicjri4i1vd2g196jdgj" {};
libauto = applePackage "libauto" "osx-10.9.5" "17z27yq5d7zfkwr49r7f0vn9pxvj95884sd2k6lq6rfaz9gxqhy3" {}; libauto = applePackage "libauto" "osx-10.9.5" "17z27yq5d7zfkwr49r7f0vn9pxvj95884sd2k6lq6rfaz9gxqhy3" {};
@ -208,11 +211,12 @@ let
}; };
Libc_old = applePackage "Libc/825_40_1.nix" "osx-10.8.5" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {}; Libc_old = applePackage "Libc/825_40_1.nix" "osx-10.8.5" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {};
libclosure = applePackage "libclosure" "osx-10.11.6" "1zqy1zvra46cmqv6vsf1mcsz3a76r9bky145phfwh4ab6y15vjpq" {}; libclosure = applePackage "libclosure" "osx-10.11.6" "1zqy1zvra46cmqv6vsf1mcsz3a76r9bky145phfwh4ab6y15vjpq" {};
libdispatch = applePackage "libdispatch" "osx-10.9.5" "1lc5033cmkwxy3r26gh9plimxshxfcbgw6i0j7mgjlnpk86iy5bk" {}; libdispatch = applePackage "libdispatch" "osx-10.10.5" "0jsfbzp87lwk9snlby0hd4zvj7j894p5q3cw0wdx9ny1mcp3kdcj" {};
libiconv = applePackage "libiconv" "osx-10.11.6" "11h6lfajydri4widis62q8scyz7z8l6msqyx40ly4ahsdlbl0981" {}; libiconv = applePackage "libiconv" "osx-10.11.6" "11h6lfajydri4widis62q8scyz7z8l6msqyx40ly4ahsdlbl0981" {};
Libinfo = applePackage "Libinfo" "osx-10.11.6" "0qjgkd4y8sjvwjzv5wwyzkb61pg8wwg95bkp721dgzv119dqhr8x" {}; Libinfo = applePackage "Libinfo" "osx-10.11.6" "0qjgkd4y8sjvwjzv5wwyzkb61pg8wwg95bkp721dgzv119dqhr8x" {};
Libm = applePackage "Libm" "osx-10.7.4" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {}; Libm = applePackage "Libm" "osx-10.7.4" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {};
Libnotify = applePackage "Libnotify" "osx-10.11.6" "0zbcyxlcfhf91jxczhd5bq9qfgvg494gwwp3l7q5ayb2qdihzr8b" {}; Libnotify = applePackage "Libnotify" "osx-10.11.6" "0zbcyxlcfhf91jxczhd5bq9qfgvg494gwwp3l7q5ayb2qdihzr8b" {};
libplatform = applePackage "libplatform" "osx-10.11.6" "1v4ik6vlklwsi0xb1g5kmhy29j9xk5m2y8xb9zbi1k4ng8x39czk" {};
libpthread = applePackage "libpthread" "osx-10.11.6" "1kbw738cmr9pa7pz1igmajs307clfq7gv2vm1sqdzhcnnjxbl28w" {}; libpthread = applePackage "libpthread" "osx-10.11.6" "1kbw738cmr9pa7pz1igmajs307clfq7gv2vm1sqdzhcnnjxbl28w" {};
libresolv = applePackage "libresolv" "osx-10.11.6" "09flfdi3dlzq0yap32sxidacpc4nn4va7z12a6viip21ix2xb2gf" {}; libresolv = applePackage "libresolv" "osx-10.11.6" "09flfdi3dlzq0yap32sxidacpc4nn4va7z12a6viip21ix2xb2gf" {};
Libsystem = applePackage "Libsystem" "osx-10.11.6" "1nfkmbqml587v2s1d1y2s2v8nmr577jvk51y6vqrfvsrhdhc2w94" {}; Libsystem = applePackage "Libsystem" "osx-10.11.6" "1nfkmbqml587v2s1d1y2s2v8nmr577jvk51y6vqrfvsrhdhc2w94" {};

View File

@ -6,8 +6,11 @@ appleDerivation {
installPhase = '' installPhase = ''
mkdir -p $out/include/dispatch $out/include/os mkdir -p $out/include/dispatch $out/include/os
cp -r dispatch/*.h $out/include/dispatch # Move these headers so CF can find <os/voucher_private.h>
mv private/voucher*.h $out/include/os
cp -r private/*.h $out/include/dispatch cp -r private/*.h $out/include/dispatch
cp -r dispatch/*.h $out/include/dispatch
cp -r os/object*.h $out/include/os cp -r os/object*.h $out/include/os
''; '';
} }

View File

@ -0,0 +1,10 @@
{ stdenv, appleDerivation }:
appleDerivation {
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
mkdir $out
cp -r include $out/include
'';
}

View File

@ -165,14 +165,14 @@ in rec {
persistent1 = prevStage: self: super: with prevStage; { persistent1 = prevStage: self: super: with prevStage; {
inherit inherit
zlib patchutils m4 scons flex perl bison unifdef unzip openssl icu python zlib patchutils m4 scons flex perl bison unifdef unzip openssl python
libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff
openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz
findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils; findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils;
darwin = super.darwin // { darwin = super.darwin // {
inherit (darwin) inherit (darwin)
dyld Libsystem xnu configd libdispatch libclosure launchd; dyld Libsystem xnu configd ICU libdispatch libclosure launchd;
}; };
}; };
@ -185,8 +185,8 @@ in rec {
allowedRequisites = allowedRequisites =
[ bootstrapTools ] ++ [ bootstrapTools ] ++
(with pkgs; [ xz.bin xz.out libcxx libcxxabi icu.out ]) ++ (with pkgs; [ xz.bin xz.out libcxx libcxxabi ]) ++
(with pkgs.darwin; [ dyld Libsystem CF locale ]); (with pkgs.darwin; [ dyld Libsystem CF ICU locale ]);
overrides = persistent1 prevStage; overrides = persistent1 prevStage;
}; };
@ -221,8 +221,8 @@ in rec {
allowedRequisites = allowedRequisites =
[ bootstrapTools ] ++ [ bootstrapTools ] ++
(with pkgs; [ xz.bin xz.out icu.out bash libcxx libcxxabi ]) ++ (with pkgs; [ xz.bin xz.out bash libcxx libcxxabi ]) ++
(with pkgs.darwin; [ dyld Libsystem locale ]); (with pkgs.darwin; [ dyld ICU Libsystem locale ]);
overrides = persistent2 prevStage; overrides = persistent2 prevStage;
}; };
@ -256,7 +256,7 @@ in rec {
persistent4 = prevStage: self: super: with prevStage; { persistent4 = prevStage: self: super: with prevStage; {
inherit inherit
gnumake gzip gnused bzip2 gawk ed xz patch bash gnumake gzip gnused bzip2 gawk ed xz patch bash
libcxxabi libcxx ncurses libffi zlib icu llvm gmp pcre gnugrep libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep
coreutils findutils diffutils patchutils; coreutils findutils diffutils patchutils;
llvmPackages = super.llvmPackages // { llvmPackages = super.llvmPackages // {
@ -264,7 +264,7 @@ in rec {
}; };
darwin = super.darwin // { darwin = super.darwin // {
inherit (darwin) dyld Libsystem cctools libiconv; inherit (darwin) dyld ICU Libsystem cctools libiconv;
}; };
} // lib.optionalAttrs (super.targetPlatform == localSystem) { } // lib.optionalAttrs (super.targetPlatform == localSystem) {
# Need to get rid of these when cross-compiling. # Need to get rid of these when cross-compiling.
@ -310,13 +310,13 @@ in rec {
}; };
allowedRequisites = (with pkgs; [ allowedRequisites = (with pkgs; [
xz.out xz.bin libcxx libcxxabi icu.out gmp.out gnumake findutils bzip2.out xz.out xz.bin libcxx libcxxabi gmp.out gnumake findutils bzip2.out
bzip2.bin llvmPackages.llvm llvmPackages.llvm.lib zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar bzip2.bin llvmPackages.llvm llvmPackages.llvm.lib zlib.out zlib.dev libffi.out coreutils ed diffutils gnutar
gzip ncurses.out ncurses.dev ncurses.man gnused bash gawk gzip ncurses.out ncurses.dev ncurses.man gnused bash gawk
gnugrep llvmPackages.clang-unwrapped patch pcre.out binutils-raw.out gnugrep llvmPackages.clang-unwrapped llvmPackages.clang-unwrapped.man patch pcre.out binutils-raw.out
binutils-raw.dev binutils gettext binutils-raw.dev binutils gettext
]) ++ (with pkgs.darwin; [ ]) ++ (with pkgs.darwin; [
dyld Libsystem CF cctools libiconv locale dyld Libsystem CF cctools ICU libiconv locale
]); ]);
overrides = self: super: overrides = self: super:

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, xz, coreutils ? null }: { stdenv, fetchurl, xz, coreutils ? null }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "diffutils-3.5"; name = "diffutils-3.6";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/diffutils/${name}.tar.xz"; url = "mirror://gnu/diffutils/${name}.tar.xz";
sha256 = "0csmqfz8ks23kdjsq0v2ll1acqiz8lva06dj19mwmymrsp69ilys"; sha256 = "1mivg0fy3a6fcn535ln8nkgfj6vxh5hsxxs5h6692wxmsjyyh8fn";
}; };
outputs = [ "out" "info" ]; outputs = [ "out" "info" ];

View File

@ -7175,6 +7175,7 @@ with pkgs;
inherit (darwin) xnu bootstrap_cmds cctools; inherit (darwin) xnu bootstrap_cmds cctools;
llvm = llvm_39; llvm = llvm_39;
}; };
valgrind-light = self.valgrind.override { gdb = null; };
valkyrie = callPackage ../development/tools/analysis/valkyrie { }; valkyrie = callPackage ../development/tools/analysis/valkyrie { };