From f44ecaa4f27e7538ddcad66d40e543bffa2d2d86 Mon Sep 17 00:00:00 2001 From: manuel Date: Sun, 4 Jun 2017 16:57:49 +0200 Subject: sync with upstream --- project/cmake/scripts/common/AddOptions.cmake | 78 --------------------------- 1 file changed, 78 deletions(-) delete mode 100644 project/cmake/scripts/common/AddOptions.cmake (limited to 'project/cmake/scripts/common/AddOptions.cmake') diff --git a/project/cmake/scripts/common/AddOptions.cmake b/project/cmake/scripts/common/AddOptions.cmake deleted file mode 100644 index 96837c1..0000000 --- a/project/cmake/scripts/common/AddOptions.cmake +++ /dev/null @@ -1,78 +0,0 @@ -# - Add options without repeating them on the command line -# -# Synopsis: -# -# add_options (lang build opts) -# -# where: -# -# lang Name of the language whose compiler should receive the -# options, e.g. CXX. If a comma-separated list is received -# then the option is added for all those languages. Use the -# special value ALL_LANGUAGES for these languages: CXX, C -# and Fortran -# -# build Kind of build to which this options should apply, -# such as DEBUG and RELEASE. This can also be a comma- -# separated list. Use the special value ALL_BUILDS to apply -# to all builds. -# -# opts List of options to add. Each should be quoted. -# -# Example: -# -# add_options (CXX RELEASE "-O3" "-DNDEBUG" "-Wall") - -function(add_options langs builds) - # special handling of empty language specification - if("${langs}" STREQUAL "ALL_LANGUAGES") - set(langs CXX C Fortran) - endif() - foreach(lang IN LISTS langs) - # prepend underscore if necessary - foreach(build IN LISTS builds) - if(NOT ("${build}" STREQUAL "ALL_BUILDS")) - set(_bld "_${build}") - string(TOUPPER "${_bld}" _bld) - else() - set(_bld "") - endif() - foreach(_opt IN LISTS ARGN) - set(_var "CMAKE_${lang}_FLAGS${_bld}") - #message(STATUS "Adding \"${_opt}\" to \${${_var}}") - # remove it first - string(REPLACE "${_opt}" "" _without "${${_var}}") - string(STRIP "${_without}" _without) - # we need to strip this one as well, so they are comparable - string(STRIP "${${_var}}" _stripped) - # if it wasn't there, then add it at the end - if("${_without}" STREQUAL "${_stripped}") - # don't add any extra spaces if no options yet are set - if(NOT ${_stripped} STREQUAL "") - set(${_var} "${_stripped} ${_opt}") - else() - set(${_var} "${_opt}") - endif() - set(${_var} "${${_var}}" PARENT_SCOPE) - endif() - endforeach() - endforeach() - endforeach() -endfunction() - -# set varname to flag unless user has specified something that matches regex -function(set_default_option varname flag regex) - if(NOT "$ENV{CXXFLAGS}" MATCHES "${regex}" - AND NOT "${CMAKE_CXX_FLAGS}" MATCHES "${regex}" - AND NOT "${CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}}" MATCHES "${regex}") - set(${varname} ${flag} PARENT_SCOPE) - else() - set(${varname} PARENT_SCOPE) - endif() -endfunction() - -# note: this must be called before project() -macro(no_default_options) - # prevent the platform probe to set options - set(CMAKE_NOT_USING_CONFIG_FLAGS TRUE) -endmacro() -- cgit v1.2.3