diff options
author | Mamoru Komachi <usata@gentoo.org> | 2004-09-10 16:30:29 +0000 |
---|---|---|
committer | Mamoru Komachi <usata@gentoo.org> | 2004-09-10 16:30:29 +0000 |
commit | 82857d2995e74b11fbbc87b28981837ce9546007 (patch) | |
tree | d048ff037c9310b2acdd5f72896d760e89765443 /x11-libs | |
parent | Version bump (Manifest recommit) (diff) | |
download | gentoo-2-82857d2995e74b11fbbc87b28981837ce9546007.tar.gz gentoo-2-82857d2995e74b11fbbc87b28981837ce9546007.tar.bz2 gentoo-2-82857d2995e74b11fbbc87b28981837ce9546007.zip |
Updated immodule for Qt patch. Character inversion problem on some input methods has been fixed.
Diffstat (limited to 'x11-libs')
-rw-r--r-- | x11-libs/qt/ChangeLog | 11 | ||||
-rw-r--r-- | x11-libs/qt/Manifest | 28 | ||||
-rw-r--r-- | x11-libs/qt/files/digest-qt-3.3.2 | 3 | ||||
-rw-r--r-- | x11-libs/qt/files/digest-qt-3.3.3 | 3 | ||||
-rw-r--r-- | x11-libs/qt/files/digest-qt-3.3.3-r1 | 2 | ||||
-rw-r--r-- | x11-libs/qt/files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff | 145 | ||||
-rw-r--r-- | x11-libs/qt/files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff | 13 | ||||
-rw-r--r-- | x11-libs/qt/qt-3.3.2.ebuild | 28 | ||||
-rw-r--r-- | x11-libs/qt/qt-3.3.3-r1.ebuild | 214 | ||||
-rw-r--r-- | x11-libs/qt/qt-3.3.3.ebuild | 28 |
10 files changed, 430 insertions, 45 deletions
diff --git a/x11-libs/qt/ChangeLog b/x11-libs/qt/ChangeLog index e8332b4deee3..3561a123d80a 100644 --- a/x11-libs/qt/ChangeLog +++ b/x11-libs/qt/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for x11-libs/qt # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/ChangeLog,v 1.171 2004/09/09 21:12:31 eradicator Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/ChangeLog,v 1.172 2004/09/10 16:30:29 usata Exp $ + +*qt-3.3.3-r1 (11 Sep 2004) + + 11 Sep 2004; Mamoru KOMACHI <usata@gentoo.org> + +files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff, + +files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff, + qt-3.3.2.ebuild, +qt-3.3.3-r1.ebuild, qt-3.3.3.ebuild: + Updated immodule for Qt patch. Character inversion problem on + some input methods has been fixed. 09 Sep 2004; Jeremy Huddleston <eradicator@gentoo.org> qt-3.3.3.ebuild: get_libdir updates. Fix multilib support on amd64. libqt.so is now created on diff --git a/x11-libs/qt/Manifest b/x11-libs/qt/Manifest index 6280001fe170..0b27c5d0d59c 100644 --- a/x11-libs/qt/Manifest +++ b/x11-libs/qt/Manifest @@ -1,25 +1,29 @@ MD5 620e35257fc3c62d8cabed3391a4a97e ChangeLog 28675 MD5 512150b47a904b0240101e319856aab1 metadata.xml 156 MD5 c167f38f82d95bc8e7414bf15cbd693b qt-2.3.2-r1.ebuild 2282 -MD5 12f6f6e4dedc77bacd7e206ab637a8a7 qt-3.3.3.ebuild 6628 +MD5 efda03bb9b00b06ba5a042909424d33a qt-3.3.3-r1.ebuild 6230 MD5 3dc117d667771d6bd5a766379d5487b4 qt-3.2.3-r1.ebuild 5119 +MD5 d97d2bc9f0dbc183d68c0fa95ccc07a7 qt-3.3.2.ebuild 6860 MD5 c31b58bb9bef0cf4b24823c9c7ce4d56 qt-3.3.1-r2.ebuild 5733 -MD5 b83909322f8f81e54f4e183a991f6e61 qt-3.3.2.ebuild 6923 -MD5 08cdd879d3418837cf4bad594dc0f91f files/45qtdir2 16 +MD5 9c4e8e591805c350a5f5087a2e706e69 qt-3.3.3.ebuild 6541 +MD5 24486c56d654be71e66b7c01b143c9a9 files/digest-qt-3.2.3-r1 72 +MD5 494ea57bec4dcfe3a4ca65e413d81791 files/digest-qt-3.3.3 165 +MD5 8c01ee8bb9af451f93082717ed8f4c49 files/qfontdatabase_x11.diff 1147 +MD5 057679471a1149cfba2cabd7a1fd2b55 files/qt-3.2.3-qfontdatabase-i18n-20031024.patch 10536 +MD5 9ac22fe721162a565a7507763f785ab5 files/qt-3.2.3-qpsprinter-useFreeType2-20031128.patch 9972 +MD5 687ac003fc61501eda26cb2cf068cb2a files/qt-3.2.3-scriptForChar-20031128.patch 18095 +MD5 da2eb517a4c29a58002e92864ff966e5 files/qt-no-rpath-uic.patch 294 MD5 c7f65a0625242eccf159e2b8ee74976d files/45qt3 109 -MD5 7dc4f78d52452c28ba797ffc7db34f23 files/50qtdir3 16 +MD5 08cdd879d3418837cf4bad594dc0f91f files/45qtdir2 16 MD5 7a287bc7609ad2420f70af6d4c58302f files/50qt2 63 -MD5 ab6a47187e18bb5504032e8bae9d6ac0 files/digest-qt-3.3.3 252 +MD5 7dc4f78d52452c28ba797ffc7db34f23 files/50qtdir3 16 MD5 037b7ee164790946df6a2d6ea89f01fc files/digest-qt-2.3.2-r1 65 MD5 33d20a19eba2cb13a7eb156d4eea10db files/qt-3.3.2-mips-relax-branches.patch 688 MD5 dd5958e335d63c95fc1e5051aa5224ca files/qt-3.3.2-immodule-20040819.patch 1761 -MD5 24486c56d654be71e66b7c01b143c9a9 files/digest-qt-3.2.3-r1 72 +MD5 96842a84a7834f8bca5dfc0d272137f1 files/digest-qt-3.3.3-r1 165 +MD5 2df2442dc59faeb8b545a81d2523cf28 files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff 327 +MD5 471c09f2792eec732d715a983b7f7244 files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff 4150 MD5 87c645dbad7233316ff3340847a59f22 files/digest-qt-3.3.1-r2 72 -MD5 5fa847107fbfecae865fe8b9e6f79097 files/digest-qt-3.3.2 252 -MD5 8c01ee8bb9af451f93082717ed8f4c49 files/qfontdatabase_x11.diff 1147 -MD5 057679471a1149cfba2cabd7a1fd2b55 files/qt-3.2.3-qfontdatabase-i18n-20031024.patch 10536 -MD5 9ac22fe721162a565a7507763f785ab5 files/qt-3.2.3-qpsprinter-useFreeType2-20031128.patch 9972 -MD5 687ac003fc61501eda26cb2cf068cb2a files/qt-3.2.3-scriptForChar-20031128.patch 18095 +MD5 698d5ff434cbace76297754f49699b7e files/digest-qt-3.3.2 165 MD5 33d20a19eba2cb13a7eb156d4eea10db files/qt-3.3.1-mips-relax-branches.patch 688 MD5 9bd231bda8dcf1508a797c80002bfaa3 files/qt-3.3.1-qclipboard-fix.patch 2878 -MD5 da2eb517a4c29a58002e92864ff966e5 files/qt-no-rpath-uic.patch 294 diff --git a/x11-libs/qt/files/digest-qt-3.3.2 b/x11-libs/qt/files/digest-qt-3.3.2 index b09f904744a4..3f6c156a9735 100644 --- a/x11-libs/qt/files/digest-qt-3.3.2 +++ b/x11-libs/qt/files/digest-qt-3.3.2 @@ -1,3 +1,2 @@ MD5 903cad618274ad84d7d13fd0027a6c3c qt-x11-free-3.3.2.tar.bz2 14434821 -MD5 5daed8d9c41d56a9b4ec339f60b2ad98 qt-x11-immodule-unified-qt3.3.2-20040814.diff.gz 131662 -MD5 f9728a468849aa695408d6a23440f698 qt-3.3.3-immodule-20040814-20040819.diff.gz 14957 +MD5 93ad7baa2b4c35832baf47c101444355 qt-x11-immodule-unified-qt3.3.3-20040819.diff.gz 131600 diff --git a/x11-libs/qt/files/digest-qt-3.3.3 b/x11-libs/qt/files/digest-qt-3.3.3 index fdf211df8fac..694b52ee5a4a 100644 --- a/x11-libs/qt/files/digest-qt-3.3.3 +++ b/x11-libs/qt/files/digest-qt-3.3.3 @@ -1,3 +1,2 @@ MD5 3e0a0c8429b0a974b39b5f535ddff01c qt-x11-free-3.3.3.tar.bz2 14424812 -MD5 5daed8d9c41d56a9b4ec339f60b2ad98 qt-x11-immodule-unified-qt3.3.2-20040814.diff.gz 131662 -MD5 f9728a468849aa695408d6a23440f698 qt-3.3.3-immodule-20040814-20040819.diff.gz 14957 +MD5 93ad7baa2b4c35832baf47c101444355 qt-x11-immodule-unified-qt3.3.3-20040819.diff.gz 131600 diff --git a/x11-libs/qt/files/digest-qt-3.3.3-r1 b/x11-libs/qt/files/digest-qt-3.3.3-r1 new file mode 100644 index 000000000000..e770b8989a20 --- /dev/null +++ b/x11-libs/qt/files/digest-qt-3.3.3-r1 @@ -0,0 +1,2 @@ +MD5 3e0a0c8429b0a974b39b5f535ddff01c qt-x11-free-3.3.3.tar.bz2 14424812 +MD5 1053683f0d27854babc2a03db7360e23 qt-x11-immodule-unified-qt3.3.3-20040910.diff.gz 135277 diff --git a/x11-libs/qt/files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff b/x11-libs/qt/files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff new file mode 100644 index 000000000000..36ae67a6b737 --- /dev/null +++ b/x11-libs/qt/files/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff @@ -0,0 +1,145 @@ +Index: src/kernel/qapplication.h +=================================================================== +--- src/kernel/qapplication.h (revision 106) ++++ src/kernel/qapplication.h (working copy) +@@ -411,6 +414,7 @@ + + static bool sendSpontaneousEvent( QObject *receiver, QEvent *event ); + static void removePostedEvent( QEvent * ); ++ static void removePostedEvents( QObject *receiver, int event_type ); + + friend class QWidget; + friend class QETWidget; +Index: src/kernel/qapplication_x11.cpp +=================================================================== +--- src/kernel/qapplication_x11.cpp (revision 108) ++++ src/kernel/qapplication_x11.cpp (working copy) +@@ -601,7 +601,21 @@ + */ + void QApplication::postIMEvent( QObject *receiver, QIMEvent *event ) + { +- postEvent( receiver, event ); ++ if ( event->type() == QEvent::IMCompose ) { ++ // enable event compression to reduce preedit flicker on fast ++ // typing ++ postEvent( receiver, event ); ++ } else { ++ // cancel queued preedit update ++ if ( event->type() == QEvent::IMEnd ) ++ removePostedEvents( receiver, QEvent::IMCompose ); ++ ++ // to avoid event receiving order inversion between QKeyEvent ++ // and QIMEvent, we must send IMStart and IMEnd via ++ // sendEvent(). ++ sendEvent( receiver, event ); ++ delete event; ++ } + } + + +Index: src/kernel/qapplication.cpp +=================================================================== +--- src/kernel/qapplication.cpp (revision 106) ++++ src/kernel/qapplication.cpp (working copy) +@@ -3112,8 +3112,7 @@ + event->type() == QEvent::LayoutHint || + event->type() == QEvent::Resize || + event->type() == QEvent::Move || +- event->type() == QEvent::LanguageChange || +- event->type() == QEvent::IMCompose ) { ++ event->type() == QEvent::LanguageChange ) { + l->first(); + QPostEvent * cur = 0; + for ( ;; ) { +@@ -3147,6 +3146,29 @@ + } else if ( cur->event->type() == QEvent::LanguageChange ) { + delete event; + return; ++ } ++ } ++ break; ++ }; ++ } ++ ++#if !defined(QT_NO_IM) ++ // if this is one of the compressible IM events, do compression ++ else if ( event->type() == QEvent::IMCompose ) { ++ l->last(); ++ QPostEvent * cur = 0; ++ for ( ;; ) { ++ while ( (cur=l->current()) != 0 && ++ ( cur->receiver != receiver || ++ cur->event == 0 || ++ cur->event->type() != event->type() || ++ cur->event->type() != QEvent::IMStart ) ) ++ l->prev(); ++ if ( l->current() != 0 ) { ++ // IMCompose must not be compressed with another one ++ // beyond its IMStart boundary ++ if ( cur->event->type() == QEvent::IMStart ) { ++ break; + } else if ( cur->event->type() == QEvent::IMCompose ) { + QIMComposeEvent * e = (QIMComposeEvent *)(cur->event); + *e = *(QIMComposeEvent *)event; +@@ -3157,6 +3179,7 @@ + break; + }; + } ++#endif + + // if no compression could be done, just append something + event->posted = TRUE; +@@ -3304,6 +3327,23 @@ + + void QApplication::removePostedEvents( QObject *receiver ) + { ++ removePostedEvents( receiver, 0 ); ++} ++ ++/*! ++ Removes all events that have the event type \a event_type posted ++ using postEvent() for \a receiver. ++ ++ The events are \e not dispatched, instead they are removed from the ++ queue. ++ ++ If \a event_type is 0, all the events are removed from the queue. ++ ++ \threadsafe ++*/ ++ ++void QApplication::removePostedEvents( QObject *receiver, int event_type ) ++{ + if ( !receiver ) + return; + +@@ -3322,18 +3362,22 @@ + // leave the QPostEvent objects; they'll be deleted by + // sendPostedEvents(). + QPostEventList * l = receiver->postedEvents; +- receiver->postedEvents = 0; ++ if ( !event_type ) ++ receiver->postedEvents = 0; + l->first(); + QPostEvent * pe; + while( (pe=l->current()) != 0 ) { +- if ( pe->event ) { +- pe->event->posted = FALSE; +- delete pe->event; +- pe->event = 0; ++ if ( !event_type || pe->event->type() == event_type ) { ++ if ( pe->event ) { ++ pe->event->posted = FALSE; ++ delete pe->event; ++ pe->event = 0; ++ } ++ l->remove(); + } +- l->remove(); + } +- delete l; ++ if ( !event_type ) ++ delete l; + } + + diff --git a/x11-libs/qt/files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff b/x11-libs/qt/files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff new file mode 100644 index 000000000000..d2fb3605abce --- /dev/null +++ b/x11-libs/qt/files/qt-3.3.3-immodule-r123-event-inversion-20040909.diff @@ -0,0 +1,13 @@ +Index: src/kernel/qapplication.cpp +=================================================================== +--- src/kernel/qapplication.cpp (revision 123) ++++ src/kernel/qapplication.cpp (working copy) +@@ -3374,6 +3374,8 @@ + pe->event = 0; + } + l->remove(); ++ } else { ++ l->next(); + } + } + if ( !event_type ) diff --git a/x11-libs/qt/qt-3.3.2.ebuild b/x11-libs/qt/qt-3.3.2.ebuild index 700b431ea8d9..f0f23fb1bb8b 100644 --- a/x11-libs/qt/qt-3.3.2.ebuild +++ b/x11-libs/qt/qt-3.3.2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/qt-3.3.2.ebuild,v 1.17 2004/08/21 20:08:32 usata Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/qt-3.3.2.ebuild,v 1.18 2004/09/10 16:30:29 usata Exp $ inherit eutils @@ -8,16 +8,11 @@ SRCTYPE="free" DESCRIPTION="QT version ${PV}" HOMEPAGE="http://www.trolltech.com/" -IMMQT_P="qt-x11-immodule-unified-qt3.3.2-20040814" -IMMQT_P2="qt-3.3.3-immodule-20040814-20040819" +IMMQT_P="qt-x11-immodule-unified-qt3.3.3-20040819" SRC_URI="ftp://ftp.trolltech.com/qt/source/qt-x11-${SRCTYPE}-${PV}.tar.bz2 - immqt? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz - mirror://gentoo/${IMMQT_P2}.diff.gz - http://dev.gentoo.org/~usata/distfiles/${IMMQT_P2}.diff.gz ) - immqt-bc? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz - mirror://gentoo/${IMMQT_P2}.diff.gz - http://dev.gentoo.org/~usata/distfiles/${IMMQT_P2}.diff.gz )" + immqt? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz ) + immqt-bc? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz )" LICENSE="QPL-1.0 | GPL-2" SLOT="3" @@ -41,8 +36,9 @@ DEPEND="virtual/x11 virtual/xft # old immodules may cause segfaults on some qt applications, # especially qtconfig -PDEPEND="!<app-i18n/scim-qtimm-0.6_pre20040813 - !<app-i18n/uim-qt-0.1.6_p20040815" +PDEPEND="!<app-i18n/scim-qtimm-0.7 + !<app-i18n/uim-qt-0.1.7 + !>=app-i18n/uim-qt-0.1.9" S=${WORKDIR}/qt-x11-${SRCTYPE}-${PV} @@ -72,12 +68,12 @@ src_unpack() { epatch ${FILESDIR}/qt-no-rpath-uic.patch if use immqt || use immqt-bc ; then - pushd .. - epatch ${IMMQT_P2}.diff - popd einfo "Applying ${IMMQT_P}.... Please ignore an error on qapplication_x11.cpp." patch -p0 -g0 -s < ../${IMMQT_P}.diff patch -p0 -g0 -s < ${FILESDIR}/qt-3.3.2-immodule-20040819.patch + patch -p0 -g0 -s < ${FILESDIR}/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff + + patch -p0 -g0 -s < ${FILESDIR}/qt-3.3.3-immodule-r123-event-inversion-20040909.diff sh make-symlinks.sh || die "make symlinks failed" fi @@ -205,6 +201,10 @@ src_install() { cp -r ${S}/tutorial ${D}/${QTBASE} fi + if use immqt || use immqt-bc ; then + dodoc ${S}/README.immodule + fi + # misc build reqs dodir ${QTBASE}/mkspecs cp -R ${S}/mkspecs/${PLATFORM} ${D}/${QTBASE}/mkspecs/ diff --git a/x11-libs/qt/qt-3.3.3-r1.ebuild b/x11-libs/qt/qt-3.3.3-r1.ebuild new file mode 100644 index 000000000000..0081a4432a81 --- /dev/null +++ b/x11-libs/qt/qt-3.3.3-r1.ebuild @@ -0,0 +1,214 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/qt-3.3.3-r1.ebuild,v 1.1 2004/09/10 16:30:29 usata Exp $ + +inherit eutils + +SRCTYPE="free" +DESCRIPTION="QT version ${PV}" +HOMEPAGE="http://www.trolltech.com/" + +IMMQT_P="qt-x11-immodule-unified-qt3.3.3-20040910" + +SRC_URI="ftp://ftp.trolltech.com/qt/source/qt-x11-${SRCTYPE}-${PV}.tar.bz2 + immqt? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz ) + immqt-bc? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz )" + +LICENSE="QPL-1.0 | GPL-2" +SLOT="3" +KEYWORDS="~x86 ~alpha ~ppc ~amd64 ~sparc ~hppa ~mips ~ppc64" +IUSE="cups debug doc firebird gif icc ipv6 mysql nas odbc opengl postgres sqlite xinerama zlib immqt immqt-bc" + +DEPEND="virtual/x11 virtual/xft + media-libs/libpng media-libs/jpeg media-libs/libmng + >=media-libs/freetype-2 + gif? ( media-libs/giflib media-libs/libungif ) + nas? ( >=media-libs/nas-1.5 ) + odbc? ( dev-db/unixODBC ) + mysql? ( dev-db/mysql ) + sqlite? ( =dev-db/sqlite-2* ) + firebird? ( dev-db/firebird ) + opengl? ( virtual/opengl virtual/glu ) + postgres? ( dev-db/postgresql ) + cups? ( net-print/cups ) + zlib? ( sys-libs/zlib ) + icc? ( dev-lang/icc )" + +# old immodules may cause segfaults on some qt applications, +# especially qtconfig +PDEPEND="!<=app-i18n/scim-qtimm-0.7 + !<=app-i18n/uim-qt-0.1.7" + +S=${WORKDIR}/qt-x11-${SRCTYPE}-${PV} + +QTBASE=/usr/qt/3 +export QTDIR=${S} +export PLATFORM=linux-g++ + +pkg_setup() { + if use immqt ; then + ewarn + ewarn "You are going to compile binary imcompatible immodule for Qt. This means" + ewarn "you have to recompile everything depending on Qt after you install it." + ewarn "Be aware." + ewarn + fi +} + +src_unpack() { + unpack ${A} + + export QTDIR=${S} + cd ${S} + + cp configure configure.orig + sed -e 's:read acceptance:acceptance=yes:' configure.orig > configure + + epatch ${FILESDIR}/qt-no-rpath-uic.patch + + if use immqt || use immqt-bc ; then + epatch ../${IMMQT_P}.diff + sh make-symlinks.sh || die "make symlinks failed" + fi + +# use icc && export PLATFORM=linux-icc +} + +src_compile() { + export QTDIR=${S} + export SYSCONF=${D}${QTBASE}/etc/settings + + # Let's just allow writing to these directories during Qt emerge + # as it makes Qt much happier. + addwrite "${QTBASE}/etc/settings" + addwrite "$HOME/.qt" + + use nas && myconf="${myconf} -system-nas-sound" + use gif && myconf="${myconf} -qt-gif" + use mysql && myconf="${myconf} -plugin-sql-mysql -I/usr/include/mysql -L/usr/lib/mysql" || myconf="${myconf} -no-sql-mysql" + use postgres && myconf="${myconf} -plugin-sql-psql -I/usr/include/postgresql/server -I/usr/include/postgresql/pgsql -I/usr/include/postgresql/pgsql/server" || myconf="${myconf} -no-sql-psql" + use firebird && myconf="${myconf} -plugin-sql-ibase" || myconf="${myconf} -no-sql-ibase" + use sqlite && myconf="${myconf} -plugin-sql-sqlite" || myconf="${myconf} -no-sql-sqlite" + use odbc && myconf="${myconf} -plugin-sql-odbc" || myconf="${myconf} -no-sql-odbc" + use cups && myconf="${myconf} -cups" || myconf="${myconf} -no-cups" + use opengl && myconf="${myconf} -enable-module=opengl" || myconf="${myconf} -disable-opengl" + use debug && myconf="${myconf} -debug" || myconf="${myconf} -release -no-g++-exceptions" + use xinerama && myconf="${myconf} -xinerama" || myconf="${myconf} -no-xinerama" + use zlib && myconf="${myconf} -system-zlib" || myconf="${myconf} -qt-zlib" + use ipv6 && myconf="${myconf} -ipv6" || myconf="${myconf} -no-ipv6" + use immqt-bc && myconf="${myconf} -inputmethod" + use immqt && myconf="${myconf} -inputmethod -inputmethod-ext" + + export YACC='byacc -d' + + ./configure -sm -thread -stl -system-libjpeg -verbose -largefile \ + -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \ + -system-libpng -lpthread -xft -platform ${PLATFORM} -xplatform \ + ${PLATFORM} -xrender -prefix ${QTBASE} -fast ${myconf} \ + -dlopen-opengl || die + + export QTDIR=${S} + + emake src-qmake src-moc sub-src || die + LD_LIBRARY_PATH="${S}/lib:${LD_LIBRARY_PATH}" emake sub-tools || die +} + +src_install() { + export QTDIR=${S} + + # binaries + into $QTBASE + dobin bin/* + + # libraries + + dolib lib/libqt-mt.so.3.3.3 lib/libqui.so.1.0.0 + dolib lib/lib{editor,qassistantclient,designercore}.a lib/libqt-mt.la + + cd ${D}/$QTBASE/lib + for x in libqui.so ; do + ln -s $x.1.0.0 $x.1.0 + ln -s $x.1.0 $x.1 + ln -s $x.1 $x + done + + # version symlinks - 3.3.3->3.3->3->.so + ln -s libqt-mt.so.3.3.3 libqt-mt.so.3.3 + ln -s libqt-mt.so.3.3 libqt-mt.so.3 + ln -s libqt-mt.so.3 libqt-mt.so + + # libqt -> libqt-mt symlinks + ln -s libqt-mt.so.3.3.3 libqt.so.3.3.3 + ln -s libqt-mt.so.3.3 libqt.so.3.3 + ln -s libqt-mt.so.3 libqt.so.3 + ln -s libqt-mt.so libqt.so + + # includes + cd ${S} + dodir ${QTBASE}/include/private + cp include/* ${D}/${QTBASE}/include/ + cp include/private/* ${D}/${QTBASE}/include/private/ + + # misc + insinto /etc/env.d + doins ${FILESDIR}/{45qt3,50qtdir3} + + dodir ${QTBASE}/tools/designer/templates + cd ${S} + cp tools/designer/templates/* ${D}/${QTBASE}/tools/designer/templates + + dodir ${QTBASE}/translations + cd ${S} + cp translations/* ${D}/${QTBASE}/translations + + dodir ${QTBASE}/etc + keepdir ${QTBASE}/etc/settings + + dodir ${QTBASE}/doc + + if use doc; then + cp -r ${S}/doc ${D}/${QTBASE} + + cd ${S}/examples + find . -name Makefile | while read MAKEFILE + do + cp ${MAKEFILE} ${MAKEFILE}.old + sed -e 's:${S}:${QTBASE}:g' ${MAKEFILE}.old > ${MAKEFILE} + rm -f ${MAKEFILE}.old + done + + cp -r ${S}/examples ${D}/${QTBASE} + + cd ${S}/tutorial + find . -name Makefile | while read MAKEFILE + do + cp ${MAKEFILE} ${MAKEFILE}.old + sed -e 's:${S}:${QTBASE}:g' ${MAKEFILE}.old > ${MAKEFILE} + rm -f ${MAKEFILE}.old + done + + cp -r ${S}/tutorial ${D}/${QTBASE} + fi + + if use immqt || use immqt-bc ; then + dodoc ${S}/README.immodule + fi + + # misc build reqs + dodir ${QTBASE}/mkspecs + cp -R ${S}/mkspecs/${PLATFORM} ${D}/${QTBASE}/mkspecs/ + + sed -e "s:${S}:${QTBASE}:g" \ + ${S}/.qmake.cache > ${D}${QTBASE}/.qmake.cache + + # plugins + cd ${S} + plugins=`find plugins -name "lib*.so" -print` + for x in $plugins; do + insinto ${QTBASE}/`dirname $x` + doins $x + done + + # needed to fix lib64 issues on amd64, see bug #45669 + use amd64 && ln -s ${QTBASE}/lib ${D}/${QTBASE}/lib64 +} diff --git a/x11-libs/qt/qt-3.3.3.ebuild b/x11-libs/qt/qt-3.3.3.ebuild index f63a78da79f3..79defe418c65 100644 --- a/x11-libs/qt/qt-3.3.3.ebuild +++ b/x11-libs/qt/qt-3.3.3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/qt-3.3.3.ebuild,v 1.13 2004/09/09 21:12:31 eradicator Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/qt/qt-3.3.3.ebuild,v 1.14 2004/09/10 16:30:29 usata Exp $ inherit eutils @@ -8,16 +8,11 @@ SRCTYPE="free" DESCRIPTION="QT version ${PV}" HOMEPAGE="http://www.trolltech.com/" -IMMQT_P="qt-x11-immodule-unified-qt3.3.2-20040814" -IMMQT_P2="qt-3.3.3-immodule-20040814-20040819" +IMMQT_P="qt-x11-immodule-unified-qt3.3.3-20040819" SRC_URI="ftp://ftp.trolltech.com/qt/source/qt-x11-${SRCTYPE}-${PV}.tar.bz2 - immqt? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz - mirror://gentoo/${IMMQT_P2}.diff.gz - http://dev.gentoo.org/~usata/distfiles/${IMMQT_P2}.diff.gz ) - immqt-bc? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz - mirror://gentoo/${IMMQT_P2}.diff.gz - http://dev.gentoo.org/~usata/distfiles/${IMMQT_P2}.diff.gz )" + immqt? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz ) + immqt-bc? ( http://freedesktop.org/Software/ImmoduleQtDownload/${IMMQT_P}.diff.gz )" LICENSE="QPL-1.0 | GPL-2" SLOT="3" @@ -41,8 +36,9 @@ DEPEND="virtual/x11 virtual/xft # old immodules may cause segfaults on some qt applications, # especially qtconfig -PDEPEND="!<app-i18n/scim-qtimm-0.6_pre20040813 - !<app-i18n/uim-qt-0.1.6_p20040815" +PDEPEND="!<app-i18n/scim-qtimm-0.7 + !<app-i18n/uim-qt-0.1.7 + !>=app-i18n/uim-qt-0.1.9" S=${WORKDIR}/qt-x11-${SRCTYPE}-${PV} @@ -72,10 +68,10 @@ src_unpack() { epatch ${FILESDIR}/qt-no-rpath-uic.patch if use immqt || use immqt-bc ; then - pushd .. - epatch ${IMMQT_P2}.diff - popd epatch ../${IMMQT_P}.diff + epatch ${FILESDIR}/qt-3.3.3-immodule-20040819-event-inversion-20040908.diff + + epatch ${FILESDIR}/qt-3.3.3-immodule-r123-event-inversion-20040909.diff sh make-symlinks.sh || die "make symlinks failed" fi @@ -206,6 +202,10 @@ src_install() { cp -r ${S}/tutorial ${D}/${QTBASE} fi + if use immqt || use immqt-bc ; then + dodoc ${S}/README.immodule + fi + # misc build reqs dodir ${QTBASE}/mkspecs cp -R ${S}/mkspecs/${PLATFORM} ${D}/${QTBASE}/mkspecs/ |