summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2011-02-07 17:18:00 (GMT)
committer Peter Korsgaard <jacmet@sunsite.dk>2011-02-07 17:22:25 (GMT)
commitca290e7e280da8bdaa2818d6666fee1875f359ef (patch)
tree46767a5876a5e6c62d6f1903637c1dea2f85b265
parent0c19765ba4289f0a1d53b7060095b65c42b9cda6 (diff)
downloadbuildroot-ca290e7e280da8bdaa2818d6666fee1875f359ef.tar.gz
buildroot-ca290e7e280da8bdaa2818d6666fee1875f359ef.tar.bz2
qt: move host programs and specs in HOST_DIR
The Qt build system installs all host programs (uic, rcc, moc, qmake, etc.) in the same base directory as the headers and libraries, but that's not great for Buildroot. So we now move the host programs and the mkspecs files to the $(HOST_DIR), and create a qt.conf, which tells qmake where everything is located. Tested with Qmake and Cmake as build system for a simple Qt application. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--package/qt/qt.mk18
1 files changed, 17 insertions, 1 deletions
diff --git a/package/qt/qt.mk b/package/qt/qt.mk
index 6eb31bc..3857087 100644
--- a/package/qt/qt.mk
+++ b/package/qt/qt.mk
@@ -536,8 +536,24 @@ $(QT_TARGET_DIR)/.compiled: $(QT_TARGET_DIR)/.configured
$(MAKE) -C $(QT_TARGET_DIR)
touch $@
-$(STAGING_DIR)/usr/lib/libQtCore.la: $(QT_TARGET_DIR)/.compiled
+$(HOST_DIR)/usr/bin/qt.conf:
+ mkdir -p $(dir $@)
+ echo "[Paths]" > $@
+ echo "Prefix=$(HOST_DIR)/usr" >> $@
+ echo "Headers=$(STAGING_DIR)/usr/include" >> $@
+ echo "Libraries=$(STAGING_DIR)/usr/lib" >> $@
+ echo "Data=$(HOST_DIR)/usr" >> $@
+ echo "Binaries=$(HOST_DIR)/usr/bin" >> $@
+
+$(STAGING_DIR)/usr/lib/libQtCore.la: $(QT_TARGET_DIR)/.compiled $(HOST_DIR)/usr/bin/qt.conf
$(MAKE) -C $(QT_TARGET_DIR) install
+ # Move host programs and spec files to the host directory. The
+ # generated qt.conf file will tell qmake where everything is.
+ mv $(addprefix $(STAGING_DIR)/usr/bin/,moc rcc qmake lrelease) $(HOST_DIR)/usr/bin
+ifeq ($(BR2_PACKAGE_QT_GUI_MODULE),y)
+ mv $(STAGING_DIR)/usr/bin/uic $(HOST_DIR)/usr/bin
+endif
+ mv $(STAGING_DIR)/usr/mkspecs $(HOST_DIR)/usr
qt-gui: $(STAGING_DIR)/usr/lib/libQtCore.la
mkdir -p $(TARGET_DIR)/usr/lib/fonts