From d7591c44f0822c2af772dbcc6e3f0bcca97fe857 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 4 Jul 2018 15:01:00 -0400 Subject: [PATCH 1/5] apple_sdk.frameworks.Ruby: remove This was broken & apparently unused. --- pkgs/os-specific/darwin/apple-sdk/frameworks.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index f8c424089f0..9e47b8d02fd 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -86,7 +86,6 @@ with frameworks; with libs; { QTKit = [ CoreMediaIO CoreMedia MediaToolbox QuickTime VideoToolbox ]; QuickLook = [ ApplicationServices CF ]; QuickTime = [ ApplicationServices AudioUnit Carbon CoreAudio CoreServices OpenGL QuartzCore ]; - Ruby = []; SceneKit = []; ScreenSaver = []; Scripting = []; From 1dca19f057dbb60bafb0f572e7c343c13666ba50 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 4 Jul 2018 15:02:07 -0400 Subject: [PATCH 2/5] libuv: remove frameworks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It’s not a good idea to rely on apple’s sdk for such a core library in Nixpkgs. I have made a patch to libuv to make these frameworks optional. There is also a pull request here: https://github.com/libuv/libuv/pull/1909 --- pkgs/development/libraries/libuv/default.nix | 6 +- .../make-apple-frameworks-optional.patch | 176 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +- 3 files changed, 180 insertions(+), 6 deletions(-) create mode 100644 pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index 4dc601745a4..f45001c21fe 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,5 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig -, ApplicationServices, CoreServices }: +{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig }: stdenv.mkDerivation rec { version = "1.20.3"; @@ -12,6 +11,8 @@ stdenv.mkDerivation rec { sha256 = "1a8a679wni560z7x6w5i431vh2g0f34cznflcn52klx1vwcggrg7"; }; + patches = [ ./make-apple-frameworks-optional.patch ]; + postPatch = let toDisable = [ "getnameinfo_basic" "udp_send_hang_loop" # probably network-dependent @@ -27,7 +28,6 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ automake autoconf libtool pkgconfig ]; - buildInputs = stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices CoreServices ]; preConfigure = '' LIBTOOLIZE=libtoolize ./autogen.sh diff --git a/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch b/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch new file mode 100644 index 00000000000..195fcbf0339 --- /dev/null +++ b/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch @@ -0,0 +1,176 @@ +From 6d03644817fb263489dc9fdf550bf1fac274fd8f Mon Sep 17 00:00:00 2001 +From: Matthew Bauer +Date: Wed, 4 Jul 2018 14:49:33 -0400 +Subject: [PATCH] Make apple frameworks optional +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Previously, you had to have the apple sdk frameworks downloaded to +build on “Darwin”. There are certain cases where this is not desired, +so an Autoconf conditional is added to check for their availability. +When they are not available, proctitle & fsevents are unavailable. + +These frameworks are proprietary- owned and developed by Apple Inc. +They have never been released publically so we should not make +everyone use it in a core library like libuv. +--- + configure.ac | 2 ++ + src/unix/darwin-proctitle.c | 8 +++----- + src/unix/fsevents.c | 6 +++--- + test/test-list.h | 12 ++++++++++++ + 4 files changed, 20 insertions(+), 8 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c3a6a779..2df943c0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -69,4 +69,6 @@ AS_CASE([$host_os],[mingw*], [ + AS_CASE([$host_os], [netbsd*], [AC_CHECK_LIB([kvm], [kvm_open])]) + AC_CHECK_HEADERS([sys/ahafs_evProds.h]) + AC_CONFIG_FILES([Makefile libuv.pc]) ++AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h) ++AC_CHECK_HEADERS(CoreServices/CoreServices.h) + AC_OUTPUT +diff --git a/src/unix/darwin-proctitle.c b/src/unix/darwin-proctitle.c +index dabde223..f5506a32 100644 +--- a/src/unix/darwin-proctitle.c ++++ b/src/unix/darwin-proctitle.c +@@ -26,9 +26,7 @@ + #include + #include + +-#include +- +-#if !TARGET_OS_IPHONE ++#if HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H + # include + # include + #endif +@@ -58,7 +56,7 @@ static int uv__pthread_setname_np(const char* name) { + + + int uv__set_process_title(const char* title) { +-#if TARGET_OS_IPHONE ++#if !HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H + return uv__pthread_setname_np(title); + #else + CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef, +@@ -205,5 +203,5 @@ out: + dlclose(application_services_handle); + + return err; +-#endif /* !TARGET_OS_IPHONE */ ++#endif /* !HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H */ + } +diff --git a/src/unix/fsevents.c b/src/unix/fsevents.c +index ee45299b..3135e738 100644 +--- a/src/unix/fsevents.c ++++ b/src/unix/fsevents.c +@@ -21,7 +21,7 @@ + #include "uv.h" + #include "internal.h" + +-#if TARGET_OS_IPHONE ++#if !HAVE_CORESERVICES_CORESERVICES_H + + /* iOS (currently) doesn't provide the FSEvents-API (nor CoreServices) */ + +@@ -38,7 +38,7 @@ int uv__fsevents_close(uv_fs_event_t* handle) { + void uv__fsevents_loop_delete(uv_loop_t* loop) { + } + +-#else /* TARGET_OS_IPHONE */ ++#else /* !HAVE_CORESERVICES_CORESERVICES_H */ + + #include + #include +@@ -916,4 +916,4 @@ int uv__fsevents_close(uv_fs_event_t* handle) { + return 0; + } + +-#endif /* TARGET_OS_IPHONE */ ++#endif /* !HAVE_CORESERVICES_CORESERVICES_H */ +diff --git a/test/test-list.h b/test/test-list.h +index e59c6b65..160f6b36 100644 +--- a/test/test-list.h ++++ b/test/test-list.h +@@ -229,7 +229,9 @@ TEST_DECLARE (get_passwd) + TEST_DECLARE (handle_fileno) + TEST_DECLARE (homedir) + TEST_DECLARE (tmpdir) ++#if !__APPLE__ + TEST_DECLARE (hrtime) ++#endif + TEST_DECLARE (getaddrinfo_fail) + TEST_DECLARE (getaddrinfo_fail_sync) + TEST_DECLARE (getaddrinfo_basic) +@@ -306,6 +308,7 @@ TEST_DECLARE (fs_futime) + TEST_DECLARE (fs_file_open_append) + TEST_DECLARE (fs_stat_missing_path) + TEST_DECLARE (fs_read_file_eof) ++#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H + TEST_DECLARE (fs_event_watch_dir) + TEST_DECLARE (fs_event_watch_dir_recursive) + #ifdef _WIN32 +@@ -327,6 +330,7 @@ TEST_DECLARE (fs_event_close_in_callback) + TEST_DECLARE (fs_event_start_and_close) + TEST_DECLARE (fs_event_error_reporting) + TEST_DECLARE (fs_event_getpath) ++#endif + TEST_DECLARE (fs_scandir_empty_dir) + TEST_DECLARE (fs_scandir_non_existent_dir) + TEST_DECLARE (fs_scandir_file) +@@ -426,9 +430,11 @@ TEST_DECLARE (fork_socketpair) + TEST_DECLARE (fork_socketpair_started) + TEST_DECLARE (fork_signal_to_child) + TEST_DECLARE (fork_signal_to_child_closed) ++#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H + TEST_DECLARE (fork_fs_events_child) + TEST_DECLARE (fork_fs_events_child_dir) + TEST_DECLARE (fork_fs_events_file_parent_child) ++#endif + #ifndef __MVS__ + TEST_DECLARE (fork_threadpool_queue_work_simple) + #endif +@@ -721,7 +727,9 @@ TASK_LIST_START + + TEST_ENTRY (tmpdir) + ++#if !__APPLE__ + TEST_ENTRY (hrtime) ++#endif + + TEST_ENTRY_CUSTOM (getaddrinfo_fail, 0, 0, 10000) + TEST_ENTRY_CUSTOM (getaddrinfo_fail_sync, 0, 0, 10000) +@@ -851,6 +859,7 @@ TASK_LIST_START + TEST_ENTRY (fs_stat_missing_path) + TEST_ENTRY (fs_read_file_eof) + TEST_ENTRY (fs_file_open_append) ++#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H + TEST_ENTRY (fs_event_watch_dir) + TEST_ENTRY (fs_event_watch_dir_recursive) + #ifdef _WIN32 +@@ -872,6 +881,7 @@ TASK_LIST_START + TEST_ENTRY (fs_event_start_and_close) + TEST_ENTRY (fs_event_error_reporting) + TEST_ENTRY (fs_event_getpath) ++#endif + TEST_ENTRY (fs_scandir_empty_dir) + TEST_ENTRY (fs_scandir_non_existent_dir) + TEST_ENTRY (fs_scandir_file) +@@ -921,9 +931,11 @@ TASK_LIST_START + TEST_ENTRY (fork_socketpair_started) + TEST_ENTRY (fork_signal_to_child) + TEST_ENTRY (fork_signal_to_child_closed) ++#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H + TEST_ENTRY (fork_fs_events_child) + TEST_ENTRY (fork_fs_events_child_dir) + TEST_ENTRY (fork_fs_events_file_parent_child) ++#endif + #ifndef __MVS__ + TEST_ENTRY (fork_threadpool_queue_work_simple) + #endif +-- +2.17.1 + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dfa2a3b6696..2148b2f22a2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10683,9 +10683,7 @@ with pkgs; then darwin.libunwind else callPackage ../development/libraries/libunwind { }; - libuv = callPackage ../development/libraries/libuv { - inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; - }; + libuv = callPackage ../development/libraries/libuv { }; libv4l = lowPrio (v4l_utils.override { withUtils = false; From e8303d2baf730dbd73f8f5b06a878c525d55b2b2 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 4 Jul 2018 15:05:54 -0400 Subject: [PATCH 3/5] libuv: reenable tests on macOS I want these tests to run because libuv is very important to lots of things in Nixpkgs. I have a very large list of tests to disable for now just to be on the safe side. For the record this is definitely a libuv issue - their tests should be robust - but this is a safety precaution for now. --- pkgs/development/libraries/libuv/default.nix | 23 +++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index f45001c21fe..cc92ff3fdd5 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -20,8 +20,22 @@ stdenv.mkDerivation rec { "getaddrinfo_fail" "getaddrinfo_fail_sync" "threadpool_multiple_event_loops" # times out on slow machines ] - # sometimes: timeout (no output), failed uv_listen - ++ stdenv.lib.optionals stdenv.isDarwin [ "process_title" "emfile" ]; + # Sometimes: timeout (no output), failed uv_listen. Someone + # should report these failures to libuv team. There tests should + # be much more robust. + ++ stdenv.lib.optionals stdenv.isDarwin [ + "process_title" "emfile" "poll_duplex" "poll_unidirectional" + "ipc_listen_before_write" "ipc_listen_after_write" "ipc_tcp_connection" + "tcp_alloc_cb_fail" "tcp_ping_pong" "tcp_ref3" "tcp_ref4" + "tcp_bind6_error_inval" "tcp_bind6_error_addrinuse" "tcp_read_stop" + "tcp_unexpected_read" "tcp_write_to_half_open_connection" + "tcp_oob" "tcp_close_accept" "tcp_create_early_accept" + "tcp_create_early" "tcp_close" "tcp_bind_error_inval" + "tcp_bind_error_addrinuse" "tcp_shutdown_after_write" + "tcp_open" "tcp_write_queue_order" "tcp_try_write" "tcp_writealot" + "multiple_listen" "delayed_accept" + "shutdown_close_tcp" "shutdown_eof" "shutdown_twice" "callback_stack" + ]; tdRegexp = lib.concatStringsSep "\\|" toDisable; in lib.optionalString doCheck '' sed '/${tdRegexp}/d' -i test/test-list.h @@ -35,10 +49,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - # These should be turned back on, but see https://github.com/NixOS/nixpkgs/issues/23651 - # For now the tests are just breaking large swaths of the nixpkgs binary cache for Darwin, - # and I'd rather have everything else work at all than have stronger assurance here. - doCheck = !stdenv.isDarwin; + doCheck = true; meta = with lib; { description = "A multi-platform support library with a focus on asynchronous I/O"; From c7ab795274fab9206de81f4ad81bc544d2c9fd1b Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 4 Jul 2018 15:08:35 -0400 Subject: [PATCH 4/5] darwin.security_tool: disallow requiring sdk As requested by @domenkozar --- pkgs/os-specific/darwin/apple-sdk/default.nix | 2 ++ pkgs/os-specific/darwin/security-tool/default.nix | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix index d4a48b9c372..c23a2148143 100644 --- a/pkgs/os-specific/darwin/apple-sdk/default.nix +++ b/pkgs/os-specific/darwin/apple-sdk/default.nix @@ -71,6 +71,8 @@ let # because we copy files from the system preferLocalBuild = true; + disallowedRequisites = [ sdk ]; + installPhase = '' linkFramework() { local path="$1" diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index ff35c292890..4566d82835f 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -15,6 +15,8 @@ stdenv.mkDerivation rec { sha256 = "0apcz4vy2z5645jhrs60wj3w27mncjjqv42h5lln36g6qs2n9113"; }; + disallowedRequisites = [ apple_sdk.sdk ]; + patchPhase = '' # copied from libsecurity_generic cp -R ${osx_private_sdk}/include/SecurityPrivateHeaders Security @@ -97,4 +99,3 @@ stdenv.mkDerivation rec { license = licenses.apsl20; }; } - From 620238009444730c3ad5aa419248fa698626f49a Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Thu, 5 Jul 2018 12:18:02 -0400 Subject: [PATCH 5/5] libuv: use fetchpatch for apple patch --- pkgs/development/libraries/libuv/default.nix | 9 +- .../make-apple-frameworks-optional.patch | 176 ------------------ 2 files changed, 7 insertions(+), 178 deletions(-) delete mode 100644 pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index cc92ff3fdd5..4758591e929 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig }: +{ stdenv, lib, fetchpatch, fetchFromGitHub, autoconf, automake, libtool, pkgconfig }: stdenv.mkDerivation rec { version = "1.20.3"; @@ -11,7 +11,12 @@ stdenv.mkDerivation rec { sha256 = "1a8a679wni560z7x6w5i431vh2g0f34cznflcn52klx1vwcggrg7"; }; - patches = [ ./make-apple-frameworks-optional.patch ]; + patches = [ + (fetchpatch { + url = "https://github.com/libuv/libuv/pull/1909.patch"; + sha256 = "1s2692h4dvqnzwwicrkpj0zph1i2bhv39w31z5vh7ssgvykaradj"; + }) + ]; postPatch = let toDisable = [ diff --git a/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch b/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch deleted file mode 100644 index 195fcbf0339..00000000000 --- a/pkgs/development/libraries/libuv/make-apple-frameworks-optional.patch +++ /dev/null @@ -1,176 +0,0 @@ -From 6d03644817fb263489dc9fdf550bf1fac274fd8f Mon Sep 17 00:00:00 2001 -From: Matthew Bauer -Date: Wed, 4 Jul 2018 14:49:33 -0400 -Subject: [PATCH] Make apple frameworks optional -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Previously, you had to have the apple sdk frameworks downloaded to -build on “Darwin”. There are certain cases where this is not desired, -so an Autoconf conditional is added to check for their availability. -When they are not available, proctitle & fsevents are unavailable. - -These frameworks are proprietary- owned and developed by Apple Inc. -They have never been released publically so we should not make -everyone use it in a core library like libuv. ---- - configure.ac | 2 ++ - src/unix/darwin-proctitle.c | 8 +++----- - src/unix/fsevents.c | 6 +++--- - test/test-list.h | 12 ++++++++++++ - 4 files changed, 20 insertions(+), 8 deletions(-) - -diff --git a/configure.ac b/configure.ac -index c3a6a779..2df943c0 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -69,4 +69,6 @@ AS_CASE([$host_os],[mingw*], [ - AS_CASE([$host_os], [netbsd*], [AC_CHECK_LIB([kvm], [kvm_open])]) - AC_CHECK_HEADERS([sys/ahafs_evProds.h]) - AC_CONFIG_FILES([Makefile libuv.pc]) -+AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h) -+AC_CHECK_HEADERS(CoreServices/CoreServices.h) - AC_OUTPUT -diff --git a/src/unix/darwin-proctitle.c b/src/unix/darwin-proctitle.c -index dabde223..f5506a32 100644 ---- a/src/unix/darwin-proctitle.c -+++ b/src/unix/darwin-proctitle.c -@@ -26,9 +26,7 @@ - #include - #include - --#include -- --#if !TARGET_OS_IPHONE -+#if HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H - # include - # include - #endif -@@ -58,7 +56,7 @@ static int uv__pthread_setname_np(const char* name) { - - - int uv__set_process_title(const char* title) { --#if TARGET_OS_IPHONE -+#if !HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H - return uv__pthread_setname_np(title); - #else - CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef, -@@ -205,5 +203,5 @@ out: - dlclose(application_services_handle); - - return err; --#endif /* !TARGET_OS_IPHONE */ -+#endif /* !HAVE_APPLICATIONSERVICES_APPLICATIONSERVICES_H */ - } -diff --git a/src/unix/fsevents.c b/src/unix/fsevents.c -index ee45299b..3135e738 100644 ---- a/src/unix/fsevents.c -+++ b/src/unix/fsevents.c -@@ -21,7 +21,7 @@ - #include "uv.h" - #include "internal.h" - --#if TARGET_OS_IPHONE -+#if !HAVE_CORESERVICES_CORESERVICES_H - - /* iOS (currently) doesn't provide the FSEvents-API (nor CoreServices) */ - -@@ -38,7 +38,7 @@ int uv__fsevents_close(uv_fs_event_t* handle) { - void uv__fsevents_loop_delete(uv_loop_t* loop) { - } - --#else /* TARGET_OS_IPHONE */ -+#else /* !HAVE_CORESERVICES_CORESERVICES_H */ - - #include - #include -@@ -916,4 +916,4 @@ int uv__fsevents_close(uv_fs_event_t* handle) { - return 0; - } - --#endif /* TARGET_OS_IPHONE */ -+#endif /* !HAVE_CORESERVICES_CORESERVICES_H */ -diff --git a/test/test-list.h b/test/test-list.h -index e59c6b65..160f6b36 100644 ---- a/test/test-list.h -+++ b/test/test-list.h -@@ -229,7 +229,9 @@ TEST_DECLARE (get_passwd) - TEST_DECLARE (handle_fileno) - TEST_DECLARE (homedir) - TEST_DECLARE (tmpdir) -+#if !__APPLE__ - TEST_DECLARE (hrtime) -+#endif - TEST_DECLARE (getaddrinfo_fail) - TEST_DECLARE (getaddrinfo_fail_sync) - TEST_DECLARE (getaddrinfo_basic) -@@ -306,6 +308,7 @@ TEST_DECLARE (fs_futime) - TEST_DECLARE (fs_file_open_append) - TEST_DECLARE (fs_stat_missing_path) - TEST_DECLARE (fs_read_file_eof) -+#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H - TEST_DECLARE (fs_event_watch_dir) - TEST_DECLARE (fs_event_watch_dir_recursive) - #ifdef _WIN32 -@@ -327,6 +330,7 @@ TEST_DECLARE (fs_event_close_in_callback) - TEST_DECLARE (fs_event_start_and_close) - TEST_DECLARE (fs_event_error_reporting) - TEST_DECLARE (fs_event_getpath) -+#endif - TEST_DECLARE (fs_scandir_empty_dir) - TEST_DECLARE (fs_scandir_non_existent_dir) - TEST_DECLARE (fs_scandir_file) -@@ -426,9 +430,11 @@ TEST_DECLARE (fork_socketpair) - TEST_DECLARE (fork_socketpair_started) - TEST_DECLARE (fork_signal_to_child) - TEST_DECLARE (fork_signal_to_child_closed) -+#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H - TEST_DECLARE (fork_fs_events_child) - TEST_DECLARE (fork_fs_events_child_dir) - TEST_DECLARE (fork_fs_events_file_parent_child) -+#endif - #ifndef __MVS__ - TEST_DECLARE (fork_threadpool_queue_work_simple) - #endif -@@ -721,7 +727,9 @@ TASK_LIST_START - - TEST_ENTRY (tmpdir) - -+#if !__APPLE__ - TEST_ENTRY (hrtime) -+#endif - - TEST_ENTRY_CUSTOM (getaddrinfo_fail, 0, 0, 10000) - TEST_ENTRY_CUSTOM (getaddrinfo_fail_sync, 0, 0, 10000) -@@ -851,6 +859,7 @@ TASK_LIST_START - TEST_ENTRY (fs_stat_missing_path) - TEST_ENTRY (fs_read_file_eof) - TEST_ENTRY (fs_file_open_append) -+#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H - TEST_ENTRY (fs_event_watch_dir) - TEST_ENTRY (fs_event_watch_dir_recursive) - #ifdef _WIN32 -@@ -872,6 +881,7 @@ TASK_LIST_START - TEST_ENTRY (fs_event_start_and_close) - TEST_ENTRY (fs_event_error_reporting) - TEST_ENTRY (fs_event_getpath) -+#endif - TEST_ENTRY (fs_scandir_empty_dir) - TEST_ENTRY (fs_scandir_non_existent_dir) - TEST_ENTRY (fs_scandir_file) -@@ -921,9 +931,11 @@ TASK_LIST_START - TEST_ENTRY (fork_socketpair_started) - TEST_ENTRY (fork_signal_to_child) - TEST_ENTRY (fork_signal_to_child_closed) -+#if !__APPLE__ || HAVE_CORESERVICES_CORESERVICES_H - TEST_ENTRY (fork_fs_events_child) - TEST_ENTRY (fork_fs_events_child_dir) - TEST_ENTRY (fork_fs_events_file_parent_child) -+#endif - #ifndef __MVS__ - TEST_ENTRY (fork_threadpool_queue_work_simple) - #endif --- -2.17.1 -