mirror of
https://github.com/blender/blender
synced 2026-09-29 04:37:17 +03:00
CMake: resolve uninitialized variable warnings
This commit is contained in:
parent
b2ea4d3506
commit
8285ff7b81
9 changed files with 89 additions and 41 deletions
|
|
@ -1463,11 +1463,13 @@ if(WITH_PYTHON)
|
|||
# Do this before main 'platform_*' checks,
|
||||
# because UNIX will search for the old Python paths which may not exist.
|
||||
# giving errors about missing paths before this case is met.
|
||||
if(DEFINED PYTHON_VERSION AND "${PYTHON_VERSION}" VERSION_LESS "3.13")
|
||||
message(
|
||||
FATAL_ERROR
|
||||
"At least Python 3.13 is required to build, but found Python ${PYTHON_VERSION}"
|
||||
)
|
||||
if(DEFINED PYTHON_VERSION)
|
||||
if("${PYTHON_VERSION}" VERSION_LESS "3.13")
|
||||
message(
|
||||
FATAL_ERROR
|
||||
"At least Python 3.13 is required to build, but found Python ${PYTHON_VERSION}"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
@ -2901,8 +2903,10 @@ if(FIRST_RUN)
|
|||
if(WITH_PYTHON)
|
||||
info_cfg_text("Python:")
|
||||
info_cfg_option(WITH_PYTHON_INSTALL)
|
||||
info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
|
||||
info_cfg_option(WITH_PYTHON_INSTALL_ZSTANDARD)
|
||||
if(WITH_PYTHON_INSTALL)
|
||||
info_cfg_option(WITH_PYTHON_INSTALL_NUMPY)
|
||||
info_cfg_option(WITH_PYTHON_INSTALL_ZSTANDARD)
|
||||
endif()
|
||||
info_cfg_option(WITH_PYTHON_MODULE)
|
||||
info_cfg_option(WITH_PYTHON_SAFETY)
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -106,6 +106,17 @@ if((NOT _IS_INC_DEF) OR (NOT _IS_INC_CONF_DEF) OR (NOT _IS_LIB_DEF) OR (NOT _IS_
|
|||
# endif()
|
||||
string(REPLACE " " "" _CURRENT_ABI_FLAGS ${_CURRENT_ABI_FLAGS})
|
||||
|
||||
set(_python_INCLUDE_PATH_SUFFIXES
|
||||
include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
)
|
||||
if(DEFINED CMAKE_LIBRARY_ARCHITECTURE)
|
||||
if(CMAKE_LIBRARY_ARCHITECTURE)
|
||||
list(APPEND _python_INCLUDE_PATH_SUFFIXES
|
||||
include/${CMAKE_LIBRARY_ARCHITECTURE}/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT DEFINED PYTHON_INCLUDE_DIR)
|
||||
find_path(PYTHON_INCLUDE_DIR
|
||||
NAMES
|
||||
|
|
@ -113,8 +124,7 @@ if((NOT _IS_INC_DEF) OR (NOT _IS_INC_CONF_DEF) OR (NOT _IS_LIB_DEF) OR (NOT _IS_
|
|||
HINTS
|
||||
${_python_SEARCH_DIRS}
|
||||
PATH_SUFFIXES
|
||||
include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
include/${CMAKE_LIBRARY_ARCHITECTURE}/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
${_python_INCLUDE_PATH_SUFFIXES}
|
||||
)
|
||||
endif()
|
||||
|
||||
|
|
@ -125,8 +135,7 @@ if((NOT _IS_INC_DEF) OR (NOT _IS_INC_CONF_DEF) OR (NOT _IS_LIB_DEF) OR (NOT _IS_
|
|||
HINTS
|
||||
${_python_SEARCH_DIRS}
|
||||
PATH_SUFFIXES
|
||||
include/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
include/${CMAKE_LIBRARY_ARCHITECTURE}/python${PYTHON_VERSION}${_CURRENT_ABI_FLAGS}
|
||||
${_python_INCLUDE_PATH_SUFFIXES}
|
||||
)
|
||||
if((NOT PYTHON_INCLUDE_CONFIG_DIR) AND PYTHON_INCLUDE_DIR)
|
||||
# Fallback...
|
||||
|
|
@ -184,6 +193,7 @@ if((NOT _IS_INC_DEF) OR (NOT _IS_INC_CONF_DEF) OR (NOT _IS_LIB_DEF) OR (NOT _IS_
|
|||
|
||||
unset(_CURRENT_ABI_FLAGS)
|
||||
unset(_CURRENT_PATH)
|
||||
unset(_python_INCLUDE_PATH_SUFFIXES)
|
||||
|
||||
unset(_PYTHON_ABI_FLAGS_TEST)
|
||||
|
||||
|
|
|
|||
|
|
@ -88,10 +88,19 @@ if(UNIX AND NOT APPLE)
|
|||
set(WITH_PIPEWIRE OFF CACHE BOOL "" FORCE)
|
||||
set(WITH_PIPEWIRE_DYNLOAD ON CACHE BOOL "" FORCE)
|
||||
endif()
|
||||
|
||||
if(NOT APPLE)
|
||||
# Can't use CMAKE_SYSTEM_PROCESSOR here as it's not set yet,
|
||||
# so fall back to checking the env for vcvarsall's VSCMD_ARG_TGT_ARCH
|
||||
if(NOT (WIN32 AND "$ENV{VSCMD_ARG_TGT_ARCH}" STREQUAL "arm64"))
|
||||
set(_is_win32_arm64_target OFF)
|
||||
if(WIN32)
|
||||
if(DEFINED ENV{VSCMD_ARG_TGT_ARCH})
|
||||
if("$ENV{VSCMD_ARG_TGT_ARCH}" STREQUAL "arm64")
|
||||
# Can't use `CMAKE_SYSTEM_PROCESSOR` here as it's not set yet,
|
||||
# so fall back to checking the environment for vcvarsall's `VSCMD_ARG_TGT_ARCH`.
|
||||
set(_is_win32_arm64_target ON)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
if(NOT _is_win32_arm64_target)
|
||||
set(WITH_TBB_MALLOC_PROXY ON CACHE BOOL "" FORCE)
|
||||
set(WITH_CYCLES_DEVICE_HIPRT ON CACHE BOOL "" FORCE)
|
||||
set(WITH_CYCLES_DEVICE_OPTIX ON CACHE BOOL "" FORCE)
|
||||
|
|
@ -100,4 +109,5 @@ if(NOT APPLE)
|
|||
set(WITH_CYCLES_DEVICE_ONEAPI ON CACHE BOOL "" FORCE)
|
||||
set(WITH_CYCLES_ONEAPI_BINARIES ON CACHE BOOL "" FORCE)
|
||||
endif()
|
||||
unset(_is_win32_arm64_target)
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -259,11 +259,13 @@ add_library(bf::dependencies::optional::python ALIAS bf_deps_optional_python)
|
|||
|
||||
if(WITH_PYTHON)
|
||||
target_compile_definitions(bf_deps_optional_python INTERFACE WITH_PYTHON)
|
||||
target_include_directories(bf_deps_optional_python SYSTEM INTERFACE ${PYTHON_INCLUDE_DIR})
|
||||
target_link_libraries(bf_deps_optional_python INTERFACE ${PYTHON_LINKFLAGS})
|
||||
if(WITH_PYTHON_MODULE)
|
||||
target_compile_definitions(bf_deps_optional_python INTERFACE WITH_PYTHON_MODULE)
|
||||
else()
|
||||
target_link_libraries(bf_deps_optional_python INTERFACE ${PYTHON_LIBRARIES})
|
||||
endif()
|
||||
target_include_directories(bf_deps_optional_python SYSTEM INTERFACE ${PYTHON_INCLUDE_DIR})
|
||||
target_link_libraries(bf_deps_optional_python INTERFACE ${PYTHON_LINKFLAGS} ${PYTHON_LIBRARIES})
|
||||
endif()
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
|
@ -340,9 +342,11 @@ target_link_libraries(bf_deps_epoxy INTERFACE ${Epoxy_LIBRARIES})
|
|||
add_library(bf_deps_gflags INTERFACE)
|
||||
add_library(bf::dependencies::gflags ALIAS bf_deps_gflags)
|
||||
|
||||
target_compile_definitions(bf_deps_gflags INTERFACE ${GFLAGS_DEFINES})
|
||||
target_include_directories(bf_deps_gflags SYSTEM INTERFACE ${GFLAGS_INCLUDE_DIRS})
|
||||
target_link_libraries(bf_deps_gflags INTERFACE ${GFLAGS_LIBRARIES})
|
||||
if(WITH_LIBMV OR WITH_GTESTS)
|
||||
target_compile_definitions(bf_deps_gflags INTERFACE ${GFLAGS_DEFINES})
|
||||
target_include_directories(bf_deps_gflags SYSTEM INTERFACE ${GFLAGS_INCLUDE_DIRS})
|
||||
target_link_libraries(bf_deps_gflags INTERFACE ${GFLAGS_LIBRARIES})
|
||||
endif()
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configure Glog
|
||||
|
|
@ -350,9 +354,11 @@ target_link_libraries(bf_deps_gflags INTERFACE ${GFLAGS_LIBRARIES})
|
|||
add_library(bf_deps_glog INTERFACE)
|
||||
add_library(bf::dependencies::glog ALIAS bf_deps_glog)
|
||||
|
||||
target_compile_definitions(bf_deps_glog INTERFACE ${GLOG_DEFINES})
|
||||
target_include_directories(bf_deps_glog SYSTEM INTERFACE ${GLOG_INCLUDE_DIRS})
|
||||
target_link_libraries(bf_deps_glog INTERFACE ${GLOG_LIBRARIES})
|
||||
if(WITH_LIBMV OR WITH_GTESTS)
|
||||
target_compile_definitions(bf_deps_glog INTERFACE ${GLOG_DEFINES})
|
||||
target_include_directories(bf_deps_glog SYSTEM INTERFACE ${GLOG_INCLUDE_DIRS})
|
||||
target_link_libraries(bf_deps_glog INTERFACE ${GLOG_LIBRARIES})
|
||||
endif()
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configure OpenImageDenoise
|
||||
|
|
|
|||
|
|
@ -165,21 +165,23 @@ endif()
|
|||
add_bundled_libraries(vulkan/lib)
|
||||
|
||||
function(check_freetype_for_brotli)
|
||||
if((DEFINED HAVE_BROTLI AND HAVE_BROTLI) AND
|
||||
(DEFINED HAVE_BROTLI_INC AND ("${HAVE_BROTLI_INC}" STREQUAL "${FREETYPE_INCLUDE_DIRS}")))
|
||||
# Pass, the includes didn't change, use the cached value.
|
||||
else()
|
||||
unset(HAVE_BROTLI CACHE)
|
||||
include(CheckSymbolExists)
|
||||
set(CMAKE_REQUIRED_INCLUDES ${FREETYPE_INCLUDE_DIRS})
|
||||
check_symbol_exists(FT_CONFIG_OPTION_USE_BROTLI "freetype/config/ftconfig.h" HAVE_BROTLI)
|
||||
unset(CMAKE_REQUIRED_INCLUDES)
|
||||
if(NOT HAVE_BROTLI)
|
||||
unset(HAVE_BROTLI CACHE)
|
||||
message(FATAL_ERROR "Freetype needs to be compiled with brotli support!")
|
||||
if((DEFINED HAVE_BROTLI) AND (DEFINED HAVE_BROTLI_INC))
|
||||
if(HAVE_BROTLI AND ("${HAVE_BROTLI_INC}" STREQUAL "${FREETYPE_INCLUDE_DIRS}"))
|
||||
# Pass, the includes didn't change, use the cached value.
|
||||
return()
|
||||
endif()
|
||||
set(HAVE_BROTLI_INC "${FREETYPE_INCLUDE_DIRS}" CACHE INTERNAL "")
|
||||
endif()
|
||||
|
||||
unset(HAVE_BROTLI CACHE)
|
||||
include(CheckSymbolExists)
|
||||
set(CMAKE_REQUIRED_INCLUDES ${FREETYPE_INCLUDE_DIRS})
|
||||
check_symbol_exists(FT_CONFIG_OPTION_USE_BROTLI "freetype/config/ftconfig.h" HAVE_BROTLI)
|
||||
unset(CMAKE_REQUIRED_INCLUDES)
|
||||
if(NOT HAVE_BROTLI)
|
||||
unset(HAVE_BROTLI CACHE)
|
||||
message(FATAL_ERROR "Freetype needs to be compiled with brotli support!")
|
||||
endif()
|
||||
set(HAVE_BROTLI_INC "${FREETYPE_INCLUDE_DIRS}" CACHE INTERNAL "")
|
||||
endfunction()
|
||||
|
||||
if(NOT WITH_SYSTEM_FREETYPE)
|
||||
|
|
|
|||
|
|
@ -357,7 +357,7 @@ function(blender_add_test_suite_executable
|
|||
# perform search of _PyBaseObject_Type on startup.
|
||||
#
|
||||
# Work-around by telling the linker that the python libraries should not be stripped.
|
||||
if(APPLE)
|
||||
if(APPLE AND NOT WITH_PYTHON_MODULE)
|
||||
target_link_libraries("${_test_name}_test" PRIVATE "-Wl,-force_load,${PYTHON_LIBRARIES}")
|
||||
endif()
|
||||
|
||||
|
|
|
|||
9
extern/audaspace/CMakeLists.txt
vendored
9
extern/audaspace/CMakeLists.txt
vendored
|
|
@ -1219,7 +1219,14 @@ if(WITH_PYTHON)
|
|||
endif()
|
||||
|
||||
add_library(audaspace-py ${LIBRARY_TYPE} ${PYTHON_SRC} ${PYTHON_HDR})
|
||||
target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
|
||||
# When Blender is built as a Python module, `PYTHON_LIBRARIES` won't be defined.
|
||||
# NOTE: AUDASPACE has its own `WITH_PYTHON_MODULE` option with different meaning,
|
||||
# so we check the variable is defined instead.
|
||||
if(DEFINED PYTHON_LIBRARIES)
|
||||
target_link_libraries(audaspace-py audaspace ${PYTHON_LIBRARIES})
|
||||
else()
|
||||
target_link_libraries(audaspace-py audaspace)
|
||||
endif()
|
||||
set_target_properties(audaspace-py PROPERTIES SOVERSION ${AUDASPACE_VERSION})
|
||||
|
||||
if(AUDASPACE_STANDALONE)
|
||||
|
|
|
|||
|
|
@ -136,10 +136,12 @@ macro(cycles_external_libraries_append libraries)
|
|||
${OPENEXR_LIBRARIES}
|
||||
${OPENEXR_LIBRARIES} # For circular dependencies between libs.
|
||||
${PUGIXML_LIBRARIES}
|
||||
${PYTHON_LIBRARIES}
|
||||
${ZLIB_LIBRARIES}
|
||||
${CMAKE_DL_LIBS}
|
||||
)
|
||||
if(NOT WITH_PYTHON_MODULE)
|
||||
list(APPEND ${libraries} ${PYTHON_LIBRARIES})
|
||||
endif()
|
||||
|
||||
if(DEFINED PTHREADS_LIBRARIES)
|
||||
list(APPEND ${libraries}
|
||||
|
|
|
|||
|
|
@ -56,7 +56,6 @@ if(WITH_CYCLES_DEVICE_ONEAPI)
|
|||
if(WITH_CYCLES_ONEAPI_BINARIES)
|
||||
message(STATUS "${SYCL_OFFLINE_COMPILER_PARALLEL_JOBS} instance(s) of oneAPI offline compiler will be used.")
|
||||
endif()
|
||||
# SYCL_CPP_FLAGS is a variable that the user can set to pass extra compiler options
|
||||
set(sycl_compiler_flags
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/${SRC_KERNEL_DEVICE_ONEAPI}
|
||||
-fsycl
|
||||
|
|
@ -73,8 +72,11 @@ if(WITH_CYCLES_DEVICE_ONEAPI)
|
|||
-D__KERNEL_LOCAL_ATOMIC_SORT__
|
||||
-o"${cycles_kernel_oneapi_lib}"
|
||||
-I"${CMAKE_CURRENT_SOURCE_DIR}/../../.."
|
||||
${SYCL_CPP_FLAGS}
|
||||
)
|
||||
# SYCL_CPP_FLAGS is a variable that the user can set to pass extra compiler options.
|
||||
if(DEFINED SYCL_CPP_FLAGS)
|
||||
list(APPEND sycl_compiler_flags ${SYCL_CPP_FLAGS})
|
||||
endif()
|
||||
|
||||
if(WITH_CYCLES_ONEAPI_HOST_TASK_EXECUTION)
|
||||
list(APPEND sycl_compiler_flags -DWITH_ONEAPI_SYCL_HOST_TASK)
|
||||
|
|
@ -104,15 +106,20 @@ if(WITH_CYCLES_DEVICE_ONEAPI)
|
|||
ERROR_QUIET
|
||||
)
|
||||
else()
|
||||
set(_ocloc_ld_library_path "${OCLOC_INSTALL_DIR}/lib")
|
||||
if(DEFINED IGC_INSTALL_DIR)
|
||||
string(APPEND _ocloc_ld_library_path ":${IGC_INSTALL_DIR}/lib")
|
||||
endif()
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E env "LD_LIBRARY_PATH=${OCLOC_INSTALL_DIR}/lib:${IGC_INSTALL_DIR}/lib"
|
||||
-E env "LD_LIBRARY_PATH=${_ocloc_ld_library_path}"
|
||||
${OCLOC_INSTALL_DIR}/bin/ocloc ids ${device}
|
||||
|
||||
RESULT_VARIABLE oclocids_ret
|
||||
OUTPUT_QUIET
|
||||
ERROR_QUIET
|
||||
)
|
||||
unset(_ocloc_ld_library_path)
|
||||
endif()
|
||||
if(NOT oclocids_ret EQUAL 0)
|
||||
list(REMOVE_ITEM CYCLES_ONEAPI_INTEL_BINARIES_ARCH ${device})
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue