[Bf-blender-cvs] [cf0ba59e311] master: Fix Cycles redefining some Blender macros

Brecht Van Lommel noreply at git.blender.org
Fri Sep 4 23:41:05 CEST 2020


Commit: cf0ba59e311b7a5aa61aef2d13ed3c5205657d7a
Author: Brecht Van Lommel
Date:   Fri Sep 4 23:27:24 2020 +0200
Branches: master
https://developer.blender.org/rBcf0ba59e311b7a5aa61aef2d13ed3c5205657d7a

Fix Cycles redefining some Blender macros

These changes were accidentally copied over from the Cycles repository, remove
them again.

===================================================================

M	intern/cycles/cmake/macros.cmake

===================================================================

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)



More information about the Bf-blender-cvs mailing list