source: trunk/mkspecs/features/resources.prf@ 706

Last change on this file since 706 was 594, checked in by Dmitry A. Kuminov, 16 years ago

qmake: Fixed: On debug_and_release platforms, qrc output files were searched in the wrong output directory while determining the list of include dependencies which resulted into a compile rule for the qrc in the right output directory file even if this file is actually included from the main source file which eventually resulted in duplicate symbols when linking [vendor bug].

File size: 1.5 KB
Line 
1isEmpty(QMAKE_RCC) {
2 win32:QMAKE_RCC = $$[QT_INSTALL_BINS]\rcc.exe
3 else:QMAKE_RCC = $$[QT_INSTALL_BINS]/rcc
4}
5
6isEmpty(RCC_DIR):RCC_DIR = .
7isEmpty(QMAKE_RESOURCE_PREFIX):QMAKE_RESOURCE_PREFIX = /tmp/
8isEmpty(QMAKE_MOD_RCC):QMAKE_MOD_RCC = qrc
9
10#make sure we can include these files
11rcc_dir_short = $$RCC_DIR
12contains(QMAKE_HOST.os,Windows)|os2:rcc_dir_short ~= s,^.:,/,
13contains(rcc_dir_short, ^[/\\\\].*):INCLUDEPATH += $$RCC_DIR
14else:INCLUDEPATH += $$OUT_PWD/$$RCC_DIR
15
16resource_combine {
17 rcc.CONFIG += combine
18 rcc.output = $$RCC_DIR/$${first(QMAKE_MOD_RCC)}_combined$${first(QMAKE_EXT_CPP)}
19} else {
20 rcc.output = $$RCC_DIR/$${first(QMAKE_MOD_RCC)}_${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)}
21}
22!contains(QMAKE_RESOURCE_FLAGS, -root):!isEmpty(QMAKE_RESOURCE_ROOT):QMAKE_RESOURCE_FLAGS += -root $$QMAKE_RESOURCE_ROOT
23!contains(QMAKE_RESOURCE_FLAGS, -name) {
24 resource_combine {
25 isEmpty(QMAKE_RESOURCE_NAME):!isEmpty(TARGET):QMAKE_RESOURCE_NAME = $$TARGET
26 !isEmpty(QMAKE_RESOURCE_NAME):QMAKE_RESOURCE_FLAGS += -name $$QMAKE_RESOURCE_NAME
27 } else {
28 QMAKE_RESOURCE_FLAGS += -name ${QMAKE_FILE_BASE}
29 }
30}
31rcc.commands = "$$QMAKE_RCC" $$QMAKE_RESOURCE_FLAGS "${QMAKE_FILE_IN}" -o "${QMAKE_FILE_OUT}"
32rcc.depend_command = "$$QMAKE_RCC" -list $$QMAKE_RESOURCE_FLAGS "${QMAKE_FILE_IN}"
33rcc.input = RESOURCES
34rcc.variable_out = SOURCES
35rcc.name = RCC ${QMAKE_FILE_IN}
36silent:rcc.commands = @echo rcc "${QMAKE_FILE_IN}" && $$rcc.commands
37QMAKE_EXTRA_COMPILERS += rcc
Note: See TracBrowser for help on using the repository browser.