From patchwork Fri Jan 31 14:25:07 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?C=C3=A9dric_Ch=C3=A9pied?= X-Patchwork-Id: 315600 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ozlabs.org (Postfix) with ESMTP id DFFED2C00AD for ; Sat, 1 Feb 2014 01:25:35 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 4FA1B8B68B; Fri, 31 Jan 2014 14:25:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C+NOE7gzw3Ad; Fri, 31 Jan 2014 14:25:33 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id CABFC8B6BA; Fri, 31 Jan 2014 14:25:32 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 330E91BFA0C for ; Fri, 31 Jan 2014 14:25:31 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 2D1BD8B520 for ; Fri, 31 Jan 2014 14:25:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id U4JZWQZylb+U for ; Fri, 31 Jan 2014 14:25:30 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wg0-f46.google.com (mail-wg0-f46.google.com [74.125.82.46]) by whitealder.osuosl.org (Postfix) with ESMTPS id 20F268B67D for ; Fri, 31 Jan 2014 14:25:29 +0000 (UTC) Received: by mail-wg0-f46.google.com with SMTP id x12so8784395wgg.1 for ; Fri, 31 Jan 2014 06:25:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:mime-version:content-type :content-transfer-encoding; bh=ww9zRFSbFsZq683xecMpogPKsMr9Ac3exQk6NW+kdVw=; b=HUhEbciqrJlbHoR0f3EfH3x+JkuZAC11UC9u3RdYJh4AqfTvqGk15Y/uPslXCgEPfa lscnEjYGJ10evCk3vAQqB7rz8YCUDBXHoyaqYkE8INhqcQM5UB9cq4LBG185C6hJnDWw w88VdqOVr8m1RCbYOw9kLS93ijGPP2Nl61SFbxVBthe+UG99ryMHGi99j82TpsRSWK18 UQ6ripxae20vuAbsnDvSS87mP4XIjTrYz2DP8g7wsfopuaplvdB2Njg8OAvP1a7ZkXrd V6J+3M9wxVjKwAI7Cija+kpvEGiMJoUbgKhSz0LRFxZpKgGKBdCsxf+Hy3la/WJebozY Pv/Q== X-Received: by 10.180.165.15 with SMTP id yu15mr13961381wib.28.1391178328080; Fri, 31 Jan 2014 06:25:28 -0800 (PST) Received: from Zorglub.openwide.toulouse (91-224-149-44.tetaneutral.net. [91.224.149.44]) by mx.google.com with ESMTPSA id bm8sm20017263wjc.12.2014.01.31.06.25.26 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 31 Jan 2014 06:25:27 -0800 (PST) From: "=?UTF-8?q?C=C3=A9dric=20Ch=C3=A9pied?=" To: buildroot@busybox.net Date: Fri, 31 Jan 2014 15:25:07 +0100 Message-Id: <1391178307-32431-1-git-send-email-cedric.chepied@openwide.fr> X-Mailer: git-send-email 1.8.5.3 MIME-Version: 1.0 Cc: =?UTF-8?q?C=C3=A9dric=20Ch=C3=A9pied?= Subject: [Buildroot] [PATCH 1/1] Qt4: adapt for X11 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net Qt4 can now be built with X11 support I found the original patch here: http://lists.busybox.net/pipermail/buildroot/2011-October/046706.html Signed-off-by: Cédric Chépied --- package/qt/Config.in | 8 ++++++++ package/qt/qt.mk | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/package/qt/Config.in b/package/qt/Config.in index 926d54c..7f8de3b 100644 --- a/package/qt/Config.in +++ b/package/qt/Config.in @@ -15,6 +15,12 @@ menuconfig BR2_PACKAGE_QT if BR2_PACKAGE_QT +config BR2_PACKAGE_QT_X11 + bool "X server support" + default n + help + Build Qt with X11 support + config BR2_PACKAGE_QT_DEBUG bool "Compile with debug support" help @@ -96,6 +102,7 @@ config BR2_PACKAGE_QT_GUI_MODULE video output, or you don't require Qt GUI, say n. if BR2_PACKAGE_QT_GUI_MODULE +if !BR2_PACKAGE_QT_X11 menu "Pixel depths" comment "Deselecting each option leads to Qt's default (8,16,32)" @@ -176,6 +183,7 @@ config BR2_PACKAGE_QT_SYSTEMFREETYPE Use shared libfreetype from the target system. See http://www.freetype.org/ endchoice +endif # !BR2_PACKAGE_QT_X11 config BR2_PACKAGE_QT_GIF bool "Enable GIF support" diff --git a/package/qt/qt.mk b/package/qt/qt.mk index bc329f0..1fb350c 100644 --- a/package/qt/qt.mk +++ b/package/qt/qt.mk @@ -111,6 +111,10 @@ ifneq ($(QT_PIXEL_DEPTHS),) QT_CONFIGURE_OPTS += -depths $(subst $(space),$(comma),$(strip $(QT_PIXEL_DEPTHS))) endif +ifneq ($(BR2_PACKAGE_QT_X11),y) +### Embedded options +QT_CONFIGURE_OPTS += -no-gfx-qnx -no-kbd-qnx -no-mouse-qnx + ### Display drivers ifeq ($(BR2_PACKAGE_QT_GFX_LINUXFB),y) QT_CONFIGURE_OPTS += -qt-gfx-linuxfb @@ -197,6 +201,12 @@ else QT_CONFIGURE_OPTS += -no-kbd-qvfb endif +else +### X11 options +QT_CONFIGURE_OPTS += -no-gtkstyle -no-openvg -no-glib --disable-script +endif + + ifeq ($(BR2_PACKAGE_QT_DEBUG),y) QT_CONFIGURE_OPTS += -debug else @@ -236,7 +246,12 @@ else QT_EMB_PLATFORM = generic endif +ifneq ($(BR2_PACKAGE_QT_X11),y) QT_CONFIGURE_OPTS += -embedded $(QT_EMB_PLATFORM) +else +QT_CONFIGURE_OPTS += -xplatform linux-$(QT_EMB_PLATFORM)-g++ -v +QT_DEPENDENCIES += fontconfig xlib_libXi xlib_libX11 xlib_libXrender xlib_libXcursor xlib_libXinerama xlib_libXrandr xlib_libXext xlib_libXv +endif ifneq ($(BR2_PACKAGE_QT_GUI_MODULE),y) QT_CONFIGURE_OPTS += -no-gui @@ -453,7 +468,11 @@ endif # End of workaround. # Variable for other Qt applications to use +ifneq ($(BR2_PACKAGE_QT_X11),y) QT_QMAKE = $(HOST_DIR)/usr/bin/qmake -spec qws/linux-$(QT_EMB_PLATFORM)-g++ +else +QT_QMAKE:=$(HOST_DIR)/usr/bin/qmake -spec linux-$(QT_EMB_PLATFORM)-g++ +endif ################################################################################ # QT_QMAKE_SET -- helper macro to set = in @@ -467,10 +486,26 @@ QT_QMAKE = $(HOST_DIR)/usr/bin/qmake -spec qws/linux-$(QT_EMB_PLATFORM)-g++ # E.G. use like this: # $(call QT_QMAKE_SET,variable,value,directory) ################################################################################ +ifneq ($(BR2_PACKAGE_QT_X11),y) define QT_QMAKE_SET $(SED) '/$(1)/d' $(3)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf $(SED) '/include.*qws.conf/a$(1) = $(2)' $(3)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf endef +else +define QT_QMAKE_SET + $(SED) '/$(1)/d' $(3)/mkspecs/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf + $(SED) '/load(qt_config)/i$(1) = $(2)' $(3)/mkspecs/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf +endef +endif + +ifeq ($(BR2_PACKAGE_QT_X11),y) +define QT_CONFIGURE_MKSPECS + cp -R $(@D)/mkspecs/linux-g++ $(@D)/mkspecs/linux-$(QT_EMB_PLATFORM)-g++ + $(call QT_QMAKE_SET,QMAKE_INCDIR_X11,$(STAGING_DIR)/usr/X11R6/include,$(@D)) + $(call QT_QMAKE_SET,QMAKE_LIBDIR,$(STAGING_DIR)/lib/ $(STAGING_DIR)/usr/lib/,$(@D)) + $(call QT_QMAKE_SET,QMAKE_LIBDIR_X11,$(STAGING_DIR)/lib/ $(STAGING_DIR)/usr/lib/,$(@D)) +endef +endif ifneq ($(BR2_INET_IPV6),y) define QT_CONFIGURE_IPV6 @@ -487,6 +522,7 @@ endif define QT_CONFIGURE_CMDS -[ -f $(@D)/Makefile ] && $(MAKE) -C $(@D) confclean + $(QT_CONFIGURE_MKSPECS) $(QT_CONFIGURE_IPV6) $(QT_CONFIGURE_CONFIG_FILE) # Fix compiler path