# # \brief Makefile for building the Qt4 tools # \author Christian Prochaska # \author Norman Feske # \date 2009-05-15 # REP_DIR := $(realpath ..) include $(REP_DIR)/lib/mk/qt_version.inc # # Compound rule for building the tools in the right order # all: qmake/qmake moc/moc rcc/rcc uic/uic # # Determine qmakespec to be passed to the sub makefiles # HOST_ARCH := $(shell uname -m) ifneq ($(HOST_ARCH),x86_64) HOST_ARCH=x86 endif QMAKESPEC = $(REP_DIR)/contrib/$(QT4)/mkspecs/qws/linux-$(HOST_ARCH)-g++ # # Build qmake # qmake/qmake: QMAKESPEC=$(QMAKESPEC) make -C qmake # # Build the other tools using qmake # vpath bootstrap.pro $(REP_DIR)/contrib/$(QT4)/src/tools/bootstrap vpath moc.pro $(REP_DIR)/contrib/$(QT4)/src/tools/moc vpath rcc.pro $(REP_DIR)/contrib/$(QT4)/src/tools/rcc vpath uic.pro $(REP_DIR)/contrib/$(QT4)/src/tools/uic bootstrap/libbootstrap.a: bootstrap/Makefile make -C bootstrap moc/moc: moc/Makefile bootstrap/libbootstrap.a make -C moc rcc/rcc: rcc/Makefile bootstrap/libbootstrap.a make -C rcc uic/uic: uic/Makefile bootstrap/libbootstrap.a make -C uic # # Rule to generate tool Makefiles from the respective pro files via qmake # # The second include path is required to resolve the Genode-specific # 'gconfig.cpp' file. Even though this is a 'cpp' file, it is used via # '#include'. So we have to make its location known to the 'INCLUDEPATH'. # %/Makefile: %.pro mkdir -p $* QMAKESPEC=$(QMAKESPEC) qmake/qmake -o $*/Makefile \ QT_BUILD_TREE=$(REP_DIR)/contrib/$(QT4) \ INCLUDEPATH+=$(REP_DIR)/include/qt4 \ INCLUDEPATH+=$(REP_DIR)/include/qt4/QtCore \ INCLUDEPATH+=$(REP_DIR)/src/lib/qt4/src/corelib/global \ -after DESTDIR= \ -after LIBS+=-L../bootstrap\ $^ # # Clean rule # clean: make -C qmake clean rm -rf bootstrap moc rcc uic distclean: clean