mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-23 23:42:32 +00:00
qt5: fix parallel build issues related to generated files
Store all files generated by moc and rcc in the application's build directory to prevent the use of unfinished generated files for other applications built at the same time. Issue #3115
This commit is contained in:
parent
e0af049124
commit
a155d0e531
@ -35,20 +35,7 @@ QT_DEFINES += -D__GENODE__
|
|||||||
|
|
||||||
CC_OPT += $(QT_DEFINES)
|
CC_OPT += $(QT_DEFINES)
|
||||||
|
|
||||||
SOURCES_FILTERED = $(filter-out $(SOURCES_FILTER_OUT), $(SOURCES))
|
|
||||||
HEADERS_FILTERED = $(filter-out $(HEADERS_FILTER_OUT), $(HEADERS))
|
|
||||||
|
|
||||||
# add sources defined in qmake project files
|
|
||||||
SRC_CC += $(SOURCES_FILTERED)
|
|
||||||
|
|
||||||
# handle moc-headers, resources and ui descriptions
|
# handle moc-headers, resources and ui descriptions
|
||||||
$(addsuffix .o,$(basename $(SRC_CC))): $(addprefix ui_,$(FORMS:.ui=.h))
|
|
||||||
|
|
||||||
SRC_CC_QT_GENERATED = $(join $(dir $(HEADERS_FILTERED)),$(addprefix moc_,$(notdir $(HEADERS_FILTERED:.h=.cpp)))) \
|
|
||||||
$(join $(dir $(RESOURCES)),$(addprefix qrc_,$(notdir $(RESOURCES:.qrc=.cpp))))
|
|
||||||
|
|
||||||
.SECONDARY: $(SRC_CC_QT_GENERATED)
|
|
||||||
SRC_CC += $(SRC_CC_QT_GENERATED)
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Locations of moc, rcc, and uic binaries
|
# Locations of moc, rcc, and uic binaries
|
||||||
@ -104,10 +91,4 @@ ifneq ($(filter arm,$(SPECS)),)
|
|||||||
QT_DEFINES += -DQT_ARCH_ARMV6
|
QT_DEFINES += -DQT_ARCH_ARMV6
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# remove generated files in clean rules
|
|
||||||
clean cleanall: clean_rule
|
|
||||||
clean_rule:
|
|
||||||
$(VERBOSE)$(RM) -f $(SRC_CC_QT_GENERATED)
|
|
||||||
$(VERBOSE)$(RM) -f $(SOURCES_FILTERED:.cpp=.moc)
|
|
||||||
$(VERBOSE)$(RM) -f $(addprefix ui_,$(FORMS:.ui=.h))
|
|
||||||
endif
|
endif
|
||||||
|
@ -1,5 +1,25 @@
|
|||||||
INC_DIR += $(PRG_DIR)
|
INC_DIR += $(PRG_DIR)
|
||||||
|
|
||||||
|
SOURCES_FILTERED = $(filter-out $(SOURCES_FILTER_OUT), $(SOURCES))
|
||||||
|
HEADERS_FILTERED = $(filter-out $(HEADERS_FILTER_OUT), $(HEADERS))
|
||||||
|
|
||||||
|
# add sources defined in qmake project files
|
||||||
|
SRC_CC += $(SOURCES_FILTERED)
|
||||||
|
|
||||||
|
# add generated sources
|
||||||
|
SRC_CC_QT_GENERATED = $(addprefix moc_,$(notdir $(HEADERS_FILTERED:.h=.cpp))) \
|
||||||
|
$(addprefix qrc_,$(notdir $(RESOURCES:.qrc=.cpp)))
|
||||||
|
|
||||||
|
SRC_CC += $(SRC_CC_QT_GENERATED)
|
||||||
|
|
||||||
|
# handle relative paths in the 'HEADERS' variable
|
||||||
|
vpath %.h $(abspath $(addprefix $(PRG_DIR)/,$(sort $(dir $(HEADERS_FILTERED)))))
|
||||||
|
|
||||||
|
# handle relative paths in the 'RESOURCES' variable
|
||||||
|
vpath %.qrc $(abspath $(addprefix $(PRG_DIR)/,$(sort $(dir $(RESOURCES)))))
|
||||||
|
|
||||||
|
$(addsuffix .o,$(basename $(SRC_CC))): $(addprefix ui_,$(FORMS:.ui=.h))
|
||||||
|
|
||||||
LIBS += libc base
|
LIBS += libc base
|
||||||
|
|
||||||
# QtCore
|
# QtCore
|
||||||
|
Loading…
Reference in New Issue
Block a user