Skip to contentSkip to conversation

Pull request for branch qt-host-tools

GIT PULL New Thomas Petazzoni 2 participants 3 messages Feb 7, 2011

lore
Share & tools
lore
#0 lore raw

The following changes since commit c761eafb021c2beaf52b2d1a383433deac5fc2b4:
Thomas Petazzoni (1):
openssl: pass LDFLAGS to fix incorrect link

are available in the git repository at:

git://git.busybox.net/~tpetazzoni/git/buildroot qt-host-tools

Thomas Petazzoni (1):
qt: move host programs and specs in HOST_DIR

 package/qt/qt.mk |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

Thanks,

Signature · 1 line
Thomas Petazzoni
#1 lore raw

PATCH 1/1 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.

---
 package/qt/qt.mk |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)
package/qt/qt.mk +17 -1
index 6eb31bc..3857087 100644
@@ -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
Signature · 1 line
1.7.0.4
#2 lore raw

PATCH 1/1 qt: move host programs and specs in HOST_DIR

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> The Qt build system installs all host programs (uic, rcc, moc, qmake, Thomas> etc.) in the same base directory as the headers and libraries, but Thomas> that's not great for Buildroot.

Thomas> So we now move the host programs and the mkspecs files to the Thomas> $(HOST_DIR), and create a qt.conf, which tells qmake where everything Thomas> is located.

Thomas> Tested with Qmake and Cmake as build system for a simple Qt Thomas> application.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard