[Bf-blender-cvs] [fdc7aaa8df0] tmp_libupdate_34: fix: bad merge in previous commit

Ray Molenkamp noreply at git.blender.org
Mon Aug 15 21:39:03 CEST 2022


Commit: fdc7aaa8df02c3535145e9f9b267ba6cd3c290c1
Author: Ray Molenkamp
Date:   Mon Aug 15 13:38:55 2022 -0600
Branches: tmp_libupdate_34
https://developer.blender.org/rBfdc7aaa8df02c3535145e9f9b267ba6cd3c290c1

fix: bad merge in previous commit

source/creator/CMakeLists.txt got truncated somehow.

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

M	source/creator/CMakeLists.txt

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

diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
index e69de29bb2d..b9912929a54 100644
--- a/source/creator/CMakeLists.txt
+++ b/source/creator/CMakeLists.txt
@@ -0,0 +1,1284 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright 2006 Blender Foundation. All rights reserved.
+
+blender_include_dirs(
+  ../../intern/clog
+  ../../intern/glew-mx
+  ../../intern/guardedalloc
+  ../blender/blenkernel
+  ../blender/blenlib
+  ../blender/blenloader
+  ../blender/depsgraph
+  ../blender/editors/include
+  ../blender/gpu
+  ../blender/imbuf
+  ../blender/makesdna
+  ../blender/makesrna
+  ../blender/render
+  ../blender/windowmanager
+)
+
+set(LIB
+  bf_windowmanager
+)
+
+if(WITH_TBB)
+  # Force TBB libraries to be in front of MKL (part of OpenImageDenoise), so
+  # that it is initialized before MKL and static library initialization order
+  # issues are avoided.
+  #
+  # This isn't fully robust but seems to work.
+  list(INSERT LIB 0 ${TBB_LIBRARIES})
+  list(INSERT LIB 0 bf_blenkernel)
+endif()
+
+if(WIN32)
+  blender_include_dirs(../../intern/utfconv)
+endif()
+
+if(WITH_LIBMV)
+  blender_include_dirs(../../intern/libmv)
+  add_definitions(-DWITH_LIBMV)
+endif()
+
+if(WITH_CYCLES)
+  if(WITH_CYCLES_LOGGING)
+    blender_include_dirs(../../intern/cycles/blender)
+    add_definitions(-DWITH_CYCLES_LOGGING)
+  endif()
+endif()
+
+if(WITH_CODEC_FFMPEG)
+  add_definitions(-DWITH_FFMPEG)
+endif()
+
+if(WITH_TBB)
+  blender_include_dirs(${TBB_INCLUDE_DIRS})
+  if(WIN32)
+    # For pragma that links tbbmalloc_proxy.lib
+    link_directories(${LIBDIR}/tbb/lib)
+  endif()
+endif()
+
+
+if(WITH_PYTHON)
+  blender_include_dirs(../blender/python)
+  add_definitions(-DWITH_PYTHON)
+
+  if(WITH_PYTHON_SECURITY)
+    add_definitions(-DWITH_PYTHON_SECURITY)
+  endif()
+endif()
+
+if(WITH_HEADLESS)
+  add_definitions(-DWITH_HEADLESS)
+endif()
+
+if(WITH_SDL)
+  if(WITH_SDL_DYNLOAD)
+    blender_include_dirs(../../extern/sdlew/include)
+    add_definitions(-DWITH_SDL_DYNLOAD)
+  endif()
+  add_definitions(-DWITH_SDL)
+endif()
+
+if(WITH_BINRELOC)
+  blender_include_dirs(${BINRELOC_INCLUDE_DIRS})
+  add_definitions(-DWITH_BINRELOC)
+endif()
+
+if(WITH_FREESTYLE)
+  blender_include_dirs(../blender/freestyle)
+  add_definitions(-DWITH_FREESTYLE)
+endif()
+
+if(WITH_XR_OPENXR)
+  add_definitions(-DWITH_XR_OPENXR)
+endif()
+
+if(WITH_GMP)
+  blender_include_dirs(${GMP_INCLUDE_DIRS})
+  add_definitions(-DWITH_GMP)
+endif()
+
+if(WITH_OPENCOLORIO)
+  add_definitions(-DWITH_OCIO)
+endif()
+
+# Setup the exe sources and buildinfo
+set(SRC
+  creator.c
+  creator_args.c
+  creator_signals.c
+
+  creator_intern.h
+)
+
+# MSVC 2010 gives linking errors with the manifest
+if(WIN32 AND NOT UNIX)
+  add_definitions(
+    -DBLEN_VER_RC_STR="${BLENDER_VERSION}"
+    -DBLEN_VER_RC_1=${BLENDER_VERSION_MAJOR}
+    -DBLEN_VER_RC_2=${BLENDER_VERSION_MINOR}
+    -DBLEN_VER_RC_3=${BLENDER_VERSION_PATCH}
+    -DBLEN_VER_RC_4=0
+  )
+
+
+  list(APPEND SRC
+    ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.rc
+    ${CMAKE_BINARY_DIR}/blender.exe.manifest
+  )
+endif()
+
+if(WITH_BUILDINFO)
+  add_definitions(-DWITH_BUILDINFO)
+  # --------------------------------------------------------------------------
+  # These defines could all be moved into the header below
+
+  # Write strings into a separate header since we can escape C-strings
+  # in a way that's not practical when passing defines.
+  set(BUILD_PLATFORM "${CMAKE_SYSTEM_NAME}")
+  set(BUILD_TYPE "${CMAKE_BUILD_TYPE}")
+  set(BUILD_CFLAGS "${CMAKE_C_FLAGS}")
+  set(BUILD_CXXFLAGS "${CMAKE_CXX_FLAGS}")
+  set(BUILD_LINKFLAGS "${PLATFORM_LINKFLAGS}")
+  set(BUILD_SYSTEM "CMake")
+
+  if(WITH_COMPILER_SHORT_FILE_MACRO)
+    # It's not necessary to include path information
+    # about the system building Blender in the executable.
+    string(REPLACE "${PLATFORM_CFLAGS_FMACRO_PREFIX_MAP}" " " BUILD_CFLAGS "${BUILD_CFLAGS}")
+    string(REPLACE "${PLATFORM_CFLAGS_FMACRO_PREFIX_MAP}" " " BUILD_CXXFLAGS "${BUILD_CXXFLAGS}")
+  endif()
+
+  # Use `configure_file` instead of definitions since properly
+  # escaping the multiple command line arguments which themselves
+  # contain strings and spaces becomes overly error-prone & complicated.
+  configure_file(
+    "${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo_static.h.in"
+    "${CMAKE_CURRENT_BINARY_DIR}/buildinfo_static.h"
+    ESCAPE_QUOTES
+    @ONLY
+  )
+
+  unset(BUILD_PLATFORM)
+  unset(BUILD_TYPE)
+  unset(BUILD_CFLAGS)
+  unset(BUILD_CXXFLAGS)
+  unset(BUILD_LINKFLAGS)
+  unset(BUILD_SYSTEM)
+
+  # --------------------------------------------------------------------------
+  # write header for values that change each build
+  # note, generated file is in build dir's source/creator
+  #       except when used as an include path.
+
+  add_definitions(-DWITH_BUILDINFO_HEADER)
+
+  # include the output directory, where the buildinfo.h file is generated
+  include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+
+  # XXX, ${buildinfo_h_fake} is used here,
+  # because we rely on that file being detected as missing
+  # every build so that the real header "buildinfo.h" is updated.
+  #
+  # Keep this until we find a better way to resolve!
+
+  set(buildinfo_h_real "${CMAKE_CURRENT_BINARY_DIR}/buildinfo.h")
+  set(buildinfo_h_fake "${CMAKE_CURRENT_BINARY_DIR}/buildinfo.h_fake")
+
+  if(EXISTS ${buildinfo_h_fake})
+    message(FATAL_ERROR "File \"${buildinfo_h_fake}\" found, this should never be created, remove!")
+  endif()
+
+  # From the cmake documentation "If the output of the custom command is not actually created as a
+  # file on disk it should be marked with the SYMBOLIC source file property."
+  #
+  # Not doing this leads to build warnings for the not generated file on windows when using msbuild
+  SET_SOURCE_FILES_PROPERTIES(${buildinfo_h_fake} PROPERTIES SYMBOLIC TRUE)
+
+  # a custom target that is always built
+  add_custom_target(
+    buildinfo ALL
+    DEPENDS ${buildinfo_h_fake}
+  )
+
+  # creates buildinfo.h using cmake script
+  add_custom_command(
+    OUTPUT
+      ${buildinfo_h_fake}  # ensure we always run
+      ${buildinfo_h_real}
+    COMMAND ${CMAKE_COMMAND}
+    -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
+    # overrides only used when non-empty strings
+    -DBUILD_DATE=${BUILDINFO_OVERRIDE_DATE}
+    -DBUILD_TIME=${BUILDINFO_OVERRIDE_TIME}
+    -P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
+
+  # buildinfo.h is a generated file
+  set_source_files_properties(
+    ${buildinfo_h_real}
+    PROPERTIES GENERATED TRUE
+    HEADER_FILE_ONLY TRUE)
+
+  unset(buildinfo_h_real)
+  unset(buildinfo_h_fake)
+
+  # add deps below, after adding blender
+  # -------------- done with header values.
+
+  list(APPEND SRC
+    buildinfo.c
+  )
+
+  # make an object library so can load with it in tests
+  add_library(buildinfoobj OBJECT buildinfo.c)
+  add_dependencies(buildinfoobj buildinfo)
+endif()
+
+add_cc_flags_custom_test(blender)
+
+# message(STATUS "Configuring blender")
+if(WITH_PYTHON_MODULE)
+  add_definitions(-DWITH_PYTHON_MODULE)
+
+  # creates ./bin/bpy.so which can be imported as a python module.
+  #
+  # note that 'SHARED' works on Linux and Windows,
+  # but not OSX which _must_ be 'MODULE'
+  add_library(blender MODULE ${SRC})
+  set_target_properties(
+    blender
+    PROPERTIES
+      PREFIX ""
+      OUTPUT_NAME bpy
+      LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
+      RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin  # only needed on windows
+  )
+
+  if(APPLE)
+    set_target_properties(blender PROPERTIES MACOSX_BUNDLE TRUE)
+  endif()
+
+  if(WIN32)
+    # python modules use this
+    set_target_properties(
+      blender
+      PROPERTIES
+      SUFFIX ".pyd"
+    )
+  endif()
+
+else()
+  add_executable(blender ${EXETYPE} ${SRC})
+  if(WIN32)
+    add_executable(blender-launcher WIN32
+      blender_launcher_win32.c
+      ${CMAKE_SOURCE_DIR}/release/windows/icons/winblender.rc
+      ${CMAKE_BINARY_DIR}/blender.exe.manifest
+    )
+    target_compile_definitions (blender-launcher PRIVATE -D_UNICODE -DUNICODE)
+    target_link_libraries(blender-launcher Pathcch.lib)
+  endif()
+endif()
+
+if(WITH_BUILDINFO)
+  # explicitly say that the executable depends on the buildinfo
+  add_dependencies(blender buildinfo)
+endif()
+
+
+set(BLENDER_TEXT_FILES
+  ${CMAKE_SOURCE_DIR}/release/text/copyright.txt
+  # generate this file
+  # ${CMAKE_SOURCE_DIR}/release/text/readme.html
+)
+
+
+# -----------------------------------------------------------------------------
+# Platform Specific Var: TARGETDIR_VER
+
+if(UNIX AND NOT APPLE)
+  if(WITH_PYTHON_MODULE)
+    if(WITH_INSTALL_PORTABLE)
+      set(TARGETDIR_VER ${BLENDER_VERSION})
+    else()
+      set(TARGETDIR_VER ${PYTHON_SITE_PACKAGES}/${BLENDER_VERSION})
+    endif()
+  else()
+    if(WITH_INSTALL_PORTABLE)
+      set(TARGETDIR_VER ${BLENDER_VERSION})
+    else()
+      set(TARGETDIR_VER share/blender/${BLENDER_VERSION})
+    endif()
+  endif()
+
+elseif(WIN32)
+  set(TARGETDIR_VER ${BLENDER_VERSION})
+
+elseif(APPLE)
+  if(WITH_PYTHON_MODULE)
+    if(WITH_INSTALL_PORTABLE)
+      set(BPY_INSTALL_DIR)
+      set(TARGETDIR_VER $<TARGET_FILE_DIR:blender>/../Resources/${BLENDER_VERSION})
+      # Keep the `BLENDER_VERSION` folder and bpy.so in the build folder.
+      set(INSTALL_BPY_TO_SITE_PACKAGES OFF)
+    else()
+      # Parent directory of bpy.so for installation.
+      set(BPY_INSTALL_DIR ${PYTHON_LIBPATH}/site-packages)
+      # Defined in terms of site-packages since the site-packages
+      # directory can be a symlink (brew for example).
+      set(TARGETDIR_VER "${BPY_INSTALL_DIR}/../Resources/${BLENDER_VERSION}")
+      set(INSTALL_BPY_TO_SITE_PACKAGES ON)
+    endif()
+  else()
+    set(TARGETDIR_VER Blender.app/Contents/Resources/${BLENDER_VERSION})
+  endif()
+  # License, copyright, readme files.
+  set(BLENDER_TEXT_FILES_DESTINATION "${TARGETDIR_VER}/../text")
+  set(MAC_BLENDER_TARGET_DYLIBS_DIR "${TARGETDIR_VER}/lib")
+  # Skip relinking on cpack / install
+  set_target_properties(blender PROPERTIES BUILD_WITH_INSTALL_RPATH true)
+endif()
+
+
+# -----------------------------------------------------------------------------
+# Install Targets

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list