summaryrefslogtreecommitdiff
path: root/src/tools/qml2puppet/qml2puppet.qbs
blob: 25c3f393098c01c897abeef9eb73d119f01980fb (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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
import qbs
import QtcFunctions

QtcTool {
    name: "qml2puppet"
    installDir: qbs.targetOS.contains("macos")
                ? qtc.ide_libexec_path + "/qmldesigner" : qtc.ide_libexec_path

    Depends { name: "Utils" }
    Depends { name: "bundle" }
    Depends {
        name: "Qt"
        submodules: [
            "core-private", "gui-private", "network", "qml-private", "quick", "quick-private",
            "widgets"
        ]
    }
    cpp.defines: base.filter(function(d) { return d != "QT_CREATOR"; })
    Properties {
        condition: qbs.targetOS.contains("unix") && !qbs.targetOS.contains("bsd")
        cpp.dynamicLibraries: base.concat("rt")
    }
    Properties {
        condition: qbs.targetOS.contains("darwin")
        bundle.embedInfoPlist: true
    }

    property path puppetDir: "../../../share/qtcreator/qml/qmlpuppet"
    cpp.includePaths: base.concat([
        puppetDir + "/commands",
        puppetDir + "/container",
        puppetDir + "/instances",
        puppetDir + "/interfaces",
        puppetDir + "/types",
        puppetDir + "/qml2puppet/instances",
        puppetDir + "/qmlprivategate",
    ])

    // TODO: Put into static lib and share with qmldesigner
    Group {
        name: "puppet sources"
        prefix: puppetDir + '/'
        files: [
            "commands/changeauxiliarycommand.cpp",
            "commands/changeauxiliarycommand.h",
            "commands/changebindingscommand.cpp",
            "commands/changebindingscommand.h",
            "commands/changefileurlcommand.cpp",
            "commands/changefileurlcommand.h",
            "commands/changeidscommand.cpp",
            "commands/changeidscommand.h",
            "commands/changenodesourcecommand.cpp",
            "commands/changenodesourcecommand.h",
            "commands/changestatecommand.cpp",
            "commands/changestatecommand.h",
            "commands/changevaluescommand.cpp",
            "commands/changevaluescommand.h",
            "commands/childrenchangedcommand.cpp",
            "commands/childrenchangedcommand.h",
            "commands/clearscenecommand.cpp",
            "commands/clearscenecommand.h",
            "commands/completecomponentcommand.cpp",
            "commands/completecomponentcommand.h",
            "commands/componentcompletedcommand.cpp",
            "commands/componentcompletedcommand.h",
            "commands/createinstancescommand.cpp",
            "commands/createinstancescommand.h",
            "commands/createscenecommand.cpp",
            "commands/createscenecommand.h",
            "commands/debugoutputcommand.cpp",
            "commands/debugoutputcommand.h",
            "commands/endpuppetcommand.cpp",
            "commands/endpuppetcommand.h",
            "commands/informationchangedcommand.cpp",
            "commands/informationchangedcommand.h",
            "commands/pixmapchangedcommand.cpp",
            "commands/pixmapchangedcommand.h",
            "commands/puppetalivecommand.cpp",
            "commands/puppetalivecommand.h",
            "commands/removeinstancescommand.cpp",
            "commands/removeinstancescommand.h",
            "commands/removepropertiescommand.cpp",
            "commands/removepropertiescommand.h",
            "commands/removesharedmemorycommand.cpp",
            "commands/removesharedmemorycommand.h",
            "commands/reparentinstancescommand.cpp",
            "commands/reparentinstancescommand.h",
            "commands/statepreviewimagechangedcommand.cpp",
            "commands/statepreviewimagechangedcommand.h",
            "commands/synchronizecommand.cpp",
            "commands/synchronizecommand.h",
            "commands/tokencommand.cpp",
            "commands/tokencommand.h",
            "commands/valueschangedcommand.cpp",
            "commands/valueschangedcommand.h",
            "container/addimportcontainer.cpp",
            "container/addimportcontainer.h",
            "container/idcontainer.cpp",
            "container/idcontainer.h",
            "container/imagecontainer.cpp",
            "container/imagecontainer.h",
            "container/informationcontainer.cpp",
            "container/informationcontainer.h",
            "container/instancecontainer.cpp",
            "container/instancecontainer.h",
            "container/mockuptypecontainer.cpp",
            "container/mockuptypecontainer.h",
            "container/propertyabstractcontainer.cpp",
            "container/propertyabstractcontainer.h",
            "container/propertybindingcontainer.cpp",
            "container/propertybindingcontainer.h",
            "container/propertyvaluecontainer.cpp",
            "container/propertyvaluecontainer.h",
            "container/reparentcontainer.cpp",
            "container/reparentcontainer.h",
            "container/sharedmemory.h",
            "instances/nodeinstanceclientproxy.cpp",
            "instances/nodeinstanceclientproxy.h",
            "interfaces/commondefines.h",
            "interfaces/nodeinstanceclientinterface.h",
            "interfaces/nodeinstanceserverinterface.cpp",
            "interfaces/nodeinstanceserverinterface.h",
            "qmlprivategate/qmlprivategate.h",
            "types/enumeration.cpp",
            "types/enumeration.h",
        ]
    }

    Group {
        name: "SharedMemory (Unix)"
        condition: qbs.targetOS.contains("unix")
        prefix: puppetDir + "/container/"
        files: ["sharedmemory_unix.cpp"]
    }

    Group {
        name: "SharedMemory (Generic)"
        condition: !qbs.targetOS.contains("unix")
        prefix: puppetDir + "/container/"
        files: ["sharedmemory_qt.cpp"]
    }

    Group {
        name: "puppet2 sources"
        prefix: puppetDir + "/qml2puppet/"
        files: [
            "../qmlpuppet.qrc",
            "Info.plist",
            "instances/anchorchangesnodeinstance.cpp",
            "instances/anchorchangesnodeinstance.h",
            "instances/behaviornodeinstance.cpp",
            "instances/behaviornodeinstance.h",
            "instances/childrenchangeeventfilter.cpp",
            "instances/childrenchangeeventfilter.h",
            "instances/componentnodeinstance.cpp",
            "instances/componentnodeinstance.h",
            "instances/dummycontextobject.cpp",
            "instances/dummycontextobject.h",
            "instances/dummynodeinstance.cpp",
            "instances/dummynodeinstance.h",
            "instances/layoutnodeinstance.cpp",
            "instances/layoutnodeinstance.h",
            "instances/nodeinstanceserver.cpp",
            "instances/nodeinstanceserver.h",
            "instances/nodeinstancesignalspy.cpp",
            "instances/nodeinstancesignalspy.h",
            "instances/objectnodeinstance.cpp",
            "instances/objectnodeinstance.h",
            "instances/positionernodeinstance.cpp",
            "instances/positionernodeinstance.h",
            "instances/quickitemnodeinstance.cpp",
            "instances/quickitemnodeinstance.h",
            "instances/qmlpropertychangesnodeinstance.cpp",
            "instances/qmlpropertychangesnodeinstance.h",
            "instances/qmlstatenodeinstance.cpp",
            "instances/qmlstatenodeinstance.h",
            "instances/qmltransitionnodeinstance.cpp",
            "instances/qmltransitionnodeinstance.h",
            "instances/qt3dpresentationnodeinstance.cpp",
            "instances/qt3dpresentationnodeinstance.h",
            "instances/qt5informationnodeinstanceserver.cpp",
            "instances/qt5informationnodeinstanceserver.h",
            "instances/qt5nodeinstanceclientproxy.cpp",
            "instances/qt5nodeinstanceclientproxy.h",
            "instances/qt5nodeinstanceserver.cpp",
            "instances/qt5nodeinstanceserver.h",
            "instances/qt5previewnodeinstanceserver.cpp",
            "instances/qt5previewnodeinstanceserver.h",
            "instances/qt5rendernodeinstanceserver.cpp",
            "instances/qt5rendernodeinstanceserver.h",
            "instances/qt5testnodeinstanceserver.cpp",
            "instances/qt5testnodeinstanceserver.h",
            "instances/servernodeinstance.cpp",
            "instances/servernodeinstance.h",
            "qml2puppetmain.cpp",
        ]
    }

    Group {
        name: "qmlprivategate (new)"
        condition: QtcFunctions.versionIsAtLeast(Qt.core.version, "5.6.0")
        prefix: puppetDir + "/qmlprivategate/"
        files: [
            "qmlprivategate_56.cpp",
        ]
    }

    Group {
        name: "qmlprivategate (old)"
        condition: !QtcFunctions.versionIsAtLeast(Qt.core.version, "5.6.0")
        prefix: puppetDir + "/qmlprivategate/"
        files: [
            "designercustomobjectdata.cpp",
            "designercustomobjectdata.h",
            "metaobject.cpp",
            "metaobject.h",
            "qmlprivategate.cpp",
        ]
    }
}