* [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6
@ 2012-02-26 12:13 Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 2/3] qt: Fix compilation of generic atomic routines Ismael Luceno
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Ismael Luceno @ 2012-02-26 12:13 UTC (permalink / raw)
To: buildroot
---
package/qt/qt.mk | 42 +++++++++++++++++++++---------------------
1 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/package/qt/qt.mk b/package/qt/qt.mk
index 5414947..f0045de 100644
--- a/package/qt/qt.mk
+++ b/package/qt/qt.mk
@@ -28,8 +28,11 @@ ifneq ($(QT_CONFIG_FILE),)
QT_CONFIGURE_OPTS += -config buildroot
endif
-QT_CFLAGS = $(TARGET_CFLAGS)
-QT_CXXFLAGS = $(TARGET_CXXFLAGS)
+QT_FLAGS = -march=$(BR2_GCC_TARGET_ARCH) -mcpu=$(BR2_GCC_TARGET_TUNE)
+
+# XXX: The following flag is a workaround for a GCC bug, detailed by
+# <http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02245.html>
+QT_FLAGS += -fno-strict-volatile-bitfields
ifeq ($(BR2_LARGEFILE),y)
QT_CONFIGURE_OPTS += -largefile
@@ -39,8 +42,7 @@ QT_CONFIGURE_OPTS += -no-largefile
# embedded sqlite module forces FILE_OFFSET_BITS=64 unless this is defined
# webkit internally uses this module as well
ifneq ($(BR2_PACKAGE_QT_SQLITE_QT)$(BR2_PACKAGE_QT_WEBKIT),)
-QT_CFLAGS += -DSQLITE_DISABLE_LFS
-QT_CXXFLAGS += -DSQLITE_DISABLE_LFS
+QT_FLAGS += -DSQLITE_DISABLE_LFS
endif
endif
@@ -443,20 +445,18 @@ QT_QMAKE:=$(HOST_DIR)/usr/bin/qmake -spec qws/linux-$(QT_EMB_PLATFORM)-g++
#
# Argument 1 is the variable name
# Argument 2 is the value to set variable to
-# Argument 3 is the base source directory of Qt
+# Argument 3 is a flag, set it to + to append values
#
# E.G. use like this:
# $(call QT_QMAKE_SET,variable,value,directory)
################################################################################
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
+ $(SED) '/$(1)/d;/include.*qws.conf/a$(1) $(3)= $(2)' $(@D)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf
endef
ifneq ($(BR2_INET_IPV6),y)
define QT_CONFIGURE_IPV6
- $(SED) 's/^CFG_IPV6=auto/CFG_IPV6=no/' $(@D)/configure
- $(SED) 's/^CFG_IPV6IFNAME=auto/CFG_IPV6IFNAME=no/' $(@D)/configure
+ $(SED) 's/^CFG_IPV6=auto/CFG_IPV6=no/;s/^CFG_IPV6IFNAME=auto/CFG_IPV6IFNAME=no/' $(@D)/configure
endef
endif
@@ -471,18 +471,18 @@ define QT_CONFIGURE_CMDS
$(QT_CONFIGURE_IPV6)
$(QT_CONFIGURE_CONFIG_FILE)
# Fix compiler path
- $(call QT_QMAKE_SET,QMAKE_CC,$(TARGET_CC),$(@D))
- $(call QT_QMAKE_SET,QMAKE_CXX,$(TARGET_CXX),$(@D))
- $(call QT_QMAKE_SET,QMAKE_LINK,$(TARGET_CXX),$(@D))
- $(call QT_QMAKE_SET,QMAKE_LINK_SHLIB,$(TARGET_CXX),$(@D))
- $(call QT_QMAKE_SET,QMAKE_AR,$(TARGET_AR) cqs,$(@D))
- $(call QT_QMAKE_SET,QMAKE_OBJCOPY,$(TARGET_OBJCOPY),$(@D))
- $(call QT_QMAKE_SET,QMAKE_RANLIB,$(TARGET_RANLIB),$(@D))
- $(call QT_QMAKE_SET,QMAKE_STRIP,$(TARGET_STRIP),$(@D))
- $(call QT_QMAKE_SET,QMAKE_CFLAGS,$(QT_CFLAGS),$(@D))
- $(call QT_QMAKE_SET,QMAKE_CXXFLAGS,$(QT_CXXFLAGS),$(@D))
- $(call QT_QMAKE_SET,QMAKE_LFLAGS,$(TARGET_LDFLAGS),$(@D))
- $(call QT_QMAKE_SET,PKG_CONFIG,$(HOST_DIR)/usr/bin/pkg-config,$(@D))
+ $(call QT_QMAKE_SET,QMAKE_CC,$(TARGET_CC))
+ $(call QT_QMAKE_SET,QMAKE_CXX,$(TARGET_CXX))
+ $(call QT_QMAKE_SET,QMAKE_LINK,$(TARGET_CXX))
+ $(call QT_QMAKE_SET,QMAKE_LINK_SHLIB,$(TARGET_CXX))
+ $(call QT_QMAKE_SET,QMAKE_AR,$(TARGET_AR) cqs)
+ $(call QT_QMAKE_SET,QMAKE_OBJCOPY,$(TAGET_OBJCOPY))
+ $(call QT_QMAKE_SET,QMAKE_RANLIB,$(TARGET_RANLIB))
+ $(call QT_QMAKE_SET,QMAKE_STRIP,$(TARGET_STRIP))
+ $(call QT_QMAKE_SET,QMAKE_CFLAGS,$(QT_FLAGS) $(TARGET_CFLAGS),+)
+ $(call QT_QMAKE_SET,QMAKE_CXXFLAGS,$(QT_FLAGS) $(TARGET_CXXFLAGS),+)
+ $(call QT_QMAKE_SET,QMAKE_LFLAGS,$(TARGET_LDFLAGS),+)
+ $(call QT_QMAKE_SET,PKG_CONFIG,$(HOST_DIR)/usr/bin/pkg-config)
# Don't use TARGET_CONFIGURE_OPTS here, qmake would be compiled for the target
# instead of the host then. So set PKG_CONFIG* manually.
(cd $(@D); \
--
1.7.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/3] qt: Fix compilation of generic atomic routines
2012-02-26 12:13 [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Ismael Luceno
@ 2012-02-26 12:13 ` Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 3/3] qt: Patch to disable some tools that give link-time issues Ismael Luceno
2012-02-26 21:31 ` [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Peter Korsgaard
2 siblings, 0 replies; 4+ messages in thread
From: Ismael Luceno @ 2012-02-26 12:13 UTC (permalink / raw)
To: buildroot
---
package/qt/qt-gcc-4.6.2-fixes.patch | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
create mode 100644 package/qt/qt-gcc-4.6.2-fixes.patch
diff --git a/package/qt/qt-gcc-4.6.2-fixes.patch b/package/qt/qt-gcc-4.6.2-fixes.patch
new file mode 100644
index 0000000..6918f33
--- /dev/null
+++ b/package/qt/qt-gcc-4.6.2-fixes.patch
@@ -0,0 +1,11 @@
+--- a/src/corelib/arch/qatomic_generic.h 2012-02-20 07:24:17.299239630 -0200
++++ b/src/corelib/arch/qatomic_generic.h 2012-02-20 07:23:32.634562979 -0200
+@@ -194,7 +194,7 @@
+ {
+ union { T * volatile * typed; void * volatile * voidp; } pointer;
+ pointer.typed = &_q_value;
+- return QBasicAtomicPointer_testAndSetOrdered(pointer.voidp, expectedValue, newValue);
++ return QBasicAtomicPointer_testAndSetOrdered(pointer.voidp, (void *)expectedValue, (void *)newValue);
+ }
+
+ template <typename T>
--
1.7.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 3/3] qt: Patch to disable some tools that give link-time issues
2012-02-26 12:13 [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 2/3] qt: Fix compilation of generic atomic routines Ismael Luceno
@ 2012-02-26 12:13 ` Ismael Luceno
2012-02-26 21:31 ` [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Peter Korsgaard
2 siblings, 0 replies; 4+ messages in thread
From: Ismael Luceno @ 2012-02-26 12:13 UTC (permalink / raw)
To: buildroot
---
package/qt/qt-tools-qml-only.patch | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
create mode 100644 package/qt/qt-tools-qml-only.patch
diff --git a/package/qt/qt-tools-qml-only.patch b/package/qt/qt-tools-qml-only.patch
new file mode 100644
index 0000000..c61db55
--- /dev/null
+++ b/package/qt/qt-tools-qml-only.patch
@@ -0,0 +1,20 @@
+--- a/tools/tools.pro 2012-02-20 23:18:32.978137903 -0200
++++ b/tools/tools.pro 2012-02-20 23:18:08.283955958 -0200
+@@ -8,6 +8,6 @@
+ SUBDIRS = designer
+ } else:wince* {
+ SUBDIRS = qtestlib designer
+- } else {
++ } else:!embedded {
+ SUBDIRS = assistant \
+ pixeltool \
+@@ -29,8 +29,8 @@
+ }
+ }
+
+-!wince*:!symbian:SUBDIRS += linguist
++!embedded:!wince*:!symbian:SUBDIRS += linguist
+
+ mac {
+ SUBDIRS += macdeployqt
+ }
--
1.7.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6
2012-02-26 12:13 [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 2/3] qt: Fix compilation of generic atomic routines Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 3/3] qt: Patch to disable some tools that give link-time issues Ismael Luceno
@ 2012-02-26 21:31 ` Peter Korsgaard
2 siblings, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2012-02-26 21:31 UTC (permalink / raw)
To: buildroot
>>>>> "Ismael" == Ismael Luceno <ismael.luceno@gmail.com> writes:
Please don't mix unrelated changes in the same commit. I already added
the gcc 4.6 workaround in a seperate commit. What does 'impvore' mean?
Also please don't forget to add your signed-off-by when you resend,
thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-02-26 21:31 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-26 12:13 [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 2/3] qt: Fix compilation of generic atomic routines Ismael Luceno
2012-02-26 12:13 ` [Buildroot] [PATCH 3/3] qt: Patch to disable some tools that give link-time issues Ismael Luceno
2012-02-26 21:31 ` [Buildroot] [PATCH 1/3] qt: Add optimization flags, GCC 4.6 fix, and impvore QT_MAKE_SET and QT_CONFIGURE_IPV6 Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox