summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2010-04-13 08:43:33 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2010-04-13 09:15:24 (GMT)
commit51b6c8a6e2713f2b151a522c75b2db5f0b0b663e (patch)
tree9eac57220bbce1feb212a2919a32e2532ec5bdbc
parent72c0128f607d1566ede78dfbba90507086e3fe80 (diff)
downloadQt-51b6c8a6e2713f2b151a522c75b2db5f0b0b663e.zip
Qt-51b6c8a6e2713f2b151a522c75b2db5f0b0b663e.tar.gz
Qt-51b6c8a6e2713f2b151a522c75b2db5f0b0b663e.tar.bz2
Implement some changes to the AIX xlC mkspec suggested by IBM.
Set -bmaxdata to 0x8000000 for normal 32-bit Qt programs, to allow them to access more memory. Increase that limit to the maximum allowed when linking to QtWebKit (even though we don't support WebKit with xlC, there are patches to do that). For 64-bit, simply add the "big TOC" flag, which enables accessing more symbols that cannot be reached by a 16-bit addressing. Only QtWebKit strictly needs it, but IBM suggests as a good flag for everyone. Reviewed-by: Thomas Zander
-rw-r--r--mkspecs/aix-xlc-64/qmake.conf2
-rw-r--r--mkspecs/aix-xlc/qmake.conf2
-rw-r--r--mkspecs/features/qt.prf10
3 files changed, 10 insertions, 4 deletions
diff --git a/mkspecs/aix-xlc-64/qmake.conf b/mkspecs/aix-xlc-64/qmake.conf
index a18aa9f..72eef89 100644
--- a/mkspecs/aix-xlc-64/qmake.conf
+++ b/mkspecs/aix-xlc-64/qmake.conf
@@ -48,7 +48,7 @@ QMAKE_LIBDIR_OPENGL =
QMAKE_LINK = xlC
QMAKE_LINK_THREAD = xlC_r
QMAKE_LINK_SHLIB = ld
-QMAKE_LFLAGS = -q64
+QMAKE_LFLAGS = -q64 -bbigtoc
QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_SHLIB = -qmkshrobj
diff --git a/mkspecs/aix-xlc/qmake.conf b/mkspecs/aix-xlc/qmake.conf
index 42f6f7e..f4d77e5 100644
--- a/mkspecs/aix-xlc/qmake.conf
+++ b/mkspecs/aix-xlc/qmake.conf
@@ -48,7 +48,7 @@ QMAKE_LIBDIR_OPENGL =
QMAKE_LINK = xlC
QMAKE_LINK_THREAD = xlC_r
QMAKE_LINK_SHLIB = ld
-QMAKE_LFLAGS =
+QMAKE_LFLAGS = -bmaxdata:0x80000000
QMAKE_LFLAGS_RELEASE =
QMAKE_LFLAGS_DEBUG =
QMAKE_LFLAGS_SHLIB = -qmkshrobj
diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf
index cf32685..62cce62 100644
--- a/mkspecs/features/qt.prf
+++ b/mkspecs/features/qt.prf
@@ -166,8 +166,14 @@ for(QTLIB, $$list($$lower($$unique(QT)))) {
# we bump the values for all Symbian Phonon plugins.
symbian:isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x040000 0x1600000
- } else:isEqual(QTLIB, webkit):qlib = QtWebKit
- else:isEqual(QTLIB, declarative):qlib = QtDeclarative
+ } else:isEqual(QTLIB, webkit) {
+ qlib = QtWebKit
+ aix-xlc {
+ # Flags recommended by IBM when using WebKit
+ QMAKE_LFLAGS -= -bmaxdata:0x80000000
+ QMAKE_LFLAGS += -bmaxdata:0xD0000000/dsa
+ }
+ } else:isEqual(QTLIB, declarative):qlib = QtDeclarative
else:isEqual(QTLIB, multimedia):qlib = QtMultimedia
else:message("Unknown QT: $$QTLIB"):qlib =
!isEmpty(qlib) {