# /**************************************************************************** # ** # ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). # ** Contact: # ** # ****************************************************************************/ # FLM to build Qt tools. QT_ROOT:= ../.. TARGETDIR:=$(EPOCROOT)/$(INSTALLPATH) MKSPECDIR:=$(EPOCROOT)/$(INSTALLPATH)/qt SOURCEDIR:=$(EXTENSION_ROOT)/$(QT_ROOT)/bin TOOLSSRCDIR:=$(EXTENSION_ROOT)/$(QT_ROOT)/src/tools LANGUAGETOOLDIR:=$(EXTENSION_ROOT)/$(QT_ROOT)/tools/linguist CONFIGURE_APP:=configure$(DOTEXE) $(call makepath,$(TARGETDIR)) ifneq ($(filter linux,$(HOSTPLATFORM)),) PLATFORM:=$(PLATFORM.LINUX) else PLATFORM:=$(PLATFORM.WIN32) endif TARGET_TOOLS:=$(TARGETDIR)/qmake$(DOTEXE) $(TARGETDIR)/moc$(DOTEXE) $(TARGETDIR)/rcc$(DOTEXE) $(TARGETDIR)/uic$(DOTEXE) $(TARGETDIR)/lrelease$(DOTEXE) QT_TOOLS:= $(TOOLSSRCDIR)/uic $(TOOLSSRCDIR)/moc $(TOOLSSRCDIR)/rcc $(LANGUAGETOOLDIR)/lrelease SOURCE_TOOLS:=$(SOURCEDIR)/qmake$(DOTEXE) $(SOURCEDIR)/moc$(DOTEXE) $(SOURCEDIR)/rcc$(DOTEXE) $(SOURCEDIR)/uic$(DOTEXE) $(SOURCEDIR)/lrelease$(DOTEXE) define QtConfiguration ifneq ($(filter linux,$(HOSTPLATFORM)),) $(TARGET_TOOLS): $(QT_TOOLS) else $(TARGET_TOOLS): $(SOURCEDIR)/qmake$(DOTEXE) endif $(call startrule,qtconf_deploy) \ $(GNUCP) $(SOURCEDIR)/$$(notdir $$@) $$@ \ $(call endrule,qtconf_deploy) ifneq ($(filter linux,$(HOSTPLATFORM)),) $(QT_TOOLS): $(TOOLSSRCDIR)/bootstrap $(call startrule,qtconf_tools_build) \ cd $$@; \ $(GNUMAKE38); \ cd .. \ $(call endrule,qtconf_tools_build) $(TOOLSSRCDIR)/bootstrap:$(SOURCEDIR)/qmake$(DOTEXE) $(call startrule,qtconf_bootstrap_build) \ cd $(TOOLSSRCDIR)/bootstrap; \ $(GNUMAKE38); \ cd .. \ $(call endrule,qtconf_bootstrap_build) endif $(SOURCEDIR)/qmake$(DOTEXE): $(EXTENSION_ROOT)/$(QT_ROOT)/$(CONFIGURE_APP) $(call startrule,qtconf) \ cd $(EXTENSION_ROOT)/$(QT_ROOT) && unset INCLUDE && unset LIB && $(EXTENSION_ROOT)/$(QT_ROOT)/$(CONFIGURE_APP) -platform $(PLATFORM) -xplatform $(XPLATFORM) $(OPTIONS) \ $(call endrule,qtconf) $(call startrule,headerexport) \ cd $(EXTENSION_ROOT)/$(QT_ROOT)/config.profiles/symbian && \ perl headerexport -base-dir $(EXTENSION_ROOT)/$(QT_ROOT) -outdir $(EPOCROOT)/epoc32/include/ $(call endrule,headerexport) $(call startrule,mkspecexport) \ $(GNUCP) -R $(EXTENSION_ROOT)/$(QT_ROOT)/mkspecs $(MKSPECDIR) $(call endrule,mkspecexport) endef # Here a variable named "done_" gets created GUARD:=done_$(call sanitise,$(TARGETDIR)/qmake$(DOTEXE)) # If variable "done_..." not set, set it to 1, so that # UREL and UDEB do not execute makesis twice on the same target ifeq ($($(GUARD)),) $(GUARD):=1 ifneq ($(filter linux,$(HOSTPLATFORM)),) EXPORT:: $(QT_TOOLS) $(TARGET_TOOLS) else EXPORT:: $(TARGET_TOOLS) endif $(eval $(call QtConfiguration)) $(eval $(call whatmacro,$(TARGET_TOOLS))) ifeq ($(OSTYPE),unix) $(eval $(call GenerateStandardCleanTarget,$(QT_TOOLS) $(TARGET_TOOLS) $(SOURCE_TOOLS),$(TARGETDIR))) else $(eval $(call GenerateStandardCleanTarget,$(TARGET_TOOLS) $(SOURCE_TOOLS),$(TARGETDIR))) endif endif