Cleanup: wrap long lines in CMake
This commit is contained in:
@@ -232,7 +232,10 @@ function(blender_user_header_search_paths
|
||||
# _ALL_INCS is a space-separated string of file paths in quotes.
|
||||
string(APPEND _ALL_INCS " \"${_ABS_INC}\"")
|
||||
endforeach()
|
||||
set_target_properties(${name} PROPERTIES XCODE_ATTRIBUTE_USER_HEADER_SEARCH_PATHS "${_ALL_INCS}")
|
||||
set_target_properties(
|
||||
${name} PROPERTIES
|
||||
XCODE_ATTRIBUTE_USER_HEADER_SEARCH_PATHS "${_ALL_INCS}"
|
||||
)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
@@ -296,11 +299,18 @@ macro(add_cc_flags_custom_test
|
||||
|
||||
string(TOUPPER ${name} _name_upper)
|
||||
if(DEFINED CMAKE_C_FLAGS_${_name_upper})
|
||||
message(STATUS "Using custom CFLAGS: CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
||||
message(
|
||||
STATUS
|
||||
"Using custom CFLAGS: "
|
||||
"CMAKE_C_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
||||
string(APPEND CMAKE_C_FLAGS " ${CMAKE_C_FLAGS_${_name_upper}}" ${ARGV1})
|
||||
endif()
|
||||
if(DEFINED CMAKE_CXX_FLAGS_${_name_upper})
|
||||
message(STATUS "Using custom CXXFLAGS: CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\"")
|
||||
message(
|
||||
STATUS
|
||||
"Using custom CXXFLAGS: "
|
||||
"CMAKE_CXX_FLAGS_${_name_upper} in \"${CMAKE_CURRENT_SOURCE_DIR}\""
|
||||
)
|
||||
string(APPEND CMAKE_CXX_FLAGS " ${CMAKE_CXX_FLAGS_${_name_upper}}" ${ARGV1})
|
||||
endif()
|
||||
unset(_name_upper)
|
||||
@@ -468,7 +478,10 @@ function(blender_add_test_suite)
|
||||
--test-release-dir "${_test_release_dir}"
|
||||
)
|
||||
if(WIN32)
|
||||
set_tests_properties(${ARGS_SUITE_NAME} PROPERTIES ENVIRONMENT "PATH=${CMAKE_INSTALL_PREFIX_WITH_CONFIG}/blender.shared/;$ENV{PATH}")
|
||||
set_tests_properties(
|
||||
${ARGS_SUITE_NAME} PROPERTIES
|
||||
ENVIRONMENT "PATH=${CMAKE_INSTALL_PREFIX_WITH_CONFIG}/blender.shared/;$ENV{PATH}"
|
||||
)
|
||||
endif()
|
||||
unset(_test_release_dir)
|
||||
endfunction()
|
||||
@@ -610,13 +623,25 @@ endfunction()
|
||||
# Platform specific linker flags for targets.
|
||||
function(setup_platform_linker_flags
|
||||
target)
|
||||
set_property(TARGET ${target} APPEND_STRING PROPERTY LINK_FLAGS " ${PLATFORM_LINKFLAGS}")
|
||||
set_property(TARGET ${target} APPEND_STRING PROPERTY LINK_FLAGS_RELEASE " ${PLATFORM_LINKFLAGS_RELEASE}")
|
||||
set_property(TARGET ${target} APPEND_STRING PROPERTY LINK_FLAGS_DEBUG " ${PLATFORM_LINKFLAGS_DEBUG}")
|
||||
set_property(
|
||||
TARGET ${target} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " ${PLATFORM_LINKFLAGS}"
|
||||
)
|
||||
set_property(
|
||||
TARGET ${target} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_RELEASE " ${PLATFORM_LINKFLAGS_RELEASE}"
|
||||
)
|
||||
set_property(
|
||||
TARGET ${target} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_DEBUG " ${PLATFORM_LINKFLAGS_DEBUG}"
|
||||
)
|
||||
|
||||
get_target_property(target_type ${target} TYPE)
|
||||
if(target_type STREQUAL "EXECUTABLE")
|
||||
set_property(TARGET ${target} APPEND_STRING PROPERTY LINK_FLAGS " ${PLATFORM_LINKFLAGS_EXECUTABLE}")
|
||||
set_property(
|
||||
TARGET ${target} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS " ${PLATFORM_LINKFLAGS_EXECUTABLE}"
|
||||
)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
@@ -830,9 +855,9 @@ macro(remove_strict_c_flags_file
|
||||
foreach(_SOURCE ${ARGV})
|
||||
if(CMAKE_COMPILER_IS_GNUCC OR
|
||||
(CMAKE_C_COMPILER_ID MATCHES "Clang"))
|
||||
set_source_files_properties(${_SOURCE}
|
||||
PROPERTIES
|
||||
COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
|
||||
set_source_files_properties(
|
||||
${_SOURCE} PROPERTIES
|
||||
COMPILE_FLAGS "${C_REMOVE_STRICT_FLAGS}"
|
||||
)
|
||||
endif()
|
||||
if(MSVC)
|
||||
@@ -848,9 +873,9 @@ macro(remove_strict_cxx_flags_file
|
||||
foreach(_SOURCE ${ARGV})
|
||||
if(CMAKE_COMPILER_IS_GNUCC OR
|
||||
(CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
|
||||
set_source_files_properties(${_SOURCE}
|
||||
PROPERTIES
|
||||
COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
|
||||
set_source_files_properties(
|
||||
${_SOURCE} PROPERTIES
|
||||
COMPILE_FLAGS "${CXX_REMOVE_STRICT_FLAGS}"
|
||||
)
|
||||
endif()
|
||||
if(MSVC)
|
||||
@@ -951,11 +976,23 @@ function(get_blender_version)
|
||||
${CMAKE_BINARY_DIR}/source/blender/blenkernel/BKE_blender_version.h.done
|
||||
)
|
||||
|
||||
file(STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h _contents REGEX "^#define[ \t]+BLENDER_.*$")
|
||||
file(
|
||||
STRINGS ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender_version.h
|
||||
_contents REGEX "^#define[ \t]+BLENDER_.*$"
|
||||
)
|
||||
|
||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1" _out_version "${_contents}")
|
||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_PATCH[ \t]+([0-9]+).*" "\\1" _out_version_patch "${_contents}")
|
||||
string(REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1" _out_version_cycle "${_contents}")
|
||||
string(
|
||||
REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION[ \t]+([0-9]+).*" "\\1"
|
||||
_out_version "${_contents}"
|
||||
)
|
||||
string(
|
||||
REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_PATCH[ \t]+([0-9]+).*" "\\1"
|
||||
_out_version_patch "${_contents}"
|
||||
)
|
||||
string(
|
||||
REGEX REPLACE ".*#define[ \t]+BLENDER_VERSION_CYCLE[ \t]+([a-z]+).*" "\\1"
|
||||
_out_version_cycle "${_contents}"
|
||||
)
|
||||
|
||||
if(NOT ${_out_version} MATCHES "[0-9]+")
|
||||
message(FATAL_ERROR "Version parsing failed for BLENDER_VERSION")
|
||||
@@ -1186,7 +1223,10 @@ function(svg_to_png
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${_file_to}
|
||||
COMMAND ${INKSCAPE_EXE} ${_file_from} --export-dpi=${dpi} --without-gui --export-png=${_file_to}
|
||||
|
||||
COMMAND ${INKSCAPE_EXE}
|
||||
${_file_from} --export-dpi=${dpi} --without-gui --export-png=${_file_to}
|
||||
|
||||
DEPENDS ${_file_from} ${INKSCAPE_EXE}
|
||||
)
|
||||
else()
|
||||
@@ -1212,8 +1252,13 @@ function(msgfmt_simple
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${_file_to}
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${_file_to_path}
|
||||
COMMAND ${CMAKE_COMMAND} -E env ${PLATFORM_ENV_BUILD} "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
|
||||
|
||||
COMMAND ${CMAKE_COMMAND} -E
|
||||
make_directory ${_file_to_path}
|
||||
|
||||
COMMAND ${CMAKE_COMMAND} -E
|
||||
env ${PLATFORM_ENV_BUILD} "$<TARGET_FILE:msgfmt>" ${_file_from} ${_file_to}
|
||||
|
||||
DEPENDS msgfmt ${_file_from})
|
||||
|
||||
set_source_files_properties(${_file_to} PROPERTIES GENERATED TRUE)
|
||||
@@ -1221,7 +1266,7 @@ endfunction()
|
||||
|
||||
function(find_python_package
|
||||
package
|
||||
relative_include_dir
|
||||
relative_inc_dir
|
||||
)
|
||||
|
||||
string(TOUPPER ${package} _upper_package)
|
||||
@@ -1272,19 +1317,20 @@ function(find_python_package
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${package}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${package}', "
|
||||
"\n"
|
||||
"The 'WITH_PYTHON_INSTALL_${_upper_package}' option will be ignored when installing Python.\n"
|
||||
"The 'WITH_PYTHON_INSTALL_${_upper_package}' ""option will be ignored "
|
||||
"when installing Python.\n"
|
||||
"The build will be usable, only add-ons that depend on this package won't be functional."
|
||||
)
|
||||
set(WITH_PYTHON_INSTALL_${_upper_package} OFF PARENT_SCOPE)
|
||||
else()
|
||||
message(STATUS "${package} found at '${PYTHON_${_upper_package}_PATH}'")
|
||||
|
||||
if(NOT "${relative_include_dir}" STREQUAL "")
|
||||
set(_relative_include_dir "${package}/${relative_include_dir}")
|
||||
if(NOT "${relative_inc_dir}" STREQUAL "")
|
||||
set(_relative_inc_dir "${package}/${relative_inc_dir}")
|
||||
unset(PYTHON_${_upper_package}_INCLUDE_DIRS CACHE)
|
||||
find_path(PYTHON_${_upper_package}_INCLUDE_DIRS
|
||||
NAMES
|
||||
"${_relative_include_dir}"
|
||||
"${_relative_inc_dir}"
|
||||
HINTS
|
||||
"${PYTHON_LIBPATH}/"
|
||||
"${PYTHON_LIBPATH}/python${PYTHON_VERSION}/"
|
||||
@@ -1295,31 +1341,35 @@ function(find_python_package
|
||||
"vendor-packages/"
|
||||
NO_DEFAULT_PATH
|
||||
DOC
|
||||
"Path to python site-packages or dist-packages containing '${package}' module header files"
|
||||
"\
|
||||
Path to python site-packages or dist-packages containing '${package}' module header files"
|
||||
)
|
||||
mark_as_advanced(PYTHON_${_upper_package}_INCLUDE_DIRS)
|
||||
|
||||
if(NOT EXISTS "${PYTHON_${_upper_package}_INCLUDE_DIRS}")
|
||||
message(WARNING
|
||||
"Python package '${package}' include dir path could not be found in:\n"
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${_relative_include_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${_relative_inc_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/site-packages/${_relative_inc_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/dist-packages/${_relative_inc_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/dist-packages/${_relative_inc_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${PYTHON_VERSION}/vendor-packages/${_relative_inc_dir}', "
|
||||
"'${PYTHON_LIBPATH}/python${_PY_VER_MAJOR}/vendor-packages/${_relative_inc_dir}', "
|
||||
"\n"
|
||||
"The 'WITH_PYTHON_${_upper_package}' option will be disabled.\n"
|
||||
"The build will be usable, only add-ons that depend on this package won't be functional."
|
||||
"The build will be usable, only add-ons that depend on this package "
|
||||
"won't be functional."
|
||||
)
|
||||
set(WITH_PYTHON_${_upper_package} OFF PARENT_SCOPE)
|
||||
else()
|
||||
set(_temp "${PYTHON_${_upper_package}_INCLUDE_DIRS}/${package}/${relative_include_dir}")
|
||||
set(_temp "${PYTHON_${_upper_package}_INCLUDE_DIRS}/${package}/${relative_inc_dir}")
|
||||
unset(PYTHON_${_upper_package}_INCLUDE_DIRS CACHE)
|
||||
set(PYTHON_${_upper_package}_INCLUDE_DIRS "${_temp}"
|
||||
CACHE PATH "Path to the include directory of the ${package} module")
|
||||
|
||||
message(STATUS "${package} include files found at '${PYTHON_${_upper_package}_INCLUDE_DIRS}'")
|
||||
message(STATUS
|
||||
"${package} include files found at '${PYTHON_${_upper_package}_INCLUDE_DIRS}'"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
@@ -1344,10 +1394,22 @@ macro(openmp_delayload
|
||||
else()
|
||||
set(OPENMP_DLL_NAME "vcomp140")
|
||||
endif()
|
||||
set_property(TARGET ${projectname} APPEND_STRING PROPERTY LINK_FLAGS_RELEASE " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||
set_property(TARGET ${projectname} APPEND_STRING PROPERTY LINK_FLAGS_DEBUG " /DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib")
|
||||
set_property(TARGET ${projectname} APPEND_STRING PROPERTY LINK_FLAGS_RELWITHDEBINFO " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||
set_property(TARGET ${projectname} APPEND_STRING PROPERTY LINK_FLAGS_MINSIZEREL " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib")
|
||||
set_property(
|
||||
TARGET ${projectname} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_RELEASE " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib"
|
||||
)
|
||||
set_property(
|
||||
TARGET ${projectname} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_DEBUG " /DELAYLOAD:${OPENMP_DLL_NAME}d.dll delayimp.lib"
|
||||
)
|
||||
set_property(
|
||||
TARGET ${projectname} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_RELWITHDEBINFO " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib"
|
||||
)
|
||||
set_property(
|
||||
TARGET ${projectname} APPEND_STRING PROPERTY
|
||||
LINK_FLAGS_MINSIZEREL " /DELAYLOAD:${OPENMP_DLL_NAME}.dll delayimp.lib"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
@@ -1378,7 +1440,12 @@ macro(set_and_warn_library_found
|
||||
endmacro()
|
||||
|
||||
macro(without_system_libs_begin)
|
||||
set(CMAKE_IGNORE_PATH "${CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES};${CMAKE_SYSTEM_INCLUDE_PATH};${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES};${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES}")
|
||||
set(CMAKE_IGNORE_PATH
|
||||
"${CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES}"
|
||||
"${CMAKE_SYSTEM_INCLUDE_PATH}"
|
||||
"${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES}"
|
||||
"${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES}"
|
||||
)
|
||||
endmacro()
|
||||
|
||||
macro(without_system_libs_end)
|
||||
@@ -1407,7 +1474,13 @@ macro(windows_install_shared_manifest)
|
||||
set(options OPTIONAL DEBUG RELEASE ALL)
|
||||
set(oneValueArgs)
|
||||
set(multiValueArgs FILES)
|
||||
cmake_parse_arguments(WINDOWS_INSTALL "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
|
||||
cmake_parse_arguments(
|
||||
WINDOWS_INSTALL
|
||||
"${options}"
|
||||
"${oneValueArgs}"
|
||||
"${multiValueArgs}"
|
||||
${ARGN}
|
||||
)
|
||||
# If none of the options are set assume ALL.
|
||||
unset(WINDOWS_CONFIGURATIONS)
|
||||
if(NOT WINDOWS_INSTALL_ALL AND
|
||||
@@ -1451,13 +1524,23 @@ macro(windows_generate_manifest)
|
||||
set(options)
|
||||
set(oneValueArgs OUTPUT NAME)
|
||||
set(multiValueArgs FILES)
|
||||
cmake_parse_arguments(WINDOWS_MANIFEST "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
|
||||
cmake_parse_arguments(
|
||||
WINDOWS_MANIFEST
|
||||
"${options}"
|
||||
"${oneValueArgs}"
|
||||
"${multiValueArgs}"
|
||||
${ARGN}
|
||||
)
|
||||
set(MANIFEST_LIBS "")
|
||||
foreach(lib ${WINDOWS_MANIFEST_FILES})
|
||||
get_filename_component(filename ${lib} NAME)
|
||||
set(MANIFEST_LIBS "${MANIFEST_LIBS} <file name=\"${filename}\"/>\n")
|
||||
endforeach()
|
||||
configure_file(${CMAKE_SOURCE_DIR}/release/windows/manifest/blender.manifest.in ${WINDOWS_MANIFEST_OUTPUT} @ONLY)
|
||||
configure_file(
|
||||
${CMAKE_SOURCE_DIR}/release/windows/manifest/blender.manifest.in
|
||||
${WINDOWS_MANIFEST_OUTPUT}
|
||||
@ONLY
|
||||
)
|
||||
endmacro()
|
||||
|
||||
macro(windows_generate_shared_manifest)
|
||||
|
||||
@@ -930,8 +930,13 @@ elseif(WIN32)
|
||||
if(MSVC_ASAN)
|
||||
# The ASAN DLL's can be found in the same folder as the compiler,
|
||||
# this is the easiest way to find these.
|
||||
string(REPLACE "cl.exe" "clang_rt.asan_dynamic-x86_64.dll" ASAN_DLL ${CMAKE_C_COMPILER})
|
||||
string(REPLACE "cl.exe" "clang_rt.asan_dbg_dynamic-x86_64.dll" ASAN_DEBUG_DLL ${CMAKE_C_COMPILER})
|
||||
string(
|
||||
REPLACE "cl.exe" "clang_rt.asan_dynamic-x86_64.dll"
|
||||
ASAN_DLL ${CMAKE_C_COMPILER})
|
||||
string(
|
||||
REPLACE "cl.exe" "clang_rt.asan_dbg_dynamic-x86_64.dll"
|
||||
ASAN_DEBUG_DLL ${CMAKE_C_COMPILER}
|
||||
)
|
||||
if(NOT EXISTS "${ASAN_DLL}")
|
||||
message(
|
||||
FATAL_ERROR
|
||||
@@ -1681,7 +1686,7 @@ endif()
|
||||
|
||||
# Always install MaterialX files regardless if Blender itself uses them, the
|
||||
# bundled Python module still needs it.
|
||||
if((DEFINED LIBDIR) AND TARGETDIR_LIB AND WITH_MATERIALX )
|
||||
if((DEFINED LIBDIR) AND TARGETDIR_LIB AND WITH_MATERIALX)
|
||||
install(
|
||||
DIRECTORY ${LIBDIR}/materialx/libraries
|
||||
DESTINATION "${TARGETDIR_LIB}/materialx"
|
||||
|
||||
Reference in New Issue
Block a user