Merge #56291: cmake: fix darwin bootstrapping

... into staging-next.
This commit is contained in:
Vladimír Čunát 2019-02-24 16:52:03 +01:00
commit 18fe630281
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
4 changed files with 44 additions and 12 deletions

View File

@ -1,6 +1,24 @@
diff -ur cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx cmake-3.12.1-patched/Source/cmGlobalXCodeGenerator.cxx
--- cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx 2018-08-09 21:14:08.000000000 +0900
+++ cmake-3.12.1-patched/Source/cmGlobalXCodeGenerator.cxx 2018-08-12 02:47:28.719691934 +0900
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index 8aff8f6..af1852d 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -791,12 +791,6 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc"
endif()
endif()
-# On Apple we need CoreFoundation and CoreServices
-if(APPLE)
- target_link_libraries(CMakeLib "-framework CoreFoundation")
- target_link_libraries(CMakeLib "-framework CoreServices")
-endif()
-
if(WIN32 AND NOT UNIX)
# We need the rpcrt4 library on Windows.
# We need the crypt32 library on Windows for crypto/cert APIs.
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
index e353a37..b06f842 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -35,11 +35,6 @@
struct cmLinkImplementation;
@ -13,3 +31,19 @@ diff -ur cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx cmake-3.12.1-patched/Sou
#if defined(CMAKE_BUILD_WITH_CMAKE)
# include "cmXMLParser.h"
diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
index d7af6e2..d4808fc 100644
--- a/Utilities/cmlibarchive/CMakeLists.txt
+++ b/Utilities/cmlibarchive/CMakeLists.txt
@@ -1662,11 +1662,6 @@ IF(MSVC)
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
ENDIF(MSVC)
-# We need CoreServices on Mac OS.
-IF(APPLE)
- LIST(APPEND ADDITIONAL_LIBS "-framework CoreServices")
-ENDIF(APPLE)
-
add_subdirectory(libarchive)
install(FILES COPYING DESTINATION ${CMAKE_DOC_DIR}/cmlibarchive)

View File

@ -2,7 +2,7 @@
, bzip2, curl, expat, libarchive, xz, zlib, libuv, rhash
, buildPackages
# darwin attributes
, ps
, cf-private, ps
, isBootstrap ? false
, useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin)
, useNcurses ? false, ncurses
@ -34,11 +34,6 @@ stdenv.mkDerivation rec {
inherit sha256;
};
prePatch = optionalString (!useSharedLibraries) ''
substituteInPlace Utilities/cmlibarchive/CMakeLists.txt \
--replace '"-framework CoreServices"' '""'
'';
patches = [
# Don't search in non-Nix locations such as /usr, but do search in our libc.
./search-path.patch
@ -57,6 +52,7 @@ stdenv.mkDerivation rec {
buildInputs =
[ setupHook pkgconfig ]
++ optional stdenv.isDarwin cf-private # needed for CFBundleCopyExecutableURL
++ optionals useSharedLibraries [ bzip2 curl expat libarchive xz zlib libuv rhash ]
++ optional useNcurses ncurses
++ optional useQt4 qt4

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libxml2, openssl, zlib, bzip2, fts }:
{ stdenv, fetchurl, libxml2, lzma, openssl, zlib, bzip2, fts }:
stdenv.mkDerivation rec {
version = "1.6.1";
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "0ghmsbs6xwg1092v7pjcibmk5wkyifwxw6ygp08gfz25d2chhipf";
};
buildInputs = [ libxml2 openssl zlib bzip2 fts ];
buildInputs = [ libxml2 lzma openssl zlib bzip2 fts ];
meta = {
homepage = https://mackyle.github.io/xar/;

View File

@ -8519,7 +8519,9 @@ in
cmake_2_8 = callPackage ../development/tools/build-managers/cmake/2.8.nix { };
cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { };
cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake {
inherit (darwin) cf-private;
};
cmakeCurses = cmake.override { useNcurses = true; };