rpms/koffice/devel koffice-1.6.3-gcc43.patch, 1.2, 1.3 koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff, 1.2, 1.3 koffice-xpdf-CVE-2007-3387.diff, 1.2, 1.3 .cvsignore, 1.19, 1.20 koffice.spec, 1.76, 1.77 sources, 1.19, 1.20
Rex Dieter
rdieter at fedoraproject.org
Thu Sep 18 19:00:48 UTC 2008
- Previous message (by thread): rpms/bzrtools/devel .cvsignore, 1.21, 1.22 bzrtools.spec, 1.31, 1.32 sources, 1.21, 1.22
- Next message (by thread): rpms/kernel/devel drm-fix-pll-computation-precedence.patch, NONE, 1.1 kernel.spec, 1.955, 1.956
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: rdieter
Update of /cvs/pkgs/rpms/koffice/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv23204
Modified Files:
.cvsignore koffice.spec sources
Added Files:
koffice-1.6.3-gcc43.patch
koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff
koffice-xpdf-CVE-2007-3387.diff
Log Message:
revert koffice2 -> koffice1, requested by upstream
koffice2 won't be ready for F10
* Thu Sep 18 2008 Rex Dieter <rdieter at fedoraproject.org> 1:1.6.3-16
- revert koffice2->koffice1, introduce Epoch
- fix pkg interdependencies (#394101), multilib issues
- -krita: drop Requires: %name-filters (#394101)
- cleanup scriptlets
koffice-1.6.3-gcc43.patch:
Index: koffice-1.6.3-gcc43.patch
===================================================================
RCS file: koffice-1.6.3-gcc43.patch
diff -N koffice-1.6.3-gcc43.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ koffice-1.6.3-gcc43.patch 18 Sep 2008 19:00:48 -0000 1.3
@@ -0,0 +1,126 @@
+# svn diff -c 729276 svn://anonsvn.kde.org/home/kde/branches/koffice/1.6/
+# svn diff -c 738929 svn://anonsvn.kde.org/home/kde/branches/koffice/1.6/
+
+Index: koffice/krita/core/kis_perspective_math.cpp
+===================================================================
+--- koffice/krita/core/kis_perspective_math.cpp (revision 738928)
++++ koffice/krita/core/kis_perspective_math.cpp (revision 738929)
+@@ -24,7 +24,7 @@
+
+ #if 1
+
+-#include <iostream.h>
++#include <iostream>
+ #include <stdlib.h>
+ #include <math.h>
+ //#define NDEBUG // uncomment to remove checking of assert()
+@@ -57,9 +57,9 @@
+ void rprint()const; //print entries on a single line
+ void resize(int n);
+ int operator==(const vector<ElType>& v)const;
+- friend vector<ElType> operator*(ElType c,vector<ElType>& v );
+- friend vector<ElType> operator*(vector<ElType>& v,ElType c );
+- friend ostream& operator<<(ostream& s,vector<ElType>& v);
++ friend vector<ElType> operator* (ElType c,vector<ElType>& v );
++ friend vector<ElType> operator*(vector<ElType>& v,ElType c );
++ friend std::ostream& operator<<(std::ostream& s,vector<ElType>& v);
+ };
+ template <class ElType>
+ void vector<ElType>::zero()
+@@ -129,10 +129,10 @@
+ void vector<ElType>::rprint()const //print entries on a single line
+ {
+ int i;
+- cout << "VECTOR: ";
+- cout << "(";
+- for(i=0;i<len-1;i++) cout << data[i] << ",";
+- cout << data[len-1] << ")" << endl;
++ std::cout << "VECTOR: ";
++ std::cout << "(";
++ for(i=0;i<len-1;i++) std::cout << data[i] << ",";
++ std::cout << data[len-1] << ")" << std::endl;
+ return;
+ }
+ template <class ElType>
+@@ -164,7 +164,7 @@
+ return ans;
+ }
+ template <class ElType>
+- ostream& operator<<(ostream& s,vector<ElType>& v)
++ std::ostream& operator<<(std::ostream& s,vector<ElType>& v)
+ {
+ s << "(";
+ for(int i=0;i<v.len-1;i++) s << v.data[i] << ", ";
+@@ -192,7 +192,7 @@
+ matrix<ElType> operator-(const matrix<ElType>& a);
+ matrix<ElType> transpose();
+ //matrix<ElType> inverse();
+- friend ostream& operator<<(ostream& s,matrix<ElType>& m);
++ friend std::ostream& operator<<(std::ostream& s,matrix<ElType>& m);
+ friend void ludcmp(matrix<ElType>& a,vector<int>& indx,double &d);
+ friend void lubksb(matrix<ElType>&a,vector<int>& indx,vector<ElType>&b);
+ };
+@@ -357,7 +357,7 @@
+ return ans;
+ }
+ template <class ElType>
+- ostream& operator<<(ostream& s,matrix<ElType>& m)
++ std::ostream& operator<<(std::ostream& s,matrix<ElType>& m)
+ {
+ for(int i=0; i<m.rows;i++) s << m[i];
+ return s;
+@@ -381,7 +381,7 @@
+ // kdDebug() << "new search" << endl;
+ for (j=0;j<n;j++) { if ((temp=fabs(a[i][j])) > big) big=temp;
+ /* kdDebug() << temp << " " << fabs(a[i][j]) << " "<< big <<endl; */}
+- if (big == 0.0) { cerr << "Singular matrix in routine LUDCMP" << endl; big = TINY;}
++ if (big == 0.0) { std::cerr << "Singular matrix in routine LUDCMP" << std::endl; big = TINY;}
+ vv[i]=1.0/big;
+ }
+ for (j=0;j<n;j++)
+Index: koffice/kspread/plugins/scripting/kspreadcore/krs_cell.cpp
+===================================================================
+--- koffice/kspread/plugins/scripting/kspreadcore/krs_cell.cpp (revision 729275)
++++ koffice/kspread/plugins/scripting/kspreadcore/krs_cell.cpp (revision 729276)
+@@ -174,12 +174,7 @@
+ return m_cell->text();
+ }
+
+-bool Cell::setText(const QString& text, bool asString) {
+-
+- //FIXME: there is some problem with asString parameter, when it's set
+- //to true KSpread says: ASSERT: "f" in Dependencies.cpp (621)
+- //kspread: Cell at row 6, col 1 marked as formula, but formula is NULL
+-
++bool Cell::setText(const QString& text) {
+ KSpread::ProtectedCheck prot;
+ prot.setSheet (m_sheet);
+ prot.add (QPoint (m_col, m_row));
+@@ -189,7 +184,7 @@
+ KSpread::DataManipulator *dm = new KSpread::DataManipulator ();
+ dm->setSheet (m_sheet);
+ dm->setValue (text);
+- dm->setParsing (!asString);
++ dm->setParsing (true);
+ dm->add (QPoint (m_col, m_row));
+ dm->execute ();
+
+Index: koffice/kspread/plugins/scripting/kspreadcore/krs_cell.h
+===================================================================
+--- koffice/kspread/plugins/scripting/kspreadcore/krs_cell.h (revision 729275)
++++ koffice/kspread/plugins/scripting/kspreadcore/krs_cell.h (revision 729276)
+@@ -131,11 +131,10 @@
+ */
+ const QString text() const;
+ /**
+- * Set the text of the cell. If asString is true, the text
+- * will be handled as string else we try to parse the
+- * string to the expected value.
++ * Set the text of the cell. the text
++ * will be handled as string
+ */
+- bool setText(const QString& text, bool asString = false);
++ bool setText(const QString& text);
+
+ /**
+ * Return the textcolor as RGB-value in the format "#RRGGBB".
koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff:
Index: koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff
===================================================================
RCS file: koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff
diff -N koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff 18 Sep 2008 19:00:48 -0000 1.3
@@ -0,0 +1,669 @@
+--- filters/kword/pdf/xpdf/xpdf/Stream.cc
++++ filters/kword/pdf/xpdf/xpdf/Stream.cc
+@@ -1239,6 +1239,7 @@
+ // CCITTFaxStream
+ //------------------------------------------------------------------------
+
++#if 0
+ CCITTFaxStream::CCITTFaxStream(Stream *strA, int encodingA, GBool endOfLineA,
+ GBool byteAlignA, int columnsA, int rowsA,
+ GBool endOfBlockA, GBool blackA):
+@@ -1748,6 +1749,609 @@
+ }
+ return (inputBuf >> (inputBits - n)) & (0xffff >> (16 - n));
+ }
++#else // secfix
++CCITTFaxStream::CCITTFaxStream(Stream *strA, int encodingA, GBool endOfLineA,
++ GBool byteAlignA, int columnsA, int rowsA,
++ GBool endOfBlockA, GBool blackA):
++ FilterStream(strA) {
++ encoding = encodingA;
++ endOfLine = endOfLineA;
++ byteAlign = byteAlignA;
++ columns = columnsA;
++ if (columns < 1) {
++ columns = 1;
++ } else if (columns > (INT_MAX - 2)/sizeof(int)) {
++ columns = (INT_MAX - 2)/sizeof(int);
++ }
++ rows = rowsA;
++ endOfBlock = endOfBlockA;
++ black = blackA;
++ // 0 <= codingLine[0] < codingLine[1] < ... < codingLine[n] = columns
++ // ---> max codingLine size = columns + 1
++ // refLine has one extra guard entry at the end
++ // ---> max refLine size = columns + 2
++ codingLine = (int *)gmalloc((columns + 1) * sizeof(int));
++ refLine = (int *)gmalloc((columns + 2) * sizeof(int));
++
++ eof = gFalse;
++ row = 0;
++ nextLine2D = encoding < 0;
++ inputBits = 0;
++ codingLine[0] = columns;
++ a0i = 0;
++ outputBits = 0;
++
++ buf = EOF;
++}
++
++CCITTFaxStream::~CCITTFaxStream() {
++ delete str;
++ gfree(refLine);
++ gfree(codingLine);
++}
++
++void CCITTFaxStream::reset() {
++ short code1;
++
++ str->reset();
++ eof = gFalse;
++ row = 0;
++ nextLine2D = encoding < 0;
++ inputBits = 0;
++ codingLine[0] = columns;
++ a0i = 0;
++ outputBits = 0;
++ buf = EOF;
++
++ // skip any initial zero bits and end-of-line marker, and get the 2D
++ // encoding tag
++ while ((code1 = lookBits(12)) == 0) {
++ eatBits(1);
++ }
++ if (code1 == 0x001) {
++ eatBits(12);
++ }
++ if (encoding > 0) {
++ nextLine2D = !lookBits(1);
++ eatBits(1);
++ }
++}
++
++inline void CCITTFaxStream::addPixels(int a1, int blackPixels) {
++ if (a1 > codingLine[a0i]) {
++ if (a1 > columns) {
++ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
++ err = gTrue;
++ a1 = columns;
++ }
++ if ((a0i & 1) ^ blackPixels) {
++ ++a0i;
++ }
++ codingLine[a0i] = a1;
++ }
++}
++
++inline void CCITTFaxStream::addPixelsNeg(int a1, int blackPixels) {
++ if (a1 > codingLine[a0i]) {
++ if (a1 > columns) {
++ error(getPos(), "CCITTFax row is wrong length (%d)", a1);
++ err = gTrue;
++ a1 = columns;
++ }
++ if ((a0i & 1) ^ blackPixels) {
++ ++a0i;
++ }
++ codingLine[a0i] = a1;
++ } else if (a1 < codingLine[a0i]) {
++ if (a1 < 0) {
++ error(getPos(), "Invalid CCITTFax code");
++ err = gTrue;
++ a1 = 0;
++ }
++ while (a0i > 0 && a1 <= codingLine[a0i - 1]) {
++ --a0i;
++ }
++ codingLine[a0i] = a1;
++ }
++}
++
++int CCITTFaxStream::lookChar() {
++ short code1, code2, code3;
++ int b1i, blackPixels, i, bits;
++ GBool gotEOL;
++
++ if (buf != EOF) {
++ return buf;
++ }
++
++ // read the next row
++ if (outputBits == 0) {
++
++ // if at eof just return EOF
++ if (eof) {
++ return EOF;
++ }
++
++ err = gFalse;
++
++ // 2-D encoding
++ if (nextLine2D) {
++ for (i = 0; codingLine[i] < columns; ++i) {
++ refLine[i] = codingLine[i];
++ }
++ refLine[i++] = columns;
++ refLine[i] = columns;
++ codingLine[0] = 0;
++ a0i = 0;
++ b1i = 0;
++ blackPixels = 0;
++ // invariant:
++ // refLine[b1i-1] <= codingLine[a0i] < refLine[b1i] < refLine[b1i+1]
++ // <= columns
++ // exception at left edge:
++ // codingLine[a0i = 0] = refLine[b1i = 0] = 0 is possible
++ // exception at right edge:
++ // refLine[b1i] = refLine[b1i+1] = columns is possible
++ while (codingLine[a0i] < columns) {
++ code1 = getTwoDimCode();
++ switch (code1) {
++ case twoDimPass:
++ addPixels(refLine[b1i + 1], blackPixels);
++ if (refLine[b1i + 1] < columns) {
++ b1i += 2;
++ }
++ break;
++ case twoDimHoriz:
++ code1 = code2 = 0;
++ if (blackPixels) {
++ do {
++ code1 += code3 = getBlackCode();
++ } while (code3 >= 64);
++ do {
++ code2 += code3 = getWhiteCode();
++ } while (code3 >= 64);
++ } else {
++ do {
++ code1 += code3 = getWhiteCode();
++ } while (code3 >= 64);
++ do {
++ code2 += code3 = getBlackCode();
++ } while (code3 >= 64);
++ }
++ addPixels(codingLine[a0i] + code1, blackPixels);
++ if (codingLine[a0i] < columns) {
++ addPixels(codingLine[a0i] + code2, blackPixels ^ 1);
++ }
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ break;
++ case twoDimVertR3:
++ addPixels(refLine[b1i] + 3, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ ++b1i;
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVertR2:
++ addPixels(refLine[b1i] + 2, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ ++b1i;
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVertR1:
++ addPixels(refLine[b1i] + 1, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ ++b1i;
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVert0:
++ addPixels(refLine[b1i], blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ ++b1i;
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVertL3:
++ addPixelsNeg(refLine[b1i] - 3, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ if (b1i > 0) {
++ --b1i;
++ } else {
++ ++b1i;
++ }
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVertL2:
++ addPixelsNeg(refLine[b1i] - 2, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ if (b1i > 0) {
++ --b1i;
++ } else {
++ ++b1i;
++ }
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case twoDimVertL1:
++ addPixelsNeg(refLine[b1i] - 1, blackPixels);
++ blackPixels ^= 1;
++ if (codingLine[a0i] < columns) {
++ if (b1i > 0) {
++ --b1i;
++ } else {
++ ++b1i;
++ }
++ while (refLine[b1i] <= codingLine[a0i] && refLine[b1i] < columns) {
++ b1i += 2;
++ }
++ }
++ break;
++ case EOF:
++ addPixels(columns, 0);
++ eof = gTrue;
++ break;
++ default:
++ error(getPos(), "Bad 2D code %04x in CCITTFax stream", code1);
++ addPixels(columns, 0);
++ err = gTrue;
++ break;
++ }
++ }
++
++ // 1-D encoding
++ } else {
++ codingLine[0] = 0;
++ a0i = 0;
++ blackPixels = 0;
++ while (codingLine[a0i] < columns) {
++ code1 = 0;
++ if (blackPixels) {
++ do {
++ code1 += code3 = getBlackCode();
++ } while (code3 >= 64);
++ } else {
++ do {
++ code1 += code3 = getWhiteCode();
++ } while (code3 >= 64);
++ }
++ addPixels(codingLine[a0i] + code1, blackPixels);
++ blackPixels ^= 1;
++ }
++ }
++
++ // byte-align the row
++ if (byteAlign) {
++ inputBits &= ~7;
++ }
++
++ // check for end-of-line marker, skipping over any extra zero bits
++ gotEOL = gFalse;
++ if (!endOfBlock && row == rows - 1) {
++ eof = gTrue;
++ } else {
++ code1 = lookBits(12);
++ while (code1 == 0) {
++ eatBits(1);
++ code1 = lookBits(12);
++ }
++ if (code1 == 0x001) {
++ eatBits(12);
++ gotEOL = gTrue;
++ } else if (code1 == EOF) {
++ eof = gTrue;
++ }
++ }
++
++ // get 2D encoding tag
++ if (!eof && encoding > 0) {
++ nextLine2D = !lookBits(1);
++ eatBits(1);
++ }
++
++ // check for end-of-block marker
++ if (endOfBlock && gotEOL) {
++ code1 = lookBits(12);
++ if (code1 == 0x001) {
++ eatBits(12);
++ if (encoding > 0) {
++ lookBits(1);
++ eatBits(1);
++ }
++ if (encoding >= 0) {
++ for (i = 0; i < 4; ++i) {
++ code1 = lookBits(12);
++ if (code1 != 0x001) {
++ error(getPos(), "Bad RTC code in CCITTFax stream");
++ }
++ eatBits(12);
++ if (encoding > 0) {
++ lookBits(1);
++ eatBits(1);
++ }
++ }
++ }
++ eof = gTrue;
++ }
++
++ // look for an end-of-line marker after an error -- we only do
++ // this if we know the stream contains end-of-line markers because
++ // the "just plow on" technique tends to work better otherwise
++ } else if (err && endOfLine) {
++ while (1) {
++ code1 = lookBits(13);
++ if (code1 == EOF) {
++ eof = gTrue;
++ return EOF;
++ }
++ if ((code1 >> 1) == 0x001) {
++ break;
++ }
++ eatBits(1);
++ }
++ eatBits(12);
++ if (encoding > 0) {
++ eatBits(1);
++ nextLine2D = !(code1 & 1);
++ }
++ }
++
++ // set up for output
++ if (codingLine[0] > 0) {
++ outputBits = codingLine[a0i = 0];
++ } else {
++ outputBits = codingLine[a0i = 1];
++ }
++
++ ++row;
++ }
++
++ // get a byte
++ if (outputBits >= 8) {
++ buf = (a0i & 1) ? 0x00 : 0xff;
++ outputBits -= 8;
++ if (outputBits == 0 && codingLine[a0i] < columns) {
++ ++a0i;
++ outputBits = codingLine[a0i] - codingLine[a0i - 1];
++ }
++ } else {
++ bits = 8;
++ buf = 0;
++ do {
++ if (outputBits > bits) {
++ buf <<= bits;
++ if (!(a0i & 1)) {
++ buf |= 0xff >> (8 - bits);
++ }
++ outputBits -= bits;
++ bits = 0;
++ } else {
++ buf <<= outputBits;
++ if (!(a0i & 1)) {
++ buf |= 0xff >> (8 - outputBits);
++ }
++ bits -= outputBits;
++ outputBits = 0;
++ if (codingLine[a0i] < columns) {
++ ++a0i;
++ outputBits = codingLine[a0i] - codingLine[a0i - 1];
++ } else if (bits > 0) {
++ buf <<= bits;
++ bits = 0;
++ }
++ }
++ } while (bits);
++ }
++ if (black) {
++ buf ^= 0xff;
++ }
++ return buf;
++}
++
++short CCITTFaxStream::getTwoDimCode() {
++ short code;
++ CCITTCode *p;
++ int n;
++
++ code = 0; // make gcc happy
++ if (endOfBlock) {
++ code = lookBits(7);
++ p = &twoDimTab1[code];
++ if (p->bits > 0) {
++ eatBits(p->bits);
++ return p->n;
++ }
++ } else {
++ for (n = 1; n <= 7; ++n) {
++ code = lookBits(n);
++ if (n < 7) {
++ code <<= 7 - n;
++ }
++ p = &twoDimTab1[code];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ }
++ error(getPos(), "Bad two dim code (%04x) in CCITTFax stream", code);
++ return EOF;
++}
++
++short CCITTFaxStream::getWhiteCode() {
++ short code;
++ CCITTCode *p;
++ int n;
++
++ code = 0; // make gcc happy
++ if (endOfBlock) {
++ code = lookBits(12);
++ if (code == EOF) {
++ return 1;
++ }
++ if ((code >> 5) == 0) {
++ p = &whiteTab1[code];
++ } else {
++ p = &whiteTab2[code >> 3];
++ }
++ if (p->bits > 0) {
++ eatBits(p->bits);
++ return p->n;
++ }
++ } else {
++ for (n = 1; n <= 9; ++n) {
++ code = lookBits(n);
++ if (code == EOF) {
++ return 1;
++ }
++ if (n < 9) {
++ code <<= 9 - n;
++ }
++ p = &whiteTab2[code];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ for (n = 11; n <= 12; ++n) {
++ code = lookBits(n);
++ if (code == EOF) {
++ return 1;
++ }
++ if (n < 12) {
++ code <<= 12 - n;
++ }
++ p = &whiteTab1[code];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ }
++ error(getPos(), "Bad white code (%04x) in CCITTFax stream", code);
++ // eat a bit and return a positive number so that the caller doesn't
++ // go into an infinite loop
++ eatBits(1);
++ return 1;
++}
++
++short CCITTFaxStream::getBlackCode() {
++ short code;
++ CCITTCode *p;
++ int n;
++
++ code = 0; // make gcc happy
++ if (endOfBlock) {
++ code = lookBits(13);
++ if (code == EOF) {
++ return 1;
++ }
++ if ((code >> 7) == 0) {
++ p = &blackTab1[code];
++ } else if ((code >> 9) == 0 && (code >> 7) != 0) {
++ p = &blackTab2[(code >> 1) - 64];
++ } else {
++ p = &blackTab3[code >> 7];
++ }
++ if (p->bits > 0) {
++ eatBits(p->bits);
++ return p->n;
++ }
++ } else {
++ for (n = 2; n <= 6; ++n) {
++ code = lookBits(n);
++ if (code == EOF) {
++ return 1;
++ }
++ if (n < 6) {
++ code <<= 6 - n;
++ }
++ p = &blackTab3[code];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ for (n = 7; n <= 12; ++n) {
++ code = lookBits(n);
++ if (code == EOF) {
++ return 1;
++ }
++ if (n < 12) {
++ code <<= 12 - n;
++ }
++ if (code >= 64) {
++ p = &blackTab2[code - 64];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ }
++ for (n = 10; n <= 13; ++n) {
++ code = lookBits(n);
++ if (code == EOF) {
++ return 1;
++ }
++ if (n < 13) {
++ code <<= 13 - n;
++ }
++ p = &blackTab1[code];
++ if (p->bits == n) {
++ eatBits(n);
++ return p->n;
++ }
++ }
++ }
++ error(getPos(), "Bad black code (%04x) in CCITTFax stream", code);
++ // eat a bit and return a positive number so that the caller doesn't
++ // go into an infinite loop
++ eatBits(1);
++ return 1;
++}
++
++short CCITTFaxStream::lookBits(int n) {
++ int c;
++
++ while (inputBits < n) {
++ if ((c = str->getChar()) == EOF) {
++ if (inputBits == 0) {
++ return EOF;
++ }
++ // near the end of the stream, the caller may ask for more bits
++ // than are available, but there may still be a valid code in
++ // however many bits are available -- we need to return correct
++ // data in this case
++ return (inputBuf << (n - inputBits)) & (0xffff >> (16 - n));
++ }
++ inputBuf = (inputBuf << 8) + c;
++ inputBits += 8;
++ }
++ return (inputBuf >> (inputBits - n)) & (0xffff >> (16 - n));
++}
++
++#endif
+
+ GString *CCITTFaxStream::getPSFilter(const char *indent) {
+ GString *s;
+@@ -1929,6 +2533,12 @@
+ // allocate a buffer for the whole image
+ bufWidth = ((width + mcuWidth - 1) / mcuWidth) * mcuWidth;
+ bufHeight = ((height + mcuHeight - 1) / mcuHeight) * mcuHeight;
++ if (bufWidth <= 0 || bufHeight <= 0 ||
++ bufWidth > INT_MAX / bufWidth / (int)sizeof(int)) {
++ error(getPos(), "Invalid image size in DCT stream");
++ y = height;
++ return;
++ }
+ for (i = 0; i < numComps; ++i) {
+ frameBuf[i] = (int *)gmalloc(bufWidth * bufHeight * sizeof(int));
+ memset(frameBuf[i], 0, bufWidth * bufHeight * sizeof(int));
+@@ -2975,6 +3585,11 @@
+ }
+ scanInfo.firstCoeff = str->getChar();
+ scanInfo.lastCoeff = str->getChar();
++ if (scanInfo.firstCoeff < 0 || scanInfo.lastCoeff > 63 ||
++ scanInfo.firstCoeff > scanInfo.lastCoeff) {
++ error(getPos(), "Bad DCT coefficient numbers in scan info block");
++ return gFalse;
++ }
+ c = str->getChar();
+ scanInfo.ah = (c >> 4) & 0x0f;
+ scanInfo.al = c & 0x0f;
+--- filters/kword/pdf/xpdf/xpdf/Stream.h
++++ filters/kword/pdf/xpdf/xpdf/Stream.h
+@@ -513,13 +513,17 @@
+ int row; // current row
+ int inputBuf; // input buffer
+ int inputBits; // number of bits in input buffer
+- short *refLine; // reference line changing elements
+- int b1; // index into refLine
+- short *codingLine; // coding line changing elements
+- int a0; // index into codingLine
++ int *codingLine; // coding line changing elements
++ int *refLine; // reference line changing elements
++ int a0i; // index into codingLine
++ GBool err; // error on current line
++
+ int outputBits; // remaining output bits
+ int buf; // character buffer
+
++ void addPixels(int a1, int black);
++ void addPixelsNeg(int a1, int black);
++
+ short getTwoDimCode();
+ short getWhiteCode();
+ short getBlackCode();
koffice-xpdf-CVE-2007-3387.diff:
Index: koffice-xpdf-CVE-2007-3387.diff
===================================================================
RCS file: koffice-xpdf-CVE-2007-3387.diff
diff -N koffice-xpdf-CVE-2007-3387.diff
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ koffice-xpdf-CVE-2007-3387.diff 18 Sep 2008 19:00:48 -0000 1.3
@@ -0,0 +1,20 @@
+--- filters/kword/pdf/xpdf/xpdf/Stream.cc
++++ filters/kword/pdf/xpdf/xpdf/Stream.cc
+@@ -413,13 +413,11 @@ StreamPredictor::StreamPredictor(Stream
+ predLine = NULL;
+ ok = gFalse;
+
+- if (width <= 0 || nComps <= 0 || nBits <= 0 ||
+- nComps >= INT_MAX / nBits ||
+- width >= INT_MAX / nComps / nBits)
+- return;
+-
+ nVals = width * nComps;
+- if (nVals * nBits + 7 <= 0)
++ if (width <= 0 || nComps <= 0 || nBits <= 0 ||
++ nComps >= 4 || nBits > 16 ||
++ width >= INT_MAX / nComps ||
++ nVals >= (INT_MAX - 7) / nBits)
+ return;
+
+ pixBytes = (nComps * nBits + 7) >> 3;
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/koffice/devel/.cvsignore,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- .cvsignore 12 Sep 2008 16:55:03 -0000 1.19
+++ .cvsignore 18 Sep 2008 19:00:48 -0000 1.20
@@ -1 +1,5 @@
-koffice-1.9.95.10.tar.bz2
+koffice-1.6.0.tar.bz2
+koffice-1.6.1.tar.bz2
+koshell.png
+koffice-1.6.2.tar.bz2
+koffice-1.6.3.tar.bz2
Index: koffice.spec
===================================================================
RCS file: /cvs/pkgs/rpms/koffice/devel/koffice.spec,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -r1.76 -r1.77
--- koffice.spec 12 Sep 2008 16:55:03 -0000 1.76
+++ koffice.spec 18 Sep 2008 19:00:48 -0000 1.77
@@ -1,63 +1,72 @@
Name: koffice
-Version: 1.9.95.10
-Release: 1%{?dist}
+Epoch: 1
+Version: 1.6.3
+Release: 16%{?dist}
Summary: An integrated office suite
Group: Applications/Productivity
-# apps GPLv2+, libs LGPLv2+
License: GPLv2+
URL: http://www.koffice.org/
-Source0: http://download.kde.org/unstable/koffice-%{version}/src/koffice-%{version}.tar.bz2
+Source0: ftp://ftp.kde.org/pub/kde/stable/koffice-%{version}/src/koffice-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-#-- The following OPTIONAL packages could NOT be located on your system.
-#-- Consider installing them to enable more features from this software.
-#+ OpenCTL, 0.9.2: OpenCTL is needed for some color spaces (High Dynamic Range Color Spaces, YCbCr and LMS) <http://www.openctl.org>
-#+ FreeTDS library: Kexi Sybase Migration driver requires FreeTDS library. The driver will not be built <http://www.freetds.org>
-#+ XBase library: Kexi XBase Migration driver requires XBase library. The driver will not be built <http://linux.techass.com/projects/xdb/>
-#+ GMM: The Krita Panorama plugin will not be built. <http://home.gna.org/getfem/download.html>
-#+ Spnav: Spnav is the library which is required by the space navigator device plugin <http://spacenav.sourceforge.net/>
-
-BuildRequires: boost-devel
-BuildRequires: bzip2-devel
-BuildRequires: cmake
-BuildRequires: desktop-file-utils
-BuildRequires: doxygen
-BuildRequires: eigen2-devel
-BuildRequires: exiv2-devel
-BuildRequires: fontconfig-devel
-BuildRequires: freeglut-devel
-BuildRequires: freetype-devel
-BuildRequires: gettext-devel
-BuildRequires: giflib-devel
-BuildRequires: glew-devel
-BuildRequires: GraphicsMagick-devel
-BuildRequires: gsl-devel
-# BR: libkdcraw-devel >= 0.2.0
-BuildRequires: kdegraphics4-devel
-BuildRequires: kdelibs4-devel
-BuildRequires: kdepimlibs-devel
-BuildRequires: lcms-devel
-BuildRequires: libGL-devel libGLU-devel
-BuildRequires: libjpeg-devel
-BuildRequires: libpng-devel
-BuildRequires: libpqxx-devel
-BuildRequires: libtiff-devel
-BuildRequires: libwpd-devel
-BuildRequires: libxslt-devel
-BuildRequires: mysql-devel
-BuildRequires: OpenEXR-devel
-BuildRequires: openldap-devel
-BuildRequires: pcre-devel
-BuildRequires: perl
-BuildRequires: poppler-qt4-devel
-BuildRequires: python-devel
-BuildRequires: qca2-devel
-BuildRequires: qimageblitz-devel
-BuildRequires: readline-devel
-BuildRequires: ruby-devel ruby
-BuildRequires: wv2-devel
+Source100: koshell.png
+
+# http://www.kde.org/info/security/advisory-20070730-1.txt
+Patch1: ftp://ftp.kde.org/pub/kde/security_patches/koffice-xpdf-CVE-2007-3387.diff
+
+# http://www.kde.org/info/security/advisory-20071107-1.txt
+Patch2: ftp://ftp.kde.org/pub/kde/security_patches/koffice-1.6.3-xpdf2-CVE-2007-4352-5392-5393.diff
+
+# upstream patch pulled via: svn diff -c 738929
+# svn diff -c 729276 svn://anonsvn.kde.org/home/kde/branches/koffice/1.6/
+# svn diff -c 738929 svn://anonsvn.kde.org/home/kde/branches/koffice/1.6/
+Patch3: koffice-1.6.3-gcc43.patch
+
+# BuildRequires: world-devel ;)
+BuildRequires: kdelibs3-devel
+# See http://bugzilla.redhat.com/244091
+%global kdelibs_ver %((kde-config --version 2>/dev/null || echo KDE 3.5.8) | grep '^KDE' | cut -d' ' -f2 | cut -d'-' -f1)
+## kjsembed bits, afaict, not really used (yet) -- Rex
+#BuildRequires: kdebindings-devel
+BuildRequires: freetype-devel
+BuildRequires: fontconfig-devel
+BuildRequires: libart_lgpl-devel
+BuildRequires: libpng-devel
+BuildRequires: libtiff-devel
+BuildRequires: libjpeg-devel
+BuildRequires: GraphicsMagick-devel
+BuildRequires: ImageMagick-devel
+BuildRequires: bzip2-devel
+BuildRequires: zlib-devel
+BuildRequires: openssl-devel
+BuildRequires: python-devel
+BuildRequires: pcre-devel
+BuildRequires: libwpd-devel
+BuildRequires: lcms-devel
+BuildRequires: gettext-devel
+BuildRequires: mysql-devel
+BuildRequires: desktop-file-utils
+BuildRequires: perl
+BuildRequires: wv2-devel
+BuildRequires: libpqxx-devel
+BuildRequires: doxygen
+BuildRequires: aspell-devel
+BuildRequires: libxslt-devel
+BuildRequires: OpenEXR-devel
+BuildRequires: libexif-devel
+BuildRequires: libGL-devel libGLU-devel
+BuildRequires: readline-devel
+%if 0%{?fedora} > 4 || 0%{?rhel} > 4
+%define ruby 1
+BuildRequires: ruby ruby-devel >= 1.8.2
+%endif
+BuildRequires: poppler-qt-devel
+%if 0%{?fedora} > 4 || 0%{?rhel} > 4
+BuildRequires: libpaper-devel
+BuildRequires: libXi-devel
+%endif
%description
KOffice is an integrated office suite.
@@ -67,233 +76,288 @@
Group: Applications/Productivity
Obsoletes: koffice <= 4:%{version}-%{release}
Obsoletes: koffice-i18n < 4:%{version}
-Requires: koffice-core = %{version}-%{release}
-Requires: koffice-kword = %{version}-%{release}
-Requires: koffice-kspread = %{version}-%{release}
-Requires: koffice-kpresenter = %{version}-%{release}
-Requires: koffice-kivio = %{version}-%{release}
-Requires: koffice-karbon = %{version}-%{release}
-Requires: koffice-krita = %{version}-%{release}
-Requires: koffice-kugar = %{version}-%{release}
-Requires: koffice-kexi = %{version}-%{release}
-Requires: koffice-kexi-driver-mysql = %{version}-%{release}
-Requires: koffice-kexi-driver-pgsql = %{version}-%{release}
-Requires: koffice-kchart = %{version}-%{release}
-Requires: koffice-kformula = %{version}-%{release}
-Requires: koffice-filters = %{version}-%{release}
-Requires: koffice-kplato = %{version}-%{release}
+Requires: koffice-core = %{epoch}:%{version}-%{release}
+Requires: koffice-kword = %{epoch}:%{version}-%{release}
+Requires: koffice-kspread = %{epoch}:%{version}-%{release}
+Requires: koffice-kpresenter = %{epoch}:%{version}-%{release}
+Requires: koffice-kivio = %{epoch}:%{version}-%{release}
+Requires: koffice-karbon = %{epoch}:%{version}-%{release}
+Requires: koffice-krita = %{epoch}:%{version}-%{release}
+Requires: koffice-kugar = %{epoch}:%{version}-%{release}
+Requires: koffice-kexi = %{epoch}:%{version}-%{release}
+Requires: koffice-kexi-driver-mysql = %{epoch}:%{version}-%{release}
+Requires: koffice-kexi-driver-pgsql = %{epoch}:%{version}-%{release}
+Requires: koffice-kchart = %{epoch}:%{version}-%{release}
+Requires: koffice-kformula = %{epoch}:%{version}-%{release}
+Requires: koffice-filters = %{epoch}:%{version}-%{release}
+Requires: koffice-kplato = %{epoch}:%{version}-%{release}
%description suite
KOffice is an integrated office suite.
%package core
-Summary: Core support files for koffice
+Summary: Core support files for %{name}
Group: Applications/Productivity
-Requires: %{name}-libs = %{version}-%{release}
-#Conflicts: koffice-i18n < 4:%{version}
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
Requires(post): xdg-utils
Requires(postun): xdg-utils
-
+Requires: perl
+Conflicts: koffice-i18n < 4:%{version}
%description core
%{summary}.
%package libs
-Summary: Runtime libraries for koffice
+Summary: Runtime libraries for %{name}
Group: System Environment/Libraries
-#Conflicts: koffice <= 4:%{version}-%{release}
+Conflicts: koffice <= 4:%{version}-%{release}
+Requires: kdelibs3 >= %{kdelibs_ver}
+License: LGPLv2+
%description libs
%{summary}.
%package devel
-Summary: Libraries needed for koffice development
+Summary: Development files for %{name}
Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
-Requires: kdelibs4-devel
-
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+License: LGPLv2+
%description devel
-%{summary}
+%{summary}.
%package kword
-Summary:A frame-based word processor capable of professional standard documents
+Summary: A frame-based word processor capable of professional standard documents
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kword
-%{summary}
+%{summary}.
%package kspread
Summary: A powerful spreadsheet application
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kspread
-%{summary}
+%{summary}.
%package kpresenter
Summary: A full-featured presentation program
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kpresenter
-%{summary}
+%{summary}.
%package kivio
Summary: A flowcharting application
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
Obsoletes: kivio < %{version}-%{release}
-
%description kivio
-%{summary}
+%{summary}.
%package karbon
Summary: A vector drawing application
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description karbon
-%{summary}
+%{summary}.
%package krita
Summary: A pixel-based image manipulation program
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-Requires: %{name}-filters
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description krita
-%{summary}
+%{summary}.
%package kugar
Summary: A tool for generating business quality reports
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kugar
-%{summary}
+%{summary}.
%package kexi
Summary: An integrated environment for managing data
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kexi
-%{summary}
+%{summary}.
For additional database drivers take a look at %{name}-kexi-driver-*
%package kexi-driver-mysql
-Summary: mysql-driver for kexi
+Summary: Mysql-driver for kexi
Group: Applications/Productivity
-Requires: %{name}-kexi = %{version}-%{release}
-
+Requires: %{name}-kexi = %{epoch}:%{version}-%{release}
%description kexi-driver-mysql
-%{summary}
+%{summary}.
%package kexi-driver-pgsql
-Summary: pgsql-driver for kexi
+Summary: Postresql driver for kexi
Group: Applications/Productivity
-Requires: %{name}-kexi = %{version}-%{release}
-
+Requires: %{name}-kexi = %{epoch}:%{version}-%{release}
%description kexi-driver-pgsql
-%{summary}
+%{summary}.
%package kchart
Summary: An integrated graph and chart drawing tool
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kchart
-%{summary}
+%{summary}.
%package kformula
Summary: A powerful formula editor
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
Requires: mathml-fonts
-
%description kformula
-%{summary}
+%{summary}.
%package filters
Summary: Import and Export Filters for KOffice
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description filters
-%{summary}
+%{summary}.
%package kplato
Summary: An integrated project management and planning tool
Group: Applications/Productivity
-Requires: %{name}-core = %{version}-%{release}
-
+Requires: %{name}-core = %{epoch}:%{version}-%{release}
%description kplato
-%{summary}
+%{summary}.
%prep
%setup -q
+%patch1 -p0 -b .CVE-2007-3387
+%patch2 -p0 -b .CVE-2007-4352-5392-5393
+%patch3 -p1 -b .gcc43
+
%build
+unset QTDIR || : ; . /etc/profile.d/qt.sh
-mkdir -p %{_target_platform}
-pushd %{_target_platform}
-# SET EIGEN2_INCLUDE_DIR since our kde4_incdir != eigen2_incdir
-%{cmake_kde4} \
- -DEIGEN2_INCLUDE_DIR=%{_includedir}/eigen2 \
- ..
-popd
+%configure \
+ --disable-rpath --disable-dependency-tracking \
+ --enable-new-ldflags \
+ --disable-debug --disable-warnings \
+ --with-pic --enable-shared --disable-static \
+ --with-extra-libs=%{_libdir} \
+ --with-pgsqllibdir=%{_libdir} --with-pgsqlincdir=%{_includedir} \
+ --with-pqxxlibdir=%{_libdir} --with-pqxxincdir=%{_includedir} \
+ --enable-final
-make %{?_smp_mflags} -C %{_target_platform}
+make %{?_smp_mflags}
%install
rm -rf %{buildroot}
+make install DESTDIR=%{buildroot}
+
+[ ! -f %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/koshell.png ] && \
+install -p -D -m644 %{SOURCE100} %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/koshell.png
-make install DESTDIR=%{buildroot} -C %{_target_platform}
+# Replace absolute symlinks with relative ones
+pushd %{buildroot}%{_docdir}/HTML
+for lang in *; do
+ if [ -d $lang ]; then
+ pushd $lang
+ for i in */*; do
+ [ -d $i -a -L $i/common ] && rm -f $i/common && ln -sf ../../common $i/common
+ done
+ popd
+ fi
+done
+popd
-# unpackaged files
-rm -f %{buildroot}%{_kde4_libdir}/lib*common.so
-rm -f %{buildroot}%{_kde4_libdir}/lib*filters.so
-rm -f %{buildroot}%{_kde4_libdir}/lib*private.so
-rm -f %{buildroot}%{_kde4_libdir}/libkarbon*.so
-rm -f %{buildroot}%{_kde4_libdir}/libkexi*.so
-rm -f %{buildroot}%{_kde4_libdir}/libkisexiv2.so
-rm -f %{buildroot}%{_kde4_libdir}/libkformdesigner.so
-rm -f %{buildroot}%{_kde4_libdir}/libkplato*.so
-rm -f %{buildroot}%{_kde4_libdir}/libkword*.so
-rm -f %{buildroot}%{_kde4_libdir}/libkrita*.so
-rm -f %{buildroot}%{_kde4_libdir}/libkross*.so
+desktop-file-install \
+ --dir=%{buildroot}%{_datadir}/applications/kde \
+ --vendor="" \
+ --delete-original \
+ %{buildroot}%{_datadir}/applnk/Office/*.desktop
+
+## Hack-in NoDisplay=True (http://bugzilla.redhat.com/245061)
+## until http://bugzilla.redhat.com/245190 is fixed
+for desktop_file in %{buildroot}%{_datadir}/applnk/.hidden/*.desktop ; do
+ grep "^NoDisplay=" ${desktop_file} || \
+ echo "NoDisplay=True" >> ${desktop_file}
+done
+
+## unpackaged files
+rm -f %{buildroot}%{_libdir}/lib*.la
+# shouldn't these be in koffice-l10n?
+rm -f %{buildroot}%{_datadir}/locale/pl/LC_MESSAGES/kexi_{add,delete}_column_gui_transl_pl.sh
+# -devel symlinks to nuke
+rm -f %{buildroot}%{_libdir}/lib*common.so
+rm -f %{buildroot}%{_libdir}/lib*filters.so
+rm -f %{buildroot}%{_libdir}/lib*private.so
+rm -f %{buildroot}%{_libdir}/libkarbon*.so
+rm -f %{buildroot}%{_libdir}/libkchart*.so
+rm -f %{buildroot}%{_libdir}/libkexi*.so
+rm -f %{buildroot}%{_libdir}/libkisexiv2.so
+rm -f %{buildroot}%{_libdir}/libkformdesigner.so
+rm -f %{buildroot}%{_libdir}/libkplato*.so
+rm -f %{buildroot}%{_libdir}/libkpresenter*.so
+rm -f %{buildroot}%{_libdir}/libkword*.so
+rm -f %{buildroot}%{_libdir}/libkrita*.so
+rm -f %{buildroot}%{_libdir}/libkross*.so
+rm -f %{buildroot}%{_libdir}/libkugar*.so
%clean
-rm -rf %{buildroot}
+rm -rf %{buildroot}
%post core
+xdg-icon-resource forceupdate --theme crystalsvg 2> /dev/null || :
xdg-icon-resource forceupdate --theme hicolor 2> /dev/null || :
-xdg-icon-resource forceupdate --theme oxygen 2> /dev/null || :
+xdg-icon-resource forceupdate --theme locolor 2> /dev/null || :
xdg-desktop-menu forceupdate 2> /dev/null || :
%postun core
+xdg-icon-resource forceupdate --theme crystalsvg 2> /dev/null || :
xdg-icon-resource forceupdate --theme hicolor 2> /dev/null || :
-xdg-icon-resource forceupdate --theme oxygen 2> /dev/null || :
+xdg-icon-resource forceupdate --theme locolor 2> /dev/null || :
xdg-desktop-menu forceupdate 2> /dev/null || :
-%post kword -p /sbin/ldconfig
-%postun kword -p /sbin/ldconfig
+%post kword
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
+
+%postun kword
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
-%post kpresenter -p /sbin/ldconfig
-%postun kpresenter -p /sbin/ldconfig
+%post kpresenter
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
-%post kugar -p /sbin/ldconfig
-%postun kugar -p /sbin/ldconfig
+%postun kpresenter
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
-%post kexi -p /sbin/ldconfig
-%postun kexi -p /sbin/ldconfig
+%post kugar
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
-%post kchart -p /sbin/ldconfig
-%postun kchart -p /sbin/ldconfig
+%postun kugar
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
+
+%post kexi
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
+
+%postun kexi
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
+
+%post kchart
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
+
+%postun kchart
+/sbin/ldconfig
+xdg-desktop-menu forceupdate 2> /dev/null || :
%post filters -p /sbin/ldconfig
%postun filters -p /sbin/ldconfig
@@ -306,350 +370,343 @@
%files core
%defattr(-,root,root,-)
-%doc AUTHORS COPYING COPYING.LIB README
-%{_kde4_bindir}/kthesaurus
-%{_kde4_bindir}/koconverter
-%{_kde4_libdir}/libkdeinit4_kthesaurus.so
-%{_kde4_libdir}/kde4/autocorrect.so
-%{_kde4_libdir}/kde4/changecase.so
-%{_kde4_libdir}/kde4/defaulttools.so
-%{_kde4_libdir}/kde4/kodocinfopropspage.*
-%{_kde4_libdir}/kde4/kofficescan.*
-%{_kde4_libdir}/kde4/kofficethumbnail.*
-%{_kde4_libdir}/kde4/libkounavailpart.*
-%{_kde4_libdir}/kde4/clipartthumbnail.*
-%{_kde4_libdir}/kde4/thesaurustool.so
-%{_kde4_libdir}/kde4/koffice_graya_u16_plugin.so
-%{_kde4_libdir}/kde4/kofficegrayau8plugin.so
-%{_kde4_libdir}/kde4/kofficedockers.so
-%{_kde4_libdir}/kde4/kofficesimpletextedit.so
-%{_kde4_libdir}/kde4/spellcheck.so
-%{_kde4_libdir}/kde4/textvariables.so
-%{_kde4_appsdir}/koffice/
-%{_kde4_docdir}/HTML/en/koffice/
-%{_kde4_docdir}/HTML/en/koshell/
-%{_kde4_docdir}/HTML/en/thesaurus/
-%{_kde4_datadir}/applications/kde4/KThesaurus.desktop
-%{_kde4_datadir}/icons/hicolor/*/*/*
-%{_kde4_datadir}/icons/oxygen/*/*/*
-%{_kde4_datadir}/kde4/services/autocorrect.desktop
-%{_kde4_datadir}/kde4/services/changecase.desktop
-%{_kde4_datadir}/kde4/services/clipartthumbnail.desktop
-%{_kde4_datadir}/kde4/services/defaulttools.desktop
-%{_kde4_datadir}/kde4/services/kodocinfopropspage.desktop
-%{_kde4_datadir}/kde4/services/kofficethumbnail.desktop
-%{_kde4_datadir}/kde4/services/koffice_graya_u16_plugin.desktop
-%{_kde4_datadir}/kde4/services/kofficegrayaplugin.desktop
-%{_kde4_datadir}/kde4/services/kofficedockers.desktop
-%{_kde4_datadir}/kde4/services/kounavail.desktop
-%{_kde4_datadir}/kde4/services/thesaurustool.desktop
-%{_kde4_datadir}/kde4/services/kofficesimpletextedit.desktop
-%{_kde4_datadir}/kde4/services/spellcheck.desktop
-%{_kde4_datadir}/kde4/services/textvariables.desktop
-%{_kde4_datadir}/kde4/servicetypes/kochart.desktop
-%{_kde4_datadir}/kde4/servicetypes/kofficedocker.desktop
-%{_kde4_datadir}/kde4/servicetypes/kofficepart.desktop
-%{_kde4_datadir}/kde4/servicetypes/koplugin.desktop
-%{_kde4_datadir}/kde4/servicetypes/inlinetextobject.desktop
-%{_kde4_datadir}/kde4/servicetypes/kwmailmerge.desktop
-%{_kde4_datadir}/kde4/servicetypes/texteditingplugin.desktop
-%{_kde4_datadir}/kde4/servicetypes/textvariableplugin.desktop
-%{_kde4_datadir}/kde4/servicetypes/widgetfactory.desktop
-%{_kde4_datadir}/applications/kde4/*koffice.desktop
-%{_kde4_datadir}/kde4/services/*shape.desktop
-%{_kde4_appsdir}/formulashape/
-%{_kde4_appsdir}/musicshape/
-%dir %{_datadir}/color/
-%dir %{_datadir}/color/icc/
-%{_datadir}/color/icc/pigment/
-%{_kde4_datadir}/kde4/servicetypes/pigment*.desktop
-%{_kde4_libdir}/kde4/pathshapes.so
-%{_kde4_datadir}/kde4/services/pathshapes.desktop
+%doc AUTHORS COPYING README
+%{_bindir}/koshell
+%{_bindir}/kthesaurus
+%{_bindir}/koconverter
+%{_libdir}/libkdeinit_koshell.so
+%{_libdir}/libkdeinit_kthesaurus.so
+%{_libdir}/kde3/kfile_koffice.*
+%{_libdir}/kde3/kfile_ooo.*
+%{_libdir}/kde3/kfile_abiword.*
+%{_libdir}/kde3/kfile_gnumeric.*
+%{_libdir}/kde3/kodocinfopropspage.*
+%{_libdir}/kde3/kofficescan.*
+%{_libdir}/kde3/kofficethumbnail.*
+%{_libdir}/kde3/koshell.*
+%{_libdir}/kde3/kthesaurus.*
+%{_libdir}/kde3/kwmailmerge_classic.*
+%{_libdir}/kde3/kwmailmerge_kabc.*
+%{_libdir}/kde3/kwmailmerge_qtsqldb_power.*
+%{_libdir}/kde3/kwmailmerge_qtsqldb.*
+%{_libdir}/kde3/libkounavailpart.*
+%{_libdir}/kde3/libkprkword.*
+%{_libdir}/kde3/libthesaurustool.*
+%{_libdir}/kde3/clipartthumbnail.*
+%{_datadir}/apps/koffice/
+%{_datadir}/apps/konqueror/servicemenus/*
+%{_datadir}/apps/koshell/
+%{_datadir}/apps/thesaurus/
+%{_datadir}/config.kcfg/koshell.kcfg
+%{_datadir}/doc/HTML/en/koffice/
+%{_datadir}/doc/HTML/en/koshell/
+%{_datadir}/doc/HTML/en/thesaurus/
+%{_datadir}/icons/crystalsvg/*/*/*
+%{_datadir}/icons/hicolor/*/*/*
+%{_datadir}/icons/locolor/*/*/*
+%{_datadir}/services/clipartthumbnail.desktop
+%{_datadir}/services/kfile*.desktop
+%{_datadir}/services/kwmailmerge*.desktop
+%{_datadir}/services/kodocinfopropspage.desktop
+%{_datadir}/services/kofficethumbnail.desktop
+%{_datadir}/services/kounavail.desktop
+%{_datadir}/services/kprkword.desktop
+%{_datadir}/services/thesaurustool.desktop
+%{_datadir}/servicetypes/kochart.desktop
+%{_datadir}/servicetypes/kofficepart.desktop
+%{_datadir}/servicetypes/koplugin.desktop
+%{_datadir}/servicetypes/kwmailmerge.desktop
+%{_datadir}/servicetypes/widgetfactory.desktop
+%{_datadir}/applications/kde/*koffice.desktop
+%{_datadir}/applications/kde/*KThesaurus.desktop
+%{_datadir}/applications/kde/*koshell.desktop
+%{_datadir}/apps/kofficewidgets/
+%{_datadir}/apps/kross/
+%{_libdir}/kde3/krosspython.*
+%{?ruby:%{_libdir}/kde3/krossruby.*}
%files libs
%defattr(-,root,root,-)
-%{_kde4_datadir}/kde4/servicetypes/flake*.desktop
-%{_kde4_libdir}/libflake.so.*
-%{_kde4_libdir}/kde4/*shape.so
-%exclude %{_kde4_libdir}/kde4/formulashape.*
-%exclude %{_kde4_libdir}/kde4/kritashape.*
-%{_kde4_libdir}/libchartshapelib.so.*
-%{_kde4_libdir}/libkdchart.so.*
-%{_kde4_libdir}/libkochart.so.*
-%{_kde4_libdir}/libkotext.so.*
-%{_kde4_libdir}/libkowmf.so.*
-%{_kde4_libdir}/libkokross.so.*
-%{_kde4_libdir}/libkoguiutils.so.*
-%{_kde4_libdir}/libkomain.so.*
-%{_kde4_libdir}/libkoodf.so.*
-%{_kde4_libdir}/libkopageapp.so.*
-%{_kde4_libdir}/libkoproperty2.so.*
-%{_kde4_libdir}/libkoresources.so.*
-%{_kde4_libdir}/libkoffice_graya_u16.so.*
-%{_kde4_libdir}/libkofficegrayau8colorspace.so.*
-%{_kde4_libdir}/libkspreadcommon.so.*
-%{_kde4_libdir}/libkstore.so.*
-%{_kde4_libdir}/libkwmf.so.*
-%{_kde4_libdir}/libkformulalib.so.*
-%{_kde4_libdir}/libkoproperty.so.*
-%{_kde4_libdir}/libpigmentcms.so.*
+%doc COPYING.LIB
+#_libdir/libk*common.so.*
+%{_libdir}/libkarboncommon.so.*
+%{_libdir}/libkiviocommon.so.*
+%{_libdir}/libkspreadcommon.so.*
+%{_libdir}/libkdchart.so.*
+%{_libdir}/libkochart.so.*
+%{_libdir}/libkofficecore.so.*
+%{_libdir}/libkofficeui.so.*
+%{_libdir}/libkotext.so.*
+%{_libdir}/libkowmf.so.*
+%{_libdir}/libkopainter.so.*
+%{_libdir}/libkstore.so.*
+%{_libdir}/libkwmailmerge_interface.so.*
+%{_libdir}/libkwmf.so.*
+%{_libdir}/libkformulalib.so.*
+%{_libdir}/libkopalette.so.*
+%{_libdir}/libkoproperty.so.*
+%{_libdir}/libkrossapi.so.*
+%{_libdir}/libkrossmain.so.*
%files devel
%defattr(-,root,root,-)
+%lang(en) %{_docdir}/HTML/en/koffice-apidocs/
%{_includedir}/*
# FIXME: include only shlib symlinks we know/want to export
-%{_kde4_libdir}/lib*.so
-%exclude %{_kde4_libdir}/libkdeinit4_*.so
-%{_kde4_appsdir}/cmake/modules/FindKOfficeLibs.cmake
+%{_libdir}/lib*.so
+%exclude %{_libdir}/libkdeinit_*.so
+%exclude %{_libdir}/libkudesignercore.so
+
+%files kword
+%defattr(-,root,root,-)
+%lang(en) %{_docdir}/HTML/en/kword/
+%{_bindir}/kword
+%{_libdir}/libkdeinit_kword.so
+%{_libdir}/libkwordprivate.so.*
+%{_libdir}/kde3/libkwordpart.*
+%{_libdir}/kde3/kword.*
+%{_datadir}/apps/kword/
+%{_datadir}/services/kword*.desktop
+%{_datadir}/services/kwserial*.desktop
+%{_datadir}/templates/TextDocument.desktop
+%{_datadir}/templates/.source/TextDocument.kwt
+%{_datadir}/applications/kde/*kword.desktop
%files kspread
%defattr(-,root,root,-)
-%{_kde4_bindir}/kspread
-%{_kde4_libdir}/libkdeinit4_kspread.so
-%{_kde4_libdir}/kde4/krossmodulekspread.so
-%{_kde4_libdir}/kde4/kspread*.so
-%{_kde4_libdir}/kde4/libkspreadpart.*
-%{_kde4_libdir}/kde4/libcsvexport.*
-%{_kde4_libdir}/kde4/libcsvimport.*
-%{_kde4_libdir}/kde4/libgnumericexport.*
-%{_kde4_libdir}/kde4/libgnumericimport.*
-%{_kde4_libdir}/kde4/libkspreadhtmlexport.*
-%{_kde4_libdir}/kde4/libkspreadsolver.so
-%{_kde4_libdir}/kde4/libopencalcexport.*
-%{_kde4_libdir}/kde4/libopencalcimport.*
-%{_kde4_libdir}/kde4/libpowerpointimport.*
-%{_kde4_libdir}/kde4/libqproimport.*
-%{_kde4_appsdir}/kspread/
-%{_kde4_docdir}/HTML/en/kspread/
-%{_kde4_datadir}/config.kcfg/kspread.kcfg
-%{_kde4_datadir}/kde4/services/kspread*.desktop
-%{_kde4_datadir}/templates/SpreadSheet.desktop
-%{_kde4_datadir}/templates/.source/SpreadSheet.kst
-%{_kde4_datadir}/applications/kde4/*kspread.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kspread_konqi.desktop
-%{_kde4_datadir}/kde4/services/krossmodulekspread.desktop
-%{_kde4_datadir}/kde4/servicetypes/kspread_plugin.desktop
+%lang(en) %{_docdir}/HTML/en/kspread/
+%{_bindir}/kspread
+%{_libdir}/libkdeinit_kspread.so
+%{_libdir}/kde3/kspread.*
+%{_libdir}/kde3/libkspreadpart.*
+%{_libdir}/kde3/kwmailmerge_kspread.*
+%{_libdir}/kde3/libcsvexport.*
+%{_libdir}/kde3/libcsvimport.*
+%{_libdir}/kde3/libgnumericexport.*
+%{_libdir}/kde3/libgnumericimport.*
+%{_libdir}/kde3/libkspreadhtmlexport.*
+%{_libdir}/kde3/libkspreadinsertcalendar.*
+%{_libdir}/kde3/libopencalcexport.*
+%{_libdir}/kde3/libopencalcimport.*
+%{_libdir}/kde3/libqproimport.*
+%{_libdir}/kde3/kspreadscripting.*
+%{_libdir}/kde3/krosskspreadcore.*
+%{_datadir}/apps/kspread/
+%{_datadir}/services/kspread*.desktop
+%{_datadir}/templates/SpreadSheet.desktop
+%{_datadir}/templates/.source/SpreadSheet.kst
+%{_datadir}/applications/kde/*kspread.desktop
%files kpresenter
%defattr(-,root,root,-)
-%{_kde4_bindir}/kpresenter
-%{_kde4_libdir}/libkdeinit4_kpresenter.so
-%{_kde4_libdir}/libkpresenterprivate.so.*
-%{_kde4_libdir}/kde4/*kpresenter*.*
-%{_kde4_libdir}/kde4/kpr_*.*
-%{_kde4_libdir}/kde4/libFilterkpr2odf.so
-%{_kde4_appsdir}/kpresenter/
-%{_kde4_docdir}/HTML/en/kpresenter/
-%{_kde4_datadir}/kde4/services/kpr*.desktop
-%{_kde4_datadir}/kde4/servicetypes/kpr*.desktop
-%{_kde4_datadir}/kde4/servicetypes/presentationeventaction.desktop
-%{_kde4_datadir}/kde4/servicetypes/scripteventaction.desktop
-%{_kde4_datadir}/templates/Presentation.desktop
-%{_kde4_datadir}/templates/.source/Presentation.kpt
-%{_kde4_datadir}/applications/kde4/*kpresenter.desktop
-%{_kde4_datadir}/kde4/services/Filterkpr2odf.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kpresenter_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/kpresenter/
+%{_bindir}/kpresenter
+%{_bindir}/kprconverter.pl
+%{_libdir}/libkdeinit_kpresenter.so
+%{_libdir}/libkpresenterimageexport.so.*
+%{_libdir}/libkpresenterprivate.so.*
+%{_libdir}/kde3/*kpresenter*.*
+%{_datadir}/apps/kpresenter/
+%{_datadir}/services/kpresenter*.desktop
+%{_datadir}/templates/Presentation.desktop
+%{_datadir}/templates/.source/Presentation.kpt
+%{_datadir}/applications/kde/*kpresenter.desktop
%files karbon
%defattr(-,root,root,-)
-%{_kde4_bindir}/karbon
-%{_kde4_libdir}/libkdeinit4_karbon.so
-%{_kde4_libdir}/libkarboncommon.so.*
-%{_kde4_libdir}/libkarbonui.so.*
-%{_kde4_libdir}/kde4/*karbon*.*
-%{_kde4_libdir}/kde4/libwmfexport.*
-%{_kde4_libdir}/kde4/libwmfimport.*
-%{_kde4_appsdir}/karbon/
-%{_kde4_datadir}/kde4/services/karbon*
-%{_kde4_datadir}/kde4/servicetypes/karbon_module.desktop
-%{_kde4_datadir}/templates/Illustration.desktop
-%{_kde4_datadir}/templates/.source/Illustration.karbon
-%{_kde4_datadir}/applications/kde4/*karbon.desktop
-%{_kde4_docdir}/HTML/en/karbon/
-%{_kde4_datadir}/kde4/services/ServiceMenus/karbon_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/karbon/
+%{_bindir}/karbon
+%{_libdir}/libkdeinit_karbon.so
+%{_libdir}/kde3/*karbon*.*
+%{_libdir}/kde3/libwmfexport.*
+%{_libdir}/kde3/libwmfimport.*
+%{_datadir}/apps/karbon/
+%{_datadir}/services/karbon*
+%{_datadir}/servicetypes/karbon_module.desktop
+%{_datadir}/templates/Illustration.desktop
+%{_datadir}/templates/.source/Illustration.karbon
+%{_datadir}/applications/kde/*karbon.desktop
%files krita
%defattr(-,root,root,-)
-%{_kde4_bindir}/krita
-%{_kde4_libdir}/libkdeinit4_krita.so
-%{_kde4_libdir}/libkrita*.so.*
-%{_kde4_libdir}/libkisexiv2.so.*
-%{_kde4_libdir}/kde4/*krita*.*
-%{_kde4_libdir}/libkrossmodulekrita.so.*
-%{_kde4_appsdir}/krita/
-%{_kde4_datadir}/kde4/services/krita*.desktop
-%{_kde4_datadir}/kde4/servicetypes/krita*.desktop
-%{_kde4_datadir}/applications/kde4/*krita*.desktop
-# FIXME: add scriptlet
-%{_datadir}/mime/packages/krita_ora.xml
-%{_kde4_appsdir}/kritaplugins/
-%{_kde4_docdir}/HTML/en/krita/
-%{_datadir}/color/icc/krita/
-%{_kde4_datadir}/kde4/services/ServiceMenus/krita_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/krita/
+%{_bindir}/krita
+%{_libdir}/libkdeinit_krita.so
+%{_libdir}/libkrita*.so.*
+%{_libdir}/kde3/*krita*.*
+%{_datadir}/apps/krita/
+%{_datadir}/services/krita*.desktop
+%{_datadir}/servicetypes/krita*.desktop
+%{_datadir}/applications/kde/*krita*.desktop
+%{_datadir}/applnk/.hidden/*krita*.desktop
+%{_datadir}/apps/kritaplugins/
%files kugar
%defattr(-,root,root,-)
-%{_kde4_docdir}/HTML/en/kugar/
+%lang(en) %{_docdir}/HTML/en/kugar/
+%{_bindir}/kugar
+%{_bindir}/kudesigner
+%{_libdir}/libkdeinit_kugar.so
+%{_libdir}/libkdeinit_kudesigner.so
+%{_libdir}/libkugarlib.so.*
+%{_libdir}/libkudesignercore.so
+%{_libdir}/kde3/kudesigner.*
+%{_libdir}/kde3/kugar.*
+%{_libdir}/kde3/libkudesignerpart.*
+%{_libdir}/kde3/libkugarpart.*
+%{_datadir}/apps/kudesigner/
+%{_datadir}/apps/kugar/
+%{_datadir}/services/kugar*.desktop
+%{_datadir}/applications/kde/*kugar.desktop
+%{_datadir}/applications/kde/*kudesigner.desktop
%files kexi
%defattr(-,root,root,-)
-%{_kde4_bindir}/kexi*
-%{_kde4_bindir}/ksqlite*
-%{_kde4_libdir}/libkexi*.so.*
-%{_kde4_libdir}/libkformdesigner.so.*
-%{_kde4_libdir}/kde4/kformdesigner_*.*
-%{_kde4_libdir}/kde4/kexidb_sqlite3driver.*
-%{_kde4_libdir}/kde4/kexihandler_*.*
-%{_kde4_libdir}/kde4/krossmodulekexidb.so
-%{_kde4_libdir}/kde4/pgzkexireportpart2.so
-%{_kde4_datadir}/config/kexirc
-%{_kde4_datadir}/kde4/servicetypes/kexi*.desktop
-%{_kde4_datadir}/kde4/services/kexi
-%{_kde4_appsdir}/kexi/
-%{_kde4_datadir}/kde4/services/kformdesigner/*
-%{_kde4_docdir}/HTML/en/kexi/
-%{_kde4_datadir}/applications/kde4/*kexi.desktop
-%{_kde4_datadir}/kde4/services/kexidb_sqlite*driver.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kexi_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/kexi/
+%{_bindir}/kexi*
+%{_bindir}/ksqlite*
+%{_bindir}/krossrunner
+%{_libdir}/libkdeinit_kexi.so
+%{_libdir}/libkexi*.so.*
+%{_libdir}/libkformdesigner.so.*
+%{_libdir}/kde3/kformdesigner_*.*
+%{_libdir}/kde3/kexidb_sqlite2driver.*
+%{_libdir}/kde3/kexidb_sqlite3driver.*
+%{_libdir}/kde3/kexihandler_*.*
+%{_libdir}/kde3/kexi.*
+%{_libdir}/kde3/krosskexiapp.*
+%{_libdir}/kde3/krosskexidb.*
+# moved here to workaround bug #394101, alternative is to move libkexi(db|dbparser|utils) to -libs)
+%{_libdir}/kde3/libkspreadkexiimport.*
+%{_datadir}/config/kexirc
+%{_datadir}/config/magic/kexi.magic
+%{_datadir}/mimelnk/application/*
+%{_datadir}/servicetypes/kexi*.desktop
+%{_datadir}/services/kexi/
+%{_datadir}/apps/kexi/
+%{_datadir}/services/kformdesigner/*
+%{_datadir}/applications/kde/*kexi.desktop
+%{_datadir}/services/kexidb_sqlite*driver.desktop
%files kexi-driver-mysql
%defattr(-,root,root,-)
-%{_kde4_libdir}/kde4/kexidb_mysqldriver.*
-%{_kde4_libdir}/kde4/keximigrate_mysql.*
-%{_kde4_datadir}/kde4/services/keximigrate_mysql.desktop
-%{_kde4_datadir}/kde4/services/kexidb_mysqldriver.desktop
+%{_libdir}/kde3/kexidb_mysqldriver.*
+%{_libdir}/kde3/keximigrate_mysql.*
+%{_datadir}/services/keximigrate_mysql.desktop
+%{_datadir}/services/kexidb_mysqldriver.desktop
%files kexi-driver-pgsql
%defattr(-,root,root,-)
-%{_kde4_libdir}/kde4/kexidb_pqxxsqldriver.*
-%{_kde4_libdir}/kde4/keximigrate_pqxx.*
-%{_kde4_datadir}/kde4/services/kexidb_pqxxsqldriver.desktop
-%{_kde4_datadir}/kde4/services/keximigrate_pqxx.desktop
+%{_libdir}/kde3/kexidb_pqxxsqldriver.*
+%{_libdir}/kde3/keximigrate_pqxx.*
+%{_datadir}/services/kexidb_pqxxsqldriver.desktop
+%{_datadir}/services/keximigrate_pqxx.desktop
%files kchart
%defattr(-,root,root,-)
-%{_kde4_bindir}/kchart
-%{_kde4_libdir}/libkchartcommon.so.*
-%{_kde4_libdir}/libkdeinit4_kchart.so
-%{_kde4_libdir}/kde4/*kchart*.*
-%{_kde4_appsdir}/kchart/
-%{_kde4_datadir}/config.kcfg/kchart.kcfg
-%{_kde4_datadir}/kde4/services/kchart*.desktop
-%{_kde4_docdir}/HTML/en/kchart/
-%{_kde4_datadir}/applications/kde4/*kchart.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kchart_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/kchart/
+%{_bindir}/kchart
+%{_libdir}/libkchart*.so.*
+%{_libdir}/libkdeinit_kchart.so
+%{_libdir}/kde3/*kchart*.*
+%{_datadir}/apps/kchart/
+%{_datadir}/services/kchart*.desktop
+%{_datadir}/applications/kde/*kchart.desktop
%files kformula
%defattr(-,root,root,-)
-%{_kde4_bindir}/kformula
-%{_kde4_libdir}/libkdeinit4_kformula.so
-%{_kde4_libdir}/libkformulaprivate.so.*
-%{_kde4_libdir}/kde4/*kformula*.*
-%{_kde4_libdir}/kde4/formulashape.*
-%{_kde4_appsdir}/kformula/
-%{_kde4_docdir}/HTML/en/kformula/
-%{_kde4_datadir}/kde4/services/kformula*.desktop
-%{_kde4_datadir}/applications/kde4/*kformula.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kformula_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/kformula/
+%{_bindir}/kformula
+%{_libdir}/libkdeinit_kformula.so
+%{_libdir}/kde3/*kformula*.*
+%{_datadir}/apps/kformula/
+%{_datadir}/services/kformula*.desktop
+%{_datadir}/applications/kde/*kformula.desktop
%files kivio
%defattr(-,root,root,-)
-%{_kde4_bindir}/kivio
-%{_kde4_libdir}/libkdeinit4_kivio.so
-%{_kde4_libdir}/libkivioprivate.so.*
-%{_kde4_libdir}/kde4/*kivio*.*
-%{_kde4_appsdir}/kivio/
-%{_kde4_docdir}/HTML/en/kivio/
-%{_kde4_datadir}/kde4/services/kivio*.desktop
-%{_kde4_datadir}/applications/kde4/kivio.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kivio_konqi.desktop
+%lang(en) %{_docdir}/HTML/en/kivio/
+%{_bindir}/kivio
+%{_libdir}/libkdeinit_kivio.so
+%{_libdir}/kde3/*kivio*.*
+%{_libdir}/kde3/straight_connector.*
+%{_datadir}/apps/kivio/
+%{_datadir}/config.kcfg/kivio.kcfg
+%{_datadir}/services/kivio*.desktop
+%{_datadir}/applications/kde/*kivio.desktop
%files filters
%defattr(-,root,root,-)
-%{_kde4_libdir}/libkwordexportfilters.so.*
-%{_kde4_libdir}/kde4/libabiwordexport.*
-%{_kde4_libdir}/kde4/libabiwordimport.*
-%{_kde4_libdir}/kde4/libamiproexport.*
-%{_kde4_libdir}/kde4/libamiproimport.*
-%{_kde4_libdir}/kde4/libapplixspreadimport.*
-%{_kde4_libdir}/kde4/libapplixwordimport.*
-%{_kde4_libdir}/kde4/libdbaseimport.*
-%{_kde4_libdir}/kde4/libdocbookexport.*
-%{_kde4_libdir}/kde4/libexcelimport.*
-%{_kde4_libdir}/kde4/libgenerickofilter.*
-%{_kde4_libdir}/kde4/libhtmlexport.*
-%{_kde4_libdir}/kde4/libhtmlimport.*
-%{_kde4_libdir}/kde4/libkspreadlatexexport.*
-%{_kde4_libdir}/kde4/libkwordkword1dot3import.*
-%{_kde4_libdir}/kde4/libmswriteexport.*
-%{_kde4_libdir}/kde4/libmswriteimport.*
-%{_kde4_libdir}/kde4/liboowriterexport.*
-%{_kde4_libdir}/kde4/liboowriterimport.*
-%{_kde4_libdir}/kde4/libpalmdocexport.*
-%{_kde4_libdir}/kde4/libpalmdocimport.*
-%{_kde4_libdir}/kde4/librtfexport.*
-%{_kde4_libdir}/kde4/librtfimport.*
-%{_kde4_libdir}/kde4/libwmlexport.*
-%{_kde4_libdir}/kde4/libwmlimport.*
-%{_kde4_libdir}/kde4/libwpexport.*
-%{_kde4_libdir}/kde4/libwpimport.*
-%{_kde4_libdir}/kde4/libmswordimport.*
-%{_kde4_libdir}/kde4/libmswordodf_import.*
-%{_kde4_libdir}/kde4/libxsltimport.*
-%{_kde4_libdir}/kde4/libxsltexport.*
-%{_kde4_libdir}/kde4/libhancomwordimport.*
-%{_kde4_appsdir}/xsltfilter/
-%{_kde4_datadir}/kde4/services/generic_filter.desktop
-%{_kde4_datadir}/kde4/services/xslt*.desktop
-%{_kde4_datadir}/kde4/servicetypes/kofilter*.desktop
+%{_libdir}/libkwordexportfilters.so.*
+%{_libdir}/kde3/libabiwordexport.*
+%{_libdir}/kde3/libabiwordimport.*
+%{_libdir}/kde3/libamiproexport.*
+%{_libdir}/kde3/libamiproimport.*
+%{_libdir}/kde3/libapplixspreadimport.*
+%{_libdir}/kde3/libapplixwordimport.*
+%{_libdir}/kde3/libasciiexport.*
+%{_libdir}/kde3/libasciiimport.*
+%{_libdir}/kde3/libdbaseimport.*
+%{_libdir}/kde3/libdocbookexport.*
+%{_libdir}/kde3/libexcelimport.*
+%{_libdir}/kde3/libgenerickofilter.*
+%{_libdir}/kde3/libhtmlexport.*
+%{_libdir}/kde3/libhtmlimport.*
+%{_libdir}/kde3/libkarbonepsimport.*
+%{_libdir}/kde3/libkfolatexexport.*
+%{_libdir}/kde3/libkfomathmlexport.*
+%{_libdir}/kde3/libkfomathmlimport.*
+%{_libdir}/kde3/libkfopngexport.*
+%{_libdir}/kde3/libkspreadlatexexport.*
+%{_libdir}/kde3/libkugarnopimport.*
+%{_libdir}/kde3/libkwordkword1dot3import.*
+%{_libdir}/kde3/libkwordlatexexport.*
+%{_libdir}/kde3/libmswriteexport.*
+%{_libdir}/kde3/libmswriteimport.*
+%{_libdir}/kde3/libooimpressexport.*
+%{_libdir}/kde3/libooimpressimport.*
+%{_libdir}/kde3/liboowriterexport.*
+%{_libdir}/kde3/liboowriterimport.*
+%{_libdir}/kde3/libpalmdocexport.*
+%{_libdir}/kde3/libpalmdocimport.*
+%{_libdir}/kde3/libpdfimport.*
+%{_libdir}/kde3/librtfexport.*
+%{_libdir}/kde3/librtfimport.*
+%{_libdir}/kde3/libwmlexport.*
+%{_libdir}/kde3/libwmlimport.*
+%{_libdir}/kde3/libwpexport.*
+%{_libdir}/kde3/libwpimport.*
+%{_libdir}/kde3/libmswordimport.*
+%{_libdir}/kde3/libxsltimport.*
+%{_libdir}/kde3/libxsltexport.*
+%{_libdir}/kde3/libhancomwordimport.*
+%{_libdir}/kde3/libkfosvgexport.*
+%{_libdir}/kde3/liboodrawimport.*
+%{_libdir}/kde3/libolefilter.*
+%{_datadir}/apps/xsltfilter/
+%{_datadir}/services/generic_filter.desktop
+%{_datadir}/services/ole_powerpoint97_import.desktop
+%{_datadir}/services/xslt*.desktop
+%{_datadir}/servicetypes/kofilter*.desktop
%files kplato
%defattr(-,root,root,-)
-%{_kde4_bindir}/kplato
-%{_kde4_bindir}/kplatowork
-%{_kde4_configdir}/kplatorc
-%{_kde4_libdir}/libkdeinit4_kplato.so
-%{_kde4_libdir}/libkdeinit4_kplatowork.so
-%{_kde4_libdir}/kde4/libkplatopart.*
-%{_kde4_libdir}/kde4/libkplatoworkpart.so
-%{_kde4_libdir}/libkplato*.so.*
-%{_kde4_libdir}/kde4/krossmodulekplato.so
-%{_kde4_datadir}/kde4/services/krossmodulekplato.desktop
-%{_kde4_appsdir}/kplato/
-%{_kde4_appsdir}/kplatowork
-%{_kde4_docdir}/HTML/en/kplato/
-%{_kde4_datadir}/kde4/services/kplato*.desktop
-%{_kde4_datadir}/applications/kde4/kplato.desktop
-%{_kde4_datadir}/applications/kde4/kplatowork.desktop
-
-%files kword
-%defattr(-,root,root,-)
-%{_kde4_bindir}/kword
-%{_kde4_libdir}/libkdeinit4_kword.so
-%{_kde4_libdir}/libkwordprivate.so.*
-%{_kde4_libdir}/kde4/krossmodulekword.so
-%{_kde4_libdir}/kde4/libkwordpart.*
-%{_kde4_appsdir}/kword/
-%{_kde4_docdir}/HTML/en/kword/
-%{_kde4_datadir}/kde4/services/*kword*.desktop
-%{_kde4_datadir}/templates/TextDocument.desktop
-%{_kde4_datadir}/templates/.source/TextDocument.kwt
-%{_kde4_datadir}/applications/kde4/*kword.desktop
-%{_kde4_datadir}/kde4/services/ServiceMenus/kword_konqi.desktop
-
-%changelog
-* Wed Aug 20 2008 Rex Dieter <rdieter at fedoraproject.org> 1.9.95.10-1
-- koffice-1.9.95.10
-
-* Thu Jul 17 2008 Rex Dieter <rdieter at fedoraproject.org> 1.9.95.9-1
-- koffice-1.9.95.9
-- fix pkg interdependencies, multilib issues
-
-* Fri Jun 27 2008 Rex Dieter <rdieter at fedoraproject.org> 1.9.95.8.2
-- respin (eviv2)
-
-* Tue May 27 2008 Rex Dieter <rdieter at fedoraproject.org> 1.9.95.8-1
-- koffice-1.9.95.8
+%lang(en) %{_docdir}/HTML/en/kplato/
+%{_bindir}/kplato
+%{_libdir}/libkdeinit_kplato.so
+%{_libdir}/kde3/kplato.*
+%{_libdir}/kde3/libkplatopart.*
+%{_datadir}/apps/kplato/
+%{_datadir}/services/kplatopart.desktop
+%{_datadir}/applications/kde/*kplato.desktop
+
+
+%changelog
+* Thu Sep 18 2008 Rex Dieter <rdieter at fedoraproject.org> 1:1.6.3-16
+- revert koffice2->koffice1, introduce Epoch
+- fix pkg interdependencies (#394101), multilib issues
+- -krita: drop Requires: %%name-filters (#394101)
+- cleanup scriptlets
* Fri Feb 22 2008 Rex Dieter <rdieter at fedoraproject.org> 1.6.3-15
- upstream gcc43 patch (#433994)
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/koffice/devel/sources,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- sources 12 Sep 2008 16:55:03 -0000 1.19
+++ sources 18 Sep 2008 19:00:48 -0000 1.20
@@ -1 +1,2 @@
-06d7b0feedb0801dce098f26fe7f3e7e koffice-1.9.95.10.tar.bz2
+03382edf62db9913b57ad8760c7d5f52 koshell.png
+386d388094734f9759977c3267098e30 koffice-1.6.3.tar.bz2
- Previous message (by thread): rpms/bzrtools/devel .cvsignore, 1.21, 1.22 bzrtools.spec, 1.31, 1.32 sources, 1.21, 1.22
- Next message (by thread): rpms/kernel/devel drm-fix-pll-computation-precedence.patch, NONE, 1.1 kernel.spec, 1.955, 1.956
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list