source: issm/oecreview/Archive/24307-24683/ISSM-24452-24453.diff

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

CHG: added new review

File size: 12.4 KB
  • ../trunk-jpl/externalpackages/gmt/configs/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]:
    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/petsc/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/petsc/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)
Note: See TracBrowser for help on using the repository browser.