Cleanup spec, Use %%license, Drop (now unneeded) perl requirements (rhbz#579390), Drop ChangeLog as details are covered in NEWS
This commit is contained in:
parent
52d4bbfff9
commit
ea1bf04ac4
@ -1,112 +0,0 @@
|
||||
From 127777fe3298bcdfe45d74b36f77b8238ebb6937 Mon Sep 17 00:00:00 2001
|
||||
From: David Tardon <dtardon@redhat.com>
|
||||
Date: Tue, 27 May 2014 16:47:39 +0200
|
||||
Subject: [PATCH] switch to librevenge-based import libs
|
||||
|
||||
---
|
||||
configure.ac | 19 ++---------------
|
||||
src/extension/internal/wpg-input.cpp | 41 ++++++++++++------------------------
|
||||
2 files changed, 15 insertions(+), 45 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index fcff879..4bce58c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -676,23 +676,8 @@ dnl ******************************
|
||||
|
||||
with_libwpg=no
|
||||
|
||||
-PKG_CHECK_MODULES(LIBWPG01, libwpg-0.1 libwpg-stream-0.1, with_libwpg01=yes, with_libwpg01=no)
|
||||
-if test "x$with_libwpg01" = "xyes"; then
|
||||
- AC_DEFINE(WITH_LIBWPG01,1,[Build in libwpg 0.1.x])
|
||||
- with_libwpg=yes
|
||||
- AC_SUBST(LIBWPG_LIBS, $LIBWPG01_LIBS)
|
||||
- AC_SUBST(LIBWPG_CFLAGS, $LIBWPG01_CFLAGS)
|
||||
-fi
|
||||
-AM_CONDITIONAL(WITH_LIBWPG01, test "x$with_libwpg01" = "xyes")
|
||||
-
|
||||
-PKG_CHECK_MODULES(LIBWPG02, libwpg-0.2 libwpd-0.9 libwpd-stream-0.9, with_libwpg02=yes, with_libwpg02=no)
|
||||
-if test "x$with_libwpg02" = "xyes"; then
|
||||
- AC_DEFINE(WITH_LIBWPG02,1,[Build in libwpg 0.2.x])
|
||||
- with_libwpg=yes
|
||||
- AC_SUBST(LIBWPG_LIBS, $LIBWPG02_LIBS)
|
||||
- AC_SUBST(LIBWPG_CFLAGS, $LIBWPG02_CFLAGS)
|
||||
-fi
|
||||
-AM_CONDITIONAL(WITH_LIBWPG02, test "x$with_libwpg02" = "xyes")
|
||||
+PKG_CHECK_MODULES(LIBWPG, libwpg-0.3 librevenge-0.0 librevenge-stream-0.0, with_libwpg=yes, with_libwpg=no)
|
||||
+AM_CONDITIONAL(WITH_LIBWPG01, test "x$with_libwpg" = "xyes")
|
||||
|
||||
if test "x$with_libwpg" = "xyes"; then
|
||||
AC_DEFINE(WITH_LIBWPG,1,[Build in libwpg])
|
||||
diff --git a/src/extension/internal/wpg-input.cpp b/src/extension/internal/wpg-input.cpp
|
||||
index 5c5cb65..71c7b44 100644
|
||||
--- a/src/extension/internal/wpg-input.cpp
|
||||
+++ b/src/extension/internal/wpg-input.cpp
|
||||
@@ -48,17 +48,8 @@
|
||||
#include "extension/input.h"
|
||||
#include "document.h"
|
||||
|
||||
-// Take a guess and fallback to 0.1.x if no configure has run
|
||||
-#if !defined(WITH_LIBWPG01) && !defined(WITH_LIBWPG02)
|
||||
-#define WITH_LIBWPG01 1
|
||||
-#endif
|
||||
-
|
||||
#include "libwpg/libwpg.h"
|
||||
-#if WITH_LIBWPG01
|
||||
-#include "libwpg/WPGStreamImplementation.h"
|
||||
-#elif WITH_LIBWPG02
|
||||
-#include "libwpd-stream/libwpd-stream.h"
|
||||
-#endif
|
||||
+#include "librevenge-stream/librevenge-stream.h"
|
||||
|
||||
using namespace libwpg;
|
||||
|
||||
@@ -69,17 +60,9 @@ namespace Internal {
|
||||
|
||||
SPDocument *
|
||||
WpgInput::open(Inkscape::Extension::Input * mod, const gchar * uri) {
|
||||
-#if WITH_LIBWPG01
|
||||
- WPXInputStream* input = new libwpg::WPGFileStream(uri);
|
||||
-#elif WITH_LIBWPG02
|
||||
- WPXInputStream* input = new WPXFileStream(uri);
|
||||
-#endif
|
||||
- if (input->isOLEStream()) {
|
||||
-#if WITH_LIBWPG01
|
||||
- WPXInputStream* olestream = input->getDocumentOLEStream();
|
||||
-#elif WITH_LIBWPG02
|
||||
- WPXInputStream* olestream = input->getDocumentOLEStream("PerfectOffice_MAIN");
|
||||
-#endif
|
||||
+ librevenge::RVNGInputStream* input = new librevenge::RVNGFileStream(uri);
|
||||
+ if (input->isStructured()) {
|
||||
+ librevenge::RVNGInputStream* olestream = input->getSubStreamByName("PerfectOffice_MAIN");
|
||||
if (olestream) {
|
||||
delete input;
|
||||
input = olestream;
|
||||
@@ -94,15 +77,17 @@ WpgInput::open(Inkscape::Extension::Input * mod, const gchar * uri) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
-#if WITH_LIBWPG01
|
||||
- libwpg::WPGString output;
|
||||
-#elif WITH_LIBWPG02
|
||||
- WPXString output;
|
||||
-#endif
|
||||
- if (!libwpg::WPGraphics::generateSVG(input, output)) {
|
||||
+ librevenge::RVNGStringVector vec;
|
||||
+ librevenge::RVNGSVGDrawingGenerator generator(vec, "");
|
||||
+
|
||||
+ if (!libwpg::WPGraphics::parse(input, &generator) || vec.empty() || vec[0].empty())
|
||||
+ {
|
||||
delete input;
|
||||
return NULL;
|
||||
- }
|
||||
+ }
|
||||
+
|
||||
+ librevenge::RVNGString output("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n");
|
||||
+ output.append(vec[0]);
|
||||
|
||||
//printf("I've got a doc: \n%s", painter.document.c_str());
|
||||
|
||||
--
|
||||
1.9.3
|
||||
|
@ -1,22 +0,0 @@
|
||||
http://bazaar.launchpad.net/~inkscape.dev/inkscape/trunk/revision/10398
|
||||
|
||||
=== modified file 'src/graphlayout.cpp'
|
||||
--- src/graphlayout.cpp 2010-12-12 08:40:34 +0000
|
||||
+++ src/graphlayout.cpp 2011-07-02 12:08:37 +0000
|
||||
@@ -156,11 +156,12 @@
|
||||
++i)
|
||||
{
|
||||
SPItem *iu=*i;
|
||||
- map<string,unsigned>::iterator i=nodelookup.find(iu->getId());
|
||||
- if(i==nodelookup.end()) {
|
||||
+ map<string,unsigned>::iterator i_iter=nodelookup.find(iu->getId());
|
||||
+ map<string,unsigned>::iterator i_iter_end=nodelookup.end();
|
||||
+ if(i_iter==i_iter_end) {
|
||||
continue;
|
||||
}
|
||||
- unsigned u=i->second;
|
||||
+ unsigned u=i_iter->second;
|
||||
GSList *nlist=iu->avoidRef->getAttachedConnectors(Avoid::runningFrom);
|
||||
list<SPItem *> connectors;
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,31 +0,0 @@
|
||||
From: inkscape upstream
|
||||
Fix compilation against libpng-1.5
|
||||
|
||||
=== modified file 'src/extension/internal/pdfinput/svg-builder.cpp'
|
||||
--- src/extension/internal/pdfinput/svg-builder.cpp 2011-10-27 04:55:51 +0000
|
||||
+++ src/extension/internal/pdfinput/svg-builder.cpp 2011-10-29 20:34:00 +0000
|
||||
@@ -1481,7 +1481,7 @@
|
||||
return NULL;
|
||||
}
|
||||
// Set error handler
|
||||
- if (setjmp(png_ptr->jmpbuf)) {
|
||||
+ if (setjmp(png_jmpbuf(png_ptr))) {
|
||||
png_destroy_write_struct(&png_ptr, &info_ptr);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
=== modified file 'src/helper/png-write.cpp'
|
||||
--- src/helper/png-write.cpp 2011-08-07 10:53:12 +0000
|
||||
+++ src/helper/png-write.cpp 2011-10-29 20:34:00 +0000
|
||||
@@ -166,8 +166,8 @@
|
||||
/* Set error handling. REQUIRED if you aren't supplying your own
|
||||
* error hadnling functions in the png_create_write_struct() call.
|
||||
*/
|
||||
- if (setjmp(png_ptr->jmpbuf)) {
|
||||
- /* If we get here, we had a problem reading the file */
|
||||
+ if (setjmp(png_jmpbuf(png_ptr))) {
|
||||
+ // If we get here, we had a problem reading the file
|
||||
fclose(fp);
|
||||
png_destroy_write_struct(&png_ptr, &info_ptr);
|
||||
return false;
|
||||
|
@ -1,23 +0,0 @@
|
||||
From: inkscape upstream
|
||||
Fix compilation against libpng-1.5
|
||||
|
||||
=== modified file 'src/sp-image.cpp'
|
||||
--- src/sp-image.cpp 2011-02-21 07:59:34 +0000
|
||||
+++ src/sp-image.cpp 2011-02-21 08:57:28 +0000
|
||||
@@ -387,9 +387,13 @@
|
||||
|
||||
#if defined(PNG_iCCP_SUPPORTED)
|
||||
{
|
||||
- char* name = 0;
|
||||
+ png_charp name = 0;
|
||||
int compression_type = 0;
|
||||
- char* profile = 0;
|
||||
+#if (PNG_LIBPNG_VER < 10500)
|
||||
+ png_charp profile = 0;
|
||||
+#else
|
||||
+ png_bytep profile = 0;
|
||||
+#endif
|
||||
png_uint_32 proflen = 0;
|
||||
if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) {
|
||||
// g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type);
|
||||
|
@ -1,683 +0,0 @@
|
||||
diff -up inkscape-0.48.2/configure.ac.poppler_020 inkscape-0.48.2/configure.ac
|
||||
--- inkscape-0.48.2/configure.ac.poppler_020 2011-07-08 14:23:16.270623076 -0500
|
||||
+++ inkscape-0.48.2/configure.ac 2012-06-23 12:01:38.918678539 -0500
|
||||
@@ -623,6 +623,12 @@ if test "x$popplernew" = "xyes"; then
|
||||
AC_DEFINE(POPPLER_NEW_GFXFONT, 1, [Use GfxFont from Poppler >= 0.8.3])
|
||||
fi
|
||||
|
||||
+PKG_CHECK_MODULES(POPPLER_NEWERRORAPI, poppler >= 0.20.0, popplernewerror=yes, popplernewerror=no)
|
||||
+if test "x$popplernewerror" = "xyes"; then
|
||||
+ AC_DEFINE(POPPLER_NEW_ERRORAPI, 1, [Use new error API from Poppler >= 0.20.0])
|
||||
+fi
|
||||
+
|
||||
+
|
||||
ink_svd_CPPFLAGS=$CPPFLAGS
|
||||
ink_svd_LIBS=$LIBS
|
||||
CPPFLAGS="$CPPFLAGS $POPPLER_CFLAGS"
|
||||
diff -up inkscape-0.48.2/src/extension/internal/pdfinput/pdf-parser.cpp.poppler_020 inkscape-0.48.2/src/extension/internal/pdfinput/pdf-parser.cpp
|
||||
--- inkscape-0.48.2/src/extension/internal/pdfinput/pdf-parser.cpp.poppler_020 2011-07-08 13:25:09.468790000 -0500
|
||||
+++ inkscape-0.48.2/src/extension/internal/pdfinput/pdf-parser.cpp 2012-06-23 12:08:49.285298266 -0500
|
||||
@@ -367,15 +367,23 @@ void PdfParser::parse(Object *obj, GBool
|
||||
for (i = 0; i < obj->arrayGetLength(); ++i) {
|
||||
obj->arrayGet(i, &obj2);
|
||||
if (!obj2.isStream()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errInternal, -1, "Weird page contents");
|
||||
+#else
|
||||
error(-1, const_cast<char*>("Weird page contents"));
|
||||
+#endif
|
||||
obj2.free();
|
||||
return;
|
||||
}
|
||||
obj2.free();
|
||||
}
|
||||
} else if (!obj->isStream()) {
|
||||
- error(-1, const_cast<char*>("Weird page contents"));
|
||||
- return;
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errInternal, -1, "Weird page contents");
|
||||
+#else
|
||||
+ error(-1, const_cast<char*>("Weird page contents"));
|
||||
+#endif
|
||||
+ return;
|
||||
}
|
||||
parser = new Parser(xref, new Lexer(xref, obj), gFalse);
|
||||
go(topLevel);
|
||||
@@ -419,7 +427,11 @@ void PdfParser::go(GBool topLevel) {
|
||||
|
||||
// too many arguments - something is wrong
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Too many args in content stream");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Too many args in content stream"));
|
||||
+#endif
|
||||
if (printCommands) {
|
||||
printf("throwing away arg: ");
|
||||
obj.print(stdout);
|
||||
@@ -436,7 +448,11 @@ void PdfParser::go(GBool topLevel) {
|
||||
|
||||
// args at end with no command
|
||||
if (numArgs > 0) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Leftover args in content stream");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Leftover args in content stream"));
|
||||
+#endif
|
||||
if (printCommands) {
|
||||
printf("%d leftovers:", numArgs);
|
||||
for (i = 0; i < numArgs; ++i) {
|
||||
@@ -502,7 +518,11 @@ void PdfParser::execOp(Object *cmd, Obje
|
||||
name = cmd->getCmd();
|
||||
if (!(op = findOp(name))) {
|
||||
if (ignoreUndef == 0)
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Unknown operator '{0:s}'", name);
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unknown operator '%s'"), name);
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -510,26 +530,42 @@ void PdfParser::execOp(Object *cmd, Obje
|
||||
argPtr = args;
|
||||
if (op->numArgs >= 0) {
|
||||
if (numArgs < op->numArgs) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Too few ({0:d}) args to '{1:d}' operator", numArgs, name);
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Too few (%d) args to '%s' operator"), numArgs, name);
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
if (numArgs > op->numArgs) {
|
||||
#if 0
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Too many ({0:d}) args to '{1:s}' operator", numArgs, name);
|
||||
+#else
|
||||
error(getPos(), "Too many (%d) args to '%s' operator", numArgs, name);
|
||||
#endif
|
||||
+#endif
|
||||
argPtr += numArgs - op->numArgs;
|
||||
numArgs = op->numArgs;
|
||||
}
|
||||
} else {
|
||||
if (numArgs > -op->numArgs) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Too many ({0:d}) args to '{1:s}' operator",
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Too many (%d) args to '%s' operator"),
|
||||
+#endif
|
||||
numArgs, name);
|
||||
return;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < numArgs; ++i) {
|
||||
if (!checkArg(&argPtr[i], op->tchk[i])) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Arg #{0:d} to '{1:s}' operator is wrong type ({2:s})",
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Arg #%d to '%s' operator is wrong type (%s)"),
|
||||
+#endif
|
||||
i, name, argPtr[i].getTypeName());
|
||||
return;
|
||||
}
|
||||
@@ -690,7 +726,11 @@ void PdfParser::opSetExtGState(Object ar
|
||||
return;
|
||||
}
|
||||
if (!obj1.isDict()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "ExtGState '{0:s}' is wrong type"), args[0].getName();
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("ExtGState '%s' is wrong type"), args[0].getName());
|
||||
+#endif
|
||||
obj1.free();
|
||||
return;
|
||||
}
|
||||
@@ -705,7 +745,11 @@ void PdfParser::opSetExtGState(Object ar
|
||||
if (state->parseBlendMode(&obj2, &mode)) {
|
||||
state->setBlendMode(mode);
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid blend mode in ExtGState");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Invalid blend mode in ExtGState"));
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
obj2.free();
|
||||
@@ -764,7 +808,11 @@ void PdfParser::opSetExtGState(Object ar
|
||||
state->setTransfer(funcs);
|
||||
}
|
||||
} else if (!obj2.isNull()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid transfer function in ExtGState");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Invalid transfer function in ExtGState"));
|
||||
+#endif
|
||||
}
|
||||
obj2.free();
|
||||
|
||||
@@ -784,8 +832,11 @@ void PdfParser::opSetExtGState(Object ar
|
||||
funcs[0] = Function::parse(&obj3);
|
||||
if (funcs[0]->getInputSize() != 1 ||
|
||||
funcs[0]->getOutputSize() != 1) {
|
||||
- error(getPos(),
|
||||
- const_cast<char*>("Invalid transfer function in soft mask in ExtGState"));
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid transfer function in soft mask in ExtGState");
|
||||
+#else
|
||||
+ error(getPos(), const_cast<char*>("Invalid transfer function in soft mask in ExtGState"));
|
||||
+#endif
|
||||
delete funcs[0];
|
||||
funcs[0] = NULL;
|
||||
}
|
||||
@@ -809,7 +860,7 @@ void PdfParser::opSetExtGState(Object ar
|
||||
blendingColorSpace = NULL;
|
||||
isolated = knockout = gFalse;
|
||||
if (!obj4.dictLookup(const_cast<char*>("CS"), &obj5)->isNull()) {
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj5, NULL);
|
||||
#else
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj5);
|
||||
@@ -840,15 +891,27 @@ void PdfParser::opSetExtGState(Object ar
|
||||
delete funcs[0];
|
||||
}
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid soft mask in ExtGState - missing group");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Invalid soft mask in ExtGState - missing group"));
|
||||
+#endif
|
||||
}
|
||||
obj4.free();
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid soft mask in ExtGState - missing group");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Invalid soft mask in ExtGState - missing group"));
|
||||
+#endif
|
||||
}
|
||||
obj3.free();
|
||||
} else if (!obj2.isNull()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Invalid soft mask in ExtGState");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Invalid soft mask in ExtGState"));
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
obj2.free();
|
||||
@@ -876,7 +939,11 @@ void PdfParser::doSoftMask(Object *str,
|
||||
// check form type
|
||||
dict->lookup(const_cast<char*>("FormType"), &obj1);
|
||||
if (!(obj1.isNull() || (obj1.isInt() && obj1.getInt() == 1))) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Unknown form type");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unknown form type"));
|
||||
+#endif
|
||||
}
|
||||
obj1.free();
|
||||
|
||||
@@ -884,7 +951,11 @@ void PdfParser::doSoftMask(Object *str,
|
||||
dict->lookup(const_cast<char*>("BBox"), &obj1);
|
||||
if (!obj1.isArray()) {
|
||||
obj1.free();
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Bad form bounding box");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Bad form bounding box"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < 4; ++i) {
|
||||
@@ -1012,7 +1083,7 @@ void PdfParser::opSetFillColorSpace(Obje
|
||||
|
||||
state->setFillPattern(NULL);
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (obj.isNull()) {
|
||||
colorSpace = GfxColorSpace::parse(&args[0], NULL);
|
||||
} else {
|
||||
@@ -1032,7 +1103,11 @@ void PdfParser::opSetFillColorSpace(Obje
|
||||
state->setFillColor(&color);
|
||||
builder->updateStyle(state);
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Bad color space (fill)");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Bad color space (fill)"));
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1043,7 +1118,7 @@ void PdfParser::opSetStrokeColorSpace(Ob
|
||||
|
||||
state->setStrokePattern(NULL);
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (obj.isNull()) {
|
||||
colorSpace = GfxColorSpace::parse(&args[0], NULL);
|
||||
} else {
|
||||
@@ -1063,7 +1138,11 @@ void PdfParser::opSetStrokeColorSpace(Ob
|
||||
state->setStrokeColor(&color);
|
||||
builder->updateStyle(state);
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Bad color space (stroke)");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Bad color space (stroke)"));
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1072,7 +1151,11 @@ void PdfParser::opSetFillColor(Object ar
|
||||
int i;
|
||||
|
||||
if (numArgs != state->getFillColorSpace()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'sc' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'sc' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->setFillPattern(NULL);
|
||||
@@ -1088,7 +1171,11 @@ void PdfParser::opSetStrokeColor(Object
|
||||
int i;
|
||||
|
||||
if (numArgs != state->getStrokeColorSpace()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'SC' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'SC' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->setStrokePattern(NULL);
|
||||
@@ -1109,7 +1196,11 @@ void PdfParser::opSetFillColorN(Object a
|
||||
if (!((GfxPatternColorSpace *)state->getFillColorSpace())->getUnder() ||
|
||||
numArgs - 1 != ((GfxPatternColorSpace *)state->getFillColorSpace())
|
||||
->getUnder()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'scn' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'scn' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < numArgs - 1 && i < gfxColorMaxComps; ++i) {
|
||||
@@ -1120,7 +1211,7 @@ void PdfParser::opSetFillColorN(Object a
|
||||
state->setFillColor(&color);
|
||||
builder->updateStyle(state);
|
||||
}
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (args[numArgs-1].isName() &&
|
||||
(pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) {
|
||||
state->setFillPattern(pattern);
|
||||
@@ -1136,7 +1227,11 @@ void PdfParser::opSetFillColorN(Object a
|
||||
|
||||
} else {
|
||||
if (numArgs != state->getFillColorSpace()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'scn' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'scn' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->setFillPattern(NULL);
|
||||
@@ -1161,7 +1256,11 @@ void PdfParser::opSetStrokeColorN(Object
|
||||
->getUnder() ||
|
||||
numArgs - 1 != ((GfxPatternColorSpace *)state->getStrokeColorSpace())
|
||||
->getUnder()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'SCN' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'SCN' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < numArgs - 1 && i < gfxColorMaxComps; ++i) {
|
||||
@@ -1172,7 +1271,7 @@ void PdfParser::opSetStrokeColorN(Object
|
||||
state->setStrokeColor(&color);
|
||||
builder->updateStyle(state);
|
||||
}
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (args[numArgs-1].isName() &&
|
||||
(pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) {
|
||||
state->setStrokePattern(pattern);
|
||||
@@ -1188,7 +1287,11 @@ void PdfParser::opSetStrokeColorN(Object
|
||||
|
||||
} else {
|
||||
if (numArgs != state->getStrokeColorSpace()->getNComps()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Incorrect number of arguments in 'SCN' command");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Incorrect number of arguments in 'SCN' command"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->setStrokePattern(NULL);
|
||||
@@ -1212,7 +1315,11 @@ void PdfParser::opMoveTo(Object args[],
|
||||
|
||||
void PdfParser::opLineTo(Object args[], int numArgs) {
|
||||
if (!state->isCurPt()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No current point in lineto");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No current point in lineto"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->lineTo(args[0].getNum(), args[1].getNum());
|
||||
@@ -1222,7 +1329,11 @@ void PdfParser::opCurveTo(Object args[],
|
||||
double x1, y1, x2, y2, x3, y3;
|
||||
|
||||
if (!state->isCurPt()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No current point in curveto");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No current point in curveto"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
x1 = args[0].getNum();
|
||||
@@ -1238,7 +1349,11 @@ void PdfParser::opCurveTo1(Object args[]
|
||||
double x1, y1, x2, y2, x3, y3;
|
||||
|
||||
if (!state->isCurPt()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No current point in curveto1");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No current point in curveto1"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
x1 = state->getCurX();
|
||||
@@ -1254,7 +1369,11 @@ void PdfParser::opCurveTo2(Object args[]
|
||||
double x1, y1, x2, y2, x3, y3;
|
||||
|
||||
if (!state->isCurPt()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No current point in curveto2");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No current point in curveto2"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
x1 = args[0].getNum();
|
||||
@@ -1282,7 +1401,11 @@ void PdfParser::opRectangle(Object args[
|
||||
|
||||
void PdfParser::opClosePath(Object args[], int numArgs) {
|
||||
if (!state->isCurPt()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No current point in closepath");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No current point in closepath"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
state->closePath();
|
||||
@@ -1440,7 +1563,11 @@ void PdfParser::doPatternFillFallback(GB
|
||||
doShadingPatternFillFallback((GfxShadingPattern *)pattern, gFalse, eoFill);
|
||||
break;
|
||||
default:
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errUnimplemented, getPos(), "Unimplemented pattern type (%d) in fill",
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unimplemented pattern type (%d) in fill"),
|
||||
+#endif
|
||||
pattern->getType());
|
||||
break;
|
||||
}
|
||||
@@ -1459,7 +1586,11 @@ void PdfParser::doPatternStrokeFallback(
|
||||
doShadingPatternFillFallback((GfxShadingPattern *)pattern, gTrue, gFalse);
|
||||
break;
|
||||
default:
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errUnimplemented, getPos(), "Unimplemented pattern type ({0:d}) in stroke",
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unimplemented pattern type (%d) in stroke"),
|
||||
+#endif
|
||||
pattern->getType());
|
||||
break;
|
||||
}
|
||||
@@ -1579,7 +1710,7 @@ void PdfParser::opShFill(Object args[],
|
||||
double *matrix = NULL;
|
||||
GBool savedState = gFalse;
|
||||
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (!(shading = res->lookupShading(args[0].getName(), NULL))) {
|
||||
return;
|
||||
}
|
||||
@@ -2156,7 +2287,11 @@ void PdfParser::opTextNextLine(Object ar
|
||||
|
||||
void PdfParser::opShowText(Object args[], int numArgs) {
|
||||
if (!state->getFont()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No font in show");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No font in show"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
if (fontChanged) {
|
||||
@@ -2170,7 +2305,11 @@ void PdfParser::opMoveShowText(Object ar
|
||||
double tx, ty;
|
||||
|
||||
if (!state->getFont()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No font in move/show");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No font in move/show"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
if (fontChanged) {
|
||||
@@ -2188,7 +2327,11 @@ void PdfParser::opMoveSetShowText(Object
|
||||
double tx, ty;
|
||||
|
||||
if (!state->getFont()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No font in move/set/show");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No font in move/set/show"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
if (fontChanged) {
|
||||
@@ -2211,7 +2354,11 @@ void PdfParser::opShowSpaceText(Object a
|
||||
int i;
|
||||
|
||||
if (!state->getFont()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "No font in show/space");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("No font in show/space"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
if (fontChanged) {
|
||||
@@ -2236,7 +2383,11 @@ void PdfParser::opShowSpaceText(Object a
|
||||
} else if (obj.isString()) {
|
||||
doShowText(obj.getString());
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Element of show/space array must be number or string");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Element of show/space array must be number or string"));
|
||||
+#endif
|
||||
}
|
||||
obj.free();
|
||||
}
|
||||
@@ -2334,7 +2485,11 @@ void PdfParser::doShowText(GooString *s)
|
||||
if (charProc.isStream()) {
|
||||
//parse(&charProc, gFalse); // TODO: parse into SVG font
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Missing or bad Type3 CharProc entry");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Missing or bad Type3 CharProc entry"));
|
||||
+#endif
|
||||
}
|
||||
//out->endType3Char(state);
|
||||
if (resDict) {
|
||||
@@ -2410,7 +2565,11 @@ void PdfParser::opXObject(Object args[],
|
||||
return;
|
||||
}
|
||||
if (!obj1.isStream()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "XObject '{0:s}' is wrong type", name);
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("XObject '%s' is wrong type"), name);
|
||||
+#endif
|
||||
obj1.free();
|
||||
return;
|
||||
}
|
||||
@@ -2426,9 +2585,17 @@ void PdfParser::opXObject(Object args[],
|
||||
/* out->psXObject(obj1.getStream(),
|
||||
obj3.isStream() ? obj3.getStream() : (Stream *)NULL);*/
|
||||
} else if (obj2.isName()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Unknown XObject subtype '{0:s}'", obj2.getName());
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unknown XObject subtype '%s'"), obj2.getName());
|
||||
+#endif
|
||||
} else {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "XObject subtype is missing or wrong type");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("XObject subtype is missing or wrong type"));
|
||||
+#endif
|
||||
}
|
||||
obj2.free();
|
||||
obj1.free();
|
||||
@@ -2559,7 +2726,7 @@ void PdfParser::doImage(Object *ref, Str
|
||||
}
|
||||
}
|
||||
if (!obj1.isNull()) {
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
colorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
#else
|
||||
colorSpace = GfxColorSpace::parse(&obj1);
|
||||
@@ -2648,7 +2815,7 @@ void PdfParser::doImage(Object *ref, Str
|
||||
obj2.free();
|
||||
}
|
||||
}
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
maskColorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
#else
|
||||
maskColorSpace = GfxColorSpace::parse(&obj1);
|
||||
@@ -2758,7 +2925,11 @@ void PdfParser::doImage(Object *ref, Str
|
||||
err2:
|
||||
obj1.free();
|
||||
err1:
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Bad image parameters");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Bad image parameters"));
|
||||
+#endif
|
||||
}
|
||||
|
||||
void PdfParser::doForm(Object *str) {
|
||||
@@ -2783,7 +2954,11 @@ void PdfParser::doForm(Object *str) {
|
||||
// check form type
|
||||
dict->lookup(const_cast<char*>("FormType"), &obj1);
|
||||
if (!(obj1.isNull() || (obj1.isInt() && obj1.getInt() == 1))) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Unknown form type");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Unknown form type"));
|
||||
+#endif
|
||||
}
|
||||
obj1.free();
|
||||
|
||||
@@ -2791,7 +2966,11 @@ void PdfParser::doForm(Object *str) {
|
||||
dict->lookup(const_cast<char*>("BBox"), &bboxObj);
|
||||
if (!bboxObj.isArray()) {
|
||||
bboxObj.free();
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Bad form bounding box");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Bad form bounding box"));
|
||||
+#endif
|
||||
return;
|
||||
}
|
||||
for (i = 0; i < 4; ++i) {
|
||||
@@ -2827,7 +3006,7 @@ void PdfParser::doForm(Object *str) {
|
||||
if (obj1.dictLookup(const_cast<char*>("S"), &obj2)->isName(const_cast<char*>("Transparency"))) {
|
||||
transpGroup = gTrue;
|
||||
if (!obj1.dictLookup(const_cast<char*>("CS"), &obj3)->isNull()) {
|
||||
-#ifdef POPPLER_NEW_COLOR_SPACE_API
|
||||
+#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj3, NULL);
|
||||
#else
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj3);
|
||||
@@ -2990,7 +3169,11 @@ Stream *PdfParser::buildImageStream() {
|
||||
parser->getObj(&obj);
|
||||
while (!obj.isCmd(const_cast<char*>("ID")) && !obj.isEOF()) {
|
||||
if (!obj.isName()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "Inline image dictionary key must be a name object");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Inline image dictionary key must be a name object"));
|
||||
+#endif
|
||||
obj.free();
|
||||
} else {
|
||||
key = copyString(obj.getName());
|
||||
@@ -3005,7 +3188,11 @@ Stream *PdfParser::buildImageStream() {
|
||||
parser->getObj(&obj);
|
||||
}
|
||||
if (obj.isEOF()) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errSyntaxError, getPos(), "End of file in inline image");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("End of file in inline image"));
|
||||
+#endif
|
||||
obj.free();
|
||||
dict.free();
|
||||
return NULL;
|
||||
@@ -3020,11 +3207,19 @@ Stream *PdfParser::buildImageStream() {
|
||||
}
|
||||
|
||||
void PdfParser::opImageData(Object args[], int numArgs) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errInternal, getPos(), "Internal: got 'ID' operator");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Internal: got 'ID' operator"));
|
||||
+#endif
|
||||
}
|
||||
|
||||
void PdfParser::opEndImage(Object args[], int numArgs) {
|
||||
+#ifdef POPPLER_NEW_ERRORAPI
|
||||
+ error(errInternal, getPos(), "Internal: got 'EI' operator");
|
||||
+#else
|
||||
error(getPos(), const_cast<char*>("Internal: got 'EI' operator"));
|
||||
+#endif
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
diff -up inkscape-0.48.2/src/extension/internal/pdfinput/svg-builder.cpp.poppler_020 inkscape-0.48.2/src/extension/internal/pdfinput/svg-builder.cpp
|
||||
--- inkscape-0.48.2/src/extension/internal/pdfinput/svg-builder.cpp.poppler_020 2012-06-23 12:01:38.912678613 -0500
|
||||
+++ inkscape-0.48.2/src/extension/internal/pdfinput/svg-builder.cpp 2012-06-23 12:01:38.920678513 -0500
|
||||
@@ -961,9 +961,7 @@ void SvgBuilder::updateFont(GfxState *st
|
||||
_font_style = sp_repr_css_attr_new();
|
||||
GfxFont *font = state->getFont();
|
||||
// Store original name
|
||||
- if (font->getOrigName()) {
|
||||
- _font_specification = font->getOrigName()->getCString();
|
||||
- } else if (font->getName()) {
|
||||
+ if (font->getName()) {
|
||||
_font_specification = font->getName()->getCString();
|
||||
} else {
|
||||
_font_specification = (char*) "Arial";
|
@ -1,11 +0,0 @@
|
||||
--- src/xml/repr-io.cpp~ 2011-07-08 13:25:09.000000000 -0500
|
||||
+++ src/xml/repr-io.cpp 2012-11-01 08:59:23.620360123 -0500
|
||||
@@ -294,7 +294,7 @@
|
||||
&src,
|
||||
localFilename,
|
||||
src.getEncoding(),
|
||||
- XML_PARSE_NOENT );
|
||||
+ XML_PARSE_NOENT | XML_PARSE_HUGE);
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- src/libnrtype/FontFactory.h~ 2011-07-08 13:25:09.000000000 -0500
|
||||
+++ src/libnrtype/FontFactory.h 2014-03-31 10:30:21.908992050 -0500
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <pango/pangowin32.h>
|
||||
#else
|
||||
#include <pango/pangoft2.h>
|
||||
-#include <freetype/freetype.h>
|
||||
+#include <freetype2/freetype.h>
|
||||
#endif
|
||||
|
||||
namespace Glib
|
@ -1,12 +0,0 @@
|
||||
diff -rupN inkscape-0.48.4/configure.ac inkscape-0.48.4-new/configure.ac
|
||||
--- inkscape-0.48.4/configure.ac 2012-12-15 17:50:19.205918190 +0100
|
||||
+++ inkscape-0.48.4-new/configure.ac 2014-05-15 00:29:24.076377009 +0200
|
||||
@@ -263,7 +263,7 @@ if test "x$gc_ok" = "xyes" && test "x$cr
|
||||
# include <gc.h>
|
||||
#endif
|
||||
#include <stdio.h>
|
||||
- extern unsigned GC_version;
|
||||
+ unsigned GC_version = GC_get_version();
|
||||
int main(void){
|
||||
unsigned min = ((6 << 16) | (4 << 8) | 0);
|
||||
printf("%d.%d.%d ",GC_version >> 16, (GC_version >> 8) & 0xFF, GC_version & 0xFF);
|
@ -1,90 +0,0 @@
|
||||
diff -rupN inkscape-0.48.4/src/extension/internal/pdfinput/pdf-parser.cpp inkscape-0.48.4-new/src/extension/internal/pdfinput/pdf-parser.cpp
|
||||
--- inkscape-0.48.4/src/extension/internal/pdfinput/pdf-parser.cpp 2012-12-13 18:00:46.726633000 +0100
|
||||
+++ inkscape-0.48.4-new/src/extension/internal/pdfinput/pdf-parser.cpp 2014-05-15 00:06:39.247501345 +0200
|
||||
@@ -861,7 +861,7 @@ void PdfParser::opSetExtGState(Object ar
|
||||
isolated = knockout = gFalse;
|
||||
if (!obj4.dictLookup(const_cast<char*>("CS"), &obj5)->isNull()) {
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
- blendingColorSpace = GfxColorSpace::parse(&obj5, NULL);
|
||||
+ blendingColorSpace = GfxColorSpace::parse(&obj5, NULL, NULL);
|
||||
#else
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj5);
|
||||
#endif
|
||||
@@ -1085,9 +1085,9 @@ void PdfParser::opSetFillColorSpace(Obje
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (obj.isNull()) {
|
||||
- colorSpace = GfxColorSpace::parse(&args[0], NULL);
|
||||
+ colorSpace = GfxColorSpace::parse(&args[0], NULL, NULL);
|
||||
} else {
|
||||
- colorSpace = GfxColorSpace::parse(&obj, NULL);
|
||||
+ colorSpace = GfxColorSpace::parse(&obj, NULL, NULL);
|
||||
}
|
||||
#else
|
||||
if (obj.isNull()) {
|
||||
@@ -1120,9 +1120,9 @@ void PdfParser::opSetStrokeColorSpace(Ob
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (obj.isNull()) {
|
||||
- colorSpace = GfxColorSpace::parse(&args[0], NULL);
|
||||
+ colorSpace = GfxColorSpace::parse(&args[0], NULL, NULL);
|
||||
} else {
|
||||
- colorSpace = GfxColorSpace::parse(&obj, NULL);
|
||||
+ colorSpace = GfxColorSpace::parse(&obj, NULL, NULL);
|
||||
}
|
||||
#else
|
||||
if (obj.isNull()) {
|
||||
@@ -1213,7 +1213,7 @@ void PdfParser::opSetFillColorN(Object a
|
||||
}
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (args[numArgs-1].isName() &&
|
||||
- (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) {
|
||||
+ (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL, NULL))) {
|
||||
state->setFillPattern(pattern);
|
||||
builder->updateStyle(state);
|
||||
}
|
||||
@@ -1273,7 +1273,7 @@ void PdfParser::opSetStrokeColorN(Object
|
||||
}
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
if (args[numArgs-1].isName() &&
|
||||
- (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL))) {
|
||||
+ (pattern = res->lookupPattern(args[numArgs-1].getName(), NULL, NULL))) {
|
||||
state->setStrokePattern(pattern);
|
||||
builder->updateStyle(state);
|
||||
}
|
||||
@@ -1711,7 +1711,7 @@ void PdfParser::opShFill(Object args[],
|
||||
GBool savedState = gFalse;
|
||||
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
- if (!(shading = res->lookupShading(args[0].getName(), NULL))) {
|
||||
+ if (!(shading = res->lookupShading(args[0].getName(), NULL, NULL))) {
|
||||
return;
|
||||
}
|
||||
#else
|
||||
@@ -2727,7 +2727,7 @@ void PdfParser::doImage(Object *ref, Str
|
||||
}
|
||||
if (!obj1.isNull()) {
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
- colorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
+ colorSpace = GfxColorSpace::parse(&obj1, NULL, NULL);
|
||||
#else
|
||||
colorSpace = GfxColorSpace::parse(&obj1);
|
||||
#endif
|
||||
@@ -2816,7 +2816,7 @@ void PdfParser::doImage(Object *ref, Str
|
||||
}
|
||||
}
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
- maskColorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
+ maskColorSpace = GfxColorSpace::parse(&obj1, NULL, NULL);
|
||||
#else
|
||||
maskColorSpace = GfxColorSpace::parse(&obj1);
|
||||
#endif
|
||||
@@ -3007,7 +3007,7 @@ void PdfParser::doForm(Object *str) {
|
||||
transpGroup = gTrue;
|
||||
if (!obj1.dictLookup(const_cast<char*>("CS"), &obj3)->isNull()) {
|
||||
#if defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
- blendingColorSpace = GfxColorSpace::parse(&obj3, NULL);
|
||||
+ blendingColorSpace = GfxColorSpace::parse(&obj3, NULL, NULL);
|
||||
#else
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj3);
|
||||
#endif
|
@ -1,11 +0,0 @@
|
||||
--- src/widgets/desktop-widget.h~ 2011-07-08 13:25:09.000000000 -0500
|
||||
+++ src/widgets/desktop-widget.h 2013-02-15 16:04:45.806910365 -0600
|
||||
@@ -239,7 +239,7 @@
|
||||
private:
|
||||
GtkWidget *tool_toolbox;
|
||||
GtkWidget *aux_toolbox;
|
||||
- GtkWidget *commands_toolbox,;
|
||||
+ GtkWidget *commands_toolbox;
|
||||
GtkWidget *snap_toolbox;
|
||||
|
||||
static void init(SPDesktopWidget *widget);
|
@ -1,90 +0,0 @@
|
||||
--- inkscape-0.48.5/configure.ac
|
||||
+++ inkscape-0.48.5/configure.ac
|
||||
@@ -593,6 +593,11 @@ if test "x$popplernewercolorspaceapi" =
|
||||
AC_DEFINE(POPPLER_EVEN_NEWER_COLOR_SPACE_API, 1, [Use even newer color space API from Poppler >= 0.26.0])
|
||||
fi
|
||||
|
||||
+PKG_CHECK_MODULES(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API, poppler >= 0.29.0, popplernewernewcolorspaceapi=yes, popplernewernewcolorspaceapi=no)
|
||||
+if test "x$popplernewernewcolorspaceapi" = "xyes"; then
|
||||
+ AC_DEFINE(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API, 1, [Use even newer new color space API from Poppler >= 0.29.0])
|
||||
+fi
|
||||
+
|
||||
# Poppler's b604a008 commit changes this
|
||||
AC_MSG_CHECKING([whether Poppler's GfxPatch no longer uses GfxColor])
|
||||
popplergfxcolor="no"
|
||||
--- inkscape-0.48.5/src/extension/internal/pdfinput/pdf-parser.cpp
|
||||
+++ inkscape-0.48.5/src/extension/internal/pdfinput/pdf-parser.cpp
|
||||
@@ -860,7 +860,9 @@ void PdfParser::opSetExtGState(Object ar
|
||||
blendingColorSpace = NULL;
|
||||
isolated = knockout = gFalse;
|
||||
if (!obj4.dictLookup(const_cast<char*>("CS"), &obj5)->isNull()) {
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ blendingColorSpace = GfxColorSpace::parse(NULL, &obj5, NULL, NULL);
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj5, NULL, NULL);
|
||||
#elif defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj5, NULL);
|
||||
@@ -1085,7 +1087,13 @@ void PdfParser::opSetFillColorSpace(Obje
|
||||
|
||||
state->setFillPattern(NULL);
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ if (obj.isNull()) {
|
||||
+ colorSpace = GfxColorSpace::parse(NULL, &args[0], NULL, NULL);
|
||||
+ } else {
|
||||
+ colorSpace = GfxColorSpace::parse(NULL, &obj, NULL, NULL);
|
||||
+ }
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
if (obj.isNull()) {
|
||||
colorSpace = GfxColorSpace::parse(&args[0], NULL, NULL);
|
||||
} else {
|
||||
@@ -1126,7 +1134,13 @@ void PdfParser::opSetStrokeColorSpace(Ob
|
||||
|
||||
state->setStrokePattern(NULL);
|
||||
res->lookupColorSpace(args[0].getName(), &obj);
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ if (obj.isNull()) {
|
||||
+ colorSpace = GfxColorSpace::parse(NULL, &args[0], NULL, NULL);
|
||||
+ } else {
|
||||
+ colorSpace = GfxColorSpace::parse(NULL, &obj, NULL, NULL);
|
||||
+ }
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
if (obj.isNull()) {
|
||||
colorSpace = GfxColorSpace::parse(&args[0], NULL, NULL);
|
||||
} else {
|
||||
@@ -2756,7 +2770,9 @@ void PdfParser::doImage(Object *ref, Str
|
||||
}
|
||||
}
|
||||
if (!obj1.isNull()) {
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ colorSpace = GfxColorSpace::parse(NULL, &obj1, NULL, NULL);
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
colorSpace = GfxColorSpace::parse(&obj1, NULL, NULL);
|
||||
#elif defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
colorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
@@ -2847,7 +2863,9 @@ void PdfParser::doImage(Object *ref, Str
|
||||
obj2.free();
|
||||
}
|
||||
}
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ GfxColorSpace *maskColorSpace = GfxColorSpace::parse(NULL, &obj1, NULL, NULL);
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
GfxColorSpace *maskColorSpace = GfxColorSpace::parse(&obj1, NULL, NULL);
|
||||
#elif defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
maskColorSpace = GfxColorSpace::parse(&obj1, NULL);
|
||||
@@ -3040,7 +3058,9 @@ void PdfParser::doForm(Object *str) {
|
||||
if (obj1.dictLookup(const_cast<char*>("S"), &obj2)->isName(const_cast<char*>("Transparency"))) {
|
||||
transpGroup = gTrue;
|
||||
if (!obj1.dictLookup(const_cast<char*>("CS"), &obj3)->isNull()) {
|
||||
-#if defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
+#if defined(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API)
|
||||
+ blendingColorSpace = GfxColorSpace::parse(NULL, &obj3, NULL, NULL);
|
||||
+#elif defined(POPPLER_EVEN_NEWER_COLOR_SPACE_API)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj3, NULL, NULL);
|
||||
#elif defined(POPPLER_NEW_COLOR_SPACE_API) || defined(POPPLER_NEW_ERRORAPI)
|
||||
blendingColorSpace = GfxColorSpace::parse(&obj3, NULL);
|
108
inkscape.spec
108
inkscape.spec
@ -8,54 +8,33 @@ License: GPLv2+
|
||||
URL: http://inkscape.sourceforge.net/
|
||||
Source0: http://downloads.sourceforge.net/inkscape/%{name}-%{version}.tar.bz2
|
||||
Patch0: inkscape-0.48.2-types.patch
|
||||
#Patch4: inkscape-0.48.2-glib.patch
|
||||
#Patch5: inkscape-0.48.2-png.patch
|
||||
#Patch6: inkscape-0.48.2-png-write.patch
|
||||
#Patch7: inkscape-0.48.2-gcc47.patch
|
||||
#Patch8: inkscape-0.48.2-poppler_020.patch
|
||||
#Patch9: inkscape-0.48.3.1-hugexml.patch
|
||||
#Patch10: inkscape-0.48.4-spuriouscomma.h
|
||||
#Patch11: inkscape-0.48.4-freetype.patch
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1097945
|
||||
#Patch12: inkscape-0.48.4-poppler-0.26.patch
|
||||
#Patch13: inkscape-0.48.4-gc-7.4.patch
|
||||
#Patch14: 0001-update-to-new-libwpg.patch
|
||||
#Patch15: inkscape-0.48.5-poppler-0.29.0.patch
|
||||
Patch16: inkscape-0.91-desktop.patch
|
||||
|
||||
%if 0%{?fedora} && 0%{?fedora} < 18
|
||||
%define desktop_vendor fedora
|
||||
%endif
|
||||
Patch1: inkscape-0.91-desktop.patch
|
||||
|
||||
BuildRequires: aspell-devel
|
||||
BuildRequires: atk-devel
|
||||
BuildRequires: boost-devel
|
||||
BuildRequires: cairo-devel
|
||||
BuildRequires: dos2unix
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: freetype-devel
|
||||
BuildRequires: gc-devel >= 6.4
|
||||
BuildRequires: gettext
|
||||
BuildRequires: gsl-devel
|
||||
BuildRequires: gtkmm24-devel >= 2.8.0
|
||||
BuildRequires: gtkspell-devel
|
||||
BuildRequires: gnome-vfs2-devel >= 2.0
|
||||
BuildRequires: ImageMagick-c++-devel
|
||||
BuildRequires: intltool
|
||||
BuildRequires: lcms2-devel
|
||||
BuildRequires: libpng-devel >= 1.2
|
||||
BuildRequires: libwpg-devel
|
||||
BuildRequires: libxml2-devel >= 2.6.11
|
||||
BuildRequires: libxslt-devel >= 1.0.15
|
||||
BuildRequires: pango-devel
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: lcms2-devel
|
||||
BuildRequires: cairo-devel
|
||||
BuildRequires: dos2unix
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: poppler-glib-devel
|
||||
BuildRequires: boost-devel
|
||||
BuildRequires: gsl-devel
|
||||
BuildRequires: libwpg-devel
|
||||
BuildRequires: ImageMagick-c++-devel
|
||||
BuildRequires: perl(XML::Parser)
|
||||
BuildRequires: perl(ExtUtils::Embed)
|
||||
BuildRequires: intltool
|
||||
BuildRequires: popt-devel
|
||||
# We detect new poppler in inkscape-0.48.2-poppler_020.patch
|
||||
BuildRequires: automake
|
||||
BuildRequires: aspell-devel
|
||||
|
||||
# Disable all for now. TODO: Be smarter
|
||||
%if 0
|
||||
@ -69,34 +48,11 @@ Requires: transfig
|
||||
Requires: gimp
|
||||
Requires: numpy
|
||||
Requires: python-lxml
|
||||
# TODO: Deal with these (autoreqs, disabled now):
|
||||
# perl(Cwd)
|
||||
# perl(Exporter)
|
||||
# perl(File::Basename)
|
||||
# perl(Getopt::Long)
|
||||
# perl(Getopt::Std)
|
||||
# perl(MIME::Base64)
|
||||
# perl(Pod::Usage)
|
||||
# perl(SVG)
|
||||
# perl(SVG::Parser)
|
||||
# perl(XML::XQL)
|
||||
# perl(XML::XQL::DOM)
|
||||
# perl(strict)
|
||||
# perl(vars)
|
||||
# perl(warnings)
|
||||
%endif
|
||||
Requires: python-lxml
|
||||
Requires: numpy
|
||||
Requires: uniconvertor
|
||||
|
||||
# the package requires libperl.so, so it also has to require this:
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
|
||||
# Filter out perl requires and provides
|
||||
# XXX: For now _all_
|
||||
%global __perl_provides %{nil}
|
||||
%global __perl_requires %{nil}
|
||||
|
||||
%description
|
||||
Inkscape is a vector graphics editor, with capabilities similar to
|
||||
Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable Vector
|
||||
@ -112,8 +68,6 @@ trace bitmaps and much more.
|
||||
%package view
|
||||
Summary: Viewing program for SVG files
|
||||
Group: Applications/Productivity
|
||||
# the package requires libperl.so, so it also has to require this:
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
|
||||
%description view
|
||||
Viewer for files in W3C standard Scalable Vector Graphics (SVG) file
|
||||
@ -133,19 +87,7 @@ graphics in W3C standard Scalable Vector Graphics (SVG) file format.
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .types
|
||||
#%patch4 -p1 -b .glib
|
||||
#%patch5 -p0 -b .png
|
||||
#%patch6 -p0 -b .png-write
|
||||
#%patch7 -p0 -b .gcc47
|
||||
#%patch8 -p1 -b .poppler_020
|
||||
#%patch9 -p0 -b .hugexml
|
||||
#%patch10 -p0 -b .spuriouscomma
|
||||
#%patch11 -p0 -b .freetype
|
||||
#%patch12 -p1 -b .poppler
|
||||
#%patch13 -p1 -b .gc
|
||||
#%patch14 -p1 -b .libwpg
|
||||
#%patch15 -p1 -b .poppler-0.29.0
|
||||
%patch16 -p1 -b .desktop
|
||||
%patch1 -p1 -b .desktop
|
||||
|
||||
# https://bugs.launchpad.net/inkscape/+bug/314381
|
||||
# A couple of files have executable bits set,
|
||||
@ -157,9 +99,6 @@ find share/extensions -name '*.py' | xargs chmod -x
|
||||
# Fix end of line encodings
|
||||
dos2unix -k -q share/extensions/*.py
|
||||
|
||||
#autoreconf -if
|
||||
|
||||
|
||||
%build
|
||||
%configure \
|
||||
--with-python \
|
||||
@ -169,11 +108,10 @@ dos2unix -k -q share/extensions/*.py
|
||||
--enable-lcms2 \
|
||||
--enable-poppler-cairo
|
||||
|
||||
make %{?_smp_mflags}
|
||||
make %{?_smp_mflags} V=1
|
||||
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
|
||||
desktop-file-install --vendor="%{?desktop_vendor}" --delete-original \
|
||||
@ -191,9 +129,6 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions/sk2svg.sh
|
||||
make -k check || :
|
||||
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
/bin/touch --no-create %{_datadir}/icons/hicolor &> /dev/null || :
|
||||
|
||||
@ -210,13 +145,17 @@ fi
|
||||
|
||||
|
||||
%files -f %{name}.lang
|
||||
%defattr(-,root,root,-)
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING
|
||||
%doc AUTHORS NEWS README
|
||||
%{_bindir}/inkscape
|
||||
%dir %{_datadir}/inkscape
|
||||
%{_datadir}/inkscape/attributes
|
||||
%{_datadir}/inkscape/branding
|
||||
#%{_datadir}/inkscape/clipart
|
||||
%{_datadir}/inkscape/extensions
|
||||
# Pulls in perl, if needed should go into a -perl subpackage
|
||||
%exclude %{_datadir}/inkscape/extensions/embed_raster_in_svg.pl
|
||||
%{_datadir}/inkscape/filters
|
||||
%{_datadir}/inkscape/fonts
|
||||
%{_datadir}/inkscape/gradients
|
||||
@ -234,24 +173,29 @@ fi
|
||||
%{_mandir}/*/*gz
|
||||
%{_mandir}/*/*/*gz
|
||||
%exclude %{_mandir}/man1/inkview.1*
|
||||
%doc AUTHORS COPYING ChangeLog NEWS README
|
||||
%{_datadir}/inkscape/tutorials
|
||||
|
||||
|
||||
%files view
|
||||
%defattr(-,root,root,-)
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING
|
||||
%doc AUTHORS NEWS README
|
||||
%{_bindir}/inkview
|
||||
%{_mandir}/man1/inkview.1*
|
||||
%doc AUTHORS COPYING ChangeLog NEWS README
|
||||
|
||||
|
||||
%files docs
|
||||
%defattr(-,root,root,-)
|
||||
%dir %{_datadir}/inkscape
|
||||
%{_datadir}/inkscape/examples
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Feb 12 2015 Peter Robinson <pbrobinson@fedoraproject.org> 0.91-4
|
||||
- Cleanup spec
|
||||
- Use %%license
|
||||
- Drop (now unneeded) perl requirements (rhbz#579390)
|
||||
- Drop ChangeLog as details are covered in NEWS
|
||||
|
||||
* Wed Feb 04 2015 Petr Machata <pmachata@redhat.com> - 0.91-3
|
||||
- Bump for rebuild.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user