cmake: set default CMAKE_OSX_DEPLOYMENT_TARGET before project()

project() appears to set it to an empty string (the value of nonexistent
$ENV{MACOSX_DEPLOYMENT_TARGET}?), causing our attempt to set its default
to fail. CMake bug?
This commit is contained in:
Nadia Holmquist Pedersen 2024-12-05 15:38:44 +01:00
parent 817b409ec8
commit 7d718ada39
2 changed files with 7 additions and 2 deletions

View File

@ -9,6 +9,7 @@ set(CMAKE_POLICY_DEFAULT_CMP0069 NEW)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
set(CMAKE_USER_MAKE_RULES_OVERRIDE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/DefaultBuildFlags.cmake") set(CMAKE_USER_MAKE_RULES_OVERRIDE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/DefaultBuildFlags.cmake")
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
option(USE_VCPKG "Use vcpkg for dependency packages" OFF) option(USE_VCPKG "Use vcpkg for dependency packages" OFF)
if (USE_VCPKG) if (USE_VCPKG)
@ -29,8 +30,6 @@ include(CheckIPOSupported)
include(SetupCCache) include(SetupCCache)
include(Sanitizers) include(Sanitizers)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)

View File

@ -95,7 +95,13 @@
libtool libtool
ninja ninja
pkg-config pkg-config
python3
]; ];
# Undo the SDK setup done by nixpkgs so we can use AppleClang
shellHook = ''
unset DEVELOPER_DIR SDKROOT MACOSX_DEPLOYMENT_TARGET
'';
}; };
}; };
} }