source: issm/oecreview/Archive/24307-24683/ISSM-24454-24455.diff@ 24684

Last change on this file since 24684 was 24684, checked in by Mathieu Morlighem, 5 years ago

CHG: added new review

File size: 43.5 KB
  • ../trunk-jpl/externalpackages/gmt/configs/linux/5.1/cmake/ConfigUser.cmake

     
    1 #
    2 # $Id: ConfigUserTemplate.cmake 12904 2014-02-17 20:52:35Z fwobbe $
    3 #
    4 # Copyright (c) 1991-2014 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
    5 # See LICENSE.TXT file for copying and redistribution conditions.
    6 #
    7 # This program is free software; you can redistribute it and/or modify it
    8 # under the terms of the GNU Lesser General Public License as published by the
    9 # Free Software Foundation; version 3 or any later version.
    10 #
    11 # This program is distributed in the hope that it will be useful, but WITHOUT
    12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
    14 # for more details.
    15 #
    16 # Contact info: gmt.soest.hawaii.edu
    17 # ----------------------------------------------------------------------------
    18 
    19 # Use this file to override variables in 'ConfigDefault.cmake' on a per-user
    20 # basis.  First copy 'ConfigUserTemplate.cmake' to 'ConfigUser.cmake', then
    21 # edit 'ConfigUser.cmake'.  'ConfigUser.cmake' is not version controlled
    22 # (currently listed in svn:ignore property)
    23 #
    24 # Note: CMake considers an empty string, "FALSE", "OFF", "NO", or any string
    25 # ending in "-NOTFOUND" to be false (this happens to be case-insensitive, so
    26 # "False", "off", "no", and "something-NotFound" are all false).  Other values
    27 # are true.  Thus it does not matter whether you use TRUE and FALSE, ON and
    28 # OFF, or YES and NO for your booleans.
    29 
    30 ##
    31 ## Section 1: Installation paths
    32 ##
    33 
    34 # ============================================================================
    35 # Basic setup begins here.  All settings are optional.  In most cases, setting
    36 # CMAKE_INSTALL_PREFIX should be all you need to do in order to build GMT with
    37 # reasonable defaults enabled.
    38 # ============================================================================
    39 
    40 # Installation path (usually defaults to /usr/local) [auto]:
    41 set (CMAKE_INSTALL_PREFIX "$ENV{ISSM_DIR}/externalpackages/gmt/install")
    42 
    43 # Set install name suffix used for directories and gmt executables
    44 # [undefined]:
    45 #set (GMT_INSTALL_NAME_SUFFIX "suffix")
    46 
    47 # Install into traditional directory structure. Disable to install a
    48 # distribution type directory structure (doc and share separated) [on]:
    49 #set (GMT_INSTALL_TRADITIONAL_FOLDERNAMES OFF)
    50 
    51 # Install convenience links for GMT modules. Disable to install only the main
    52 # gmt program and access modules as "gmt modulename options" [TRUE]:
    53 #set (GMT_INSTALL_MODULE_LINKS FALSE)
    54 
    55 # Make executables relocatable on supported platforms (relative RPATH) [TRUE]:
    56 #set (GMT_INSTALL_RELOCATABLE FALSE)
    57 
    58 # ============================================================================
    59 # Advanced configuration begins here.  Usually it is not necessary to edit any
    60 # settings below.  You should know what you are doing if you do though.  Note:
    61 # installation paths are relative to ${CMAKE_INSTALL_PREFIX} unless absolute
    62 # path is given.
    63 # ============================================================================
    64 
    65 # Set binary installation path [bin]:
    66 #set (GMT_BINDIR "bin")
    67 
    68 # Set library installation path [lib or lib64]:
    69 #set (GMT_LIBDIR "lib")
    70 
    71 # Set include installation path [include/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    72 #set (GMT_INCLUDEDIR "include/gmt")
    73 
    74 # Set share installation path [share or share/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    75 #set (GMT_DATADIR "share/gmt")
    76 
    77 # Set doc installation path [share/doc or
    78 # share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    79 #set (GMT_DOCDIR "share/doc/gmt")
    80 
    81 # Set manpage installation path [share/man or
    82 # share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}/man]:
    83 #set (GMT_MANDIR "share/doc/gmt/man")
    84 
    85 # Install documentation files from this external location instead of creating
    86 # new PDF and HTML documents from scratch [${GMT_SOURCE_DIR}/doc_release]:
    87 #set (GMT_INSTALL_EXTERNAL_DOC OFF)
    88 
    89 # Install manual pages from this external location instead of creating the
    90 # manpages from scratch [${GMT_SOURCE_DIR}/man_release]:
    91 #set (GMT_INSTALL_EXTERNAL_MAN OFF)
    92 
    93 ##
    94 ## Section 2: Build dependencies (should only be needed if CMake cannot
    95 ## automatically detect the rights version or path.)
    96 ##
    97 
    98 # Set path to GSHHG Shoreline Database [auto]:
    99 set (GSHHG_ROOT "$ENV{ISSM_DIR}/externalpackages/gshhg/install")
    100 
    101 # Copy GSHHG files to $/coast [FALSE]:
    102 #set (COPY_GSHHG TRUE)
    103 
    104 # Set path to DCW Digital Chart of the World for GMT [auto]:
    105 #set (DCW_ROOT "dcw-gmt_path")
    106 
    107 # Copy DCW files to $/dcw [FALSE]:
    108 #set (COPY_DCW TRUE)
    109 
    110 # Set location of NetCDF (can be root directory, path to header file or path
    111 # to nc-config) [auto]:
    112 set (NETCDF_ROOT "$ENV{ISSM_DIR}/externalpackages/netcdf/install")
    113 
    114 # Set location of GDAL (can be root directory, path to header file or path to
    115 # gdal-config) [auto]:
    116 set (GDAL_ROOT "$ENV{ISSM_DIR}/externalpackages/gdal/install")
    117 
    118 # Set location of PCRE (can be root directory, path to header file or path to
    119 # pcre-config) [auto]:
    120 #set (PCRE_ROOT "pcre_install_prefix")
    121 
    122 # Set location of single precision FFTW (can be root directory or path to
    123 # header file) [auto]:
    124 #set (FFTW3_ROOT "fftw_install_prefix")
    125 
    126 # Set location of ZLIB (can be root directory or path to header file) [auto]:
    127 set (ZLIB_ROOT "$ENV{ISSM_DIR}/externalpackages/zlib/install")
    128 
    129 ##
    130 ## Section 3: GMT features
    131 ##
    132 
    133 # Enforce GPL or LGPL conformity. Use this to disable routines that cannot be
    134 # redistributed under the terms of the GPL or LGPL such as Shewchuk's
    135 # triangulation (valid values are GPL, LGPL and off) [off]:
    136 #set (LICENSE_RESTRICTED GPL)
    137 
    138 # Configure default units (possible values are SI and US) [SI]:
    139 #set (UNITS "US")
    140 
    141 # Enable building of shared libraries [TRUE] (disable to use static libraries;
    142 # not recommended):
    143 #set (BUILD_SHARED_LIBS FALSE)
    144 
    145 # Build GMT shared lib with supplemental modules [TRUE]:
    146 #set (BUILD_SUPPLEMENTS FALSE)
    147 
    148 ##
    149 ## Section 4: Advanced tweaking
    150 ##
    151 
    152 #
    153 # Testing and development
    154 #
    155 
    156 # Enable running examples/tests with "ctest" or "make check" (out-of-source).
    157 # Need to set either DO_EXAMPLES, DO_TESTS or both and uncomment the following
    158 # line.
    159 #enable_testing()
    160 #set (DO_EXAMPLES TRUE)
    161 #set (DO_TESTS TRUE)
    162 # Number of parallel test jobs with "make check":
    163 #set (N_TEST_JOBS 4)
    164 
    165 # Enable this option to run GMT programs from within ${GMT_BINARY_DIR} without
    166 # installing or setting GMT_SHAREDIR and GMT_USERDIR first. This is required
    167 # for testing [OFF]:
    168 #set (SUPPORT_EXEC_IN_BINARY_DIR ON)
    169 
    170 # List extra sub-dirs of 'src' with a CMakeList.txt to build non-module codes
    171 # that link against the full gmt libs (not just the API; for building codes
    172 # that only need the GMT API, see the gmtextension project).
    173 #set (EXTRA_BUILD_DIRS apidemo)
    174 
    175 # Directory in which to install the release sources per default
    176 # [${GMT_BINARY_DIR}/gmt-${GMT_PACKAGE_VERSION}]:
    177 #set (GMT_RELEASE_PREFIX "release-src-prefix")
    178 
    179 # If set to false, image conversion from PS images to PNG and PDF does
    180 # not depend on the gmt binary target. Note: "make gmt" is then required
    181 # before docs_depends [TRUE].
    182 #set (GMT_DOCS_DEPEND_ON_GMT FALSE)
    183 
    184 #
    185 # Debugging
    186 #
    187 
    188 # Set build type can be: empty, Debug, Release, RelWithDebInfo or MinSizeRel
    189 # [Release]:
    190 #set (CMAKE_BUILD_TYPE Debug)
    191 
    192 # Extra debugging for developers:
    193 #add_definitions(-DDEBUG)
    194 #add_definitions(-DMEMDEBUG) # Turn on memory tracking see gmt_support.c for extra info
    195 #set (CMAKE_C_FLAGS "-Wall -Wdeclaration-after-statement") # recommended even for release build
    196 #set (CMAKE_C_FLAGS "-Wextra ${CMAKE_C_FLAGS}")            # extra warnings
    197 #set (CMAKE_C_FLAGS_DEBUG -ggdb3)                          # gdb debugging symbols
    198 #set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized")  # check uninitialized variables
    199 #set (CMAKE_LINK_DEPENDS_DEBUG_MODE TRUE)                  # debug link dependencies
    200 
    201 #
    202 # System specific tweaks
    203 #
    204 
    205 # This is for GCC on Solaris to avoid "relocations remain against allocatable
    206 # but non-writable sections" problems:
    207 #set (USER_GMTLIB_LINK_FLAGS -mimpure-text)
    208 
    209 # This may be needed to enable strdup and extended math functions with GCC and
    210 # Suncc on Solaris:
    211 #set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__EXTENSIONS__")
    212 
    213 # Do not warn when building with Windows SDK or Visual Studio Express:
    214 #set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON)
    215 
    216 # Manually select runtime library when compiling with Windows SDK or Visual
    217 # Studio Express:
    218 #set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS c:/Windows/System32/msvcr100.dll)
    219 
    220 # If your NetCDF library is static (not recommended, applies to Windows only)
    221 #set (NETCDF_STATIC TRUE)
    222 
    223 # If want to rename the DLLs to something else than the default (e.g. to
    224 # append the bitness - Windows only)
    225 #if (WIN32)
    226 # set (BITAGE 32)
    227 # # Detect if we are building a 32 or 64 bits version
    228 # if (CMAKE_SIZEOF_VOID_P EQUAL 8)
    229 #   set (BITAGE 64)
    230 # endif ()
    231 # set (GMT_DLL_RENAME gmt_w${BITAGE})
    232 # set (PSL_DLL_RENAME psl_w${BITAGE})
    233 #endif(WIN32)
    234 
    235 # On Windows Visual C 2012 needs _ALLOW_KEYWORD_MACROS to build
    236 #if(MSVC11)
    237 #  add_definitions(/D_ALLOW_KEYWORD_MACROS)
    238 #endif(MSVC11)
    239 
    240 # vim: textwidth=78 noexpandtab tabstop=2 softtabstop=2 shiftwidth=2
  • ../trunk-jpl/externalpackages/gmt/configs/linux/6.0/cmake/ConfigUser.cmake

     
    1 #
    2 #
    3 # Copyright (c) 1991-2019 by the GMT Team (https://www.generic-mapping-tools.org/team.html)
    4 # See LICENSE.TXT file for copying and redistribution conditions.
    5 #
    6 # This program is free software; you can redistribute it and/or modify it
    7 # under the terms of the GNU Lesser General Public License as published by the
    8 # Free Software Foundation; version 3 or any later version.
    9 #
    10 # This program is distributed in the hope that it will be useful, but WITHOUT
    11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
    13 # for more details.
    14 #
    15 # Contact info: www.generic-mapping-tools.org
    16 # ----------------------------------------------------------------------------
    17 
    18 # Use this file to override variables in 'ConfigDefault.cmake' on a per-user
    19 # basis.  First copy 'ConfigUserTemplate.cmake' to 'ConfigUser.cmake', then
    20 # edit 'ConfigUser.cmake'.  'ConfigUser.cmake' is not version controlled
    21 # (currently listed in .gitignore).
    22 #
    23 # Note: CMake considers an empty string, "FALSE", "OFF", "NO", or any string
    24 # ending in "-NOTFOUND" to be false (this happens to be case-insensitive, so
    25 # "False", "off", "no", and "something-NotFound" are all false).  Other values
    26 # are true.  Thus it does not matter whether you use TRUE and FALSE, ON and
    27 # OFF, or YES and NO for your booleans.
    28 
    29 ##
    30 ## Section 1: Installation paths
    31 ##
    32 
    33 # ============================================================================
    34 # Basic setup begins here.  All settings are optional.  In most cases, setting
    35 # CMAKE_INSTALL_PREFIX should be all you need to do in order to build GMT with
    36 # reasonable defaults enabled.  Note: If you need to specify directory names
    37 # with spaces (e.g., on Windows) then you must put them in quotes.
    38 # ============================================================================
    39 
    40 # Installation path (usually defaults to /usr/local) [auto]:
    41 set (CMAKE_INSTALL_PREFIX "$ENV{ISSM_DIR}/externalpackages/gmt/install")
    42 
    43 # Set install name suffix used for directories and gmt executables
    44 # [undefined]:
    45 #set (GMT_INSTALL_NAME_SUFFIX "suffix")
    46 
    47 # Install into traditional directory structure. Disable to install a
    48 # distribution type directory structure (doc and share separated) [on]:
    49 #set (GMT_INSTALL_TRADITIONAL_FOLDERNAMES OFF)
    50 
    51 # Install convenience links for GMT modules. Disable to install only the main
    52 # gmt program and access modules as "gmt modulename options" [TRUE]:
    53 #set (GMT_INSTALL_MODULE_LINKS FALSE)
    54 
    55 # Make executables relocatable on supported platforms (relative RPATH) [FALSE]:
    56 set (GMT_INSTALL_RELOCATABLE TRUE)
    57 
    58 # Exclude optional GDAL, PCRE, PCRE2, FFTW3, LAPACK, BLAS, ZLIB dependencies even if you have them installed [FALSE]
    59 #set (GMT_EXCLUDE_GDAL TRUE)
    60 #set (GMT_EXCLUDE_PCRE TRUE)
    61 #set (GMT_EXCLUDE_PCRE2 TRUE)
    62 #set (GMT_EXCLUDE_FFTW3 TRUE)
    63 #set (GMT_EXCLUDE_LAPACK TRUE)
    64 #set (GMT_EXCLUDE_BLAS TRUE)
    65 #set (GMT_EXCLUDE_ZLIB TRUE)
    66 
    67 # ============================================================================
    68 # Advanced configuration begins here.  Usually it is not necessary to edit any
    69 # settings below.  You should know what you are doing if you do though.  Note:
    70 # installation paths are relative to ${CMAKE_INSTALL_PREFIX} unless absolute
    71 # path is given.
    72 # ============================================================================
    73 
    74 # Set binary installation path [bin]:
    75 #set (GMT_BINDIR "bin")
    76 
    77 # Set library installation path [lib or lib64]:
    78 #set (GMT_LIBDIR "lib")
    79 
    80 # Set include installation path [include/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    81 #set (GMT_INCLUDEDIR "include/gmt")
    82 
    83 # Set share installation path [share or share/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    84 #set (GMT_DATADIR "share/gmt")
    85 
    86 # Set doc installation path [share/doc or
    87 # share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}]:
    88 #set (GMT_DOCDIR "share/doc/gmt")
    89 
    90 # Set manpage installation path [share/man or
    91 # share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}/man]:
    92 #set (GMT_MANDIR "share/doc/gmt/man")
    93 
    94 # Install documentation files from this external location instead of creating
    95 # new HTML documents from scratch [${GMT_SOURCE_DIR}/doc_release]:
    96 #set (GMT_INSTALL_EXTERNAL_DOC OFF)
    97 
    98 # Install manual pages from this external location instead of creating the
    99 # manpages from scratch [${GMT_SOURCE_DIR}/man_release]:
    100 #set (GMT_INSTALL_EXTERNAL_MAN OFF)
    101 
    102 ##
    103 ## Section 2: Build dependencies (should only be needed if CMake cannot
    104 ## automatically detect the rights version or path.)
    105 ##
    106 
    107 # Set URL to GMT Data server [auto]:
    108 #set (GMT_DATA_SERVER "data_server_url")
    109 
    110 # Set path to GSHHG Shoreline Database [auto]:
    111 set (GSHHG_ROOT "$ENV{ISSM_DIR}/externalpackages/gshhg/install")
    112 
    113 # Copy GSHHG files to ${GMT_DATADIR}/coast [FALSE]:
    114 #set (COPY_GSHHG TRUE)
    115 
    116 # Set path to DCW Digital Chart of the World for GMT [auto]:
    117 #set (DCW_ROOT "dcw-gmt_path")
    118 
    119 # Copy DCW files to ${GMT_DATADIR}/dcw [FALSE]:
    120 #set (COPY_DCW TRUE)
    121 
    122 # Copy GDAL's 'data' directory to ${GMT_DATADIR}/GDAL_DATA [FALSE]:
    123 #set (GDAL_DATA_PATH C:/programs/compa_libs/gdal_GIT/compileds/VC14_64/data)
    124 
    125 # Copy PROJ4's 'share' directory to ${GMT_DATADIR}/GDAL_DATA [FALSE]:
    126 #set (PROJ_DATA_PATH C:/programs/compa_libs/proj5_GIT/compileds/VC14_64/share/proj)
    127 
    128 # FOR WINDOWS ONLY
    129 # Set path to location of Ghostscript binaries (optional install)
    130 #set (GHOST_DATA_PATH C:/programs/compa_libs/ghostscript/bin)
    131 
    132 # FOR WINDOWS ONLY
    133 # Set path to location where the gmtmex is located.
    134 #set (GMTMEX_PATH "C:/progs_cygw/GMTdev/gmtmex/${GMTver}")
    135 
    136 # Set location of NetCDF (can be root directory, path to header file or path
    137 # to nc-config) [auto]:
    138 set (NETCDF_ROOT "$ENV{ISSM_DIR}/externalpackages/netcdf/install")
    139 
    140 # Set location of GDAL (can be root directory, path to header file or path to
    141 # gdal-config) [auto]:
    142 set (GDAL_ROOT "$ENV{ISSM_DIR}/externalpackages/gdal/install")
    143 
    144 # Set location of PCRE (can be root directory, path to header file or path to
    145 # pcre-config) [auto]:
    146 #set (PCRE_ROOT "pcre_install_prefix")
    147 # Alternatively, set location of PCRE2 (can be root directory, path to header file or path to
    148 # pcre2-config) [auto]:
    149 #set (PCRE2_ROOT "pcre2_install_prefix")
    150 
    151 # Set location of single precision FFTW (can be root directory or path to
    152 # header file) [auto]:
    153 #set (FFTW3_ROOT "fftw_install_prefix")
    154 
    155 # Set location of ZLIB (can be root directory or path to header file) [auto]:
    156 set (ZLIB_ROOT "$ENV{ISSM_DIR}/externalpackages/zlib/install")
    157 
    158 # Set location of CURL (can be root directory or path to header file) [auto]:
    159 #set (CURL_ROOT "curl_install_prefix")
    160 
    161 # Set location of GLIB component gthread [auto].  This is an optional (and
    162 # experimental) option which you need to enable:
    163 #set (GMT_USE_THREADS TRUE)
    164 # If pkg-config is not installed (e.g. on Windows) you need to specify these:
    165 #set (GLIB_INCLUDE_DIR c:/path/to/glib-dev/include/glib-2.0)
    166 #set (GLIB_LIBRARIES c:/path/to/glib-dev/lib/glib-2.0.lib)
    167 
    168 # Set LAPACK location. Use this when want to link with LAPACK and it's not found automatically
    169 set (LAPACK_LIBRARY "-L$ENV{ISSM_DIR}/externalpackages/lapack/install/lib -llapack")
    170 set (BLAS_LIBRARY "-L$ENV{ISSM_DIR}/externalpackages/lapack/install/lib -lblas")
    171 
    172 ##
    173 ## Section 3: GMT features
    174 ##
    175 
    176 # Enforce GPL or LGPL conformity. Use this to disable routines that cannot be
    177 # redistributed under the terms of the GPL or LGPL such as Shewchuk's
    178 # triangulation (valid values are GPL, LGPL and off) [off]:
    179 #set (LICENSE_RESTRICTED GPL)
    180 
    181 # Allow building of OpenMP if compiler supports it
    182 # set (GMT_ENABLE_OPENMP TRUE)
    183 
    184 # Configure default units (possible values are SI and US) [SI]:
    185 #set (UNITS "US")
    186 
    187 # Enable building of shared libraries [TRUE] (disable to use static libraries;
    188 # not recommended; on non-x86 architectures uncomment the next option as well):
    189 #set (BUILD_SHARED_LIBS FALSE)
    190 
    191 # Create position independent code on all targets [auto] (needed for static
    192 # build on non-x86):
    193 #set (CMAKE_POSITION_INDEPENDENT_CODE TRUE)
    194 
    195 # Build GMT shared lib with supplemental modules [TRUE]:
    196 #set (BUILD_SUPPLEMENTS FALSE)
    197 
    198 # Build/Install GMT Developer include files [TRUE]:
    199 # This installs the extra include files and configured files needed by 3rd-party
    200 # developers.  Until we build a separate gmt-devel we include them in the main
    201 # Distribution.
    202 #set (BUILD_DEVELOPER FALSE)
    203 
    204 ##
    205 ## Section 4: Advanced tweaking
    206 ##
    207 
    208 #
    209 # Testing and development
    210 #
    211 
    212 # Enable running examples/tests with "ctest" or "make check" (out-of-source).
    213 # Need to set either DO_EXAMPLES, DO_TESTS or both and uncomment the following
    214 # line.
    215 #enable_testing()
    216 #set (DO_EXAMPLES TRUE)
    217 #set (DO_TESTS TRUE)
    218 #set (DO_ANIMATIONS TRUE)
    219 # Number of parallel test jobs with "make check":
    220 #set (N_TEST_JOBS 4)
    221 
    222 # Enable this option to run GMT programs from within ${GMT_BINARY_DIR} without
    223 # installing or setting GMT_SHAREDIR and GMT_USERDIR first. This is required
    224 # for testing [OFF]:
    225 #set (SUPPORT_EXEC_IN_BINARY_DIR ON)
    226 
    227 # List extra sub-dirs of 'src' with a CMakeList.txt to build non-module codes
    228 # that link against the full gmt libs (not just the API; for building codes
    229 # that only need the GMT API, see the gmt-custom project).
    230 #set (EXTRA_BUILD_DIRS apidemo)
    231 # Uncomment the following line to enable running low-level C tests of the API
    232 #set (DO_API_TESTS ON)
    233 
    234 # Directory in which to install the release sources per default
    235 # [${GMT_BINARY_DIR}/gmt-${GMT_PACKAGE_VERSION}]:
    236 #set (GMT_RELEASE_PREFIX "release-src-prefix")
    237 
    238 # If set to false, image conversion from PS images to PNG and PDF does
    239 # not depend on the gmt binary target. Note: "make gmt" is then required
    240 # before docs_depends [TRUE].
    241 #set (GMT_DOCS_DEPEND_ON_GMT FALSE)
    242 
    243 #
    244 # Debugging
    245 #
    246 
    247 # Set build type can be: empty, Debug, Release, RelWithDebInfo or MinSizeRel
    248 # [Release]:
    249 #set (CMAKE_BUILD_TYPE Debug)
    250 
    251 # Extra debugging for developers:
    252 #if ( CMAKE_GENERATOR STREQUAL "Xcode" )
    253 ##      So Xcode can find the supplemental plug-ins during debug sessions
    254 #       add_definitions(-DXCODER)
    255 #   add_definitions(-DDEBUG_MODERN)                     # To set PPID == 0 during Xcode test
    256 #       message("Add Xcode definition for GMT")
    257 #endif()
    258 #add_definitions(-DDEBUG)
    259 #add_definitions(-DMEMDEBUG) # Turn on memory tracking see gmt_support.c for extra info
    260 #set (CMAKE_C_FLAGS "-Wall -Wdeclaration-after-statement") # recommended even for release build
    261 #set (CMAKE_C_FLAGS "-Wextra ${CMAKE_C_FLAGS}")            # extra warnings
    262 #set (CMAKE_C_FLAGS_DEBUG -ggdb3)                          # gdb debugging symbols
    263 #set (CMAKE_LINK_DEPENDS_DEBUG_MODE TRUE)                  # debug link dependencies
    264 if (HAVE_OPENMP)
    265         set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized -flax-vector-conversions")  # check uninitialized variables
    266 else (HAVE_OPENMP)
    267         set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized")  # check uninitialized variables
    268 endif (HAVE_OPENMP)
    269 
    270 #
    271 # System specific tweaks
    272 #
    273 
    274 # This is for GCC on Solaris to avoid "relocations remain against allocatable
    275 # but non-writable sections" problems:
    276 #set (USER_GMTLIB_LINK_FLAGS -mimpure-text)
    277 
    278 # This may be needed to enable strdup and extended math functions with GCC and
    279 # Suncc on Solaris:
    280 #set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__EXTENSIONS__")
    281 
    282 # Do not warn when building with Windows SDK or Visual Studio Express:
    283 #set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON)
    284 
    285 # Manually select runtime library when compiling with Windows SDK or Visual
    286 # Studio Express:
    287 #set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS c:/Windows/System32/msvcr100.dll)
    288 
    289 # If your NetCDF library is static (not recommended, applies to Windows only)
    290 #set (NETCDF_STATIC TRUE)
    291 
    292 # If want to rename the DLLs to something else than the default (e.g. to
    293 # append the bitness - Windows only)
    294 # WARNING: if using this option it is mandatory that the suffix starts with an underscore.
    295 #if (WIN32)
    296 # set (BITAGE 32)
    297 # # Detect if we are building a 32 or 64 bits version
    298 # if (CMAKE_SIZEOF_VOID_P EQUAL 8)
    299 #   set (BITAGE 64)
    300 # endif ()
    301 # set (GMT_DLL_RENAME gmt_w${BITAGE})
    302 # set (PSL_DLL_RENAME psl_w${BITAGE})
    303 #endif(WIN32)
    304 
    305 # On Windows Visual C 2012 needs _ALLOW_KEYWORD_MACROS to build
    306 #if(MSVC11)
    307 #  add_definitions(/D_ALLOW_KEYWORD_MACROS)
    308 #endif(MSVC11)
  • ../trunk-jpl/externalpackages/gmt/configs/5.1/linux/cmake/ConfigUser.cmake

     
     1#
     2# $Id: ConfigUserTemplate.cmake 12904 2014-02-17 20:52:35Z fwobbe $
     3#
     4# Copyright (c) 1991-2014 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
     5# See LICENSE.TXT file for copying and redistribution conditions.
     6#
     7# This program is free software; you can redistribute it and/or modify it
     8# under the terms of the GNU Lesser General Public License as published by the
     9# Free Software Foundation; version 3 or any later version.
     10#
     11# This program is distributed in the hope that it will be useful, but WITHOUT
     12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     13# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
     14# for more details.
     15#
     16# Contact info: gmt.soest.hawaii.edu
     17# ----------------------------------------------------------------------------
     18
     19# Use this file to override variables in 'ConfigDefault.cmake' on a per-user
     20# basis.  First copy 'ConfigUserTemplate.cmake' to 'ConfigUser.cmake', then
     21# edit 'ConfigUser.cmake'.  'ConfigUser.cmake' is not version controlled
     22# (currently listed in svn:ignore property)
     23#
     24# Note: CMake considers an empty string, "FALSE", "OFF", "NO", or any string
     25# ending in "-NOTFOUND" to be false (this happens to be case-insensitive, so
     26# "False", "off", "no", and "something-NotFound" are all false).  Other values
     27# are true.  Thus it does not matter whether you use TRUE and FALSE, ON and
     28# OFF, or YES and NO for your booleans.
     29
     30##
     31## Section 1: Installation paths
     32##
     33
     34# ============================================================================
     35# Basic setup begins here.  All settings are optional.  In most cases, setting
     36# CMAKE_INSTALL_PREFIX should be all you need to do in order to build GMT with
     37# reasonable defaults enabled.
     38# ============================================================================
     39
     40# Installation path (usually defaults to /usr/local) [auto]:
     41set (CMAKE_INSTALL_PREFIX "$ENV{ISSM_DIR}/externalpackages/gmt/install")
     42
     43# Set install name suffix used for directories and gmt executables
     44# [undefined]:
     45#set (GMT_INSTALL_NAME_SUFFIX "suffix")
     46
     47# Install into traditional directory structure. Disable to install a
     48# distribution type directory structure (doc and share separated) [on]:
     49#set (GMT_INSTALL_TRADITIONAL_FOLDERNAMES OFF)
     50
     51# Install convenience links for GMT modules. Disable to install only the main
     52# gmt program and access modules as "gmt modulename options" [TRUE]:
     53#set (GMT_INSTALL_MODULE_LINKS FALSE)
     54
     55# Make executables relocatable on supported platforms (relative RPATH) [TRUE]:
     56#set (GMT_INSTALL_RELOCATABLE FALSE)
     57
     58# ============================================================================
     59# Advanced configuration begins here.  Usually it is not necessary to edit any
     60# settings below.  You should know what you are doing if you do though.  Note:
     61# installation paths are relative to ${CMAKE_INSTALL_PREFIX} unless absolute
     62# path is given.
     63# ============================================================================
     64
     65# Set binary installation path [bin]:
     66#set (GMT_BINDIR "bin")
     67
     68# Set library installation path [lib or lib64]:
     69#set (GMT_LIBDIR "lib")
     70
     71# Set include installation path [include/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     72#set (GMT_INCLUDEDIR "include/gmt")
     73
     74# Set share installation path [share or share/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     75#set (GMT_DATADIR "share/gmt")
     76
     77# Set doc installation path [share/doc or
     78# share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     79#set (GMT_DOCDIR "share/doc/gmt")
     80
     81# Set manpage installation path [share/man or
     82# share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}/man]:
     83#set (GMT_MANDIR "share/doc/gmt/man")
     84
     85# Install documentation files from this external location instead of creating
     86# new PDF and HTML documents from scratch [${GMT_SOURCE_DIR}/doc_release]:
     87#set (GMT_INSTALL_EXTERNAL_DOC OFF)
     88
     89# Install manual pages from this external location instead of creating the
     90# manpages from scratch [${GMT_SOURCE_DIR}/man_release]:
     91#set (GMT_INSTALL_EXTERNAL_MAN OFF)
     92
     93##
     94## Section 2: Build dependencies (should only be needed if CMake cannot
     95## automatically detect the rights version or path.)
     96##
     97
     98# Set path to GSHHG Shoreline Database [auto]:
     99set (GSHHG_ROOT "$ENV{ISSM_DIR}/externalpackages/gshhg/install")
     100
     101# Copy GSHHG files to $/coast [FALSE]:
     102#set (COPY_GSHHG TRUE)
     103
     104# Set path to DCW Digital Chart of the World for GMT [auto]:
     105#set (DCW_ROOT "dcw-gmt_path")
     106
     107# Copy DCW files to $/dcw [FALSE]:
     108#set (COPY_DCW TRUE)
     109
     110# Set location of NetCDF (can be root directory, path to header file or path
     111# to nc-config) [auto]:
     112set (NETCDF_ROOT "$ENV{ISSM_DIR}/externalpackages/netcdf/install")
     113
     114# Set location of GDAL (can be root directory, path to header file or path to
     115# gdal-config) [auto]:
     116set (GDAL_ROOT "$ENV{ISSM_DIR}/externalpackages/gdal/install")
     117
     118# Set location of PCRE (can be root directory, path to header file or path to
     119# pcre-config) [auto]:
     120#set (PCRE_ROOT "pcre_install_prefix")
     121
     122# Set location of single precision FFTW (can be root directory or path to
     123# header file) [auto]:
     124#set (FFTW3_ROOT "fftw_install_prefix")
     125
     126# Set location of ZLIB (can be root directory or path to header file) [auto]:
     127set (ZLIB_ROOT "$ENV{ISSM_DIR}/externalpackages/zlib/install")
     128
     129##
     130## Section 3: GMT features
     131##
     132
     133# Enforce GPL or LGPL conformity. Use this to disable routines that cannot be
     134# redistributed under the terms of the GPL or LGPL such as Shewchuk's
     135# triangulation (valid values are GPL, LGPL and off) [off]:
     136#set (LICENSE_RESTRICTED GPL)
     137
     138# Configure default units (possible values are SI and US) [SI]:
     139#set (UNITS "US")
     140
     141# Enable building of shared libraries [TRUE] (disable to use static libraries;
     142# not recommended):
     143#set (BUILD_SHARED_LIBS FALSE)
     144
     145# Build GMT shared lib with supplemental modules [TRUE]:
     146#set (BUILD_SUPPLEMENTS FALSE)
     147
     148##
     149## Section 4: Advanced tweaking
     150##
     151
     152#
     153# Testing and development
     154#
     155
     156# Enable running examples/tests with "ctest" or "make check" (out-of-source).
     157# Need to set either DO_EXAMPLES, DO_TESTS or both and uncomment the following
     158# line.
     159#enable_testing()
     160#set (DO_EXAMPLES TRUE)
     161#set (DO_TESTS TRUE)
     162# Number of parallel test jobs with "make check":
     163#set (N_TEST_JOBS 4)
     164
     165# Enable this option to run GMT programs from within ${GMT_BINARY_DIR} without
     166# installing or setting GMT_SHAREDIR and GMT_USERDIR first. This is required
     167# for testing [OFF]:
     168#set (SUPPORT_EXEC_IN_BINARY_DIR ON)
     169
     170# List extra sub-dirs of 'src' with a CMakeList.txt to build non-module codes
     171# that link against the full gmt libs (not just the API; for building codes
     172# that only need the GMT API, see the gmtextension project).
     173#set (EXTRA_BUILD_DIRS apidemo)
     174
     175# Directory in which to install the release sources per default
     176# [${GMT_BINARY_DIR}/gmt-${GMT_PACKAGE_VERSION}]:
     177#set (GMT_RELEASE_PREFIX "release-src-prefix")
     178
     179# If set to false, image conversion from PS images to PNG and PDF does
     180# not depend on the gmt binary target. Note: "make gmt" is then required
     181# before docs_depends [TRUE].
     182#set (GMT_DOCS_DEPEND_ON_GMT FALSE)
     183
     184#
     185# Debugging
     186#
     187
     188# Set build type can be: empty, Debug, Release, RelWithDebInfo or MinSizeRel
     189# [Release]:
     190#set (CMAKE_BUILD_TYPE Debug)
     191
     192# Extra debugging for developers:
     193#add_definitions(-DDEBUG)
     194#add_definitions(-DMEMDEBUG) # Turn on memory tracking see gmt_support.c for extra info
     195#set (CMAKE_C_FLAGS "-Wall -Wdeclaration-after-statement") # recommended even for release build
     196#set (CMAKE_C_FLAGS "-Wextra ${CMAKE_C_FLAGS}")            # extra warnings
     197#set (CMAKE_C_FLAGS_DEBUG -ggdb3)                          # gdb debugging symbols
     198#set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized")  # check uninitialized variables
     199#set (CMAKE_LINK_DEPENDS_DEBUG_MODE TRUE)                  # debug link dependencies
     200
     201#
     202# System specific tweaks
     203#
     204
     205# This is for GCC on Solaris to avoid "relocations remain against allocatable
     206# but non-writable sections" problems:
     207#set (USER_GMTLIB_LINK_FLAGS -mimpure-text)
     208
     209# This may be needed to enable strdup and extended math functions with GCC and
     210# Suncc on Solaris:
     211#set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__EXTENSIONS__")
     212
     213# Do not warn when building with Windows SDK or Visual Studio Express:
     214#set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON)
     215
     216# Manually select runtime library when compiling with Windows SDK or Visual
     217# Studio Express:
     218#set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS c:/Windows/System32/msvcr100.dll)
     219
     220# If your NetCDF library is static (not recommended, applies to Windows only)
     221#set (NETCDF_STATIC TRUE)
     222
     223# If want to rename the DLLs to something else than the default (e.g. to
     224# append the bitness - Windows only)
     225#if (WIN32)
     226# set (BITAGE 32)
     227# # Detect if we are building a 32 or 64 bits version
     228# if (CMAKE_SIZEOF_VOID_P EQUAL 8)
     229#   set (BITAGE 64)
     230# endif ()
     231# set (GMT_DLL_RENAME gmt_w${BITAGE})
     232# set (PSL_DLL_RENAME psl_w${BITAGE})
     233#endif(WIN32)
     234
     235# On Windows Visual C 2012 needs _ALLOW_KEYWORD_MACROS to build
     236#if(MSVC11)
     237#  add_definitions(/D_ALLOW_KEYWORD_MACROS)
     238#endif(MSVC11)
     239
     240# vim: textwidth=78 noexpandtab tabstop=2 softtabstop=2 shiftwidth=2
  • ../trunk-jpl/externalpackages/gmt/configs/6.0/linux/cmake/ConfigUser.cmake

     
     1#
     2#
     3# Copyright (c) 1991-2019 by the GMT Team (https://www.generic-mapping-tools.org/team.html)
     4# See LICENSE.TXT file for copying and redistribution conditions.
     5#
     6# This program is free software; you can redistribute it and/or modify it
     7# under the terms of the GNU Lesser General Public License as published by the
     8# Free Software Foundation; version 3 or any later version.
     9#
     10# This program is distributed in the hope that it will be useful, but WITHOUT
     11# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
     12# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
     13# for more details.
     14#
     15# Contact info: www.generic-mapping-tools.org
     16# ----------------------------------------------------------------------------
     17
     18# Use this file to override variables in 'ConfigDefault.cmake' on a per-user
     19# basis.  First copy 'ConfigUserTemplate.cmake' to 'ConfigUser.cmake', then
     20# edit 'ConfigUser.cmake'.  'ConfigUser.cmake' is not version controlled
     21# (currently listed in .gitignore).
     22#
     23# Note: CMake considers an empty string, "FALSE", "OFF", "NO", or any string
     24# ending in "-NOTFOUND" to be false (this happens to be case-insensitive, so
     25# "False", "off", "no", and "something-NotFound" are all false).  Other values
     26# are true.  Thus it does not matter whether you use TRUE and FALSE, ON and
     27# OFF, or YES and NO for your booleans.
     28
     29##
     30## Section 1: Installation paths
     31##
     32
     33# ============================================================================
     34# Basic setup begins here.  All settings are optional.  In most cases, setting
     35# CMAKE_INSTALL_PREFIX should be all you need to do in order to build GMT with
     36# reasonable defaults enabled.  Note: If you need to specify directory names
     37# with spaces (e.g., on Windows) then you must put them in quotes.
     38# ============================================================================
     39
     40# Installation path (usually defaults to /usr/local) [auto]:
     41set (CMAKE_INSTALL_PREFIX "$ENV{ISSM_DIR}/externalpackages/gmt/install")
     42
     43# Set install name suffix used for directories and gmt executables
     44# [undefined]:
     45#set (GMT_INSTALL_NAME_SUFFIX "suffix")
     46
     47# Install into traditional directory structure. Disable to install a
     48# distribution type directory structure (doc and share separated) [on]:
     49#set (GMT_INSTALL_TRADITIONAL_FOLDERNAMES OFF)
     50
     51# Install convenience links for GMT modules. Disable to install only the main
     52# gmt program and access modules as "gmt modulename options" [TRUE]:
     53#set (GMT_INSTALL_MODULE_LINKS FALSE)
     54
     55# Make executables relocatable on supported platforms (relative RPATH) [FALSE]:
     56set (GMT_INSTALL_RELOCATABLE TRUE)
     57
     58# Exclude optional GDAL, PCRE, PCRE2, FFTW3, LAPACK, BLAS, ZLIB dependencies even if you have them installed [FALSE]
     59#set (GMT_EXCLUDE_GDAL TRUE)
     60#set (GMT_EXCLUDE_PCRE TRUE)
     61#set (GMT_EXCLUDE_PCRE2 TRUE)
     62#set (GMT_EXCLUDE_FFTW3 TRUE)
     63#set (GMT_EXCLUDE_LAPACK TRUE)
     64#set (GMT_EXCLUDE_BLAS TRUE)
     65#set (GMT_EXCLUDE_ZLIB TRUE)
     66
     67# ============================================================================
     68# Advanced configuration begins here.  Usually it is not necessary to edit any
     69# settings below.  You should know what you are doing if you do though.  Note:
     70# installation paths are relative to ${CMAKE_INSTALL_PREFIX} unless absolute
     71# path is given.
     72# ============================================================================
     73
     74# Set binary installation path [bin]:
     75#set (GMT_BINDIR "bin")
     76
     77# Set library installation path [lib or lib64]:
     78#set (GMT_LIBDIR "lib")
     79
     80# Set include installation path [include/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     81#set (GMT_INCLUDEDIR "include/gmt")
     82
     83# Set share installation path [share or share/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     84#set (GMT_DATADIR "share/gmt")
     85
     86# Set doc installation path [share/doc or
     87# share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}]:
     88#set (GMT_DOCDIR "share/doc/gmt")
     89
     90# Set manpage installation path [share/man or
     91# share/doc/gmt${GMT_INSTALL_NAME_SUFFIX}/man]:
     92#set (GMT_MANDIR "share/doc/gmt/man")
     93
     94# Install documentation files from this external location instead of creating
     95# new HTML documents from scratch [${GMT_SOURCE_DIR}/doc_release]:
     96#set (GMT_INSTALL_EXTERNAL_DOC OFF)
     97
     98# Install manual pages from this external location instead of creating the
     99# manpages from scratch [${GMT_SOURCE_DIR}/man_release]:
     100#set (GMT_INSTALL_EXTERNAL_MAN OFF)
     101
     102##
     103## Section 2: Build dependencies (should only be needed if CMake cannot
     104## automatically detect the rights version or path.)
     105##
     106
     107# Set URL to GMT Data server [auto]:
     108#set (GMT_DATA_SERVER "data_server_url")
     109
     110# Set path to GSHHG Shoreline Database [auto]:
     111set (GSHHG_ROOT "$ENV{ISSM_DIR}/externalpackages/gshhg/install")
     112
     113# Copy GSHHG files to ${GMT_DATADIR}/coast [FALSE]:
     114#set (COPY_GSHHG TRUE)
     115
     116# Set path to DCW Digital Chart of the World for GMT [auto]:
     117#set (DCW_ROOT "dcw-gmt_path")
     118
     119# Copy DCW files to ${GMT_DATADIR}/dcw [FALSE]:
     120#set (COPY_DCW TRUE)
     121
     122# Copy GDAL's 'data' directory to ${GMT_DATADIR}/GDAL_DATA [FALSE]:
     123#set (GDAL_DATA_PATH C:/programs/compa_libs/gdal_GIT/compileds/VC14_64/data)
     124
     125# Copy PROJ4's 'share' directory to ${GMT_DATADIR}/GDAL_DATA [FALSE]:
     126#set (PROJ_DATA_PATH C:/programs/compa_libs/proj5_GIT/compileds/VC14_64/share/proj)
     127
     128# FOR WINDOWS ONLY
     129# Set path to location of Ghostscript binaries (optional install)
     130#set (GHOST_DATA_PATH C:/programs/compa_libs/ghostscript/bin)
     131
     132# FOR WINDOWS ONLY
     133# Set path to location where the gmtmex is located.
     134#set (GMTMEX_PATH "C:/progs_cygw/GMTdev/gmtmex/${GMTver}")
     135
     136# Set location of NetCDF (can be root directory, path to header file or path
     137# to nc-config) [auto]:
     138set (NETCDF_ROOT "$ENV{ISSM_DIR}/externalpackages/netcdf/install")
     139
     140# Set location of GDAL (can be root directory, path to header file or path to
     141# gdal-config) [auto]:
     142set (GDAL_ROOT "$ENV{ISSM_DIR}/externalpackages/gdal/install")
     143
     144# Set location of PCRE (can be root directory, path to header file or path to
     145# pcre-config) [auto]:
     146#set (PCRE_ROOT "pcre_install_prefix")
     147# Alternatively, set location of PCRE2 (can be root directory, path to header file or path to
     148# pcre2-config) [auto]:
     149#set (PCRE2_ROOT "pcre2_install_prefix")
     150
     151# Set location of single precision FFTW (can be root directory or path to
     152# header file) [auto]:
     153#set (FFTW3_ROOT "fftw_install_prefix")
     154
     155# Set location of ZLIB (can be root directory or path to header file) [auto]:
     156set (ZLIB_ROOT "$ENV{ISSM_DIR}/externalpackages/zlib/install")
     157
     158# Set location of CURL (can be root directory or path to header file) [auto]:
     159#set (CURL_ROOT "curl_install_prefix")
     160
     161# Set location of GLIB component gthread [auto].  This is an optional (and
     162# experimental) option which you need to enable:
     163#set (GMT_USE_THREADS TRUE)
     164# If pkg-config is not installed (e.g. on Windows) you need to specify these:
     165#set (GLIB_INCLUDE_DIR c:/path/to/glib-dev/include/glib-2.0)
     166#set (GLIB_LIBRARIES c:/path/to/glib-dev/lib/glib-2.0.lib)
     167
     168# Set LAPACK location. Use this when want to link with LAPACK and it's not found automatically
     169set (LAPACK_LIBRARY "-L$ENV{ISSM_DIR}/externalpackages/lapack/install/lib -llapack")
     170set (BLAS_LIBRARY "-L$ENV{ISSM_DIR}/externalpackages/lapack/install/lib -lblas")
     171
     172##
     173## Section 3: GMT features
     174##
     175
     176# Enforce GPL or LGPL conformity. Use this to disable routines that cannot be
     177# redistributed under the terms of the GPL or LGPL such as Shewchuk's
     178# triangulation (valid values are GPL, LGPL and off) [off]:
     179#set (LICENSE_RESTRICTED GPL)
     180
     181# Allow building of OpenMP if compiler supports it
     182# set (GMT_ENABLE_OPENMP TRUE)
     183
     184# Configure default units (possible values are SI and US) [SI]:
     185#set (UNITS "US")
     186
     187# Enable building of shared libraries [TRUE] (disable to use static libraries;
     188# not recommended; on non-x86 architectures uncomment the next option as well):
     189#set (BUILD_SHARED_LIBS FALSE)
     190
     191# Create position independent code on all targets [auto] (needed for static
     192# build on non-x86):
     193#set (CMAKE_POSITION_INDEPENDENT_CODE TRUE)
     194
     195# Build GMT shared lib with supplemental modules [TRUE]:
     196#set (BUILD_SUPPLEMENTS FALSE)
     197
     198# Build/Install GMT Developer include files [TRUE]:
     199# This installs the extra include files and configured files needed by 3rd-party
     200# developers.  Until we build a separate gmt-devel we include them in the main
     201# Distribution.
     202#set (BUILD_DEVELOPER FALSE)
     203
     204##
     205## Section 4: Advanced tweaking
     206##
     207
     208#
     209# Testing and development
     210#
     211
     212# Enable running examples/tests with "ctest" or "make check" (out-of-source).
     213# Need to set either DO_EXAMPLES, DO_TESTS or both and uncomment the following
     214# line.
     215#enable_testing()
     216#set (DO_EXAMPLES TRUE)
     217#set (DO_TESTS TRUE)
     218#set (DO_ANIMATIONS TRUE)
     219# Number of parallel test jobs with "make check":
     220#set (N_TEST_JOBS 4)
     221
     222# Enable this option to run GMT programs from within ${GMT_BINARY_DIR} without
     223# installing or setting GMT_SHAREDIR and GMT_USERDIR first. This is required
     224# for testing [OFF]:
     225#set (SUPPORT_EXEC_IN_BINARY_DIR ON)
     226
     227# List extra sub-dirs of 'src' with a CMakeList.txt to build non-module codes
     228# that link against the full gmt libs (not just the API; for building codes
     229# that only need the GMT API, see the gmt-custom project).
     230#set (EXTRA_BUILD_DIRS apidemo)
     231# Uncomment the following line to enable running low-level C tests of the API
     232#set (DO_API_TESTS ON)
     233
     234# Directory in which to install the release sources per default
     235# [${GMT_BINARY_DIR}/gmt-${GMT_PACKAGE_VERSION}]:
     236#set (GMT_RELEASE_PREFIX "release-src-prefix")
     237
     238# If set to false, image conversion from PS images to PNG and PDF does
     239# not depend on the gmt binary target. Note: "make gmt" is then required
     240# before docs_depends [TRUE].
     241#set (GMT_DOCS_DEPEND_ON_GMT FALSE)
     242
     243#
     244# Debugging
     245#
     246
     247# Set build type can be: empty, Debug, Release, RelWithDebInfo or MinSizeRel
     248# [Release]:
     249#set (CMAKE_BUILD_TYPE Debug)
     250
     251# Extra debugging for developers:
     252#if ( CMAKE_GENERATOR STREQUAL "Xcode" )
     253##      So Xcode can find the supplemental plug-ins during debug sessions
     254#       add_definitions(-DXCODER)
     255#   add_definitions(-DDEBUG_MODERN)                     # To set PPID == 0 during Xcode test
     256#       message("Add Xcode definition for GMT")
     257#endif()
     258#add_definitions(-DDEBUG)
     259#add_definitions(-DMEMDEBUG) # Turn on memory tracking see gmt_support.c for extra info
     260#set (CMAKE_C_FLAGS "-Wall -Wdeclaration-after-statement") # recommended even for release build
     261#set (CMAKE_C_FLAGS "-Wextra ${CMAKE_C_FLAGS}")            # extra warnings
     262#set (CMAKE_C_FLAGS_DEBUG -ggdb3)                          # gdb debugging symbols
     263#set (CMAKE_LINK_DEPENDS_DEBUG_MODE TRUE)                  # debug link dependencies
     264if (HAVE_OPENMP)
     265        set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized -flax-vector-conversions")  # check uninitialized variables
     266else (HAVE_OPENMP)
     267        set (CMAKE_C_FLAGS_RELEASE "-ggdb3 -O2 -Wuninitialized")  # check uninitialized variables
     268endif (HAVE_OPENMP)
     269
     270#
     271# System specific tweaks
     272#
     273
     274# This is for GCC on Solaris to avoid "relocations remain against allocatable
     275# but non-writable sections" problems:
     276#set (USER_GMTLIB_LINK_FLAGS -mimpure-text)
     277
     278# This may be needed to enable strdup and extended math functions with GCC and
     279# Suncc on Solaris:
     280#set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__EXTENSIONS__")
     281
     282# Do not warn when building with Windows SDK or Visual Studio Express:
     283#set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON)
     284
     285# Manually select runtime library when compiling with Windows SDK or Visual
     286# Studio Express:
     287#set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS c:/Windows/System32/msvcr100.dll)
     288
     289# If your NetCDF library is static (not recommended, applies to Windows only)
     290#set (NETCDF_STATIC TRUE)
     291
     292# If want to rename the DLLs to something else than the default (e.g. to
     293# append the bitness - Windows only)
     294# WARNING: if using this option it is mandatory that the suffix starts with an underscore.
     295#if (WIN32)
     296# set (BITAGE 32)
     297# # Detect if we are building a 32 or 64 bits version
     298# if (CMAKE_SIZEOF_VOID_P EQUAL 8)
     299#   set (BITAGE 64)
     300# endif ()
     301# set (GMT_DLL_RENAME gmt_w${BITAGE})
     302# set (PSL_DLL_RENAME psl_w${BITAGE})
     303#endif(WIN32)
     304
     305# On Windows Visual C 2012 needs _ALLOW_KEYWORD_MACROS to build
     306#if(MSVC11)
     307#  add_definitions(/D_ALLOW_KEYWORD_MACROS)
     308#endif(MSVC11)
Note: See TracBrowser for help on using the repository browser.