From 90fd9a55d9346d39948a690b4209c57940e79120 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Tue, 12 May 2015 06:40:31 -0400 Subject: binutils: don't build with Werror --- pkgs/development/tools/misc/binutils/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index f740c60c487..767edcd7984 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-static-libgcc"; configureFlags = - [ "--enable-shared" "--enable-deterministic-archives" ] + [ "--enable-shared" "--enable-deterministic-archives" "--disable-werror" ] ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] -- cgit 1.4.1 From 26f17ee091248b4ead62f78a969f94e1230f4588 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 18:16:22 +0200 Subject: cmake: Get rid of circular dependency Also, don't install static libraries in jsoncpp. --- pkgs/development/libraries/jsoncpp/default.nix | 10 +++------- pkgs/development/tools/build-managers/cmake/default.nix | 5 ++--- 2 files changed, 5 insertions(+), 10 deletions(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix index 07563364e34..357ba257c24 100644 --- a/pkgs/development/libraries/jsoncpp/default.nix +++ b/pkgs/development/libraries/jsoncpp/default.nix @@ -20,18 +20,14 @@ stdenv.mkDerivation rec { export sourceRoot=${src.name} ''; - nativeBuildInputs = [ - # cmake can be built with the system jsoncpp, or its own bundled version. - # Obviously we cannot build it against the system jsoncpp that doesn't yet exist, so - # we make a bootstrapping build with the bundled version. - (cmake.override { jsoncpp = null; }) - python - ]; + nativeBuildInputs = [ cmake python ]; cmakeFlags = [ "-DJSONCPP_WITH_CMAKE_PACKAGE=1" ]; + postInstall = "rm $out/lib/*.a"; + meta = { inherit version; homepage = https://github.com/open-source-parsers/jsoncpp; diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 72ecb10b099..77863c4532d 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl -, bzip2, curl, expat, jsoncpp, libarchive, xz, zlib +, bzip2, curl, expat, libarchive, xz, zlib , useNcurses ? false, ncurses, useQt4 ? false, qt4 , wantPS ? false, ps ? null }: @@ -40,7 +40,6 @@ stdenv.mkDerivation rec { buildInputs = [ bzip2 curl expat libarchive xz zlib ] - ++ optional (jsoncpp != null) jsoncpp ++ optional useNcurses ncurses ++ optional useQt4 qt4; @@ -53,8 +52,8 @@ stdenv.mkDerivation rec { "--docdir=/share/doc/${name}" "--mandir=/share/man" "--system-libs" + "--no-system-jsoncpp" ] - ++ optional (jsoncpp == null) "--no-system-jsoncpp" ++ optional useQt4 "--qt-gui"; setupHook = ./setup-hook.sh; -- cgit 1.4.1 From e7f1038798d99beeda326aee016e2f84dca15fd8 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 1 Jun 2015 20:09:31 +0200 Subject: Fix typo in last merge --- pkgs/development/tools/build-managers/cmake/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 02847c749bf..27e7a884eaf 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -51,6 +51,7 @@ stdenv.mkDerivation rec { [ "--docdir=/share/doc/${name}" "--mandir=/share/man" "--no-system-jsoncpp" + ] ++ optional (!stdenv.isCygwin) "--system-libs" ++ optional useQt4 "--qt-gui" ++ ["--"] -- cgit 1.4.1 From 3ede0a64a2a1997e0eb327885d29db1760ad5ecc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 4 Jun 2015 19:47:34 +0200 Subject: make: Don't segfault if we can't get a tty name This happened in VM builds: make flags: SHELL=/nix/store/dbxpkswwc7rh6g1iy6dwqklzw39hihb1-bash-4.3-p33/bin/bash /nix/store/jm26xg0h3jcrg4bbrwiqx3jpirscdk0p-stdenv/setup: line 658: 5957 Segmentation fault make ${makefile:+-f $makefile} ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} $makeFlags "${makeFlagsArray[@]}" $buildFlags "${buildFlagsArray[@]}" --- .../tools/build-managers/gnumake/4.1/default.nix | 3 ++ .../build-managers/gnumake/4.1/no-tty-name.patch | 53 ++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/build-managers/gnumake/4.1/default.nix b/pkgs/development/tools/build-managers/gnumake/4.1/default.nix index 600f6f5759d..9ac20107018 100644 --- a/pkgs/development/tools/build-managers/gnumake/4.1/default.nix +++ b/pkgs/development/tools/build-managers/gnumake/4.1/default.nix @@ -17,6 +17,9 @@ stdenv.mkDerivation { # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for # included Makefiles, don't look in /usr/include and friends. ./impure-dirs.patch + + # Don't segfault if we can't get a tty name. + ./no-tty-name.patch ]; meta = { diff --git a/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch b/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch new file mode 100644 index 00000000000..a84d7ab49d0 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch @@ -0,0 +1,53 @@ +From 292da6f6867b75a5af7ddbb639a1feae022f438f Mon Sep 17 00:00:00 2001 +From: Paul Smith +Date: Mon, 20 Oct 2014 05:54:56 +0000 +Subject: * main.c (main): [SV 43434] Handle NULL returns from ttyname(). + +--- +diff --git main.c main.c +index b2d169c..0cdb8a8 100644 +--- main.c ++++ main.c +@@ -1429,13 +1429,18 @@ main (int argc, char **argv, char **envp) + #ifdef HAVE_ISATTY + if (isatty (fileno (stdout))) + if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMOUT"))) +- define_variable_cname ("MAKE_TERMOUT", TTYNAME (fileno (stdout)), +- o_default, 0)->export = v_export; +- ++ { ++ const char *tty = TTYNAME (fileno (stdout)); ++ define_variable_cname ("MAKE_TERMOUT", tty ? tty : DEFAULT_TTYNAME, ++ o_default, 0)->export = v_export; ++ } + if (isatty (fileno (stderr))) + if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMERR"))) +- define_variable_cname ("MAKE_TERMERR", TTYNAME (fileno (stderr)), +- o_default, 0)->export = v_export; ++ { ++ const char *tty = TTYNAME (fileno (stderr)); ++ define_variable_cname ("MAKE_TERMERR", tty ? tty : DEFAULT_TTYNAME, ++ o_default, 0)->export = v_export; ++ } + #endif + + /* Reset in case the switches changed our minds. */ +diff --git makeint.h makeint.h +index 6223936..2009f41 100644 +--- makeint.h ++++ makeint.h +@@ -436,10 +436,11 @@ extern struct rlimit stack_limit; + /* The number of bytes needed to represent the largest integer as a string. */ + #define INTSTR_LENGTH CSTRLEN ("18446744073709551616") + ++#define DEFAULT_TTYNAME "true" + #ifdef HAVE_TTYNAME + # define TTYNAME(_f) ttyname (_f) + #else +-# define TTYNAME(_f) "true" ++# define TTYNAME(_f) DEFAULT_TTYNAME + #endif + + +-- +cgit v0.9.0.2 -- cgit 1.4.1 From 8437f039e3a07b47ce504a7c96f62300c9bc8d82 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Tue, 16 Jun 2015 12:02:00 +0200 Subject: help2man: update from 1.46.6 to 1.47.1 --- pkgs/development/tools/misc/help2man/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix index 79dbb533d03..2f811d9ae82 100644 --- a/pkgs/development/tools/misc/help2man/default.nix +++ b/pkgs/development/tools/misc/help2man/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, perl, gettext, LocaleGettext, makeWrapper }: stdenv.mkDerivation rec { - name = "help2man-1.46.6"; + name = "help2man-1.47.1"; src = fetchurl { url = "mirror://gnu/help2man/${name}.tar.xz"; - sha256 = "1brccgnjf09f2zg70s6gv6gn68mi59kp3zf50wvxp79n72ngapv1"; + sha256 = "01ib718afwc28bmh1n0p5h7245vs3rrfm7bj1sq4avmh1kv2d6y5"; }; buildInputs = [ makeWrapper perl gettext LocaleGettext ]; -- cgit 1.4.1 From fa9c81f69468098e0dd0ca79ea4d2ef74ec6bc0c Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 11 Jun 2015 17:58:26 -0700 Subject: pure darwin stdenv --- pkgs/development/compilers/llvm/3.6/default.nix | 2 +- .../development/interpreters/perl/5.16/default.nix | 11 + .../development/interpreters/perl/5.20/default.nix | 11 + .../interpreters/python/2.7/default.nix | 4 + pkgs/development/libraries/gettext/default.nix | 7 +- pkgs/development/libraries/icu/default.nix | 5 + pkgs/development/libraries/libedit/default.nix | 2 +- pkgs/development/libraries/zlib/default.nix | 7 + pkgs/development/tools/misc/binutils/default.nix | 6 +- pkgs/os-specific/darwin/adv_cmds/locale.nix | 29 ++ pkgs/os-specific/darwin/binutils/default.nix | 39 +++ pkgs/stdenv/darwin/default.nix | 364 +++++++++++++++------ pkgs/stdenv/darwin/make-bootstrap-tools.nix | 10 +- pkgs/stdenv/default.nix | 2 +- pkgs/stdenv/generic/default.nix | 27 +- pkgs/tools/archivers/gnutar/default.nix | 6 + pkgs/tools/archivers/sharutils/default.nix | 2 +- pkgs/tools/text/gawk/default.nix | 11 +- pkgs/top-level/all-packages.nix | 24 +- 19 files changed, 436 insertions(+), 133 deletions(-) create mode 100644 pkgs/os-specific/darwin/adv_cmds/locale.nix create mode 100644 pkgs/os-specific/darwin/binutils/default.nix (limited to 'pkgs/development/tools') diff --git a/pkgs/development/compilers/llvm/3.6/default.nix b/pkgs/development/compilers/llvm/3.6/default.nix index 3321e38949f..d95ffe47326 100644 --- a/pkgs/development/compilers/llvm/3.6/default.nix +++ b/pkgs/development/compilers/llvm/3.6/default.nix @@ -1,6 +1,6 @@ { pkgs, newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }: let - callPackage = newScope (self // { inherit isl version fetch; }); + callPackage = newScope (self // { inherit stdenv isl version fetch; }); version = "3.6.1"; diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 9ed3aa54f51..568025edfd4 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -24,6 +24,17 @@ stdenv.mkDerivation rec { ++ lib.optional stdenv.isSunOS ./ld-shared.patch ++ lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + # There's an annoying bug on sandboxed Darwin in Perl's Cwd.pm where it looks for pwd + # in /bin/pwd and /usr/bin/pwd and then falls back on just "pwd" if it can't get them + # while at the same time erasing the PATH environment variable so it unconditionally + # fails. The code in question is guarded by a check for Mac OS, but the patch below + # doesn't have any runtime effect on other platforms. + postPatch = '' + pwd="$(type -P pwd)" + substituteInPlace dist/Cwd/Cwd.pm \ + --replace "pwd_cmd = 'pwd'" "pwd_cmd = '$pwd'" + ''; + # Build a thread-safe Perl with a dynamic libperls.o. We need the # "installstyle" option to ensure that modules are put under # $out/lib/perl5 - this is the general default, but because $out diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 0ad955d0363..bfdb09e779a 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -35,6 +35,17 @@ stdenv.mkDerivation rec { ++ optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + # There's an annoying bug on sandboxed Darwin in Perl's Cwd.pm where it looks for pwd + # in /bin/pwd and /usr/bin/pwd and then falls back on just "pwd" if it can't get them + # while at the same time erasing the PATH environment variable so it unconditionally + # fails. The code in question is guarded by a check for Mac OS, but the patch below + # doesn't have any runtime effect on other platforms. + postPatch = '' + pwd="$(type -P pwd)" + substituteInPlace dist/PathTools/Cwd.pm \ + --replace "pwd_cmd = 'pwd'" "pwd_cmd = '$pwd'" + ''; + # Build a thread-safe Perl with a dynamic libperls.o. We need the # "installstyle" option to ensure that modules are put under # $out/lib/perl5 - this is the general default, but because $out diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 4ad4679bd6e..9e1f0e61744 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -62,6 +62,8 @@ let for i in Lib/plat-*/regen; do substituteInPlace $i --replace /usr/include/ ${stdenv.cc.libc}/include/ done + '' + optionalString stdenv.isDarwin '' + substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"' ''; configureFlags = [ @@ -72,6 +74,8 @@ let "--with-system-ffi" "--with-system-expat" "ac_cv_func_bind_textdomain_codeset=yes" + ] ++ optionals stdenv.isDarwin [ + "--disable-toolbox-glue" ]; postConfigure = if stdenv.isCygwin then '' diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 15f11f8a133..f86a15cb0d6 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -19,7 +19,12 @@ stdenv.mkDerivation (rec { "--with-included-gettext" "--with-included-glib" "--with-included-libcroco" - ]); + ]) + # avoid retaining reference to CF during stdenv bootstrap + ++ (stdenv.lib.optionals stdenv.isDarwin [ + "gt_cv_func_CFPreferencesCopyAppValue=no" + "gt_cv_func_CFLocaleCopyCurrent=no" + ]); # On cross building, gettext supposes that the wchar.h from libc # does not fulfill gettext needs, so it tries to work with its diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix index e95cb7ad097..909f4e936a9 100644 --- a/pkgs/development/libraries/icu/default.nix +++ b/pkgs/development/libraries/icu/default.nix @@ -32,6 +32,11 @@ stdenv.mkDerivation { configureFlags = "--disable-debug" + stdenv.lib.optionalString stdenv.isDarwin " --enable-rpath"; + # remove dependency on bootstrap-tools in early stdenv build + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + sed -i 's/INSTALL_CMD=.*install/INSTALL_CMD=install/' $out/lib/icu/${version}/pkgdata.inc + ''; + enableParallelBuilding = true; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/libedit/default.nix b/pkgs/development/libraries/libedit/default.nix index dc2f5842b28..5adef716eb0 100644 --- a/pkgs/development/libraries/libedit/default.nix +++ b/pkgs/development/libraries/libedit/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ] else null; postInstall = '' - sed -i ${stdenv.lib.optionalString (stdenv.isDarwin && stdenv.cc.nativeTools) "''"} s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc + sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc ''; configureFlags = [ "--enable-widec" ]; diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index 419a2584ca8..93474d14344 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -13,6 +13,13 @@ stdenv.mkDerivation (rec { sha256 = "039agw5rqvqny92cpkrfn243x2gd4xn13hs3xi6isk55d2vqqr9n"; }; + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace configure \ + --replace '/usr/bin/libtool' 'ar' \ + --replace 'AR="libtool"' 'AR="ar"' \ + --replace 'ARFLAGS="-o"' 'ARFLAGS="-r"' + ''; + configureFlags = if static then "" else "--shared"; preConfigure = '' diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index f740c60c487..4b2a55c1d90 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -2,8 +2,6 @@ , cross ? null, gold ? true, bison ? null }: -assert !stdenv.isDarwin; - let basename = "binutils-2.23.1"; in with { inherit (stdenv.lib) optional optionals optionalString; }; @@ -56,7 +54,9 @@ stdenv.mkDerivation rec { # As binutils takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_CFLAGS_COMPILE = "-static-libgcc"; + NIX_CFLAGS_COMPILE = if stdenv.isDarwin + then "-Wno-string-plus-int -Wno-deprecated-declarations" + else "-static-libgcc"; configureFlags = [ "--enable-shared" "--enable-deterministic-archives" ] diff --git a/pkgs/os-specific/darwin/adv_cmds/locale.nix b/pkgs/os-specific/darwin/adv_cmds/locale.nix new file mode 100644 index 00000000000..92de8a242e2 --- /dev/null +++ b/pkgs/os-specific/darwin/adv_cmds/locale.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "locale-${version}"; + version = "153"; + + src = fetchurl { + url = "http://opensource.apple.com/tarballs/adv_cmds/adv_cmds-${version}.tar.gz"; + sha256 = "174v6a4zkcm2pafzgdm6kvs48z5f911zl7k49hv7kjq6gm58w99v"; + }; + + buildPhase = '' + cd locale + c++ -Os -Wall -o locale locale.cc + ''; + + installPhase = '' + mkdir -p $out/bin $out/share/man/man1 + + cp locale $out/bin/locale + cp locale.1 $out/share/man/man1 + ''; + + + meta = { + platforms = stdenv.lib.platforms.darwin; + maintainers = with stdenv.lib.maintainers; [ gridaphobe ]; + }; +} diff --git a/pkgs/os-specific/darwin/binutils/default.nix b/pkgs/os-specific/darwin/binutils/default.nix new file mode 100644 index 00000000000..abe4aa67b14 --- /dev/null +++ b/pkgs/os-specific/darwin/binutils/default.nix @@ -0,0 +1,39 @@ +{ stdenv, binutils-raw, cctools }: + +stdenv.mkDerivation { + name = "cctools-binutils-darwin"; + buildCommand = '' + mkdir -p $out/bin $out/include + + ln -s ${binutils-raw}/bin/c++filt $out/bin/c++filt + + # We specifically need: + # - ld: binutils doesn't provide it on darwin + # - as: as above + # - ar: the binutils one prodices .a files that the cctools ld doesn't like + # - ranlib: for compatibility with ar + # - dsymutil: soon going away once it goes into LLVM (this one is fake anyway) + # - otool: we use it for some of our name mangling + # - install_name_tool: we use it to rewrite stuff in our bootstrap tools + # - strip: the binutils one seems to break mach-o files + # - lipo: gcc build assumes it exists + # - nm: the gnu one doesn't understand many new load commands + for i in ar ranlib as dsymutil install_name_tool ld strip otool lipo nm strings size; do + ln -sf "${cctools}/bin/$i" "$out/bin/$i" + done + + for i in ${binutils-raw}/include/*.h; do + ln -s "$i" "$out/include/$(basename $i)" + done + + for i in ${cctools}/include/*; do + ln -s "$i" "$out/include/$(basename $i)" + done + + # FIXME: this will give us incorrect man pages for bits of cctools + ln -s ${binutils-raw}/share $out/share + ln -s ${binutils-raw}/lib $out/lib + + ln -s ${cctools}/libexec $out/libexec + ''; +} diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index ac396ecdf12..d4b17a7909c 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -4,144 +4,294 @@ , config ? {} }: -rec { +let + fetch = { file, sha256 }: import { + url = "https://dl.dropboxusercontent.com/u/2857322/${file}"; + inherit sha256; + executable = true; + }; + + bootstrapFiles = { + sh = fetch { file = "sh"; sha256 = "1qakpg37vl61jnkplz13m3g1csqr85cg8ybp6jwiv6apmg26isnm"; }; + bzip2 = fetch { file = "bzip2"; sha256 = "1gxa67255q9v00j1vn1mzyrnbwys2g1102cx02vpcyvvrl4vqxr0"; }; + mkdir = fetch { file = "mkdir"; sha256 = "1yfl8w65ksji7fggrbvqxw8lp0gm02qilk11n9axj2jxay53ngvg"; }; + cpio = fetch { file = "cpio"; sha256 = "0nssyg19smgcblwq1mfcw4djbd85md84d2f093qcqkbigdjg484b"; }; + }; + tarball = fetch { file = "bootstrap-tools.9.cpio.bz2"; sha256 = "0fd79k7gy3z3sba5w4f4lnrcpiwff31vw02480x1pdry8bbgbf2j"; }; +in rec { allPackages = import ../../top-level/all-packages.nix; - bootstrapTools = derivation { - inherit system; + commonPreHook = '' + export NIX_ENFORCE_PURITY=1 + export NIX_IGNORE_LD_THROUGH_GCC=1 + stripAllFlags=" " # the Darwin "strip" command doesn't know "-s" + export MACOSX_DEPLOYMENT_TARGET=10.7 + export SDKROOT= + export CMAKE_OSX_ARCHITECTURES=x86_64 + ''; + + # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land + libSystemClosure = [ + "/usr/lib/libSystem.dylib" + "/usr/lib/libSystem.B.dylib" + "/usr/lib/libobjc.A.dylib" + "/usr/lib/libobjc.dylib" + "/usr/lib/libauto.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libDiagnosticMessagesClient.dylib" + "/usr/lib/system" + ]; - name = "trivial-bootstrap-tools"; - builder = "/bin/sh"; - args = [ ./trivial-bootstrap.sh ]; + # The one dependency of /bin/sh :( + binShClosure = [ "/usr/lib/libncurses.5.4.dylib" ]; - mkdir = "/bin/mkdir"; - ln = "/bin/ln"; + bootstrapTools = derivation rec { + inherit system tarball; + + name = "bootstrap-tools"; + builder = bootstrapFiles.sh; # Not a filename! Attribute 'sh' on bootstrapFiles + args = [ ./unpack-bootstrap-tools.sh ]; + + inherit (bootstrapFiles) mkdir bzip2 cpio; + + __impureHostDeps = binShClosure ++ libSystemClosure; }; - # The simplest stdenv possible to run fetchadc and get the Apple command-line tools - stage0 = rec { - fetchurl = import ../../build-support/fetchurl { - inherit stdenv; - curl = bootstrapTools; - }; + stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh", + overrides ? (pkgs: {}), + extraPreHook ? "", + extraBuildInputs ? with last.pkgs; [ xz darwin.CF libcxx ], + extraInitialPath ? [], + allowedRequisites ? null}: + let + thisStdenv = import ../generic { + inherit system config shell extraBuildInputs allowedRequisites; + + name = "stdenv-darwin-boot-${toString step}"; + + cc = if isNull last then "/no-such-path" else import ../../build-support/cc-wrapper { + inherit shell; + inherit (last) stdenv; + inherit (last.pkgs.darwin) dyld; + + nativeTools = true; + nativePrefix = bootstrapTools; + nativeLibc = false; + libc = last.pkgs.darwin.Libsystem; + cc = { name = "clang-9.9.9"; outPath = bootstrapTools; }; + }; + + preHook = stage0.stdenv.lib.optionalString (shell == "${bootstrapTools}/bin/sh") '' + # Don't patch #!/interpreter because it leads to retained + # dependencies on the bootstrapTools in the final stdenv. + dontPatchShebangs=1 + '' + '' + ${commonPreHook} + ${extraPreHook} + ''; + initialPath = extraInitialPath ++ [ bootstrapTools ]; + fetchurlBoot = import ../../build-support/fetchurl { + stdenv = stage0.stdenv; + curl = bootstrapTools; + }; + + # The stdenvs themselves don't use mkDerivation, so I need to specify this here + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + extraAttrs = { inherit platform; }; + overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; + }; + + thisPkgs = allPackages { + inherit system platform; + bootStdenv = thisStdenv; + }; + in { stdenv = thisStdenv; pkgs = thisPkgs; }; + + stage0 = stageFun 0 null { + overrides = orig: with stage0; rec { + darwin = orig.darwin // { + Libsystem = stdenv.mkDerivation { + name = "bootstrap-Libsystem"; + buildCommand = '' + mkdir -p $out + ln -s ${bootstrapTools}/lib $out/lib + ln -s ${bootstrapTools}/include-Libsystem $out/include + ''; + }; + dyld = bootstrapTools; + }; + + libcxx = stdenv.mkDerivation { + name = "bootstrap-libcxx"; + phases = [ "installPhase" "fixupPhase" ]; + installPhase = '' + mkdir -p $out/lib $out/include + ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib/libc++.dylib + ln -s ${bootstrapTools}/include/c++ $out/include/c++ + ''; + setupHook = ../../development/compilers/llvm/3.5/libc++/setup-hook.sh; + }; + + libcxxabi = stdenv.mkDerivation { + name = "bootstrap-libcxxabi"; + buildCommand = '' + mkdir -p $out/lib + ln -s ${bootstrapTools}/lib/libc++abi.dylib $out/lib/libc++abi.dylib + ''; + }; - stdenv = import ../generic { - inherit system config; - name = "stdenv-darwin-boot-0"; - shell = "/bin/bash"; - initialPath = [ bootstrapTools ]; - fetchurlBoot = fetchurl; - cc = "/no-such-path"; }; + + extraBuildInputs = []; }; - buildTools = import ../../os-specific/darwin/command-line-tools { - inherit (stage0) stdenv fetchurl; - xar = bootstrapTools; - gzip = bootstrapTools; - cpio = bootstrapTools; + persistent0 = _: {}; + + stage1 = with stage0; stageFun 1 stage0 { + extraPreHook = "export NIX_CFLAGS_COMPILE+=\" -F${bootstrapTools}/Library/Frameworks\""; + extraBuildInputs = [ pkgs.libcxx ]; + + allowedRequisites = + [ bootstrapTools ] ++ (with pkgs; [ libcxx libcxxabi ]) ++ [ pkgs.darwin.Libsystem ]; + + overrides = persistent0; }; - preHook = '' - export NIX_IGNORE_LD_THROUGH_GCC=1 - export NIX_DONT_SET_RPATH=1 - export NIX_NO_SELF_RPATH=1 - dontFixLibtool=1 - stripAllFlags=" " # the Darwin "strip" command doesn't know "-s" - xargsFlags=" " - export MACOSX_DEPLOYMENT_TARGET=10.7 - # Use the 10.9 SDK if we're running on 10.9, and 10.10 if we're - # running on 10.10. We need to use the 10.10 headers for functions - # like readlinkat() that are dynamically detected by configure - # scripts. Very impure, obviously. - export SDKROOT=$(/usr/bin/xcrun --sdk macosx"$(/usr/bin/sw_vers -productVersion | /usr/bin/cut -d. -f1,2)" --show-sdk-path 2> /dev/null || echo /) - export NIX_CFLAGS_COMPILE+=" --sysroot=/var/empty -idirafter $SDKROOT/usr/include -F$SDKROOT/System/Library/Frameworks -Wno-multichar -Wno-deprecated-declarations" - export NIX_LDFLAGS_AFTER+=" -L$SDKROOT/usr/lib" - export CMAKE_OSX_ARCHITECTURES=x86_64 - ''; + persistent1 = orig: with stage1.pkgs; { + inherit + zlib patchutils m4 scons flex perl bison unifdef unzip openssl icu python + libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz + findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils; - # A stdenv that wraps the Apple command-line tools and our other trivial symlinked bootstrap tools - stage1 = rec { - nativePrefix = "${buildTools.tools}/Library/Developer/CommandLineTools/usr"; - - stdenv = import ../generic { - name = "stdenv-darwin-boot-1"; - - inherit system config; - inherit (stage0.stdenv) shell fetchurlBoot; - - initialPath = stage0.stdenv.initialPath ++ [ nativePrefix ]; - - preHook = preHook + "\n" + '' - export NIX_LDFLAGS_AFTER+=" -L/usr/lib" - export NIX_ENFORCE_PURITY= - export NIX_CFLAGS_COMPILE+=" -isystem ${nativePrefix}/include/c++/v1 -stdlib=libc++" - export NIX_CFLAGS_LINK+=" -stdlib=libc++ -Wl,-rpath,${nativePrefix}/lib" - ''; - - cc = import ../../build-support/cc-wrapper { - nativeTools = true; - nativePrefix = nativePrefix; - nativeLibc = true; - stdenv = stage0.stdenv; - shell = "/bin/bash"; - cc = { - name = "clang-9.9.9"; - cc = "/usr"; - outPath = nativePrefix; - }; - isClang = true; - }; + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd; }; - pkgs = allPackages { - inherit system platform; - bootStdenv = stdenv; + }; + + stage2 = with stage1; stageFun 2 stage1 { + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ xz libcxx libcxxabi icu ]) ++ + (with pkgs.darwin; [ dyld Libsystem CF ]); + + overrides = persistent1; + }; + + persistent2 = orig: with stage2.pkgs; { + inherit + patchutils m4 scons flex perl bison unifdef unzip openssl python + gettext sharutils libarchive pkg-config groff bash subversion + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util + findfreetype libssh curl cmake autoconf automake libtool cpio + libcxx libcxxabi; + + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd libiconv; }; }; - stage2 = rec { - stdenv = import ../generic { - name = "stdenv-darwin-boot-2"; + stage3 = with stage2; stageFun 3 stage2 { + shell = "${pkgs.bash}/bin/bash"; + + # We have a valid shell here (this one has no bootstrap-tools runtime deps) so stageFun + # enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting + # and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and + # patches our shebangs back to point at bootstrapTools. This makes sure bash comes first. + extraInitialPath = [ pkgs.bash ]; - inherit system config; - inherit (stage1.stdenv) shell fetchurlBoot preHook cc; + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ icu bash libcxx libcxxabi ]) ++ + (with pkgs.darwin; [ dyld Libsystem ]); - initialPath = [ stage1.pkgs.xz ] ++ stage1.stdenv.initialPath; + overrides = persistent2; + }; + + persistent3 = orig: with stage3.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; }; - pkgs = allPackages { - inherit system platform; - bootStdenv = stdenv; + + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem libiconv; }; }; - # Use stage1 to build a whole set of actual tools so we don't have to rely on the Apple prebuilt ones or - # the ugly symlinked bootstrap tools anymore. - stage3 = with stage2; import ../generic { - name = "stdenv-darwin-boot-3"; + stage4 = with stage3; stageFun 4 stage3 { + shell = "${pkgs.bash}/bin/bash"; + extraInitialPath = [ pkgs.bash ]; + overrides = persistent3; + }; + + persistent4 = orig: with stage4.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib icu llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils binutils binutils-raw; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; + }; + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem cctools CF libiconv; + }; + }; + + stage5 = with stage4; import ../generic rec { inherit system config; inherit (stdenv) fetchurlBoot; - initialPath = (import ../common-path.nix) { inherit pkgs; }; + name = "stdenv-darwin"; + + preHook = commonPreHook; - preHook = preHook + "\n" + '' - export NIX_ENFORCE_PURITY=1 - ''; + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + initialPath = import ../common-path.nix { inherit pkgs; }; + shell = "${pkgs.bash}/bin/bash"; cc = import ../../build-support/cc-wrapper { - inherit stdenv; - nativeTools = false; - nativeLibc = true; - binutils = pkgs.darwin.cctools; - cc = pkgs.llvmPackages.clang-unwrapped; - coreutils = pkgs.coreutils; - shell = "${pkgs.bash}/bin/bash"; - extraPackages = [ pkgs.libcxx ]; - isClang = true; + inherit stdenv shell; + nativeTools = false; + nativeLibc = false; + inherit (pkgs) coreutils binutils; + inherit (pkgs.darwin) dyld; + cc = pkgs.llvmPackages.clang-unwrapped; + libc = pkgs.darwin.Libsystem; }; - shell = "${pkgs.bash}/bin/bash"; - }; + extraBuildInputs = with pkgs; [ darwin.CF libcxx ]; + + extraAttrs = { + inherit platform bootstrapTools; + libc = pkgs.darwin.Libsystem; + shellPackage = pkgs.bash; + }; + + allowedRequisites = (with pkgs; [ + xz libcxx libcxxabi icu gmp gnumake findutils bzip2 llvm zlib libffi + coreutils ed diffutils gnutar gzip ncurses gnused bash gawk + gnugrep llvmPackages.clang-unwrapped patch pcre binutils-raw binutils gettext + ]) ++ (with pkgs.darwin; [ + dyld Libsystem CF cctools libiconv + ]); - stdenvDarwin = stage3; + overrides = orig: persistent4 orig // { + clang = cc; + inherit cc; + }; + }; } diff --git a/pkgs/stdenv/darwin/make-bootstrap-tools.nix b/pkgs/stdenv/darwin/make-bootstrap-tools.nix index 636410fdd78..433638dd1bd 100644 --- a/pkgs/stdenv/darwin/make-bootstrap-tools.nix +++ b/pkgs/stdenv/darwin/make-bootstrap-tools.nix @@ -63,13 +63,15 @@ rec { cp -d ${gnugrep.pcre}/lib/libpcre*.dylib $out/lib cp -d ${libiconv}/lib/libiconv*.dylib $out/lib + cp -d ${gettext}/lib/libintl*.dylib $out/lib + chmod +x $out/lib/libintl*.dylib # Copy what we need of clang - cp -d ${llvmPackages.clang}/bin/clang $out/bin - cp -d ${llvmPackages.clang}/bin/clang++ $out/bin - cp -d ${llvmPackages.clang}/bin/clang-3.5 $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang++ $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang-3.6 $out/bin - cp -rL ${llvmPackages.clang}/lib/clang $out/lib + cp -rL ${llvmPackages.clang-unwrapped}/lib/clang $out/lib cp -d ${libcxx}/lib/libc++*.dylib $out/lib cp -d ${libcxxabi}/lib/libc++abi*.dylib $out/lib diff --git a/pkgs/stdenv/default.nix b/pkgs/stdenv/default.nix index 545a3d748eb..28ba8001471 100644 --- a/pkgs/stdenv/default.nix +++ b/pkgs/stdenv/default.nix @@ -37,7 +37,7 @@ rec { stdenvLinux = (import ./linux { inherit system allPackages platform config lib; }).stdenvLinux; # Darwin standard environment. - stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stdenvDarwin; + stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stage5; # Select the appropriate stdenv for the platform `system'. stdenv = diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 863acc31a61..67adaf42a8d 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -10,6 +10,8 @@ let lib = import ../../../lib; in lib.makeOverridable ( , setupScript ? ./setup.sh , extraBuildInputs ? [] +, __stdenvImpureHostDeps ? [] +, __extraImpureHostDeps ? [] }: let @@ -131,7 +133,19 @@ let lib.addPassthru (derivation ( (removeAttrs attrs ["meta" "passthru" "crossAttrs" "pos"]) - // + // (let + buildInputs = attrs.buildInputs or []; + nativeBuildInputs = attrs.nativeBuildInputs or []; + propagatedBuildInputs = attrs.propagatedBuildInputs or []; + propagatedNativeBuildInputs = attrs.propagatedNativeBuildInputs or []; + crossConfig = attrs.crossConfig or null; + + __impureHostDeps = attrs.__impureHostDeps or []; + __propagatedImpureHostDeps = attrs.__propagatedImpureHostDeps or []; + + computedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (extraBuildInputs ++ buildInputs ++ nativeBuildInputs); + computedPropagatedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (propagatedBuildInputs ++ propagatedNativeBuildInputs); + in { builder = attrs.realBuilder or shell; args = attrs.args or ["-e" (attrs.builder or ./default-builder.sh)]; @@ -147,7 +161,15 @@ let nativeBuildInputs = nativeBuildInputs ++ (if crossConfig == null then buildInputs else []); propagatedNativeBuildInputs = propagatedNativeBuildInputs ++ (if crossConfig == null then propagatedBuildInputs else []); - })) ( + + __impureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedImpureHostDeps ++ computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps ++ __impureHostDeps ++ __extraImpureHostDeps ++ [ + "/dev/zero" + "/dev/random" + "/dev/urandom" + "/bin/sh" + ])); + __propagatedImpureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps)); + }))) ( { # The meta attribute is passed in the resulting attribute set, # but it's not part of the actual derivation, i.e., it's not @@ -171,6 +193,7 @@ let (if isNull allowedRequisites then {} else { allowedRequisites = allowedRequisites ++ defaultNativeBuildInputs; }) // { inherit system name; + __impureHostDeps = __stdenvImpureHostDeps; builder = shell; diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index 00be3967768..71b43bf2de9 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -11,6 +11,12 @@ stdenv.mkDerivation rec { patches = stdenv.lib.optional stdenv.isDarwin ./gnutar-1.28-darwin.patch; + # avoid retaining reference to CF during stdenv bootstrap + configureFlags = stdenv.lib.optionals stdenv.isDarwin [ + "gt_cv_func_CFPreferencesCopyAppValue=no" + "gt_cv_func_CFLocaleCopyCurrent=no" + ]; + # gnutar tries to call into gettext between `fork` and `exec`, # which is not safe on darwin. # see http://article.gmane.org/gmane.os.macosx.fink.devel/21882 diff --git a/pkgs/tools/archivers/sharutils/default.nix b/pkgs/tools/archivers/sharutils/default.nix index 146f9bea87a..bfeda5085b6 100644 --- a/pkgs/tools/archivers/sharutils/default.nix +++ b/pkgs/tools/archivers/sharutils/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { '' # Fix for building on Glibc 2.16. Won't be needed once the # gnulib in sharutils is updated. - sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD || stdenv.isDarwin) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h + sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h ''; # GNU Gettext is needed on non-GNU platforms. diff --git a/pkgs/tools/text/gawk/default.nix b/pkgs/tools/text/gawk/default.nix index c6eb7ba1101..001a50458e2 100644 --- a/pkgs/tools/text/gawk/default.nix +++ b/pkgs/tools/text/gawk/default.nix @@ -1,4 +1,5 @@ -{ stdenv, fetchurl, libsigsegv, readline, readlineSupport ? false }: +{ stdenv, fetchurl, libsigsegv, readline, readlineSupport ? false +, locale ? null }: stdenv.mkDerivation rec { name = "gawk-4.1.3"; @@ -8,10 +9,14 @@ stdenv.mkDerivation rec { sha256 = "09d6pmx6h3i2glafm0jd1v1iyrs03vcyv2rkz12jisii3vlmbkz3"; }; - doCheck = !stdenv.isCygwin; # XXX: `test-dup2' segfaults on Cygwin 6.1 + doCheck = !( + stdenv.isCygwin # XXX: `test-dup2' segfaults on Cygwin 6.1 + || stdenv.isDarwin # XXX: `locale' segfaults + ); buildInputs = stdenv.lib.optional (stdenv.system != "x86_64-cygwin") libsigsegv - ++ stdenv.lib.optional readlineSupport readline; + ++ stdenv.lib.optional readlineSupport readline + ++ stdenv.lib.optional stdenv.isDarwin locale; configureFlags = stdenv.lib.optional (stdenv.system != "x86_64-cygwin") "--with-libsigsegv-prefix=${libsigsegv}" ++ stdenv.lib.optional readlineSupport "--with-readline=${readline}" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1e2dd6ad220..e903f6395b9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1512,7 +1512,7 @@ let garmintools = callPackage ../development/libraries/garmintools {}; - gawk = callPackage ../tools/text/gawk { }; + gawk = callPackage ../tools/text/gawk { inherit (darwin) locale; }; gawkInteractive = appendToName "interactive" (gawk.override { readlineSupport = true; }); @@ -4670,12 +4670,13 @@ let nativePrefix = stdenv.cc.nativePrefix or ""; cc = baseCC; libc = libc; + dyld = if stdenv.isDarwin then darwin.dyld else null; isGNU = baseCC.isGNU or false; isClang = baseCC.isClang or false; inherit stdenv binutils coreutils zlib; }; - wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) glibc; + wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) stdenv.cc.libc; # legacy version, used for gnat bootstrapping wrapGCC-old = baseGCC: (makeOverridable (import ../build-support/gcc-wrapper-old)) { nativeTools = stdenv.cc.nativeTools or false; @@ -5182,11 +5183,9 @@ let bin_replace_string = callPackage ../development/tools/misc/bin_replace_string { }; - binutils = if stdenv.isDarwin - then import ../build-support/native-darwin-cctools-wrapper {inherit stdenv;} - else callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - }; + binutils = if stdenv.isDarwin then darwin.binutils else binutils-raw; + + binutils-raw = callPackage ../development/tools/misc/binutils { inherit noSysDirs; }; binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; @@ -6942,7 +6941,10 @@ let # glibc provides libiconv so systems with glibc don't need to build libiconv # separately, but we also provide libiconvReal, which will always be a # standalone libiconv, just in case you want it - libiconv = if stdenv.isGlibc then stdenv.cc.libc else libiconvReal; + libiconv = + if stdenv.isGlibc then stdenv.cc.libc + else if stdenv.isDarwin then darwin.libiconv + else libiconvReal; libiconvReal = callPackage ../development/libraries/libiconv { fetchurl = fetchurlBoot; @@ -9279,7 +9281,7 @@ let xctoolchain = xcode.toolchain; }; - cctools = (callPackage ../os-specific/darwin/cctools/port.nix {}).native; + cctools = (callPackage ../os-specific/darwin/cctools/port.nix { inherit libobjc; }).native; maloader = callPackage ../os-specific/darwin/maloader { inherit opencflite; @@ -9294,8 +9296,12 @@ let ps = callPackage ../os-specific/darwin/adv_cmds/ps.nix {}; + locale = callPackage ../os-specific/darwin/adv_cmds/locale.nix {}; + security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; }; + binutils = callPackage ../os-specific/darwin/binutils { inherit cctools; }; + cmdline_sdk = cmdline.sdk; cmdline_tools = cmdline.tools; -- cgit 1.4.1 From 2c79dcd5ceb0023bf2b06e2190ab71a1d6e4ec87 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:56:20 -0700 Subject: darwin purity: pkgconfig --- pkgs/development/tools/misc/pkgconfig/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix index f01b52cbba7..f1471d51e1f 100644 --- a/pkgs/development/tools/misc/pkgconfig/default.nix +++ b/pkgs/development/tools/misc/pkgconfig/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation (rec { sha256 = "0igqq5m204w71m11y0nipbdf5apx87hwfll6axs12hn4dqfb6vkb"; }; - buildInputs = stdenv.lib.optional stdenv.isCygwin libiconv; + buildInputs = stdenv.lib.optional (stdenv.isCygwin || stdenv.isDarwin) libiconv; configureFlags = [ "--with-internal-glib" ]; -- cgit 1.4.1 From 06efb2e937c1335a4c6c8fd509b98ad54d65c1db Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Sat, 4 Jul 2015 00:39:44 +0200 Subject: chefdk: fix build --- pkgs/development/tools/chefdk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/chefdk/default.nix b/pkgs/development/tools/chefdk/default.nix index ee49423a8b1..043ee8adf42 100644 --- a/pkgs/development/tools/chefdk/default.nix +++ b/pkgs/development/tools/chefdk/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, bundlerEnv, ruby, perl }: +{ stdenv, lib, bundlerEnv, ruby, perl, autoconf }: bundlerEnv { name = "chefdk-0.4.0"; @@ -8,7 +8,7 @@ bundlerEnv { lockfile = ./Gemfile.lock; gemset = ./gemset.nix; - buildInputs = [ perl ]; + buildInputs = [ perl autoconf ]; meta = with lib; { description = "A streamlined development and deployment workflow for Chef platform"; -- cgit 1.4.1 From ad41a600e58a24abf6721d81e9630d4ce3ebd153 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 13:18:21 +0200 Subject: oprofile: update from 0.9.9 to 1.0.0 (ZHF) fixes the build with recent versions of binutils --- .../tools/profiling/oprofile/default.nix | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/profiling/oprofile/default.nix b/pkgs/development/tools/profiling/oprofile/default.nix index 6c7b2a4d9ae..561fea6ef7b 100644 --- a/pkgs/development/tools/profiling/oprofile/default.nix +++ b/pkgs/development/tools/profiling/oprofile/default.nix @@ -1,26 +1,18 @@ -{ stdenv, fetchurl, binutils, popt, makeWrapper, gawk, which, gnugrep, zlib -, pkgconfig +{ stdenv, fetchurl, binutils, popt, zlib, pkgconfig , withGUI ? false , qt4 ? null}: # libX11 is needed because the Qt build stuff automatically adds `-lX11'. assert withGUI -> qt4 != null; stdenv.mkDerivation rec { - name = "oprofile-0.9.9"; + name = "oprofile-1.0.0"; src = fetchurl { url = "mirror://sourceforge/oprofile/${name}.tar.gz"; - sha256 = "15vm24jhw4xfd55pfw1rlpzfsh4bl1vyjsajs78bi9xbv8038lhy"; + sha256 = "0nn4wfvwy4nii25y6lwlrnzx9ah4nz0r93yk7hswiy6wxjs10wc4"; }; - patchPhase = '' - sed -i "utils/opcontrol" \ - -e "s|OPCONTROL=.*$|OPCONTROL=\"$out/bin/opcontrol\"|g ; - s|OPDIR=.*$|OPDIR=\"$out/bin\"|g ; - s|^PATH=.*$||g" - ''; - - buildInputs = [ binutils zlib popt makeWrapper gawk which gnugrep pkgconfig ] + buildInputs = [ binutils zlib popt pkgconfig ] ++ stdenv.lib.optionals withGUI [ qt4 ]; configureFlags = [ @@ -28,11 +20,6 @@ stdenv.mkDerivation rec { ] ++ stdenv.lib.optional withGUI "--with-qt-dir=${qt4} --enable-gui=qt4"; - postInstall = '' - wrapProgram "$out/bin/opcontrol" \ - --prefix PATH : "$out/bin:${gawk}/bin:${which}/bin:${gnugrep}/bin" - ''; - meta = { description = "System-wide profiler for Linux"; longDescription = '' -- cgit 1.4.1 From 43c72cb6afdf7625fa04b6218a116b4c3badf9d2 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 20:29:33 -0700 Subject: add security-tool --- .../tools/build-managers/gnustep/make/default.nix | 31 +++++ .../tools/build-managers/gnustep/xcode/default.nix | 23 ++++ pkgs/os-specific/darwin/apple-sdk/default.nix | 4 +- .../apple-source-releases/configd/default.nix | 2 + .../darwin/apple-source-releases/default.nix | 44 +++++-- .../apple-source-releases/libauto/default.nix | 7 +- .../libsecurity_apple_csp/GNUmakefile | 11 ++ .../libsecurity_apple_csp/default.nix | 31 +++++ .../libsecurity_apple_cspdl/GNUmakefile | 10 ++ .../libsecurity_apple_cspdl/default.nix | 16 +++ .../libsecurity_apple_file_dl/GNUmakefile | 10 ++ .../libsecurity_apple_file_dl/default.nix | 17 +++ .../libsecurity_apple_x509_cl/GNUmakefile | 10 ++ .../libsecurity_apple_x509_cl/default.nix | 18 +++ .../libsecurity_apple_x509_tp/GNUmakefile | 10 ++ .../libsecurity_apple_x509_tp/default.nix | 19 +++ .../libsecurity_asn1/GNUmakefile | 11 ++ .../libsecurity_asn1/default.nix | 14 +++ .../libsecurity_cdsa_client/GNUmakefile | 10 ++ .../libsecurity_cdsa_client/default.nix | 8 ++ .../libsecurity_cdsa_plugin/GNUmakefile | 10 ++ .../libsecurity_cdsa_plugin/default.nix | 15 +++ .../libsecurity_cdsa_utilities/GNUmakefile | 13 +++ .../libsecurity_cdsa_utilities/default.nix | 13 +++ .../handletemplates.patch | 19 +++ .../libsecurity_cdsa_utils/GNUmakefile | 13 +++ .../libsecurity_cdsa_utils/default.nix | 8 ++ .../libsecurity_codesigning/GNUmakefile | 10 ++ .../libsecurity_codesigning/default.nix | 7 ++ .../libsecurity_cssm/GNUmakefile | 11 ++ .../libsecurity_cssm/default.nix | 14 +++ .../libsecurity_filedb/GNUmakefile | 10 ++ .../libsecurity_filedb/default.nix | 13 +++ .../libsecurity_generic/default.nix | 58 +++++++++ .../libsecurity_generic/impure_deps.nix | 129 +++++++++++++++++++++ .../libsecurity_keychain/GNUmakefile | 10 ++ .../libsecurity_keychain/default.nix | 47 ++++++++ .../libsecurity_mds/GNUmakefile | 10 ++ .../libsecurity_mds/default.nix | 11 ++ .../libsecurity_ocspd/GNUmakefile | 10 ++ .../libsecurity_ocspd/default.nix | 20 ++++ .../libsecurity_pkcs12/GNUmakefile | 11 ++ .../libsecurity_pkcs12/default.nix | 15 +++ .../libsecurity_sd_cspdl/GNUmakefile | 10 ++ .../libsecurity_sd_cspdl/default.nix | 10 ++ .../libsecurity_utilities/GNUmakefile | 11 ++ .../libsecurity_utilities/default.nix | 23 ++++ .../apple-source-releases/libsecurityd/GNUmakefile | 11 ++ .../apple-source-releases/libsecurityd/default.nix | 23 ++++ .../libsecurityd/xdr-arity.patch | 79 +++++++++++++ .../security_dotmac_tp/GNUmakefile | 8 ++ .../security_dotmac_tp/default.nix | 4 + .../os-specific/darwin/osx-private-sdk/default.nix | 46 +++----- pkgs/os-specific/darwin/osx-sdk/default.nix | 4 +- pkgs/os-specific/darwin/security-tool/GNUmakefile | 14 +++ pkgs/os-specific/darwin/security-tool/default.nix | 83 ++++++++++--- .../darwin/security-tool/impure-deps.nix | 129 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 10 +- 58 files changed, 1186 insertions(+), 62 deletions(-) create mode 100644 pkgs/development/tools/build-managers/gnustep/make/default.nix create mode 100644 pkgs/development/tools/build-managers/gnustep/xcode/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch create mode 100644 pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix create mode 100644 pkgs/os-specific/darwin/security-tool/GNUmakefile create mode 100644 pkgs/os-specific/darwin/security-tool/impure-deps.nix (limited to 'pkgs/development/tools') diff --git a/pkgs/development/tools/build-managers/gnustep/make/default.nix b/pkgs/development/tools/build-managers/gnustep/make/default.nix new file mode 100644 index 00000000000..7fa9aad72db --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep/make/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "make-${version}"; + version = "1.0"; + + src = fetchurl { + url = "http://ftpmain.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz"; + sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw"; + }; + + patchPhase = '' + substituteInPlace GNUmakefile.in \ + --replace which type \ + --replace 'tooldir = $(DESTDIR)' 'tooldir = ' \ + --replace 'makedir = $(DESTDIR)' 'makedir = ' \ + --replace 'mandir = $(DESTDIR)' 'mandir = ' + + substituteInPlace FilesystemLayouts/apple \ + --replace /usr/local "" + ''; + + installFlags = "DESTDIR=$(out)"; + + postInstall = '' + mkdir -p $out/nix-support + cat >$out/nix-support/setup-hook <" ''$'#include \nstatic void msgtracer_log_with_keys(...) { };' diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile new file mode 100644 index 00000000000..ca263228fde --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_csp + +security_apple_csp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_csp_HEADER_FILES_DIR = lib + +security_apple_csp_CC_FILES = $(wildcard lib/*.cpp) +security_apple_csp_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix new file mode 100644 index 00000000000..add46454cbe --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix @@ -0,0 +1,31 @@ +{ appleDerivation, apple_sdk, libsecurity_asn1, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_utilities, osx_private_sdk, stdenv }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurity_cdsa_plugin + libsecurity_asn1 + libsecurity_cdsa_utils + ]; + NIX_CFLAGS_COMPILE = "-Iopen_ssl"; + patchPhase = '' + for file in lib/BlockCryptor.h lib/RSA_DSA_signature.h lib/castContext.h \ + lib/RawSigner.h lib/MD2Object.h lib/HMACSHA1.h lib/bfContext.h lib/rc4Context.h; do + substituteInPlace ''$file --replace \ + '"CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h"' \ + '"${apple_sdk.sdk}/include/MacTypes.h"' + done + + for file in lib/castContext.h lib/gladmanContext.h lib/desContext.h lib/rc4Context.h; do + substituteInPlace ''$file --replace \ + '/usr/local/include/CommonCrypto/CommonCryptorSPI.h' \ + '${osx_private_sdk}/usr/include/CommonCrypto/CommonCryptorSPI.h' + done + + substituteInPlace lib/opensshWrap.cpp --replace RSA_DSA_Keys.h RSA_DSA_keys.h + '' + stdenv.lib.optionalString (!stdenv.cc.nativeLibc) '' + substituteInPlace lib/pbkdf2.c --replace \ + '' \ + '"${stdenv.libc}/include/ConditionalMacros.h"' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile new file mode 100644 index 00000000000..a0d48cf4965 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_cspdl + +security_apple_cspdl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_cspdl_HEADER_FILES_DIR = lib + +security_apple_cspdl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix new file mode 100644 index 00000000000..b80d4c8aad2 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix @@ -0,0 +1,16 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_keychain, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile new file mode 100644 index 00000000000..f52829c644d --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_file_dl + +security_apple_file_dl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_file_dl_HEADER_FILES_DIR = lib + +security_apple_file_dl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix new file mode 100644 index 00000000000..0eb2ee10fd8 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix @@ -0,0 +1,17 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile new file mode 100644 index 00000000000..c7c9c3d4e79 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_x509_cl + +security_apple_x509_cl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_x509_cl_HEADER_FILES_DIR = lib + +security_apple_x509_cl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix new file mode 100644 index 00000000000..d2f15e19ccf --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix @@ -0,0 +1,18 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_utilities, libsecurityd, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + libsecurity_asn1 + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile new file mode 100644 index 00000000000..083a8a85d17 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_x509_tp + +security_apple_x509_tp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_x509_tp_HEADER_FILES_DIR = lib + +security_apple_x509_tp_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix new file mode 100644 index 00000000000..6410c134f89 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix @@ -0,0 +1,19 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_ocspd, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + libsecurity_asn1 + libsecurity_ocspd + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile new file mode 100644 index 00000000000..1c3c4f0b25b --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_asn1 + +security_asn1_C_FILES = $(wildcard lib/*.c) +security_asn1_CC_FILES = $(wildcard lib/*.cpp) + +security_asn1_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_asn1_HEADER_FILES_DIR = lib + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix new file mode 100644 index 00000000000..ab11d893d19 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix @@ -0,0 +1,14 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + __propagatedImpureHostDeps = [ + "/System/Library/Frameworks/Security.framework/Security" + "/System/Library/Frameworks/Security.framework/Resources" + "/System/Library/Frameworks/Security.framework/PlugIns" + "/System/Library/Frameworks/Security.framework/XPCServices" + "/System/Library/Frameworks/Security.framework/Versions" + ]; + propagatedBuildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile new file mode 100644 index 00000000000..91fb6bb679e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_client + +security_cdsa_client_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_client_HEADER_FILES_DIR = lib + +security_cdsa_client_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix new file mode 100644 index 00000000000..2ecad568bf7 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix @@ -0,0 +1,8 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurityd + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile new file mode 100644 index 00000000000..9e1260f9b9c --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_plugin + +security_cdsa_plugin_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_plugin_HEADER_FILES_DIR = lib + +security_cdsa_plugin_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix new file mode 100644 index 00000000000..b0c35f0e30c --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix @@ -0,0 +1,15 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_cssm, libsecurity_utilities, osx_private_sdk, perl }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + perl + ]; + patchPhase = '' + unpackFile ${libsecurity_cssm.src} + cp libsecurity_cssm*/lib/cssm{dli,aci,cli,cspi,tpi}.h lib + ''; + preBuild = '' + perl lib/generator.pl lib lib/generator.cfg lib lib || exit 1 + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile new file mode 100644 index 00000000000..24bc1fe7e3a --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile @@ -0,0 +1,13 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_utilities + +security_cdsa_utilities_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_utilities_HEADER_FILES_DIR = lib + +security_cdsa_utilities_CC_FILES = $(wildcard lib/*.cpp) lib/Schema.cpp lib/KeySchema.cpp + +lib/%.cpp: lib/%.m4 + m4 $< > $@ + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix new file mode 100644 index 00000000000..6f2436f2149 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix @@ -0,0 +1,13 @@ +{ CommonCrypto, appleDerivation, libsecurity_codesigning, libsecurity_utilities, m4, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + m4 + ]; + patchPhase = '' + patch -p1 < ${./handletemplates.patch} + unpackFile ${libsecurity_codesigning.src} + mv libsecurity_codesigning*/lib security_codesigning + ''; + NIX_CFLAGS_COMPILE = "-I${CommonCrypto}/include/CommonCrypto"; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch new file mode 100644 index 00000000000..e5a703b2a08 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch @@ -0,0 +1,19 @@ +--- a/lib/handletemplates.h 1969-12-31 16:00:01.000000000 -0800 ++++ b/lib/handletemplates.h 1969-12-31 16:00:01.000000000 -0800 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #if __GNUC__ > 2 + #include +@@ -129,7 +130,7 @@ + // @@@ Remove when 4003540 is fixed + template + static void findAllRefs(std::vector<_Handle> &refs) { +- state().findAllRefs(refs); ++ state().template findAllRefs(refs); + } + + protected: diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile new file mode 100644 index 00000000000..7b5b7dc186a --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile @@ -0,0 +1,13 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_utils + +security_cdsa_utils_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_utils_HEADER_FILES_DIR = lib + +security_cdsa_utils_CC_FILES = $(wildcard lib/*.cpp) + +lib/%.cpp: lib/%.m4 + m4 $< > $@ + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix new file mode 100644 index 00000000000..d9b594bc47c --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix @@ -0,0 +1,8 @@ +{ Security, appleDerivation, apple_sdk, cppcheck, libsecurity_cdsa_utilities, libsecurity_utilities, m4, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + m4 + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile new file mode 100644 index 00000000000..e923b962c26 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_codesigning + +security_codesigning_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_codesigning_HEADER_FILES_DIR = lib + +security_codesigning_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix new file mode 100644 index 00000000000..c5ba9cc8d7e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix @@ -0,0 +1,7 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + ]; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile new file mode 100644 index 00000000000..c7835aaa9b0 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cssm + +security_cssm_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cssm_HEADER_FILES_DIR = lib + +security_cssm_CC_FILES = $(wildcard lib/*.cpp) +security_cssm_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix new file mode 100644 index 00000000000..053dea134c7 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix @@ -0,0 +1,14 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_codesigning, libsecurity_utilities, perl }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurity_cdsa_client + perl + libsecurity_cdsa_plugin + ]; + preBuild = '' + mkdir derived_src + perl lib/generator.pl lib lib/generator.cfg derived_src + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile new file mode 100644 index 00000000000..4359810c56b --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_filedb + +security_filedb_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_filedb_HEADER_FILES_DIR = lib + +security_filedb_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix new file mode 100644 index 00000000000..86cc2a390db --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix @@ -0,0 +1,13 @@ +{ appleDerivation, apple_sdk, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurity_cdsa_plugin + ]; + patchPhase = '' + cp ${osx_private_sdk}/usr/local/include/sandbox_private.h . + substituteInPlace sandbox_private.h --replace '' '"${apple_sdk.sdk}/include/sandbox.h"' + substituteInPlace lib/AtomicFile.cpp --replace '' '"sandbox_private.h"' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix new file mode 100644 index 00000000000..a94b9b455ef --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix @@ -0,0 +1,58 @@ +{ appleDerivation_, applePackage, pkgs, stdenv }: +name: version: sha256: args: let + n = stdenv.lib.removePrefix "lib" name; + makeFile = ../. + builtins.toPath "/${name}/GNUmakefile"; + appleDerivation = appleDerivation_ name version sha256; + in applePackage name version sha256 (args // { + appleDerivation = a: + appleDerivation (stdenv.lib.mergeAttrsConcatenateValues { + __impureHostDeps = import ./impure_deps.nix; + + patchPhase = '' + # allows including + ln -s ${pkgs.darwin.osx_private_sdk}/System/Library/Frameworks/Security.framework/Versions/A/PrivateHeaders Security + + grep -Rl MacErrors.h . | while read file; do + substituteInPlace "''$file" --replace \ + '' \ + '"${pkgs.darwin.apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + done || true # grep returns 1 if it can't find the string + + grep -Rl MacTypes.h . | while read file; do + substituteInPlace "''$file" --replace \ + '' \ + '"${pkgs.darwin.apple_sdk.sdk}/include/MacTypes.h"' + done || true # grep returns 1 if it can't find the string + ''; + preBuild = '' + ln -s lib ${n} + makeFlagsArray=(-j''$NIX_BUILD_CORES) + ''; + buildInputs = [ + pkgs.gnustep-make + ]; + makeFlags = [ + "-f${makeFile}" + "MAKEFILE_NAME=${makeFile}" + "GNUSTEP_ABSOLUTE_INSTALL_PATHS=yes" + "LIB_LINK_INSTALL_DIR=\$(out)/lib" + ]; + installFlags = [ + "${n}_INSTALL_DIR=\$(out)/lib" + "${n}_HEADER_FILES_INSTALL_DIR=\$(out)/include/${n}" + "GNUSTEP_HEADERS=" + ]; + NIX_CFLAGS_COMPILE = [ + "-isystem lib" + "-iframework ${pkgs.darwin.Security}/Library/Frameworks" + "-I." + "-Wno-deprecated-declarations" + ]; + NIX_LDFLAGS = with pkgs.darwin; with apple_sdk.frameworks; [ + "-L${libobjc}/lib" + "-F${Foundation}/Library/Frameworks" + "-F${AppKit}/Library/Frameworks" + "-no_dtrace_dof" + ]; + } a); + }) diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix new file mode 100644 index 00000000000..7725b9f3d1a --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix @@ -0,0 +1,129 @@ +# generated using a ruby script +[ + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" + "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" + "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" + "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" + "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" + "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" + "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" + "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" + "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" + "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" + "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" + "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" + "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" + "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" + "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" + "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" + "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" + "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" + "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" + "/System/Library/Frameworks/Security.framework/Versions/A/Security" + "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" + "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" + "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" +] diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile new file mode 100644 index 00000000000..8830006f00e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_keychain + +security_keychain_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_keychain_HEADER_FILES_DIR = lib + +security_keychain_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix new file mode 100644 index 00000000000..de97950b765 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix @@ -0,0 +1,47 @@ +{ CF, Security, appleDerivation, apple_sdk, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_ocspd, libsecurity_pkcs12, libsecurity_utilities, libsecurityd, openssl, osx_private_sdk, security_dotmac_tp }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_client + libsecurity_cdsa_utilities + libsecurityd + CF + libsecurity_asn1 + libsecurity_pkcs12 + libsecurity_cdsa_utils + openssl + libsecurity_ocspd + security_dotmac_tp + ]; + patchPhase = '' + substituteInPlace lib/Keychains.cpp --replace DLDbListCFPref.h DLDBListCFPref.h + + substituteInPlace lib/SecCertificate.cpp --replace '#include ' "" + + cp ${osx_private_sdk}/usr/include/xpc/private.h xpc + cp ${apple_sdk.sdk}/include/xpc/*.h xpc + cp ${osx_private_sdk}/usr/local/include/sandbox_private.h lib/sandbox.h + + substituteInPlace lib/SecItemPriv.h \ + --replace "extern CFTypeRef kSecAttrAccessGroup" "extern const CFTypeRef kSecAttrAccessGroup" \ + --replace "extern CFTypeRef kSecAttrIsSensitive" "extern const CFTypeRef kSecAttrIsSensitive" \ + --replace "extern CFTypeRef kSecAttrIsExtractable" "extern const CFTypeRef kSecAttrIsExtractable" + + substituteInPlace lib/Keychains.cpp --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + + substituteInPlace lib/CertificateValues.cpp --replace \ + '#include ' "" + + substituteInPlace lib/DLDBListCFPref.cpp --replace \ + 'dispatch_once_t AppSandboxChecked;' ''$'namespace Security {\ndispatch_once_t AppSandboxChecked;' \ + --replace 'return mLoginDLDbIdentifier;' 'return mLoginDLDbIdentifier; }' \ + --replace '_xpc_runtime_is_app_sandboxed()' 'false' + # hope that doesn't hurt anything + + substituteInPlace lib/KCEventNotifier.h --replace \ + 'CoreFoundation/CFNotificationCenter.h' \ + '${apple_sdk.sdk}/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/CFNotificationCenter.h' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile new file mode 100644 index 00000000000..119a43621fb --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_mds + +security_mds_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_mds_HEADER_FILES_DIR = lib + +security_mds_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix new file mode 100644 index 00000000000..cd691f71e95 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix @@ -0,0 +1,11 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_filedb + libsecurity_utilities + libsecurity_cdsa_client + libsecurityd + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile new file mode 100644 index 00000000000..140c5a909a6 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_ocspd + +security_ocspd_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_ocspd_HEADER_FILES_DIR = lib + +security_ocspd_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix new file mode 100644 index 00000000000..25701442d2b --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix @@ -0,0 +1,20 @@ +{ appleDerivation, bootstrap_cmds, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + bootstrap_cmds + ]; + postUnpack = '' + pushd libsecurity* + ls -lah + mkdir -p lib + cp common/* lib + cp client/* lib + popd + ''; + preBuild = '' + make -f mig/mig.mk SRCROOT=. BUILT_PRODUCTS_DIR=. || exit 1 + cp derived_src/* lib + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile new file mode 100644 index 00000000000..b2af7e72c41 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_pkcs12 + +security_pkcs12_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_pkcs12_HEADER_FILES_DIR = lib + +security_pkcs12_CC_FILES = $(wildcard lib/*.cpp) +security_pkcs12_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix new file mode 100644 index 00000000000..f84c2d8963f --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix @@ -0,0 +1,15 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_utils, libsecurity_keychain, osx_private_sdk }: +appleDerivation { + patchPhase = '' + substituteInPlace lib/pkcsoids.h --replace '#error' '#warning' + ''; + preBuild = '' + unpackFile ${libsecurity_keychain.src} + mv libsecurity_keychain*/lib security_keychain + ''; + buildInputs = [ + libsecurity_asn1 + libsecurity_cdsa_utils + libsecurity_cdsa_client + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile new file mode 100644 index 00000000000..47a1c609d06 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_sd_cspdl + +security_sd_cspdl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_sd_cspdl_HEADER_FILES_DIR = lib + +security_sd_cspdl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix new file mode 100644 index 00000000000..22491091661 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix @@ -0,0 +1,10 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurityd + libsecurity_cdsa_client + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile new file mode 100644 index 00000000000..d3ba09142c9 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_utilities + +security_utilities_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_utilities_HEADER_FILES_DIR = lib + +security_utilities_C_FILES = $(wildcard lib/*.c) +security_utilities_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix new file mode 100644 index 00000000000..8cc74e2210f --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix @@ -0,0 +1,23 @@ +{ IOKit, appleDerivation, apple_sdk, libauto, libobjc, libsecurity_codesigning, osx_private_sdk, sqlite, stdenv }: +appleDerivation { + buildInputs = [ + libauto + libobjc + IOKit + sqlite + apple_sdk.frameworks.PCSC + ]; + patchPhase = '' + substituteInPlace lib/errors.h --replace \ + '' \ + '"MacTypes.h"' + substituteInPlace lib/debugging.cpp --replace PATH_MAX 1024 + substituteInPlace lib/superblob.h --replace 'result->at' 'result->template at' + substituteInPlace lib/ccaudit.cpp --replace '' '"bsm/libbsm.h"' + + cp ${osx_private_sdk}/usr/include/security_utilities/utilities_dtrace.h lib + cp -R ${osx_private_sdk}/usr/local/include/bsm lib + '' + stdenv.lib.optionalString (!stdenv.cc.nativeLibc) '' + substituteInPlace lib/vproc++.cpp --replace /usr/local/include/vproc_priv.h ${stdenv.libc}/include/vproc_priv.h + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile new file mode 100644 index 00000000000..6058043e79f --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = securityd + +securityd_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +securityd_HEADER_FILES_DIR = lib + +securityd_CC_FILES = $(wildcard lib/*.cpp) +securityd_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix new file mode 100644 index 00000000000..d311f678337 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix @@ -0,0 +1,23 @@ +{ appleDerivation, bootstrap_cmds, libsecurity_cdsa_client, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + bootstrap_cmds + ]; + patchPhase = '' + unpackFile ${libsecurity_cdsa_client.src} + mv libsecurity_cdsa_client*/lib security_cdsa_client + ln -s lib securityd_client + + patch -p1 < ${./xdr-arity.patch} + ''; + preBuild = '' + make -f mig/mig.mk SRCROOT=. BUILT_PRODUCTS_DIR=. + cp derived_src/* lib + rm lib/ucspClientC.c + ''; + postInstall = '' + ln -s ''$out/include/securityd ''$out/include/securityd_client + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch new file mode 100644 index 00000000000..5d0328629f1 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch @@ -0,0 +1,79 @@ +diff --git a/lib/sec_xdr.c b/lib/sec_xdr.c +index fe5f038..6239b6c 100644 +--- a/lib/sec_xdr.c ++++ b/lib/sec_xdr.c +@@ -223,7 +223,7 @@ bool_t copyin(void *data, xdrproc_t proc, void** copy, u_int *size) + sec_xdrmem_create(&xdr, (char *)xdr_data, length, XDR_ENCODE); + + // cast to void* - function can go both ways (xdr->x_op) +- if (proc(&xdr, data)) { ++ if (proc(&xdr, data, 0)) { + *copy = xdr_data; + if (size) *size = length; + return (TRUE); +@@ -261,7 +261,7 @@ bool_t copyout(const void *copy, u_int size, xdrproc_t proc, void **data, u_int + if (!sec_xdr_arena_init(&arena, &xdr, length_out ? length_out : length_required, length_out ? *data : NULL)) + return (FALSE); + +- if (proc(&xdr, data)) ++ if (proc(&xdr, data, 0)) + { + *length = length_required; + return (TRUE); +@@ -284,7 +284,7 @@ bool_t copyout_chunked(const void *copy, u_int size, xdrproc_t proc, void **data + + void *data_out = NULL; + +- if (proc(&xdr, &data_out)) ++ if (proc(&xdr, &data_out, 0)) + { + *data = data_out; + return (TRUE); +diff --git a/lib/sec_xdr_array.c b/lib/sec_xdr_array.c +index 152a71b..e5ec1ad 100644 +--- a/lib/sec_xdr_array.c ++++ b/lib/sec_xdr_array.c +@@ -147,7 +147,7 @@ sec_xdr_array(XDR *xdrs, uint8_t **addrp, u_int *sizep, u_int maxsize, u_int els + for (i = 0; (i < c) && stat; i++) { + if ((xdrs->x_op == XDR_DECODE) && sizeof_alloc) + memset(obj, 0, elsize); +- stat = (*elproc)(xdrs, target); ++ stat = (*elproc)(xdrs, target, 0); + if ((xdrs->x_op == XDR_ENCODE) || !sizeof_alloc) + target += elsize; + } +diff --git a/lib/sec_xdr_reference.c b/lib/sec_xdr_reference.c +index a66fb37..ab5b4c4 100644 +--- a/lib/sec_xdr_reference.c ++++ b/lib/sec_xdr_reference.c +@@ -121,7 +121,7 @@ sec_xdr_reference(XDR *xdrs, uint8_t **pp, u_int size, xdrproc_t proc) + break; + } + +- stat = (*proc)(xdrs, loc); ++ stat = (*proc)(xdrs, loc, 0); + + if (xdrs->x_op == XDR_FREE) { + sec_mem_free(xdrs, loc, size); +diff --git a/lib/sec_xdr_sizeof.c b/lib/sec_xdr_sizeof.c +index a18bcd0..8c33dbc 100644 +--- a/lib/sec_xdr_sizeof.c ++++ b/lib/sec_xdr_sizeof.c +@@ -190,7 +190,7 @@ sec_xdr_sizeof_in(func, data) + + sec_xdr_arena_allocator_t size_alloc; + sec_xdr_arena_init_size_alloc(&size_alloc, &x); +- stat = func(&x, data); ++ stat = func(&x, data, 0); + if (x.x_private) + free(x.x_private); + return (stat == TRUE ? (unsigned) x.x_handy: 0); +@@ -210,7 +210,7 @@ sec_xdr_sizeof_out(copy, size, func, data) + + sec_xdr_arena_allocator_t size_alloc; + sec_xdr_arena_init_size_alloc(&size_alloc, &x); +- stat = func(&x, data); ++ stat = func(&x, data, 0); + if (size_alloc.data) + free(size_alloc.data); + return (stat == TRUE ? (unsigned long)size_alloc.offset : 0); diff --git a/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile new file mode 100644 index 00000000000..6f6a50bd57a --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile @@ -0,0 +1,8 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_dotmac_tp + +security_dotmac_tp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_dotmac_tp_HEADER_FILES_DIR = lib + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix new file mode 100644 index 00000000000..bfbfb945957 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix @@ -0,0 +1,4 @@ +{ appleDerivation }: + +appleDerivation { +} diff --git a/pkgs/os-specific/darwin/osx-private-sdk/default.nix b/pkgs/os-specific/darwin/osx-private-sdk/default.nix index 85e1dc50f35..febcb6b5d0c 100644 --- a/pkgs/os-specific/darwin/osx-private-sdk/default.nix +++ b/pkgs/os-specific/darwin/osx-private-sdk/default.nix @@ -1,34 +1,16 @@ -{ stdenv, fetchFromGitHub, python, osx_sdk }: +{ stdenv, fetchzip }: -let - sdkVersion = "10.9"; -in stdenv.mkDerivation { - name = "PrivateMacOSX${sdkVersion}.sdk"; - - src = fetchFromGitHub { - owner = "copumpkin"; - repo = "OSXPrivateSDK"; - rev = "bde9cba13e6ae62a8e4e0f405008ea719526e7ad"; - sha256 = "1vj3fxwp32irxjk987p7a223sm5bl5rrlajcvgy69k0wb0fp0krc"; - }; - - buildInputs = [ python ]; - - configurePhase = "true"; - - buildPhase = '' - python PrivateSDK.py -i ${osx_sdk}/Developer/SDKs/MacOSX${sdkVersion}.sdk -o PrivateMacOSX${sdkVersion}.sdk - ''; - - installPhase = '' - mkdir -p $out/Developer/SDKs/ - mv PrivateMacOSX${sdkVersion}.sdk $out/Developer/SDKs - ''; - - meta = with stdenv.lib; { - description = "A private Mac OS ${sdkVersion} SDK, suitable for building many of Apple's open source releases"; - maintainers = with maintainers; [ copumpkin ]; - platforms = platforms.darwin; - license = licenses.unfree; - }; +let full = stdenv.lib.overrideDerivation (fetchzip { + url = "https://github.com/samdmarshall/OSXPrivateSDK/tarball/69bf3c7f7140ed6ab2b6684b427bd457209858fe"; + name = "osx-private-sdk-10.9"; + sha256 = "1agl4kyry6m7yz3sql5mrbvmd1xkmb4nbq976phcpk19inans1zm"; +}) (drv: { + postFetch = '' + unpackFile() { + tar xzf "$1" + } + '' + drv.postFetch; +}); in { + outPath = "${full}/PrivateSDK10.9"; + passthru.sdk10 = "${full}/PrivateSDK10.10"; } diff --git a/pkgs/os-specific/darwin/osx-sdk/default.nix b/pkgs/os-specific/darwin/osx-sdk/default.nix index 612bf003743..875479b4f29 100644 --- a/pkgs/os-specific/darwin/osx-sdk/default.nix +++ b/pkgs/os-specific/darwin/osx-sdk/default.nix @@ -2,7 +2,7 @@ let version = "10.9"; -in stdenv.mkDerivation { +in stdenv.mkDerivation rec { name = "MacOSX10.9.sdk"; src = "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk"; @@ -23,4 +23,4 @@ in stdenv.mkDerivation { platforms = platforms.darwin; license = licenses.unfree; }; -} \ No newline at end of file +} diff --git a/pkgs/os-specific/darwin/security-tool/GNUmakefile b/pkgs/os-specific/darwin/security-tool/GNUmakefile new file mode 100644 index 00000000000..ae25f6a67c0 --- /dev/null +++ b/pkgs/os-specific/darwin/security-tool/GNUmakefile @@ -0,0 +1,14 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +TOOL_NAME = security +security_C_FILES = $(wildcard *.c) +security_CC_FILES = $(wildcard *.cpp) + +security_LDFLAGS = \ + -lsecurity_cdsa_utilities -lsecurity_cdsa_utils -lsecurity_keychain -lsecurity_cssm \ + -lsecurity_cdsa_client -lsecurity_utilities -lsecurity_asn1 -lsecurity_mds \ + -lsecurity_cdsa_plugin -lsecurity_pkcs12 -lsecurity_apple_csp -lsecurity_apple_cspdl \ + -lsecurity_apple_file_dl -lsecurity_apple_x509_cl -lsecurity_apple_x509_tp \ + -lsecurity_sd_cspdl -lsecurity_filedb -lsecurityd -framework Security -framework PCSC + +include $(GNUSTEP_MAKEFILES)/tool.make diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index 49d61f392c5..ac495b63c0a 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -1,30 +1,85 @@ -{ stdenv, fetchurl, osx_private_sdk }: +{ CoreServices, Foundation, PCSC, Security, apple_sdk, fetchurl, gnustep-make, libobjc, libsecurity_apple_csp, libsecurity_apple_cspdl, libsecurity_apple_file_dl, libsecurity_apple_x509_cl, libsecurity_apple_x509_tp, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_cssm, libsecurity_filedb, libsecurity_keychain, libsecurity_mds, libsecurity_pkcs12, libsecurity_sd_cspdl, libsecurity_utilities, libsecurityd, osx_private_sdk, stdenv }: stdenv.mkDerivation rec { - version = "55115"; - name = "SecurityTool-${version}"; + version = "55115"; + name = "SecurityTool-${version}"; src = fetchurl { url = "http://opensource.apple.com/tarballs/SecurityTool/SecurityTool-${version}.tar.gz"; sha256 = "0apcz4vy2z5645jhrs60wj3w27mncjjqv42h5lln36g6qs2n9113"; }; - configurePhase = ""; + __propagatedImpureHostDeps = import ./impure-deps.nix; - # Someday we shall purge this impurity! - buildPhase = '' - /usr/bin/xcodebuild SDKROOT=${osx_private_sdk}/Developer/SDKs/PrivateMacOSX10.9.sdk/ + patchPhase = '' + # copied from libsecurity_generic + ln -s ${osx_private_sdk}/System/Library/Frameworks/Security.framework/Versions/A/PrivateHeaders Security + + substituteInPlace cmsutil.c --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + substituteInPlace createFVMaster.c --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + ''; + + postUnpack = '' + unpackFile ${Security.src} + cp Security-*/utilities/src/fileIo.c SecurityTool* + cp Security-*/utilities/src/fileIo.h SecurityTool* ''; - installPhase = '' - mkdir -p $out/bin/ - cp build/Release/security $out/bin + preBuild = '' + makeFlagsArray=(-j''$NIX_BUILD_CORES) ''; + NIX_LDFLAGS = "-no_dtrace_dof"; + + makeFlags = "-f ${./GNUmakefile} MAKEFILE_NAME=${./GNUmakefile}"; + + installFlags = [ + "security_INSTALL_DIR=\$(out)/bin" + ]; + + buildInputs = [ + gnustep-make + Security + Foundation + libsecurity_asn1 + libsecurity_utilities + libsecurity_cdsa_utilities + libobjc + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_cssm + libsecurity_cdsa_utils + libsecurity_mds + libsecurity_cdsa_plugin + libsecurity_apple_csp + libsecurity_apple_cspdl + libsecurity_apple_file_dl + libsecurity_apple_x509_cl + libsecurity_apple_x509_tp + libsecurity_pkcs12 + libsecurity_sd_cspdl + libsecurity_filedb + libsecurityd + ]; + + NIX_CFLAGS_COMPILE = [ + "-F${Security}/Library/Frameworks" + "-F${PCSC}/Library/Frameworks" + "-Wno-deprecated-declarations" + ]; + meta = with stdenv.lib; { description = "Command line interface to Mac OS X keychains and Security framework"; - maintainers = with maintainers; [ copumpkin ]; - platforms = platforms.darwin; - license = licenses.apsl20; + maintainers = with maintainers; [ + copumpkin + joelteon + ]; + platforms = platforms.darwin; + license = licenses.apsl20; }; -} \ No newline at end of file +} + diff --git a/pkgs/os-specific/darwin/security-tool/impure-deps.nix b/pkgs/os-specific/darwin/security-tool/impure-deps.nix new file mode 100644 index 00000000000..0d9da595349 --- /dev/null +++ b/pkgs/os-specific/darwin/security-tool/impure-deps.nix @@ -0,0 +1,129 @@ +[ + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" + "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" + "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" + "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" + "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" + "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" + "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" + "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" + "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" + "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" + "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" + "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" + "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" + "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" + "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" + "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" + "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" + "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" + "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" + "/System/Library/Frameworks/PCSC.framework/Versions/A/PCSC" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" + "/System/Library/Frameworks/Security.framework/Versions/A/Security" + "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" + "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" + "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2736481473e..7b620f174b6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9348,9 +9348,9 @@ let xcode = callPackage ../os-specific/darwin/xcode {}; osx_sdk = callPackage ../os-specific/darwin/osx-sdk {}; - osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk { inherit osx_sdk; }; + osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk {}; - security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; }; + security_tool = (newScope (darwin.apple_sdk.frameworks // darwin)) ../os-specific/darwin/security-tool { }; binutils = callPackage ../os-specific/darwin/binutils { inherit cctools; }; @@ -9364,6 +9364,12 @@ let libobjc = apple-source-releases.objc4; }; + gnustep-make = callPackage ../development/tools/build-managers/gnustep/make {}; + gnustep-xcode = callPackage ../development/tools/build-managers/gnustep/xcode { + inherit (darwin.apple_sdk.frameworks) Foundation; + inherit (darwin) libobjc; + }; + devicemapper = lvm2; disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; -- cgit 1.4.1