diff options
author | Theo Chatzimichos <tampakrap@gentoo.org> | 2009-05-29 23:39:06 +0000 |
---|---|---|
committer | Theo Chatzimichos <tampakrap@gentoo.org> | 2009-05-29 23:39:06 +0000 |
commit | f1e40aefc77e693481b033530c8b86949903d7ce (patch) | |
tree | acb99bedaf135ff378c4f3bd57f07b26367329d6 /kde-base/kdelibs | |
parent | Punt old packages vuln to GLSA 200902-02 #271772 by Robert Buchholz. (diff) | |
download | gentoo-2-f1e40aefc77e693481b033530c8b86949903d7ce.tar.gz gentoo-2-f1e40aefc77e693481b033530c8b86949903d7ce.tar.bz2 gentoo-2-f1e40aefc77e693481b033530c8b86949903d7ce.zip |
Revision bump:
add patch for kjs when compiled with gcc-4.4, thanks to Robert Forster, bug 270926
remove symlink that causes doxygen to hang, bug 264767
add patch for khtml, bug 243476
restored (updated with kdeprefix) patch to handle kde4 apps in kde3 menu, removed kdeglobals as it completely screws kde3 session when kde4 is installed
in /usr, by reavertm
(Portage version: 2.2_rc33/cvs/Linux x86_64)
Diffstat (limited to 'kde-base/kdelibs')
-rw-r--r-- | kde-base/kdelibs/ChangeLog | 17 | ||||
-rw-r--r-- | kde-base/kdelibs/files/4.1.3-cmake-config.patch | 45 | ||||
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-3.5.10-kde4-apps.patch | 67 | ||||
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-3.5.10-khtml.patch | 14 | ||||
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-3.5.10-kjs-gcc44.patch | 454 | ||||
-rw-r--r-- | kde-base/kdelibs/kdelibs-3.5.10-r6.ebuild | 274 |
6 files changed, 798 insertions, 73 deletions
diff --git a/kde-base/kdelibs/ChangeLog b/kde-base/kdelibs/ChangeLog index 4d873147f68e..d8e59e6e7564 100644 --- a/kde-base/kdelibs/ChangeLog +++ b/kde-base/kdelibs/ChangeLog @@ -1,6 +1,21 @@ # ChangeLog for kde-base/kdelibs # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.597 2009/05/29 19:52:59 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.598 2009/05/29 23:39:06 tampakrap Exp $ + +*kdelibs-3.5.10-r6 (30 May 2009) + + 30 May 2009; Theo Chatzimichos <tampakrap@gentoo.org> + -files/4.1.3-cmake-config.patch, +kdelibs-3.5.10-r6.ebuild, + files/kdelibs-3.5.10-kde4-apps.patch, +files/kdelibs-3.5.10-khtml.patch, + +files/kdelibs-3.5.10-kjs-gcc44.patch: + Revision bump: + add patch for kjs when compiled with gcc-4.4, thanks to Robert Forster, + bug 270926 + remove symlink that causes doxygen to hang, bug 264767 + add patch for khtml, bug 243476 + restored (updated with kdeprefix) patch to handle kde4 apps in kde3 menu, + removed kdeglobals as it completely screws kde3 session when kde4 is + installed in /usr, by reavertm 29 May 2009; Diego E. Pettenò <flameeyes@gentoo.org> kdelibs-3.5.9.ebuild, kdelibs-3.5.9-r1.ebuild, kdelibs-3.5.9-r2.ebuild, diff --git a/kde-base/kdelibs/files/4.1.3-cmake-config.patch b/kde-base/kdelibs/files/4.1.3-cmake-config.patch deleted file mode 100644 index af6d7f6f053a..000000000000 --- a/kde-base/kdelibs/files/4.1.3-cmake-config.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- cmake/modules/FindKDE4Internal.cmake.old 2008-11-06 00:48:03.000000000 +0100 -+++ cmake/modules/FindKDE4Internal.cmake 2008-11-06 00:49:11.000000000 +0100 -@@ -953,19 +953,16 @@ - - - if (CMAKE_COMPILER_IS_GNUCXX) -- if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) -- set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") -- endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) - - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -+ set(CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -+ set(CMAKE_C_FLAGS_RELEASE "-DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") - set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") - set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") -@@ -1064,18 +1061,14 @@ - - if (CMAKE_C_COMPILER MATCHES "icc") - -- if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) -- set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} "Debugfull") -- endif("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 2.5) -- - set (KDE4_ENABLE_EXCEPTIONS -fexceptions) - # Select flags. - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -+ set(CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -fno-inline -noalign") - set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -fno-inline -noalign") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") -+ set(CMAKE_C_FLAGS_RELEASE "-DNDEBUG -DQT_NO_DEBUG") - set(CMAKE_C_FLAGS_DEBUG "-O2 -g -fno-inline -noalign") - set(CMAKE_C_FLAGS_DEBUGFULL "-g -fno-inline -noalign") - diff --git a/kde-base/kdelibs/files/kdelibs-3.5.10-kde4-apps.patch b/kde-base/kdelibs/files/kdelibs-3.5.10-kde4-apps.patch index c2c6add5e338..f7f0c7e34869 100644 --- a/kde-base/kdelibs/files/kdelibs-3.5.10-kde4-apps.patch +++ b/kde-base/kdelibs/files/kdelibs-3.5.10-kde4-apps.patch @@ -1,28 +1,41 @@ ---- kio/kio/kservice.cpp.old 2008-02-13 11:41:06.000000000 +0200 -+++ kio/kio/kservice.cpp 2009-05-14 22:55:30.494205205 +0300 -@@ -97,6 +97,7 @@ +diff -ru ./kio/kio/kservice.cpp ../kdelibs-new/kio/kio/kservice.cpp +--- ./kio/kio/kservice.cpp 2008-02-13 10:41:06.000000000 +0100 ++++ ../kdelibs-new/kio/kio/kservice.cpp 2009-05-21 01:53:22.000000000 +0200 +@@ -97,6 +97,19 @@ m_bValid = true; - + bool absPath = !QDir::isRelativePath(entryPath()); -+ bool kde4application = config->fileName().startsWith("/usr/share/applications/kde4/"); - ++ QString kde4prefix = config->fileName(); ++ QString kde4menusuffix = " (KDE4)"; ++ int index = kde4prefix.find("/share/applications/kde4/"); ++ bool kde4app = index != -1; ++ QString kdedir; ++ // get kdeprefix and kde version ++ if (kde4app) ++ { ++ kde4prefix.truncate(index); ++ kdedir = kde4prefix.section('/', -1, -1).upper(); ++ if (kdedir != "USR") ++ kde4menusuffix = QString(" (KDE-%1)").arg(kdedir); ++ } + config->setDesktopGroup(); - -@@ -133,6 +134,8 @@ + +@@ -133,6 +146,8 @@ if (i != -1) m_strName = m_strName.left(i); } -+ if ( kde4application ) -+ m_strName += " (KDE4)"; - ++ if (kde4app) ++ m_strName += kde4menusuffix; + m_strType = config->readEntry( "Type" ); entryMap.remove("Type"); -@@ -196,6 +199,18 @@ +@@ -196,6 +211,18 @@ name = name.left(pos); - + m_strExec = config->readPathEntry( "Exec" ); -+ if ( kde4application && !m_strExec.startsWith("/")) -+ m_strExec = "/usr/bin/"+m_strExec; ++ if (kde4app && !m_strExec.startsWith("/")) ++ m_strExec = kde4prefix + QString("/bin/") + m_strExec; + else if (config->readBoolEntry("X-KDE-SubstituteUID")) { + int space = m_strExec.find(" "); + if (space==-1) @@ -34,33 +47,33 @@ + } + entryMap.remove("Exec"); - + m_strIcon = config->readEntry( "Icon", "unknown" ); -@@ -245,11 +260,15 @@ +@@ -245,11 +272,15 @@ m_DCOPServiceType = DCOP_None; - + m_strDesktopEntryName = name.lower(); -+ if ( kde4application ) -+ m_strDesktopEntryName = "kde4-" + m_strDesktopEntryName; - ++ if (kde4app) ++ m_strDesktopEntryName = QString("kde%1-").arg(kdedir.lower()) + m_strDesktopEntryName; + m_bAllowAsDefault = config->readBoolEntry( "AllowDefault", true ); entryMap.remove("AllowDefault"); - + m_initialPreference = config->readNumEntry( "InitialPreference", 1 ); -+ if ( kde4application ) ++ if (kde4app) + m_initialPreference = 1; entryMap.remove("InitialPreference"); - + // Store all additional entries in the property map. -@@ -260,7 +279,10 @@ +@@ -260,7 +291,10 @@ for( ; it != entryMap.end();++it) { //qDebug(" Key = %s Data = %s", it.key().latin1(), it.data().latin1()); - m_mapProps.insert( it.key(), QVariant( it.data())); + QString key = it.key(); -+ if ( kde4application && key == "OnlyShownIn" && it.data() == "KDE;" ) ++ if (kde4app && key == "OnlyShownIn" && it.data() == "KDE;") + key = "NotShowIn"; + m_mapProps.insert(key, QVariant( it.data())); } } - + diff --git a/kde-base/kdelibs/files/kdelibs-3.5.10-khtml.patch b/kde-base/kdelibs/files/kdelibs-3.5.10-khtml.patch new file mode 100644 index 000000000000..33586644dd63 --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-3.5.10-khtml.patch @@ -0,0 +1,14 @@ +INDEX: khtml/xml/dom_elementimpl.cpp +============================================================= +--- khtml.orig/xml/dom_elementimpl.cpp 2007-07-28 04:44:15.000000000 +0200 ++++ khtml/xml/dom_elementimpl.cpp 2007-07-28 12:38:08.000000000 +0200 +@@ -66,6 +66,9 @@ + m_value = value; + m_value->ref(); + ++ if (m_attrId == ATTR_ID) ++ m_element->addId(DOMString(m_value).string()); ++ + m_prefix = prefix; + if (m_prefix) + m_prefix->ref(); diff --git a/kde-base/kdelibs/files/kdelibs-3.5.10-kjs-gcc44.patch b/kde-base/kdelibs/files/kdelibs-3.5.10-kjs-gcc44.patch new file mode 100644 index 000000000000..cc052af9250c --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-3.5.10-kjs-gcc44.patch @@ -0,0 +1,454 @@ +--- kjs/dtoa.cpp.orig 2009-05-26 17:20:54.673539511 +0200 ++++ kjs/dtoa.cpp 2009-05-26 17:24:20.117023777 +0200 +@@ -207,11 +207,7 @@ typedef unsigned Long ULong; + #endif + + #ifdef MALLOC +-#ifdef KR_headers +-extern char *MALLOC(); +-#else + extern void *MALLOC(size_t); +-#endif + #else + #define MALLOC malloc + #endif +@@ -273,12 +269,8 @@ extern "C" { + #endif + + #ifndef CONST +-#ifdef KR_headers +-#define CONST /* blank */ +-#else + #define CONST const + #endif +-#endif + + #if defined(IEEE_8087) + defined(IEEE_MC68k) + defined(VAX) + defined(IBM) != 1 + Exactly one of IEEE_8087, IEEE_MC68k, VAX, or IBM should be defined. +@@ -286,37 +278,19 @@ Exactly one of IEEE_8087, IEEE_MC68k, VA + + typedef union { double d; ULong L[2]; } U; + +-#ifdef YES_ALIAS +-#define dval(x) x ++#define dval(x) (x).d + #ifdef IEEE_8087 +-#define word0(x) ((ULong *)&x)[1] +-#define word1(x) ((ULong *)&x)[0] ++#define word0(x) (x).L[1] ++#define word1(x) (x).L[0] + #else +-#define word0(x) ((ULong *)&x)[0] +-#define word1(x) ((ULong *)&x)[1] +-#endif +-#else +-#ifdef IEEE_8087 +-#define word0(x) ((U*)&x)->L[1] +-#define word1(x) ((U*)&x)->L[0] +-#else +-#define word0(x) ((U*)&x)->L[0] +-#define word1(x) ((U*)&x)->L[1] +-#endif +-#define dval(x) ((U*)&x)->d ++#define word0(x) (x).L[0] ++#define word1(x) (x).L[1] + #endif + + /* The following definition of Storeinc is appropriate for MIPS processors. + * An alternative that might be better on some machines is +- * #define Storeinc(a,b,c) (*a++ = b << 16 | c & 0xffff) + */ +-#if defined(IEEE_8087) + defined(VAX) +-#define Storeinc(a,b,c) (((unsigned short *)a)[1] = (unsigned short)b, \ +-((unsigned short *)a)[0] = (unsigned short)c, a++) +-#else +-#define Storeinc(a,b,c) (((unsigned short *)a)[0] = (unsigned short)b, \ +-((unsigned short *)a)[1] = (unsigned short)c, a++) +-#endif ++#define Storeinc(a,b,c) (*a++ = b << 16 | c & 0xffff) + + /* #define P DBL_MANT_DIG */ + /* Ten_pmax = floor(P*log(2)/log(5)) */ +@@ -440,11 +414,7 @@ typedef union { double d; ULong L[2]; } + #ifdef RND_PRODQUOT + #define rounded_product(a,b) a = rnd_prod(a, b) + #define rounded_quotient(a,b) a = rnd_quot(a, b) +-#ifdef KR_headers +-extern double rnd_prod(), rnd_quot(); +-#else + extern double rnd_prod(double, double), rnd_quot(double, double); +-#endif + #else + #define rounded_product(a,b) a *= b + #define rounded_quotient(a,b) a /= b +@@ -457,11 +427,7 @@ extern double rnd_prod(double, double), + #define Pack_32 + #endif + +-#ifdef KR_headers +-#define FFFFFFFF ((((unsigned long)0xffff)<<16)|(unsigned long)0xffff) +-#else + #define FFFFFFFF 0xffffffffUL +-#endif + + #ifdef NO_LONG_LONG + #undef ULLong +@@ -502,11 +468,7 @@ Bigint { + + static Bigint * + Balloc +-#ifdef KR_headers +- (k) int k; +-#else + (int k) +-#endif + { + int x; + Bigint *rv; +@@ -542,11 +504,7 @@ Balloc + + static void + Bfree +-#ifdef KR_headers +- (v) Bigint *v; +-#else + (Bigint *v) +-#endif + { + if (v) { + ACQUIRE_DTOA_LOCK(0); +@@ -561,11 +519,7 @@ y->wds*sizeof(Long) + 2*sizeof(int)) + + static Bigint * + multadd +-#ifdef KR_headers +- (b, m, a) Bigint *b; int m, a; +-#else + (Bigint *b, int m, int a) /* multiply by m and add a */ +-#endif + { + int i, wds; + #ifdef ULLong +@@ -618,11 +572,7 @@ multadd + + static Bigint * + s2b +-#ifdef KR_headers +- (s, nd0, nd, y9) CONST char *s; int nd0, nd; ULong y9; +-#else + (CONST char *s, int nd0, int nd, ULong y9) +-#endif + { + Bigint *b; + int i, k; +@@ -656,11 +606,7 @@ s2b + + static int + hi0bits +-#ifdef KR_headers +- (x) register ULong x; +-#else + (register ULong x) +-#endif + { + register int k = 0; + +@@ -690,11 +636,7 @@ hi0bits + + static int + lo0bits +-#ifdef KR_headers +- (y) ULong *y; +-#else + (ULong *y) +-#endif + { + register int k; + register ULong x = *y; +@@ -738,11 +680,7 @@ lo0bits + + static Bigint * + i2b +-#ifdef KR_headers +- (i) int i; +-#else + (int i) +-#endif + { + Bigint *b; + +@@ -754,11 +692,7 @@ i2b + + static Bigint * + mult +-#ifdef KR_headers +- (a, b) Bigint *a, *b; +-#else + (Bigint *a, Bigint *b) +-#endif + { + Bigint *c; + int k, wa, wb, wc; +@@ -866,11 +800,7 @@ mult + + static Bigint * + pow5mult +-#ifdef KR_headers +- (b, k) Bigint *b; int k; +-#else + (Bigint *b, int k) +-#endif + { + Bigint *b1, *p5, *p51; + int i; +@@ -923,11 +853,7 @@ pow5mult + + static Bigint * + lshift +-#ifdef KR_headers +- (b, k) Bigint *b; int k; +-#else + (Bigint *b, int k) +-#endif + { + int i, k1, n, n1; + Bigint *b1; +@@ -983,11 +909,7 @@ lshift + + static int + cmp +-#ifdef KR_headers +- (a, b) Bigint *a, *b; +-#else + (Bigint *a, Bigint *b) +-#endif + { + ULong *xa, *xa0, *xb, *xb0; + int i, j; +@@ -1017,11 +939,7 @@ cmp + + static Bigint * + diff +-#ifdef KR_headers +- (a, b) Bigint *a, *b; +-#else + (Bigint *a, Bigint *b) +-#endif + { + Bigint *c; + int i, wa, wb; +@@ -1111,15 +1029,12 @@ diff + + static double + ulp +-#ifdef KR_headers +- (x) double x; +-#else +- (double x) +-#endif ++ (double dx) + { + register Long L; +- double a; ++ U x, a; + ++ dval(x) = dx; + L = (word0(x) & Exp_mask) - (P-1)*Exp_msk1; + #ifndef Avoid_Underflow + #ifndef Sudden_Underflow +@@ -1153,15 +1068,11 @@ ulp + + static double + b2d +-#ifdef KR_headers +- (a, e) Bigint *a; int *e; +-#else + (Bigint *a, int *e) +-#endif + { + ULong *xa, *xa0, w, y, z; + int k; +- double d; ++ U d; + #ifdef VAX + ULong d0, d1; + #else +@@ -1223,12 +1134,9 @@ b2d + + static Bigint * + d2b +-#ifdef KR_headers +- (d, e, bits) double d; int *e, *bits; +-#else +- (double d, int *e, int *bits) +-#endif ++ (double dd, int *e, int *bits) + { ++ U d; + Bigint *b; + int de, k; + ULong *x, y, z; +@@ -1237,6 +1145,9 @@ d2b + #endif + #ifdef VAX + ULong d0, d1; ++#endif ++ dval(d) = dd; ++#ifdef VAX + d0 = word0(d) >> 16 | word0(d) << 16; + d1 = word1(d) >> 16 | word1(d) << 16; + #else +@@ -1361,13 +1272,9 @@ d2b + + static double + ratio +-#ifdef KR_headers +- (a, b) Bigint *a, *b; +-#else + (Bigint *a, Bigint *b) +-#endif + { +- double da, db; ++ U da, db; + int k, ka, kb; + + dval(da) = b2d(a, &ka); +@@ -1453,11 +1360,7 @@ static CONST double tinytens[] = { 1e-16 + + static int + match +-#ifdef KR_headers +- (sp, t) char **sp, *t; +-#else + (CONST char **sp, CONST char *t) +-#endif + { + int c, d; + CONST char *s = *sp; +@@ -1475,11 +1378,7 @@ match + #ifndef No_Hex_NaN + static void + hexnan +-#ifdef KR_headers +- (rvp, sp) double *rvp; CONST char **sp; +-#else +- (double *rvp, CONST char **sp) +-#endif ++ (U *rvp, CONST char **sp) + { + ULong c, x[2]; + CONST char *s; +@@ -1529,11 +1428,7 @@ hexnan + + double + kjs_strtod +-#ifdef KR_headers +- (s00, se) CONST char *s00; char **se; +-#else + (CONST char *s00, char **se) +-#endif + { + #ifdef Avoid_Underflow + int scale; +@@ -1541,7 +1436,8 @@ kjs_strtod + int bb2, bb5, bbe, bd2, bd5, bbbits, bs2, c, dsign, + e, e1, esign, i, j, k, nd, nd0, nf, nz, nz0, sign; + CONST char *s, *s0, *s1; +- double aadj, aadj1, adj, rv, rv0; ++ double aadj, aadj1, adj; ++ U aadj2, rv, rv0; + Long L; + ULong y, z; + Bigint *bb = NULL, *bb1 = NULL, *bd = NULL, *bd0 = NULL, *bs = NULL, *delta = NULL; +@@ -2302,7 +2198,9 @@ kjs_strtod + aadj = z; + aadj1 = dsign ? aadj : -aadj; + } +- word0(aadj1) += (2*P+1)*Exp_msk1 - y; ++ dval(aadj2) = aadj1; ++ word0(aadj2) += (2*P+1)*Exp_msk1 - y; ++ aadj1 = dval(aadj2); + } + adj = aadj1 * ulp(dval(rv)); + dval(rv) += adj; +@@ -2419,11 +2317,7 @@ kjs_strtod + + static int + quorem +-#ifdef KR_headers +- (b, S) Bigint *b, *S; +-#else + (Bigint *b, Bigint *S) +-#endif + { + int n; + ULong *bx, *bxe, q, *sx, *sxe; +@@ -2540,11 +2434,7 @@ quorem + #endif + + static char * +-#ifdef KR_headers +-rv_alloc(i) int i; +-#else + rv_alloc(int i) +-#endif + { + int j, k, *r; + +@@ -2563,11 +2453,7 @@ rv_alloc(int i) + } + + static char * +-#ifdef KR_headers +-nrv_alloc(s, rve, n) char *s, **rve; int n; +-#else + nrv_alloc(CONST char *s, char **rve, int n) +-#endif + { + char *rv, *t; + +@@ -2585,11 +2471,7 @@ nrv_alloc(CONST char *s, char **rve, int + */ + + void +-#ifdef KR_headers +-kjs_freedtoa(s) char *s; +-#else + kjs_freedtoa(char *s) +-#endif + { + Bigint *b = (Bigint *)((int *)s - 1); + b->maxwds = 1 << (b->k = *(int*)b); +@@ -2636,12 +2518,7 @@ kjs_freedtoa(char *s) + + char * + kjs_dtoa +-#ifdef KR_headers +- (d, mode, ndigits, decpt, sign, rve) +- double d; int mode, ndigits, *decpt, *sign; char **rve; +-#else +- (double d, int mode, int ndigits, int *decpt, int *sign, char **rve) +-#endif ++ (double dd, int mode, int ndigits, int *decpt, int *sign, char **rve) + { + /* Arguments ndigits, decpt, sign are similar to those + of ecvt and fcvt; trailing zeros are suppressed from +@@ -2686,7 +2563,8 @@ kjs_dtoa + ULong x; + #endif + Bigint *b, *b1, *delta, *mlo = NULL, *mhi, *S; +- double d2, ds, eps; ++ U d, d2, eps; ++ double ds; + char *s, *s0; + #ifdef Honor_FLT_ROUNDS + int rounding; +@@ -2702,6 +2580,7 @@ kjs_dtoa + } + #endif + ++ dval(d) = dd; + if (word0(d) & Sign_bit) { + /* set sign for everything, including 0's and NaNs */ + *sign = 1; + diff --git a/kde-base/kdelibs/kdelibs-3.5.10-r6.ebuild b/kde-base/kdelibs/kdelibs-3.5.10-r6.ebuild new file mode 100644 index 000000000000..68cb08be8f33 --- /dev/null +++ b/kde-base/kdelibs/kdelibs-3.5.10-r6.ebuild @@ -0,0 +1,274 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/kdelibs-3.5.10-r6.ebuild,v 1.1 2009/05/29 23:39:06 tampakrap Exp $ + +EAPI="1" +inherit kde flag-o-matic eutils multilib +set-kdedir 3.5 + +DESCRIPTION="KDE libraries needed by all KDE programs." +HOMEPAGE="http://www.kde.org/" +SRC_URI="mirror://kde/stable/${PV}/src/${P}.tar.bz2 + mirror://gentoo/kdelibs-3.5-patchset-15.tar.bz2 + mirror://gentoo/kde-3.5.9-seli-xinerama.tar.bz2" + +LICENSE="GPL-2 LGPL-2" +SLOT="3.5" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="acl alsa arts bindist branding cups doc jpeg2k kerberos legacyssl utempter openexr spell tiff + avahi kernel_linux fam lua kdehiddenvisibility" + +# Added aspell-en as dependency to work around bug 131512. +# Made openssl and zeroconf mandatory dependencies, see bug #172972 and #175984 +RDEPEND=" + !=kde-base/artsplugin-mpeglib-3.5* + !=kde-base/artsplugin-mpg123-3.5* + !kde-base/kdeaccessibility + !kde-base/kdeaddons + !kde-base/kdeadmin + !kde-base/kdeartwork + !kde-base/kdebase + !kde-base/kdeedu + !kde-base/kdegames + !kde-base/kdegraphics + !kde-base/kde + !kde-base/kdemultimedia + !kde-base/kdenetwork + !kde-base/kdepim + !kde-base/kdesdk + !kde-base/kdetoys + !kde-base/kdeutils + !kde-base/kdewebdev + !kde-base/ksync + !=kde-base/mpeglib-3.5* + app-arch/bzip2 + >=dev-libs/libxslt-1.1.16 + >=dev-libs/libxml2-2.6.6 + >=dev-libs/libpcre-6.6 + >=dev-libs/openssl-0.9.7d + media-libs/fontconfig + >=media-libs/freetype-2 + media-libs/libart_lgpl + net-dns/libidn + >=sys-apps/portage-2.1.2.11 + virtual/ghostscript + x11-libs/libXext + >=x11-libs/qt-3.3.3:3 + acl? ( + virtual/acl + ) + alsa? ( media-libs/alsa-lib ) + arts? ( ~kde-base/arts-3.5.10 ) + !avahi? ( + !bindist? ( + !kde-misc/kdnssd-avahi + net-misc/mDNSResponder + ) + ) + cups? ( >=net-print/cups-1.1.19 ) + fam? ( virtual/fam ) + jpeg2k? ( media-libs/jasper ) + kerberos? ( virtual/krb5 ) + lua? ( dev-lang/lua ) + openexr? ( >=media-libs/openexr-1.2.2-r2 ) + spell? ( + >=app-dicts/aspell-en-6.0.0 + >=app-text/aspell-0.60.5 + ) + tiff? ( media-libs/tiff ) + utempter? ( sys-libs/libutempter ) +" + +DEPEND="${RDEPEND} + sys-devel/gettext + doc? ( app-doc/doxygen ) +" +RDEPEND="${RDEPEND} + !<=kde-base/kdebase-startkde-3.5.10-r3 + x11-apps/rgb + x11-apps/iceauth + >=x11-misc/xdg-utils-1.0.2-r3 +" +PDEPEND=" + avahi? ( kde-misc/kdnssd-avahi ) + bindist? ( kde-misc/kdnssd-avahi ) +" + +# Testing code is rather broken and merely for developer purposes, so disable it. +RESTRICT="test" + +pkg_setup() { + if use legacyssl ; then + echo "" + elog "You have the legacyssl use flag enabled, which fixes issues with some broken" + elog "sites, but breaks others instead. It is strongly discouraged to use it." + elog "For more information, see bug #128922." + echo "" + fi + + if ! use utempter ; then + echo "" + elog "On some setups, which rely on the correct update of utmp records, not using" + elog "utempter might not update them correctly. If you experience unexpected" + elog "behaviour, try to rebuild kde-base/kdelibs with utempter use-flag enabled." + echo "" + fi + + if use alsa && ! built_with_use --missing true media-libs/alsa-lib midi; then + eerror "The alsa USE flag in this package enables ALSA support" + eerror "for libkmid, KDE midi library." + eerror "For this reason, you have to merge media-libs/alsa-lib" + eerror "with the midi USE flag enabled, or disable alsa USE flag" + eerror "for this package." + die "Missing midi USE flag on media-libs/alsa-lib" + fi +} + +src_unpack() { + kde_src_unpack + + # remove this symlink, bug 264767 + rm -f "${WORKDIR}/${P}"/kdeprint/kdeprint + + if use legacyssl ; then + # This patch won't be included upstream, see bug #128922. + epatch "${WORKDIR}/patches/kdelibs_3.5.4-kssl-3des.patch" + fi + + if use utempter ; then + # Bug #135818 is the eternal reference. + epatch "${WORKDIR}/patches/kdelibs-3.5_libutempter.patch" + fi + + if use branding ; then + # Add "(Gentoo)" to khtml user agent. + epatch "${WORKDIR}/patches/kdelibs_3.5-cattlebrand.diff" + fi + + # Xinerama patch by Lubos Lunak. + # http://ktown.kde.org/~seli/xinerama/ + epatch "${WORKDIR}/${PN}-xinerama.patch" + + # patch that fixes kde4 in menus (adapted from archlinux) + epatch "${FILESDIR}/${P}-kde4-apps.patch" + + #Fix glibc-2.10 compilation ( Bug 270404 ) + epatch "${FILESDIR}/${P}-glibc-2.10.patch" + + # bug 247817 + epatch "${FILESDIR}/${PN}-3.5-perl.xml.patch" + + # bug 270926 + epatch "${FILESDIR}/${P}-kjs-gcc44.patch" + + # bug 243476 + epatch "${FILESDIR}/${P}-khtml.patch" +} + +src_compile() { + rm -f "${S}/configure" + + myconf="--with-distribution=Gentoo --disable-fast-malloc + --with-libart --with-libidn --with-ssl + --without-hspell + $(use_enable fam libfam) $(use_enable kernel_linux dnotify) + $(use_with acl) $(use_with alsa) + $(use_with arts) $(use_enable cups) + $(use_with kerberos gssapi) $(use_with tiff) + $(use_with jpeg2k jasper) $(use_with openexr) + $(use_with utempter) $(use_with lua) + $(use_enable kernel_linux sendfile) --enable-mitshm + $(use_with spell aspell)" + + if use avahi || use bindist ; then + myconf="${myconf} --disable-dnssd" + else + myconf="${myconf} --enable-dnssd" + fi + + if has_version x11-apps/rgb; then + myconf="${myconf} --with-rgbfile=/usr/share/X11/rgb.txt" + fi + + # fix bug 58179, bug 85593 + # kdelibs-3.4.0 needed -fno-gcse; 3.4.1 needs -mminimal-toc; this needs a + # closer look... - corsair + use ppc64 && append-flags "-mminimal-toc" + + # work around bug #120858, gcc 3.4.x -Os miscompilation + use x86 && replace-flags "-Os" "-O2" # see bug #120858 + + replace-flags "-O3" "-O2" # see bug #148180 + + kde_src_compile + + if use doc; then + emake apidox || die + fi +} + +src_install() { + kde_src_install + + if use doc; then + emake DESTDIR="${D}" install-apidox || die + fi + + # Needed to create lib -> lib64 symlink for amd64 2005.0 profile + if [ "${SYMLINK_LIB}" = "yes" ]; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${KDEDIR}/lib + fi + + # Get rid of the disabled version of the kdnsd libraries + if use avahi || use bindist ; then + rm -rf "${D}/${PREFIX}"/$(get_libdir)/libkdnssd.* + fi + + dodir /etc/env.d + + # List all the multilib libdirs + local libdirs + for libdir in $(get_all_libdirs); do + libdirs="${PREFIX}/${libdir}:${libdirs}" + done + + # KDE implies that the install path is listed first in KDEDIRS and the user + # directory (implicitly added) to be the last entry. Doing otherwise breaks + # certain functionality. Do not break this (once again *sigh*), but read the code. + # KDE saves the installed path implicitly and so this is not needed, /usr + # is set in ${PREFIX}/share/config/kdeglobals and so KDEDIRS is not needed. + cat <<EOF > "${D}"/etc/env.d/45kdepaths-${SLOT} # number goes down with version upgrade +PATH=${PREFIX}/bin +ROOTPATH=${PREFIX}/sbin:${PREFIX}/bin +LDPATH=${libdirs} +MANPATH=${PREFIX}/share/man +CONFIG_PROTECT="${PREFIX}/share/config ${PREFIX}/env ${PREFIX}/shutdown /usr/share/config" +#KDE_IS_PRELINKED=1 +# Excessive flushing to disk as in releases before KDE 3.5.10. Usually you don't want that. +#KDE_EXTRA_FSYNC=1 +XDG_DATA_DIRS="${PREFIX}/share" +EOF + + # Install shell script to run KDE 3 applications from outside of the KDE 3 desktop + # See http://lists.kde.org/?t=120569055200005&r=1&w=2 for reference + + # List all the multilib libdirs + local _libdir _libdirs + for _libdir in $(get_all_libdirs); do + _libdirs="${_libdirs}:${PREFIX}/${_libdir}" + done + _libdirs=${_libdirs#:} + + # Merge KDE prefix and LDPATH + sed -e "s#@REPLACE_PREFIX@#${PREFIX}#" \ + -e "s#@REPLACE_LIBS@#${_libdirs}#" \ + -i "${WORKDIR}/patches/kde3" || die "sed failed" + dobin "${WORKDIR}/patches/kde3" + + # Make sure the target for the revdep-rebuild stuff exists. Fixes bug 184441. + dodir /etc/revdep-rebuild + +cat <<EOF > "${D}"/etc/revdep-rebuild/50-kde3 +SEARCH_DIRS="${PREFIX}/bin ${PREFIX}/lib*" +EOF +} |