[122298] trunk/dports/_resources/port1.0/group/cmake-1.0.tcl

Jeremy Huddleston Sequoia jeremyhu at macports.org
Sat Jul 19 20:24:12 PDT 2014


"Either set CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to empty."

So then how does one tell cmake to use a specific deployment target while building against?  This seems like an intentional bug in cmake to me.  I'll revert the change for now and reopen the ticket, but cmake needs to fix this.

--Jeremy

On Jul 19, 2014, at 19:56, David Evans <devans at macports.org> wrote:

> On 7/19/14 6:36 PM, jeremyhu at macports.org wrote:
>> Revision
>> 122298
>> Author
>> jeremyhu at macports.org
>> Date
>> 2014-07-19 18:36:35 -0700 (Sat, 19 Jul 2014)
>> Log Message
>> 
>> cmake: Point sysroot to / when configure.sdkroot is unset (#44125).
>> Modified Paths
>> 
>> 	• trunk/dports/_resources/port1.0/group/cmake-1.0.tcl
>> Diff
>> 
>> Modified: trunk/dports/_resources/port1.0/group/cmake-1.0.tcl (122297 => 122298)
>> 
>> --- trunk/dports/_resources/port1.0/group/cmake-1.0.tcl	2014-07-20 01:20:12 UTC (rev 122297)
>> +++ trunk/dports/_resources/port1.0/group/cmake-1.0.tcl	2014-07-20 01:36:35 UTC (rev 122298)
>> 
>> @@ -112,23 +112,13 @@
>> 
>>              configure.args-append \
>> 
>>                  -DCMAKE_OSX_ARCHITECTURES="${configure.build_arch}"
>> 
>>          }
>> 
>> +
>> +        configure.args-append -DCMAKE_OSX_DEPLOYMENT_TARGET="${macosx_deployment_target}"
>> +
>> 
>>          if {${configure.sdkroot} != ""} {
>> 
>> -            configure.args-append -DCMAKE_OSX_SYSROOT="${configure.sdkroot}" -DCMAKE_OSX_DEPLOYMENT_TARGET="${macosx_deployment_target}" 
>> 
>> +            configure.args-append -DCMAKE_OSX_SYSROOT="${configure.sdkroot}"
>> 
>>          } else {
>> 
>> -            # Without this, cmake will choose an SDK and deployment target on its own.
>> -            if {[vercmp $xcodeversion 4.3] < 0} {
>> -                set sdks_dir ${developer_dir}/SDKs
>> -            } else {
>> -                set sdks_dir ${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs
>> -            }
>> -            if {${configure.sdk_version} eq "10.4"} {
>> -                set sdk ${sdks_dir}/MacOSX10.4u.sdk
>> -            } else {
>> -                set sdk ${sdks_dir}/MacOSX${configure.sdk_version}.sdk
>> -            }
>> -            configure.args-append \
>> -                -DCMAKE_OSX_SYSROOT="${sdk}" \
>> -                -DCMAKE_OSX_DEPLOYMENT_TARGET="${macosx_deployment_target}" 
>> 
>> +            configure.args-append -DCMAKE_OSX_SYSROOT="/"
>> 
>>          }
>> 
>>      }
>> 
>>  }
>> 
>> 
>> 
> 
> Jeremy --
> 
> This change broke my port lib2geom.  Was building fine but now errors out in configure as follows:
> 
> DEBUG: Environment: 
> CC='/usr/bin/clang'
> CC_PRINT_OPTIONS='YES'
> CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_lib2geom/lib2geom/work/.CC_PRINT_OPTIONS'
> CFLAGS='-pipe -Os -arch x86_64'
> CPATH='/opt/local/include'
> CPPFLAGS='-I/opt/local/include'
> CXX='/usr/bin/clang++'
> CXXFLAGS='-pipe -Os -arch x86_64 -stdlib=libstdc++'
> F77FLAGS='-m64'
> F90FLAGS='-pipe -Os -m64'
> FCFLAGS='-pipe -Os -m64'
> FFLAGS='-pipe -Os'
> INSTALL='/usr/bin/install -c'
> LDFLAGS='-L/opt/local/lib -Wl,-headerpad_max_install_names -arch x86_64'
> LIBRARY_PATH='/opt/local/lib'
> MACOSX_DEPLOYMENT_TARGET='10.8'
> OBJC='/usr/bin/clang'
> OBJCFLAGS='-pipe -Os -arch x86_64'
> OBJCXX='/usr/bin/clang++'
> OBJCXXFLAGS='-pipe -Os -arch x86_64 -stdlib=libstdc++'
> __CFPREFERENCES_AVOID_DAEMON='1'
> DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_lib2geom/lib2geom/work/lib2geom-0.3-2209" && /opt/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/opt/local -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_COLOR_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -DCMAKE_INSTALL_RPATH=/opt/local/lib -DCMAKE_INSTALL_NAME_DIR=/opt/local/lib -DCMAKE_SYSTEM_PREFIX_PATH="/opt/local;/usr" -DCMAKE_MODULE_PATH=/opt/local/share/cmake/modules -DCMAKE_FIND_FRAMEWORK=LAST -Wno-dev -D2GEOM_BUILD_SHARED=YES -DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" -DCMAKE_OSX_ARCHITECTURES="x86_64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.8" -DCMAKE_OSX_SYSROOT="/"'
> DEBUG: Executing command line:  cd "/opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_lib2geom/lib2geom/work/lib2geom-0.3-2209" && /opt/local/bin/cmake -DCMAKE_INSTALL_PREFIX=/opt/local -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_COLOR_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON -DCMAKE_INSTALL_RPATH=/opt/local/lib -DCMAKE_INSTALL_NAME_DIR=/opt/local/lib -DCMAKE_SYSTEM_PREFIX_PATH="/opt/local;/usr" -DCMAKE_MODULE_PATH=/opt/local/share/cmake/modules -DCMAKE_FIND_FRAMEWORK=LAST -Wno-dev -D2GEOM_BUILD_SHARED=YES -DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" -DCMAKE_OSX_ARCHITECTURES="x86_64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.8" -DCMAKE_OSX_SYSROOT="/" 
> -- The CXX compiler identification is AppleClang 5.1.0.5030040
> -- The C compiler identification is AppleClang 5.1.0.5030040
> CMake Error at /opt/local/share/cmake-3.0/Modules/Platform/Darwin.cmake:211 (message):
>   CMAKE_OSX_DEPLOYMENT_TARGET is '10.8' but CMAKE_OSX_SYSROOT:
> 
>    "/"
> 
>   is not set to a MacOSX SDK with a recognized version.  Either set
>   CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to
>   empty.
> Call Stack (most recent call first):
>   /opt/local/share/cmake-3.0/Modules/CMakeSystemSpecificInformation.cmake:36 (include)
>   CMakeLists.txt:3 (PROJECT)
> 
> 
> -- Configuring incomplete, errors occurred!
> 
> 
> Is this intended?  Seems like it might break a lot of ports that have been building with the defaults.
> 
> Dave



More information about the macports-dev mailing list