isEmpty(QMAKE_RCC) {
    win32:QMAKE_RCC = $$[QT_INSTALL_BINS]\rcc.exe
    else:QMAKE_RCC = $$[QT_INSTALL_BINS]/rcc
}

isEmpty(RCC_DIR):RCC_DIR = .
isEmpty(QMAKE_RESOURCE_PREFIX):QMAKE_RESOURCE_PREFIX = /tmp/
isEmpty(QMAKE_MOD_RCC):QMAKE_MOD_RCC = qrc

resource_combine {
   rcc.CONFIG += combine
   rcc.output  = $$RCC_DIR/$${first(QMAKE_MOD_RCC)}_combined$${first(QMAKE_EXT_CPP)}
} else {
   rcc.output = $$RCC_DIR/$${first(QMAKE_MOD_RCC)}_${QMAKE_FILE_BASE}$${first(QMAKE_EXT_CPP)}
}
!contains(QMAKE_RESOURCE_FLAGS, -root):!isEmpty(QMAKE_RESOURCE_ROOT):QMAKE_RESOURCE_FLAGS += -root $$QMAKE_RESOURCE_ROOT
!contains(QMAKE_RESOURCE_FLAGS, -name) {
    resource_combine {
       isEmpty(QMAKE_RESOURCE_NAME):!isEmpty(TARGET):QMAKE_RESOURCE_NAME = $$TARGET
       !isEmpty(QMAKE_RESOURCE_NAME):QMAKE_RESOURCE_FLAGS += -name $$QMAKE_RESOURCE_NAME
    } else {
       QMAKE_RESOURCE_FLAGS += -name ${QMAKE_FILE_BASE}
    }
}
rcc.commands = "$$QMAKE_RCC" $$QMAKE_RESOURCE_FLAGS "${QMAKE_FILE_IN}" -o "${QMAKE_FILE_OUT}"
rcc.depend_command = "$$QMAKE_RCC" -list $$QMAKE_RESOURCE_FLAGS "${QMAKE_FILE_IN}"
rcc.input = RESOURCES
rcc.variable_out = SOURCES
rcc.name = RCC ${QMAKE_FILE_IN}
silent:rcc.commands = @echo rcc "${QMAKE_FILE_IN}" && $$rcc.commands
QMAKE_EXTRA_COMPILERS += rcc
