source: trunk/dports/_resources/port1.0/group/cmake-1.0.tcl @ 101141

Last change on this file since 101141 was 101141, checked in by jeremyhu@…, 7 years ago

cmake: Ensure that CMAKE_OSX_DEPLOYMENT_TARGET is unset if CMAKE_OSX_SYSROOT is /

This will avoid errors like the following when we don't use an sdkroot:

CMake Error at /opt/local/share/cmake-2.8/Modules/Platform/Darwin.cmake:190 (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.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.6 KB
Line 
1# -*- coding: utf-8; mode: tcl; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 4; truncate-lines: t -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
2# $Id: cmake-1.0.tcl 101141 2013-01-05 07:21:56Z jeremyhu@macports.org $
3#
4# Copyright (c) 2009 Orville Bennett <illogical1 at gmail.com>
5# Copyright (c) 2010-2012 The MacPorts Project
6# All rights reserved.
7#
8# Redistribution and use in source and binary forms, with or without
9# modification, are permitted provided that the following conditions are
10# met:
11#
12# 1. Redistributions of source code must retain the above copyright
13#    notice, this list of conditions and the following disclaimer.
14# 2. Redistributions in binary form must reproduce the above copyright
15#    notice, this list of conditions and the following disclaimer in the
16#    documentation and/or other materials provided with the distribution.
17# 3. Neither the name of Apple Computer, Inc. nor the names of its
18#    contributors may be used to endorse or promote products derived from
19#    this software without specific prior written permission.
20#
21# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32#
33#
34# Usage:
35# PortGroup     cmake 1.0
36
37# standard place to install extra CMake modules
38set cmake_share_module_dir ${prefix}/share/cmake/modules
39
40depends_build-append port:cmake
41
42#FIXME: ccache works with cmake on linux
43configure.ccache    no
44
45configure.cmd       cmake
46
47configure.pre_args  -DCMAKE_INSTALL_PREFIX=${prefix}
48
49configure.args      -DCMAKE_VERBOSE_MAKEFILE=ON \
50                    -DCMAKE_COLOR_MAKEFILE=ON \
51                    -DCMAKE_BUILD_TYPE=Release \
52                    -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
53                    -DCMAKE_INSTALL_NAME_DIR=${prefix}/lib \
54                    -DCMAKE_SYSTEM_PREFIX_PATH="${prefix}\;/usr" \
55                    -DCMAKE_MODULE_PATH=${cmake_share_module_dir} \
56                    -Wno-dev
57
58platform darwin {
59    pre-configure {
60        if {[variant_exists universal] && [variant_isset universal]} {
61            if {[info exists universal_archs_supported]} {
62                global merger_configure_args
63                foreach arch ${universal_archs_to_use} {
64                    lappend merger_configure_args(${arch}) -DCMAKE_OSX_ARCHITECTURES=${arch}
65                }
66            } else {
67                configure.universal_args-append \
68                    -DCMAKE_OSX_ARCHITECTURES="[join ${configure.universal_archs} \;]"
69            }
70        } else {
71            configure.args-append \
72                -DCMAKE_OSX_ARCHITECTURES="${configure.build_arch}"
73        }
74        if {${configure.sdkroot} != ""} {
75            configure.args-append -DCMAKE_OSX_SYSROOT="${configure.sdkroot}"
76        } else {
77            configure.args-append -DCMAKE_OSX_SYSROOT=/ -DCMAKE_OSX_DEPLOYMENT_TARGET=""
78        }
79    }
80}
81
82configure.universal_args-delete --disable-dependency-tracking
83
84variant debug description "Enable debug binaries" {
85    configure.args-delete   -DCMAKE_BUILD_TYPE=Release
86    configure.args-append   -DCMAKE_BUILD_TYPE=debugFull
87}
Note: See TracBrowser for help on using the repository browser.