Gregor, This is also a severe regression because if forces the cmake users to build against the 10.12 SDK on 10.11 which is not well tested for backward compatibility on 10.11. Your change makes it impossible to build against the SDK in / installed by the Xcode Command Line Tools package. Jack
On Sun, Oct 30, 2016 at 1:33 PM, Jack Howarth <howarth.mailing.li...@gmail.com> wrote: > Gregor, > Your commit of... > > https://cmake.org/gitweb?p=cmake.git;a=log;h=540815eec2b83a8b43689580c54e8950d9f5868b > > has caused a major regression in cmake 3.7.0 as it no longer properly > honors the combination... > > -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING="" -DCMAKE_OSX_SYSROOT:STRING=/ > > This is obvious by simple inspection of the code in > Modules/Platform/Darwin-Initialize.cmake as > the code no longer honors -DCMAKE_OSX_SYSROOT:STRING=/. At the very > least, this code > needs to be modified to have cmake emit "-isysroot /" in that case. > IMHO, this issue should be considered a blocker for the cmake > 3,7.0 release on darwin. > Jack > > > On Sun, Oct 30, 2016 at 9:36 AM, Jack Howarth > <howarth.mailing.li...@gmail.com> wrote: >> The change... >> >> --- cmake-3.6.2/Modules/Platform/Darwin-Initialize.cmake 2016-09-07 >> 10:11:58.000000000 -0400 >> +++ cmake-3.7.0-rc2/Modules/Platform/Darwin-Initialize.cmake >> 2016-10-19 09:47:45.000000000 -0400 >> @@ -125,8 +125,10 @@ >> set(_CMAKE_OSX_SYSROOT_ORIG "") >> endif() >> set(_CMAKE_OSX_SYSROOT_PATH "${CMAKE_OSX_SYSROOT}") >> - else() >> - # Transform the sdk name into a path. >> + endif() >> + >> + if(CMAKE_OSX_SYSROOT) >> + # Transform the (maybe unversioned) sysroot into a versioned path. >> execute_process( >> COMMAND xcodebuild -sdk ${CMAKE_OSX_SYSROOT} -version Path >> OUTPUT_VARIABLE _stdout >> >> is an obvious mistake in cmake 3.7.0-rc2. The removal of the 'else()' >> statement here and the substitution of the ' if(CMAKE_OSX_SYSROOT)' >> defeats the prior handling of 'if("x${CMAKE_OSX_SYSROOT}" MATCHES >> "/")'. This causes '-DCMAKE_OSX_DEPLOYMENT_TARGET:STRING="" >> -DCMAKE_OSX_SYSROOT:STRING=/' to not be honored and -isysroot to be >> emitted as a compiler flag universally. >> >> https://gitlab.kitware.com/cmake/cmake/issues/16394 -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers