forked from mirrors/nixpkgs
f111c6f9ce
* starting with rc2 * make `lldb` compilable again on Darwin * separate out manpage creation for `lldb` into a new derivation * minor tweaks to the patching of sources, some of which are backportable to earlier versions
63 lines
2.4 KiB
Diff
63 lines
2.4 KiB
Diff
--- a/cmake/Modules/CompilerRTDarwinUtils.cmake 2020-01-25 23:13:55.000000000 +0100
|
|
+++ b/cmake/Modules/CompilerRTDarwinUtils.cmake 2020-01-25 23:19:37.000000000 +0100
|
|
@@ -43,41 +43,6 @@
|
|
set(DARWIN_${sdk_name}_CACHED_SYSROOT ${var_internal} CACHE STRING "Darwin SDK path for SDK ${sdk_name}." FORCE)
|
|
endfunction()
|
|
|
|
-function(find_darwin_sdk_version var sdk_name)
|
|
- # We deliberately don't cache the result here because
|
|
- # CMake's caching causes too many problems.
|
|
- set(result_process 1)
|
|
- if(NOT DARWIN_PREFER_PUBLIC_SDK)
|
|
- # Let's first try the internal SDK, otherwise use the public SDK.
|
|
- execute_process(
|
|
- COMMAND xcrun --sdk ${sdk_name}.internal --show-sdk-version
|
|
- RESULT_VARIABLE result_process
|
|
- OUTPUT_VARIABLE var_internal
|
|
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
- ERROR_FILE /dev/null
|
|
- )
|
|
- endif()
|
|
- if((NOT ${result_process} EQUAL 0) OR "" STREQUAL "${var_internal}")
|
|
- execute_process(
|
|
- COMMAND xcrun --sdk ${sdk_name} --show-sdk-version
|
|
- RESULT_VARIABLE result_process
|
|
- OUTPUT_VARIABLE var_internal
|
|
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
- ERROR_FILE /dev/null
|
|
- )
|
|
- endif()
|
|
- if(NOT result_process EQUAL 0)
|
|
- message(FATAL_ERROR
|
|
- "Failed to determine SDK version for \"${sdk_name}\" SDK")
|
|
- endif()
|
|
- # Check reported version looks sane.
|
|
- if (NOT "${var_internal}" MATCHES "^[0-9]+\\.[0-9]+(\\.[0-9]+)?$")
|
|
- message(FATAL_ERROR
|
|
- "Reported SDK version \"${var_internal}\" does not look like a version")
|
|
- endif()
|
|
- set(${var} ${var_internal} PARENT_SCOPE)
|
|
-endfunction()
|
|
-
|
|
# There isn't a clear mapping of what architectures are supported with a given
|
|
# target platform, but ld's version output does list the architectures it can
|
|
# link for.
|
|
@@ -119,17 +84,6 @@
|
|
foreach(flag ${DARWIN_${os}_LINK_FLAGS})
|
|
set(os_linker_flags "${os_linker_flags} ${flag}")
|
|
endforeach()
|
|
-
|
|
- # Disable building for i386 for macOS SDK >= 10.15. The SDK doesn't support
|
|
- # linking for i386 and the corresponding OS doesn't allow running macOS i386
|
|
- # binaries.
|
|
- if ("${os}" STREQUAL "osx")
|
|
- find_darwin_sdk_version(macosx_sdk_version "macosx")
|
|
- if ("${macosx_sdk_version}" VERSION_GREATER 10.15 OR "${macosx_sdk_version}" VERSION_EQUAL 10.15)
|
|
- message(STATUS "Disabling i386 slice for ${valid_archs}")
|
|
- list(REMOVE_ITEM archs "i386")
|
|
- endif()
|
|
- endif()
|
|
endif()
|
|
|
|
# The simple program will build for x86_64h on the simulator because it is
|