summaryrefslogtreecommitdiff
authorzecke <zecke>2003-10-04 08:59:51 (UTC)
committer zecke <zecke>2003-10-04 08:59:51 (UTC)
commitdc9510f788212a6be063349461540e4bea690f51 (patch) (side-by-side diff)
treeb8728fdc12c1580287f16f3828180beac5d55c13
parent23f729eb7487ad189591c3b0c9af9d3afecd3b91 (diff)
downloadopie-dc9510f788212a6be063349461540e4bea690f51.zip
opie-dc9510f788212a6be063349461540e4bea690f51.tar.gz
opie-dc9510f788212a6be063349461540e4bea690f51.tar.bz2
Allow Opie beeing build with a Plain version of Qt without weak symbols
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--Rules.make3
-rw-r--r--config.in4
-rw-r--r--library/library.pro6
-rw-r--r--library/qpeapplication.cpp10
-rw-r--r--library/qt_override.cpp40
5 files changed, 44 insertions, 19 deletions
diff --git a/Rules.make b/Rules.make
index 4833b11..a1e6f09 100644
--- a/Rules.make
+++ b/Rules.make
@@ -31,2 +31,5 @@ else
endif
+ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y)
+ echo CONFIG += no-override >> $@
+endif
diff --git a/config.in b/config.in
index dac9024..ddbc93b 100644
--- a/config.in
+++ b/config.in
@@ -43,2 +43,6 @@ config QUICK_LAUNCH
default n
+
+config OPIE_NO_OVERRIDE_QT
+ boolean "Build Opie against an unpatched version of Qt"
+ default n
diff --git a/library/library.pro b/library/library.pro
index 80a0f62..ab1f451 100644
--- a/library/library.pro
+++ b/library/library.pro
@@ -120,2 +120,4 @@ SOURCES = calendar.cpp \
+
+
# Qt 3 compatibility
@@ -151 +153,5 @@ TRANSLATIONS = ../i18n/de/libqpe.ts \
include ( $(OPIEDIR)/include.pro )
+
+contains( CONFIG, no-override ){
+ DEFINES += OPIE_NO_OVERRIDE_QT
+}
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 28fb13a..feba8b6 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -1126,3 +1126,4 @@ void QPEApplication::applyStyle()
- #if QT_VERSION > 233
+#if QT_VERSION > 233
+#if !defined(OPIE_NO_OVERRIDE_QT)
// don't block ourselves ...
@@ -1140,2 +1141,5 @@ void QPEApplication::applyStyle()
}
+#else
+ int nostyle = 0;
+#endif
@@ -1196,2 +1200,3 @@ void QPEApplication::applyStyle()
+#if !defined(OPIE_NO_OVERRIDE_QT)
// revert to global blocking policy ...
@@ -1199,3 +1204,4 @@ void QPEApplication::applyStyle()
Opie::force_appearance &= ~nostyle;
- #endif
+#endif
+#endif
}
diff --git a/library/qt_override.cpp b/library/qt_override.cpp
index edda874..df5a419 100644
--- a/library/qt_override.cpp
+++ b/library/qt_override.cpp
@@ -24,3 +24,3 @@ struct color_fix_t {
-
+#ifndef OPIE_NO_OVERRIDE_QT
@@ -29,3 +29,3 @@ static const color_fix_t apps_that_need_special_colors [] = {
{ "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base },
-
+
{ 0, 0, 0, QColorGroup::Base, QColorGroup::Base }
@@ -37,3 +37,3 @@ static const char * const apps_that_need_pointsizes_times_10 [] = {
"HancomPresenterViewer",
-
+
0
@@ -58,3 +58,3 @@ const char *Opie::binaryName ( )
static const char *appname = 0;
-
+
if ( !appname ) {
@@ -62,6 +62,6 @@ const char *Opie::binaryName ( )
int l = ::readlink ( "/proc/self/exe", dst, PATH_MAX );
-
- if ( l <= 0 )
+
+ if ( l <= 0 )
l = 0;
-
+
dst [l] = 0;
@@ -69,5 +69,5 @@ const char *Opie::binaryName ( )
appname = ::strdup ( b ? b + 1 : dst );
-
+
::atexit ( binaryNameFree );
- }
+ }
return appname;
@@ -75,4 +75,7 @@ const char *Opie::binaryName ( )
+#else
+int Opie::force_appearance = 0;
+#endif
-// Fix for a toolchain incompatibility (binaries compiled with
+// Fix for a toolchain incompatibility (binaries compiled with
// old tcs using shared libs compiled with newer tcs)
@@ -83,3 +86,3 @@ extern void __gmon_start__ ( ) __attribute__(( weak ));
-extern void __gmon_start__ ( )
+extern void __gmon_start__ ( )
{
@@ -91,3 +94,3 @@ extern void __gmon_start__ ( )
// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles
-// that set a background pixmap (it would be easier to fix eraseRect(), but
+// that set a background pixmap (it would be easier to fix eraseRect(), but
// TT made it an inline ...)
@@ -96,2 +99,3 @@ void QPEApplication::polish ( QWidget *w )
{
+#ifndef OPIE_NO_OVERRIDE_QT
// qDebug ( "QPEApplication::polish()" );
@@ -107,2 +111,3 @@ void QPEApplication::polish ( QWidget *w )
}
+#endif
QApplication::polish ( w );
@@ -111,2 +116,3 @@ void QPEApplication::polish ( QWidget *w )
+#ifndef OPIE_NO_OVERRIDE_QT
// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes
@@ -122,4 +128,4 @@ QValueList <int> QFontDatabase::pointSizes ( QString const &family, QString cons
if ( ::strcmp ( Opie::binaryName ( ), *ptr ) == 0 ) {
- for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
- *it *= 10;
+ for ( QValueList <int>::Iterator it = sl. begin ( ); it != sl. end ( ); ++it )
+ *it *= 10;
}
@@ -158,3 +164,3 @@ void QApplication::setFont ( const QFont &fnt, bool informWidgets, const char *c
}
-
+
@@ -169,3 +175,3 @@ void QApplication::qwsSetDecoration ( QWSDecoration *deco )
}
-
-#endif \ No newline at end of file
+#endif
+#endif