summaryrefslogtreecommitdiffstats
path: root/src/core/configure.cmake
blob: 77743dacfdf5cdea073ce41c4eddabb8a38a1839 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#### Inputs

# input assimp
set(INPUT_assimp "undefined" CACHE STRING "")
set_property(CACHE INPUT_assimp PROPERTY STRINGS undefined qt system no)



#### Libraries



#### Tests



#### Features

qt_feature("qt3d_render" PUBLIC
    SECTION "Aspects"
    LABEL "Render aspect"
    PURPOSE "Use the 3D Render Aspect library"
)

qt_feature("qt3d_input" PUBLIC
    SECTION "Aspects"
    LABEL "Input aspect"
    PURPOSE "Use the 3D Input Aspect library"
)

qt_feature("qt3d_logic" PUBLIC
    SECTION "Aspects"
    LABEL "Logic aspect"
    PURPOSE "Use the 3D Logic Aspect library"
)

qt_feature("qt3d_extras" PUBLIC
    SECTION "Aspects"
    LABEL "Extras aspect"
    PURPOSE "Use the 3D Extra library"
    CONDITION QT_FEATURE_qt3d_render AND QT_FEATURE_qt3d_input AND QT_FEATURE_qt3d_logic
)

qt_feature("qt3d_animation" PUBLIC
    SECTION "Aspects"
    LABEL "Animation aspect"
    PURPOSE "Use the 3D Animation Aspect library"
    CONDITION QT_FEATURE_qt3d_render
)

qt_feature("qt3d_simd_sse2" PRIVATE
    LABEL "Use SSE2 instructions"
    PURPOSE "Use SSE2 SIMD instructions to accelerate matrix operations"
    AUTODETECT QT_FEATURE_sse2
    ENABLE INPUT_qt3d_simd STREQUAL 'sse2' OR INPUT_qt3d_simd STREQUAL 'avx2'
    DISABLE INPUT_qt3d_simd STREQUAL 'no' OR ( TEST_architecture_arch STREQUAL i386 )
)

qt_feature("qt3d_simd_avx2" PRIVATE
    LABEL "Use AVX2 instructions"
    PURPOSE "Use AVX2 SIMD instructions to accelerate matrix operations"
    AUTODETECT TEST_arch_${TEST_architecture_arch}_subarch_avx2
    ENABLE INPUT_qt3d_simd STREQUAL 'avx2'
    DISABLE INPUT_qt3d_simd STREQUAL 'sse2' OR INPUT_qt3d_simd STREQUAL 'no' OR ( TEST_architecture_arch STREQUAL i386 )
)

qt_configure_add_summary_section(NAME "Qt3D Core")
qt_configure_add_summary_entry(ARGS "qt3d_simd_sse2")
qt_configure_add_summary_entry(ARGS "qt3d_simd_avx2")
qt_configure_add_summary_entry(ARGS "qt3d_animation")
qt_configure_add_summary_entry(ARGS "qt3d_extras")
qt_configure_add_summary_entry(ARGS "qt3d_input")
qt_configure_add_summary_entry(ARGS "qt3d_logic")
qt_configure_add_summary_entry(ARGS "qt3d_render")
qt_configure_end_summary_section() # end of "Qt3D" section