summaryrefslogtreecommitdiffstats
path: root/src/core/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/CMakeLists.txt')
-rw-r--r--src/core/CMakeLists.txt83
1 files changed, 12 insertions, 71 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 453fcba78..7fbaf3b1d 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -6,6 +6,7 @@
qt_internal_add_module(3DCore
SOURCES
+ aligned_malloc_p.h
aspect/qcoreaspect.cpp aspect/qcoreaspect.h aspect/qcoreaspect_p.h
aspect/qcoresettings.cpp aspect/qcoresettings.h aspect/qcoresettings_p.h
aspect/coresettings.cpp aspect/coresettings_p.h
@@ -50,6 +51,7 @@ qt_internal_add_module(3DCore
qurlhelper.cpp qurlhelper_p.h
resources/qhandle_p.h
resources/qloadgltf_p.h
+ resources/qresourcemanager.cpp resources/qresourcemanager_p.h
services/nullservices_p.h
services/qabstractframeadvanceservice.cpp services/qabstractframeadvanceservice_p.h
services/qabstractframeadvanceservice_p_p.h
@@ -106,78 +108,17 @@ qt_internal_extend_target(3DCore CONDITION gcov
"-ftest-coverage"
)
-function(qt3d_add_simd_part target)
- qt_parse_all_arguments(arg "qt3d_add_simd_part" "" ""
- "NAME;SIMD;${__default_private_args};COMPILE_FLAGS" ${ARGN})
- if ("x${arg_SIMD}" STREQUAL x)
- message(FATAL_ERROR "qt3d_add_simd_part needs a SIMD type to be set.")
- endif()
-
- set(condition "QT_FEATURE_${arg_SIMD}")
- if("${arg_SIMD}" STREQUAL arch_haswell)
- set(condition "TEST_subarch_avx2 AND TEST_subarch_bmi AND TEST_subarch_bmi2 AND TEST_subarch_f16c AND TEST_subarch_fma AND TEST_subarch_lzcnt AND TEST_subarch_popcnt")
- endif()
-
- qt_evaluate_config_expression(result ${condition})
- if(${result})
- if(QT_CMAKE_DEBUG_EXTEND_TARGET)
- message("qt3d_add_simd_part(${target} SIMD ${arg_SIMD} ...): Evaluated")
- endif()
- string(TOUPPER "QT_CFLAGS_${arg_SIMD}" simd_flags)
-
- foreach(source IN LISTS arg_SOURCES)
- set_property(SOURCE "${source}" APPEND
- PROPERTY COMPILE_OPTIONS
- ${${simd_flags}}
- ${arg_COMPILE_FLAGS}
- )
- endforeach()
- set_source_files_properties(${arg_SOURCES} PROPERTIES SKIP_PRECOMPILE_HEADERS TRUE)
- target_sources(${target} PRIVATE ${arg_SOURCES})
- target_compile_options("${target}Private" INTERFACE ${${simd_flags}} ${arg_COMPILE_FLAGS})
- target_compile_definitions("${target}Private" INTERFACE ${simd_flags})
- else()
- if(QT_CMAKE_DEBUG_EXTEND_TARGET)
- message("qt3d_add_simd_part(${target} SIMD ${arg_SIMD} ...): Skipped")
- endif()
- endif()
-endfunction()
-
-if(QT_FEATURE_qt3d_simd_sse2)
- qt3d_add_simd_part(3DCore SIMD sse2
- SOURCES
- transforms/matrix4x4_sse.cpp transforms/matrix4x4_sse_p.h
- )
-endif()
-
-if(QT_FEATURE_qt3d_simd_sse2 AND NOT QT_FEATURE_qt3d_simd_avx2)
- qt3d_add_simd_part(3DCore SIMD sse2
- SOURCES
- transforms/vector3d_sse.cpp transforms/vector3d_sse_p.h
- transforms/vector4d_sse.cpp transforms/vector4d_sse_p.h
- aligned_malloc_p.h
- vector_helper_p.h
- resources/qresourcemanager.cpp resources/qresourcemanager_p.h
- )
-endif()
-
-if(QT_FEATURE_qt3d_simd_avx2)
- qt3d_add_simd_part(3DCore SIMD arch_haswell
- SOURCES
- transforms/matrix4x4_avx2.cpp transforms/matrix4x4_avx2_p.h
- transforms/vector3d_sse.cpp transforms/vector3d_sse_p.h
- transforms/vector4d_sse.cpp transforms/vector4d_sse_p.h
- aligned_malloc_p.h
- resources/qresourcemanager.cpp resources/qresourcemanager_p.h
- )
-endif()
-
-qt_internal_extend_target(3DCore
- CONDITION
- NOT QT_FEATURE_qt3d_simd_sse2 AND NOT QT_FEATURE_qt3d_simd_avx2
+qt_internal_extend_target(3DCore CONDITION
+ CONDITION ( TEST_architecture_arch STREQUAL i386 ) OR
+ ( TEST_architecture_arch STREQUAL x86_64 ) OR
+ ( CMAKE_OSX_ARCHITECTURES MATCHES "x86_64" ) OR
+ ( CMAKE_OSX_ARCHITECTURES MATCHES "x86_64h" ) OR
+ ( CMAKE_OSX_ARCHITECTURES MATCHES "i386" )
SOURCES
- aligned_malloc_p.h
- resources/qresourcemanager.cpp resources/qresourcemanager_p.h
+ transforms/matrix4x4_avx2_p.h
+ transforms/matrix4x4_sse.cpp transforms/matrix4x4_sse_p.h
+ transforms/vector3d_sse.cpp transforms/vector3d_sse_p.h
+ transforms/vector4d_sse.cpp transforms/vector4d_sse_p.h
)
qt_internal_add_docs(3DCore