aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qmltc/QmltcTests/CMakeLists.txt
blob: 243a75e9fb39668c05e5f2a8f98cf61a19eb1c5c (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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
set(cpp_sources
    # attached types:
    cpptypes/testattachedtype.h cpptypes/testattachedtype.cpp
    # grouped types:
    cpptypes/testgroupedtype.h cpptypes/testgroupedtype.cpp
    # private properties:
    cpptypes/testprivateproperty.h cpptypes/testprivateproperty.cpp
    cpptypes/private/testprivateproperty_p.h

    cpptypes/typewithproperties.h cpptypes/typewithproperties.cpp
    # deferred:
    cpptypes/deferredpropertytypes.h cpptypes/deferredpropertytypes.cpp
    # extension types:
    cpptypes/extensiontypes.h cpptypes/extensiontypes.cpp

    cpptypes/typewithmemberproperties.h
)

set(qml_sources
    HelloWorld.qml
    NameConflict.qml
    simpleQtQuickTypes.qml
    typeWithEnums.qml
    methods.qml
    properties.qml
    ObjectWithId.qml
    documentWithIds.qml
    importNamespace.qml
    ComponentType.qml
    componentTypes.qml
    gradients.qml
    qjsvalueAssignments.qml
    QmlTypeWithExtension.qml
    QmlTypeWithBaseTypeExtension.qml
    extensionTypeBindings.qml
    nonStandardInclude.qml
    memberProperties.qml
    regexpBindings.qml

    qtbug103956/SubComponent.qml
    qtbug103956/MainComponent.qml
    qtbug103956/qtbug103956_main.qml

    signalHandlers.qml
    javaScriptFunctions.qml
    changingBindings.qml
    propertyAlias.qml
    propertyAlias_external.qml
    propertyChangeHandler.qml
    NestedHelloWorld.qml
    ComponentHelloWorld.qml
    listProperty.qml
    listPropertySameName.qml
    defaultProperty.qml
    defaultPropertyCorrectSelection.qml
    # defaultAlias.qml
    propertyReturningFunction.qml
    AttachedProperty.qml
    attachedPropertyDerived.qml
    groupedProperty.qml
    groupedProperty_qquicktext.qml
    localImport.qml
    localImport_explicit.qml
    newPropertyBoundToOld.qml
    oldPropertyBoundToNew.qml
    nonLocalQmlPropertyBoundToAny.qml
    localDerived.qml
    justAnimation.qml
    justAnimationOnAlias.qml
    behaviorAndAnimation.qml
    behaviorAndAnimationOnAlias.qml
    singletonUser.qml
    bindingsThroughIds.qml
    localImport_context.qml
    neighbors_context.qml
    delegate_context.qml
    nontrivial_context.qml
    javascriptCaller.qml
    listView.qml
    bindingOnValueType.qml
    keyEvents.qml
    complexAliases.qml
    PrivateProperty.qml
    privatePropertySubclass.qml
    calqlatrBits.qml
    propertyChangeAndSignalHandlers.qml
    deferredProperties.qml
    deferredProperties_group.qml
    deferredProperties_attached.qml
    deferredProperties_complex.qml

    # support types:
    DefaultPropertySingleChild.qml
    DefaultPropertyManyChildren.qml
    LocallyImported.qml
    LocalWithOnCompleted.qml
    LocallyImported_context.qml
#   SingletonThing.qml

    badFile.qml
)

set(js_sources
    subfolder/code.js
)

set(common_libraries
    Qt::Core
    Qt::QmlPrivate
    Qt::QuickPrivate
    Qt::TestPrivate
    Qt::Gui # QColor, QMatrix4x4, ...
)

set_source_files_properties(NameConflict.qml PROPERTIES
    QT_QMLTC_FILE_BASENAME ResolvedNameConflict)

set_source_files_properties(badFile.qml PROPERTIES QT_QML_SKIP_TYPE_COMPILER TRUE)

# set_source_files_properties(SingletonThing.qml PROPERTIES
#    QT_QML_SINGLETON_TYPE true)

qt_add_library(qmltc_test_module STATIC)
qt_autogen_tools_initial_setup(qmltc_test_module)

# use PUBLIC everywhere to simplify the build of the test binary
target_include_directories(qmltc_test_module PUBLIC cpptypes/)
target_link_libraries(qmltc_test_module PUBLIC ${common_libraries})

qt6_add_qml_module(qmltc_test_module
    VERSION 1.0
    URI QmltcTests
    SOURCES
        ${cpp_sources}
    QML_FILES
        ${qml_sources}
        ${js_sources}
    DEPENDENCIES
        QtQuick
    ENABLE_TYPE_COMPILER
    TYPE_COMPILER_NAMESPACE QmltcTest
)

qt_autogen_tools_initial_setup(qmltc_test_moduleplugin)