diff options
author | Brecht Van Lommel <brecht@blender.org> | 2020-09-05 00:27:24 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-09-05 00:32:23 +0300 |
commit | cf0ba59e311b7a5aa61aef2d13ed3c5205657d7a (patch) | |
tree | 18ec189af22892d52b88e8235a7b22ce3aa12369 /intern/cycles/cmake | |
parent | e73c60f1bd64d8a54282622a96e772f1eeaeef19 (diff) |
Fix Cycles redefining some Blender macros
These changes were accidentally copied over from the Cycles repository, remove
them again.
Diffstat (limited to 'intern/cycles/cmake')
-rw-r--r-- | intern/cycles/cmake/macros.cmake | 230 |
1 files changed, 0 insertions, 230 deletions
diff --git a/intern/cycles/cmake/macros.cmake b/intern/cycles/cmake/macros.cmake index a984dc8301a..ad20916d471 100644 --- a/intern/cycles/cmake/macros.cmake +++ b/intern/cycles/cmake/macros.cmake @@ -12,236 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -macro(ADD_CHECK_CXX_COMPILER_FLAG - _CXXFLAGS - _CACHE_VAR - _FLAG) - - include(CheckCXXCompilerFlag) - - CHECK_CXX_COMPILER_FLAG("${_FLAG}" "${_CACHE_VAR}") - if(${_CACHE_VAR}) - # message(STATUS "Using CXXFLAG: ${_FLAG}") - set(${_CXXFLAGS} "${${_CXXFLAGS}} ${_FLAG}") - else() - message(STATUS "Unsupported CXXFLAG: ${_FLAG}") - endif() -endmacro() - -# pair of macros to allow libraries to be specify files to install, but to -# only install them at the end so the directories don't get cleared with -# the files in them. used by cycles to install addon. -macro(delayed_install - base - files - destination) - - foreach(f ${files}) - if(IS_ABSOLUTE ${f}) - set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${f}) - else() - set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_FILES ${base}/${f}) - endif() - set_property(GLOBAL APPEND PROPERTY DELAYED_INSTALL_DESTINATIONS ${destination}) - endforeach() -endmacro() - -# note this is a function instead of a macro so that ${BUILD_TYPE} in targetdir -# does not get expanded in calling but is preserved -function(delayed_do_install - targetdir) - - get_property(files GLOBAL PROPERTY DELAYED_INSTALL_FILES) - get_property(destinations GLOBAL PROPERTY DELAYED_INSTALL_DESTINATIONS) - - if(files) - list(LENGTH files n) - math(EXPR n "${n}-1") - - foreach(i RANGE ${n}) - list(GET files ${i} f) - list(GET destinations ${i} d) - install(FILES ${f} DESTINATION ${targetdir}/${d}) - endforeach() - endif() -endfunction() - -if(NOT COMMAND remove_cc_flag) - macro(remove_cc_flag - flag) - - string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}") - string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}") - string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") - string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL}") - string(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}") - - string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}") - string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") - string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}") - string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") - - endmacro() -endif() - -macro(remove_extra_strict_flags) - if(CMAKE_COMPILER_IS_GNUCC) - remove_cc_flag("-Wunused-parameter") - endif() - - if(CMAKE_C_COMPILER_ID MATCHES "Clang") - remove_cc_flag("-Wunused-parameter") - endif() - - if(MSVC) - # TODO - endif() -endmacro() - -macro(TEST_UNORDERED_MAP_SUPPORT) - # - Detect unordered_map availability - # Test if a valid implementation of unordered_map exists - # and define the include path - # This module defines - # HAVE_UNORDERED_MAP, whether unordered_map implementation was found - # - # HAVE_STD_UNORDERED_MAP_HEADER, <unordered_map.h> was found - # HAVE_UNORDERED_MAP_IN_STD_NAMESPACE, unordered_map is in namespace std - # HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE, unordered_map is in namespace std::tr1 - # - # UNORDERED_MAP_INCLUDE_PREFIX, include path prefix for unordered_map, if found - # UNORDERED_MAP_NAMESPACE, namespace for unordered_map, if found - - include(CheckIncludeFileCXX) - CHECK_INCLUDE_FILE_CXX("unordered_map" HAVE_STD_UNORDERED_MAP_HEADER) - if(HAVE_STD_UNORDERED_MAP_HEADER) - # Even so we've found unordered_map header file it doesn't - # mean unordered_map and unordered_set will be declared in - # std namespace. - # - # Namely, MSVC 2008 have unordered_map header which declares - # unordered_map class in std::tr1 namespace. In order to support - # this, we do extra check to see which exactly namespace is - # to be used. - - include(CheckCXXSourceCompiles) - CHECK_CXX_SOURCE_COMPILES("#include <unordered_map> - int main() { - std::unordered_map<int, int> map; - return 0; - }" - HAVE_UNORDERED_MAP_IN_STD_NAMESPACE) - if(HAVE_UNORDERED_MAP_IN_STD_NAMESPACE) - message(STATUS "Found unordered_map/set in std namespace.") - - set(HAVE_UNORDERED_MAP "TRUE") - set(UNORDERED_MAP_INCLUDE_PREFIX "") - set(UNORDERED_MAP_NAMESPACE "std") - else() - CHECK_CXX_SOURCE_COMPILES("#include <unordered_map> - int main() { - std::tr1::unordered_map<int, int> map; - return 0; - }" - HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE) - if(HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE) - message(STATUS "Found unordered_map/set in std::tr1 namespace.") - - set(HAVE_UNORDERED_MAP "TRUE") - set(UNORDERED_MAP_INCLUDE_PREFIX "") - set(UNORDERED_MAP_NAMESPACE "std::tr1") - else() - message(STATUS "Found <unordered_map> but cannot find either std::unordered_map " - "or std::tr1::unordered_map.") - endif() - endif() - else() - CHECK_INCLUDE_FILE_CXX("tr1/unordered_map" HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE) - if(HAVE_UNORDERED_MAP_IN_TR1_NAMESPACE) - message(STATUS "Found unordered_map/set in std::tr1 namespace.") - - set(HAVE_UNORDERED_MAP "TRUE") - set(UNORDERED_MAP_INCLUDE_PREFIX "tr1") - set(UNORDERED_MAP_NAMESPACE "std::tr1") - else() - message(STATUS "Unable to find <unordered_map> or <tr1/unordered_map>. ") - endif() - endif() -endmacro() - -macro(TEST_SHARED_PTR_SUPPORT) - # This check are coming from Ceres library. - # - # Find shared pointer header and namespace. - # - # This module defines the following variables: - # - # SHARED_PTR_FOUND: TRUE if shared_ptr found. - # SHARED_PTR_TR1_MEMORY_HEADER: True if <tr1/memory> header is to be used - # for the shared_ptr object, otherwise use <memory>. - # SHARED_PTR_TR1_NAMESPACE: TRUE if shared_ptr is defined in std::tr1 namespace, - # otherwise it's assumed to be defined in std namespace. - - include(CheckIncludeFileCXX) - set(SHARED_PTR_FOUND FALSE) - CHECK_INCLUDE_FILE_CXX(memory HAVE_STD_MEMORY_HEADER) - if(HAVE_STD_MEMORY_HEADER) - # Finding the memory header doesn't mean that shared_ptr is in std - # namespace. - # - # In particular, MSVC 2008 has shared_ptr declared in std::tr1. In - # order to support this, we do an extra check to see which namespace - # should be used. - include(CheckCXXSourceCompiles) - CHECK_CXX_SOURCE_COMPILES("#include <memory> - int main() { - std::shared_ptr<int> int_ptr; - return 0; - }" - HAVE_SHARED_PTR_IN_STD_NAMESPACE) - - if(HAVE_SHARED_PTR_IN_STD_NAMESPACE) - message("-- Found shared_ptr in std namespace using <memory> header.") - set(SHARED_PTR_FOUND TRUE) - else() - CHECK_CXX_SOURCE_COMPILES("#include <memory> - int main() { - std::tr1::shared_ptr<int> int_ptr; - return 0; - }" - HAVE_SHARED_PTR_IN_TR1_NAMESPACE) - if(HAVE_SHARED_PTR_IN_TR1_NAMESPACE) - message("-- Found shared_ptr in std::tr1 namespace using <memory> header.") - set(SHARED_PTR_TR1_NAMESPACE TRUE) - set(SHARED_PTR_FOUND TRUE) - endif() - endif() - endif() - - if(NOT SHARED_PTR_FOUND) - # Further, gcc defines shared_ptr in std::tr1 namespace and - # <tr1/memory> is to be included for this. And what makes things - # even more tricky is that gcc does have <memory> header, so - # all the checks above wouldn't find shared_ptr. - CHECK_INCLUDE_FILE_CXX("tr1/memory" HAVE_TR1_MEMORY_HEADER) - if(HAVE_TR1_MEMORY_HEADER) - CHECK_CXX_SOURCE_COMPILES("#include <tr1/memory> - int main() { - std::tr1::shared_ptr<int> int_ptr; - return 0; - }" - HAVE_SHARED_PTR_IN_TR1_NAMESPACE_FROM_TR1_MEMORY_HEADER) - if(HAVE_SHARED_PTR_IN_TR1_NAMESPACE_FROM_TR1_MEMORY_HEADER) - message("-- Found shared_ptr in std::tr1 namespace using <tr1/memory> header.") - set(SHARED_PTR_TR1_MEMORY_HEADER TRUE) - set(SHARED_PTR_TR1_NAMESPACE TRUE) - set(SHARED_PTR_FOUND TRUE) - endif() - endif() - endif() -endmacro() - function(cycles_set_solution_folder target) if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS) get_filename_component(folderdir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) |