summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qscxmlc.prf
blob: 158455689d436f8ba74996836f3c96759d056236 (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
qtPrepareTool(QMAKE_QSCXMLC, qscxmlc)

isEmpty(QSCXMLC_DIR):QSCXMLC_DIR = .

debug_and_release {
    CONFIG(debug, debug|release):SUFFIX = /debug
    CONFIG(release, debug|release):SUFFIX = /release
}

QSCXMLC_DIR = $$QSCXMLC_DIR$$SUFFIX

{
qscxmlc.name = QSCXMLC ${QMAKE_FILE_IN}.h
qscxmlc.input = STATECHARTS
qscxmlc.variable_out = QSCXMLC_HEADERS
qscxmlc.commands = $$QMAKE_QSCXMLC ${QMAKE_FILE_IN} -oh ${QMAKE_FILE_OUT} -ocpp $$QSCXMLC_DIR/${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)}
qscxmlc.output = $$QSCXMLC_DIR/${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
qscxmlc.CONFIG += target_predeps
qscxmlc.depends += $$QMAKE_QSCXMLC

QMAKE_EXTRA_COMPILERS += qscxmlc

qscxmlc_sm.name = QSCXMLC ${QMAKE_FILE_IN}.cpp
qscxmlc_sm.input = QSCXMLC_HEADERS
qscxmlc_sm.variable_out = GENERATED_SOURCES
qscxmlc_sm.commands = $$escape_expand(\\n) # force creation of rule
qscxmlc_sm.output = $$QSCXMLC_DIR/${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)}
qscxmlc_sm.CONFIG += target_predeps

QMAKE_EXTRA_COMPILERS += qscxmlc_sm
}

{
load(moc)
qscxmlc_moc.name = sc_$$moc_header.name
qscxmlc_moc.input = QSCXMLC_HEADERS
qscxmlc_moc.variable_out = $$moc_header.variable_out
qscxmlc_moc.commands = $$moc_header.commands
qscxmlc_moc.output = $$moc_header.output
qscxmlc_moc.dependency_type = $$moc_header.dependency_type

QMAKE_EXTRA_COMPILERS += qscxmlc_moc
}

!isEmpty(STATECHARTS) {
    INCLUDEPATH += $$absolute_path($$QSCXMLC_DIR, $$OUT_PWD)
}

QMAKE_DIR_REPLACE += QSCXMLC_DIR
QMAKE_DIR_REPLACE_SANE += QSCXMLC_DIR