Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Korsgaard <peter@korsgaard.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] qt5base: support OVERRIDE_SRCDIR
Date: Tue, 24 Nov 2015 22:21:49 +0100	[thread overview]
Message-ID: <1448400109-32767-1-git-send-email-peter@korsgaard.com> (raw)

With OVERRIDE_SRCDIR we don't apply any of the qt5base patches, but the
custom specs files are needed to be able to build - So install these in the
configure step instead of having them as a patch.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
 package/qt5/qt5base/0002-mkspecs-files.patch | 41 ----------------------------
 package/qt5/qt5base/qmake.conf               | 24 ++++++++++++++++
 package/qt5/qt5base/qplatformdefs.h          |  1 +
 package/qt5/qt5base/qt5base.mk               |  4 +++
 4 files changed, 29 insertions(+), 41 deletions(-)
 delete mode 100644 package/qt5/qt5base/0002-mkspecs-files.patch
 create mode 100644 package/qt5/qt5base/qmake.conf
 create mode 100644 package/qt5/qt5base/qplatformdefs.h

diff --git a/package/qt5/qt5base/0002-mkspecs-files.patch b/package/qt5/qt5base/0002-mkspecs-files.patch
deleted file mode 100644
index adeabdf..0000000
--- a/package/qt5/qt5base/0002-mkspecs-files.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Add a Buildroot 'device' to ease cross-compilation
-
-Qt5 has a mechanism to support "device" profiles, so that people can
-specify the compiler, compiler flags and so on for a specific device.
-
-We leverage this mechanism in the Buildroot packaging of qt5 to
-simplify cross-compilation: we have our own "device" definition, which
-allows us to easily pass the cross-compiler paths and flags from our
-qt5.mk.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-[Arnout: remove ccache support]
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
-
-Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
-===================================================================
---- /dev/null
-+++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf
-@@ -0,0 +1,16 @@
-+include(../common/linux_device_pre.conf)
-+
-+# modifications to g++-unix.conf
-+QMAKE_CC                = $${CROSS_COMPILE}gcc
-+QMAKE_CXX               = $${CROSS_COMPILE}g++
-+
-+#modifications to gcc-base.conf
-+QMAKE_CFLAGS           += $${BR_COMPILER_CFLAGS}
-+QMAKE_CXXFLAGS         += $${BR_COMPILER_CXXFLAGS}
-+QMAKE_CXXFLAGS_RELEASE += -O3
-+CONFIG                 += nostrip
-+
-+QMAKE_LIBS             += -lrt -lpthread -ldl
-+
-+include(../common/linux_device_post.conf)
-+load(qt_config)
-Index: b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
-===================================================================
---- /dev/null
-+++ b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
-@@ -0,0 +1 @@
-+#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf
new file mode 100644
index 0000000..2152d3c
--- /dev/null
+++ b/package/qt5/qt5base/qmake.conf
@@ -0,0 +1,24 @@
+# Qt5 has a mechanism to support "device" profiles, so that people can
+# specify the compiler, compiler flags and so on for a specific device.
+
+# We leverage this mechanism in the Buildroot packaging of qt5 to
+# simplify cross-compilation: we have our own "device" definition, which
+# allows us to easily pass the cross-compiler paths and flags from our
+# qt5.mk.
+
+include(../common/linux_device_pre.conf)
+
+# modifications to g++-unix.conf
+QMAKE_CC                = $${CROSS_COMPILE}gcc
+QMAKE_CXX               = $${CROSS_COMPILE}g++
+
+# modifications to gcc-base.conf
+QMAKE_CFLAGS           += $${BR_COMPILER_CFLAGS}
+QMAKE_CXXFLAGS         += $${BR_COMPILER_CXXFLAGS}
+QMAKE_CXXFLAGS_RELEASE += -O3
+CONFIG                 += nostrip
+
+QMAKE_LIBS             += -lrt -lpthread -ldl
+
+include(../common/linux_device_post.conf)
+load(qt_config)
diff --git a/package/qt5/qt5base/qplatformdefs.h b/package/qt5/qt5base/qplatformdefs.h
new file mode 100644
index 0000000..99e9a27
--- /dev/null
+++ b/package/qt5/qt5base/qplatformdefs.h
@@ -0,0 +1 @@
+#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 827a85e..6eeb619 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -179,6 +179,10 @@ endef
 endif
 
 define QT5BASE_CONFIGURE_CMDS
+	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
+		$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
+	$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \
+		$(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
 	$(QT5BASE_CONFIGURE_CONFIG_FILE)
 	(cd $(@D); \
 		$(TARGET_MAKE_ENV) \
-- 
2.1.4

             reply	other threads:[~2015-11-24 21:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-24 21:21 Peter Korsgaard [this message]
2015-11-24 22:40 ` [Buildroot] [PATCH] qt5base: support OVERRIDE_SRCDIR Yann E. MORIN
2015-11-24 23:00   ` Arnout Vandecappelle
2015-11-24 23:06     ` Yann E. MORIN
2015-11-25  6:21     ` Peter Korsgaard
2015-11-26 21:01 ` Yann E. MORIN
2015-11-26 21:17 ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1448400109-32767-1-git-send-email-peter@korsgaard.com \
    --to=peter@korsgaard.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox