diff --git a/.gitignore b/.gitignore index 0989e19..7815121 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/libetonyek-0.1.2.tar.xz +SOURCES/libetonyek-0.1.7.tar.xz diff --git a/.libetonyek.metadata b/.libetonyek.metadata index 1610511..101a6d3 100644 --- a/.libetonyek.metadata +++ b/.libetonyek.metadata @@ -1 +1 @@ -52c5e315eac45792fa4bd88f318f2255c345972a SOURCES/libetonyek-0.1.2.tar.xz +7dcc5eee68ad7dcc31b9230fa6e8ced6c346dc07 SOURCES/libetonyek-0.1.7.tar.xz diff --git a/SOURCES/0001-add-missing-breaks.patch b/SOURCES/0001-add-missing-breaks.patch deleted file mode 100644 index 7e11682..0000000 --- a/SOURCES/0001-add-missing-breaks.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 54c63c653deb070c49621bea8acbc18f76118238 Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Tue, 26 May 2015 16:56:56 +0200 -Subject: [PATCH 1/2] add missing breaks - -Change-Id: I6a6afd517e61aff89319348de5af3aa97093bd1d ---- - src/lib/KEY2Parser.cpp | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/lib/KEY2Parser.cpp b/src/lib/KEY2Parser.cpp -index bb58efd..4ba70d2 100644 ---- a/src/lib/KEY2Parser.cpp -+++ b/src/lib/KEY2Parser.cpp -@@ -261,8 +261,10 @@ void PointElement::attribute(const int name, const char *const value) - { - case IWORKToken::NS_URI_SFA | IWORKToken::x : - m_point.first = lexical_cast(value); -+ break; - case IWORKToken::NS_URI_SFA | IWORKToken::y : - m_point.second = lexical_cast(value); -+ break; - } - } - -@@ -358,6 +360,7 @@ void PointPathElement::attribute(const int name, const char *const value) - ETONYEK_DEBUG_MSG(("unknown point path type: %s\n", value)); - break; - } -+ break; - } - default : - KEY2XMLElementContextBase::attribute(name, value); --- -2.4.1 - diff --git a/SOURCES/0001-avoid-use-of-uninitialized-value.patch b/SOURCES/0001-avoid-use-of-uninitialized-value.patch deleted file mode 100644 index f438bca..0000000 --- a/SOURCES/0001-avoid-use-of-uninitialized-value.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 60c22fc853d7db4ff3ffc1661202fb3db537dbd7 Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Sat, 30 May 2015 15:19:32 +0200 -Subject: [PATCH] avoid use of uninitialized value - -Change-Id: I61c695ca8366ac366d3d450ef8e45cd4eba33fda ---- - src/lib/contexts/IWORKPropertyMapElement.cpp | 18 ++++++++---------- - 1 file changed, 8 insertions(+), 10 deletions(-) - -diff --git a/src/lib/contexts/IWORKPropertyMapElement.cpp b/src/lib/contexts/IWORKPropertyMapElement.cpp -index 6788137..5d94134 100644 ---- a/src/lib/contexts/IWORKPropertyMapElement.cpp -+++ b/src/lib/contexts/IWORKPropertyMapElement.cpp -@@ -264,10 +264,10 @@ IWORKXMLContextPtr_t AlignmentElement::element(const int name) - - void AlignmentElement::endOfElement() - { -- IWORKAlignment prop; -- - if (m_value) - { -+ IWORKAlignment prop(IWORK_ALIGNMENT_LEFT); -+ - switch (get(m_value)) - { - case 0 : -@@ -285,9 +285,9 @@ void AlignmentElement::endOfElement() - default : - ETONYEK_DEBUG_MSG(("unknown alignment %d\n", get(m_value))); - } -- } - -- m_propMap.put(prop); -+ m_propMap.put(prop); -+ } - } - - } -@@ -373,7 +373,8 @@ void CapitalizationElement::endOfElement() - { - if (m_capitalization) - { -- IWORKCapitalization prop; -+ IWORKCapitalization prop(IWORK_CAPITALIZATION_NONE); -+ - switch (get(m_capitalization)) - { - case 0 : -@@ -624,20 +625,17 @@ void SuperscriptElement::endOfElement() - { - if (m_superscript) - { -- IWORKBaseline prop; - switch (get(m_superscript)) - { - case 1 : -- prop = IWORK_BASELINE_SUPER; -+ m_propMap.put(IWORK_BASELINE_SUPER); - break; - case 2 : -- prop = IWORK_BASELINE_SUB; -+ m_propMap.put(IWORK_BASELINE_SUB); - break; - default : - ETONYEK_DEBUG_MSG(("unknown superscript %d\n", get(m_superscript))); - } -- -- m_propMap.put(prop); - } - } - --- -1.9.3 - diff --git a/SOURCES/0001-fix-test-on-i386.patch b/SOURCES/0001-fix-test-on-i386.patch deleted file mode 100644 index f3a7dc3..0000000 --- a/SOURCES/0001-fix-test-on-i386.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 5bb538c7c9984d2f68b81eb182ca9bf4c12593a9 Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Wed, 20 May 2015 16:44:25 +0200 -Subject: [PATCH] fix test on i386 - -Change-Id: I54379bec41f724d5c3ff8bf9e559c5bda7a9c57d ---- - src/test/IWORKTransformationTest.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/test/IWORKTransformationTest.cpp b/src/test/IWORKTransformationTest.cpp -index b44d52f..77f0b27 100644 ---- a/src/test/IWORKTransformationTest.cpp -+++ b/src/test/IWORKTransformationTest.cpp -@@ -209,7 +209,7 @@ void IWORKTransformationTest::testIdentities() - CPPUNIT_ASSERT(origin(100, 50) == translate(-50, -25)); - CPPUNIT_ASSERT((flip(true, false) * flip(false, true)) == flip(true, true)); - CPPUNIT_ASSERT((flip(false, true) * flip(true, false)) == flip(true, true)); -- CPPUNIT_ASSERT((rotate(etonyek_half_pi) * rotate(etonyek_third_pi)) == (rotate(etonyek_third_pi) * rotate(etonyek_half_pi))); -+ CPPUNIT_ASSERT(approxEqual(rotate(etonyek_half_pi) * rotate(etonyek_third_pi), rotate(etonyek_third_pi) * rotate(etonyek_half_pi))); - CPPUNIT_ASSERT(scale(-1, -1) == flip(true, true)); - CPPUNIT_ASSERT((translate(80, 40) * translate(10, 20)) == (translate(10, 20) * translate(80, 40))); - CPPUNIT_ASSERT((scale(2, 2) * translate(1, 2) == (translate(2, 4) * scale(2, 2)))); --- -2.4.0 - diff --git a/SOURCES/0001-get-rid-of-last-remains-of-libwpg.patch b/SOURCES/0001-get-rid-of-last-remains-of-libwpg.patch deleted file mode 100644 index 584df22..0000000 --- a/SOURCES/0001-get-rid-of-last-remains-of-libwpg.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 38a5fdf1cb946257d0dd2eb7361a8f3bb3101086 Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Fri, 12 Jun 2015 15:45:21 +0200 -Subject: [PATCH] get rid of last remains of libwpg - -This fixes output of shapes and images. - -Change-Id: I85302c72005cbb5a5a378fa8ac15666d2918c3b6 ---- - src/lib/IWORKCollector.cpp | 2 +- - src/lib/IWORKPath.cpp | 8 ++++---- - src/test/IWORKPathTest.cpp | 4 ++-- - 3 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/src/lib/IWORKCollector.cpp b/src/lib/IWORKCollector.cpp -index e4e0a8d..242f48b 100644 ---- a/src/lib/IWORKCollector.cpp -+++ b/src/lib/IWORKCollector.cpp -@@ -108,7 +108,7 @@ void drawMedia(const IWORKMediaPtr_t &media, const glm::dmat3 &trafo, IWORKOutpu - - librevenge::RVNGPropertyList props; - -- props.insert("libwpg:mime-type", get(mimetype).c_str()); -+ props.insert("librevenge:mime-type", get(mimetype).c_str()); - props.insert("office:binary-data", librevenge::RVNGBinaryData(bytes, size)); - - glm::dvec3 vec = trafo * glm::dvec3(0, 0, 1); -diff --git a/src/lib/IWORKPath.cpp b/src/lib/IWORKPath.cpp -index 968a14e..b1b53a8 100644 ---- a/src/lib/IWORKPath.cpp -+++ b/src/lib/IWORKPath.cpp -@@ -114,7 +114,7 @@ librevenge::RVNGPropertyList MoveTo::toWPG() const - { - librevenge::RVNGPropertyList element; - -- element.insert("libwpg:path-action", "M"); -+ element.insert("librevenge:path-action", "M"); - element.insert("svg:x", pt2in(m_x)); - element.insert("svg:y", pt2in(m_y)); - -@@ -177,7 +177,7 @@ librevenge::RVNGPropertyList LineTo::toWPG() const - { - librevenge::RVNGPropertyList element; - -- element.insert("libwpg:path-action", "L"); -+ element.insert("librevenge:path-action", "L"); - element.insert("svg:x", pt2in(m_x)); - element.insert("svg:y", pt2in(m_y)); - -@@ -262,7 +262,7 @@ librevenge::RVNGPropertyList CurveTo::toWPG() const - { - librevenge::RVNGPropertyList element; - -- element.insert("libwpg:path-action", "C"); -+ element.insert("librevenge:path-action", "C"); - element.insert("svg:x", pt2in(m_x)); - element.insert("svg:y", pt2in(m_y)); - element.insert("svg:x1", pt2in(m_x1)); -@@ -404,7 +404,7 @@ librevenge::RVNGPropertyListVector IWORKPath::toWPG() const - if (m_closed) - { - librevenge::RVNGPropertyList element; -- element.insert("libwpg:path-action", "Z"); -+ element.insert("librevenge:path-action", "Z"); - vec.append(element); - } - -diff --git a/src/test/IWORKPathTest.cpp b/src/test/IWORKPathTest.cpp -index 050f3f8..2ddf4db 100644 ---- a/src/test/IWORKPathTest.cpp -+++ b/src/test/IWORKPathTest.cpp -@@ -43,13 +43,13 @@ string toSVG(const IWORKPath &path) - { - const librevenge::RVNGPropertyList &element = it(); - -- CPPUNIT_ASSERT(0 != element["libwpg:path-action"]); -+ CPPUNIT_ASSERT(0 != element["librevenge:path-action"]); - - if (first) - first = false; - else - output << ' '; -- output << element["libwpg:path-action"]->getStr().cstr(); -+ output << element["librevenge:path-action"]->getStr().cstr(); - if (element["svg:x1"]) - output << ' ' << in2pt(element["svg:x1"]->getDouble()); - if (element["svg:y1"]) --- -2.4.2 - diff --git a/SOURCES/0002-remove-surplus-breaks.patch b/SOURCES/0002-remove-surplus-breaks.patch deleted file mode 100644 index be6b94a..0000000 --- a/SOURCES/0002-remove-surplus-breaks.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 91d39222d9f120211c0189f69299898702a65d3d Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Tue, 26 May 2015 17:01:22 +0200 -Subject: [PATCH 2/2] remove surplus breaks - -Change-Id: Ib98a4a5bcd7d9f9eb03874f0715b45bb141ef12d ---- - src/lib/KEY2Parser.cpp | 1 - - src/lib/contexts/IWORKStylesContext.cpp | 1 - - 2 files changed, 2 deletions(-) - -diff --git a/src/lib/KEY2Parser.cpp b/src/lib/KEY2Parser.cpp -index 4ba70d2..9a37dcd 100644 ---- a/src/lib/KEY2Parser.cpp -+++ b/src/lib/KEY2Parser.cpp -@@ -124,7 +124,6 @@ IWORKXMLContextPtr_t StylesContext::element(const int name) - return makeContext(getState(), name); - - case IWORKToken::NS_URI_SF | IWORKToken::layoutstyle_ref : -- break; - return makeContext(getState(), name, false, m_anonymous); - } - -diff --git a/src/lib/contexts/IWORKStylesContext.cpp b/src/lib/contexts/IWORKStylesContext.cpp -index ef3041b..24efa1d 100644 ---- a/src/lib/contexts/IWORKStylesContext.cpp -+++ b/src/lib/contexts/IWORKStylesContext.cpp -@@ -43,7 +43,6 @@ IWORKXMLContextPtr_t IWORKStylesContext::element(const int name) - case IWORKToken::NS_URI_SF | IWORKToken::liststyle_ref : - case IWORKToken::NS_URI_SF | IWORKToken::paragraphstyle_ref : - case IWORKToken::NS_URI_SF | IWORKToken::vector_style_ref : -- break; - return makeContext(getState(), name, false, m_anonymous); - } - --- -2.4.1 - diff --git a/SPECS/libetonyek.spec b/SPECS/libetonyek.spec index 68ce9de..a346b24 100644 --- a/SPECS/libetonyek.spec +++ b/SPECS/libetonyek.spec @@ -1,8 +1,8 @@ %global apiversion 0.1 Name: libetonyek -Version: 0.1.2 -Release: 4%{?dist} +Version: 0.1.7 +Release: 1%{?dist} Summary: A library for import of Apple iWork documents License: MPLv2.0 @@ -15,21 +15,17 @@ BuildRequires: glm-devel BuildRequires: gperf BuildRequires: help2man BuildRequires: pkgconfig(cppunit) +BuildRequires: pkgconfig(liblangtag) BuildRequires: pkgconfig(librevenge-0.0) BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(mdds-1.2) BuildRequires: pkgconfig(zlib) -Patch0: 0001-fix-test-on-i386.patch -Patch1: 0001-add-missing-breaks.patch -Patch2: 0002-remove-surplus-breaks.patch -Patch3: 0001-avoid-use-of-uninitialized-value.patch -Patch4: 0001-get-rid-of-last-remains-of-libwpg.patch - %description %{name} is library for import of documents from Apple iWork applications -(Keynote, Pages and Numbers). It can only import the older format -(Keynote 2-5, Pages 4, Numbers 2). The support for Pages and Numbers is -only minimal at the moment. +(Keynote, Pages and Numbers). It can import documents created by +Keynote 2-6, Pages 1-4 and Numbers 1-2. The support for Numbers is rather +minimal at the moment. %package devel Summary: Development files for %{name} @@ -65,23 +61,17 @@ sed -i \ libtool make %{?_smp_mflags} -export LD_LIBRARY_PATH=`pwd`/src/lib/.libs${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} -help2man -N -n 'debug the conversion library' -o key2raw.1 ./src/conv/raw/.libs/key2raw -help2man -N -n 'debug the conversion library' -o numbers2raw.1 ./src/conv/raw/.libs/numbers2raw -help2man -N -n 'debug the conversion library' -o pages2raw.1 ./src/conv/raw/.libs/pages2raw -help2man -N -n 'convert Numbers spreadsheet into CSV' -o numbers2csv.1 ./src/conv/csv/.libs/numbers2csv -help2man -N -n 'convert Pages document into HTML' -o pages2html.1 ./src/conv/html/.libs/pages2html -help2man -N -n 'convert Keynote presentation into SVG' -o key2xhtml.1 ./src/conv/svg/.libs/key2xhtml -help2man -N -n 'convert Keynote presentation into plain text' -o key2text.1 ./src/conv/text/.libs/key2text -help2man -N -n 'convert Numbers spreadsheet into plain text' -o numbers2text.1 ./src/conv/text/.libs/numbers2text -help2man -N -n 'convert Pages document into plain text' -o pages2text.1 ./src/conv/text/.libs/pages2text - %install make install DESTDIR=%{buildroot} rm -f %{buildroot}/%{_libdir}/*.la # we install API docs directly from build rm -rf %{buildroot}/%{_docdir}/%{name} +# generate and install man pages +export LD_LIBRARY_PATH=%{buildroot}/%{_libdir}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} +for tool in key2raw key2text key2xhtml numbers2csv numbers2raw numbers2text pages2html pages2raw pages2text; do + help2man -N -S '%{name} %{version}' -o ${tool}.1 %{buildroot}%{_bindir}/${tool} +done install -m 0755 -d %{buildroot}/%{_mandir}/man1 install -m 0644 key2*.1 numbers2*.1 pages2*.1 %{buildroot}/%{_mandir}/man1 @@ -90,10 +80,14 @@ install -m 0644 key2*.1 numbers2*.1 pages2*.1 %{buildroot}/%{_mandir}/man1 %check export LD_LIBRARY_PATH=%{buildroot}/%{_libdir}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} -make %{?_smp_mflags} check +if ! make %{?_smp_mflags} check; then + cat src/test/*.log + exit 1 +fi %files -%doc AUTHORS COPYING FEATURES NEWS README +%doc AUTHORS FEATURES NEWS README +%license COPYING %{_libdir}/%{name}-%{apiversion}.so.* %files devel @@ -103,7 +97,7 @@ make %{?_smp_mflags} check %{_libdir}/pkgconfig/%{name}-%{apiversion}.pc %files doc -%doc COPYING +%license COPYING %doc docs/doxygen/html %files tools @@ -127,6 +121,9 @@ make %{?_smp_mflags} check %{_mandir}/man1/pages2text.1* %changelog +* Mon Oct 23 2017 David Tardon - 0.1.7-1 +- Resolves: rhbz#1477216 rebase to 0.1.7 + * Fri Jun 12 2015 David Tardon - 0.1.2-4 - Related: rhbz#1207752 fix output of shapes