Skip to content

Commit

Permalink
app-text/podofo: version bump to 0.9.6_p20180715
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.43, Repoman-2.3.10
  • Loading branch information
zmedico committed Jul 26, 2018
1 parent f8ba630 commit 289e000
Show file tree
Hide file tree
Showing 2 changed files with 141 additions and 0 deletions.
1 change: 1 addition & 0 deletions app-text/podofo/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
DIST podofo-0.9.6_p20180715.tar.xz 747444 BLAKE2B 96d90add6d290d6722cd7412fd75433f87303bac385964f0967b4f119db4962f6ddbd93b49af8454051f421d77de70ad7ea0f5b01a66eeb690a75dbeec256eff SHA512 4c9b09c716128110b47d6a02f118eb80b6009e9e79dbc83ff804a57f0abc011b789de9287b68a6c1d6704ef386f8062a3a495408af8a832782f0bf0128190a1f
DIST podofo-0.9.6_pre20170508.tar.xz 919876 BLAKE2B 39be46db0e36755c828373659f681aa6334ec6be01cdcc62616d8ce4e59a2ab916cbfc4aa58d4bf8ab95843a40b7b536cb1b2ccfa14beacf629ff1fbcb699613 SHA512 37d8e844ba5763d06d467e316871436e1a63795d66675677d9775cd1bd311f43b241d58e82213a0342ab69a0f5cd80261aad48c4af29c82f7bcc0c14bd242f10
DIST podofo-0.9.6_pre20171027.tar.xz 919504 BLAKE2B d03852a25e50085ed2108e90c293600e0515c06918276888e63917ca00a9fe3b392cd9ec9aeb6f651fd7e0b45a5e3c08e3f4d6df6f4a04d8fb224fbdd0599342 SHA512 db1ac836abd7be0d2cc3c27114c7134de9de8ba931a6a8265514fedefe3c6f06a24371f7a5425c8b7251fe7166bc27f07733cba878ad24c12651c8c051cac8be
140 changes: 140 additions & 0 deletions app-text/podofo/podofo-0.9.6_p20180715.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6
inherit cmake-utils flag-o-matic multilib toolchain-funcs

DESCRIPTION="PoDoFo is a C++ library to work with the PDF file format"
HOMEPAGE="https://sourceforge.net/projects/podofo/"
SRC_URI="mirror://gentoo/${P}.tar.xz"

LICENSE="GPL-2 LGPL-2.1"
SLOT="0/${PV%_*}"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
IUSE="+boost idn libressl debug test +tools"
REQUIRED_USE="test? ( tools )"

RDEPEND="dev-lang/lua:=
idn? ( net-dns/libidn:= )
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
media-libs/fontconfig:=
media-libs/freetype:2=
virtual/jpeg:0=
media-libs/libpng:0=
media-libs/tiff:0=
sys-libs/zlib:="
DEPEND="${RDEPEND}
virtual/pkgconfig
boost? ( dev-util/boost-build )
test? ( dev-util/cppunit )"

DOCS="AUTHORS ChangeLog TODO"

src_prepare() {
cmake-utils_src_prepare
local x sed_args

# bug 620934 - Disable linking with cppunit when possible, since it
# triggers errors with some older compilers.
use test || sed -e 's:^FIND_PACKAGE(CppUnit):#\0:' -i CMakeLists.txt || die

# bug 556962
sed -i -e 's|Decrypt( pEncryptedBuffer, nOutputLen, pDecryptedBuffer, m_lLen );|Decrypt( pEncryptedBuffer, (pdf_long)nOutputLen, pDecryptedBuffer, (pdf_long\&)m_lLen );|' \
test/unit/EncryptTest.cpp || die

sed -i \
-e "s:LIBDIRNAME \"lib\":LIBDIRNAME \"$(get_libdir)\":" \
-e "s:LIBIDN_FOUND:HAVE_LIBIDN:g" \
CMakeLists.txt || die

# Use pkg-config to find headers for bug #459404.
sed_args=
for x in $($(tc-getPKG_CONFIG) --cflags freetype2) ; do
[[ ${x} == -I* ]] || continue
x=${x#-I}
if [[ -f ${x}/ft2build.h ]] ; then
sed_args+=" -e s:/usr/include/\\r\$:${x}:"
elif [[ -f ${x}/freetype/config/ftheader.h ]] ; then
sed_args+=" -e s:/usr/include/freetype2\\r\$:${x}:"
fi
done
[[ -n ${sed_args} ]] && \
{ sed -i ${sed_args} cmake/modules/FindFREETYPE.cmake || die; }

# Bug #439784: Add missing unistd include for close() and unlink().
sed -i 's:^#include <stdio.h>$:#include <unistd.h>\n\0:' -i \
test/unit/TestUtils.cpp || die

# TODO: fix these test cases
# ColorTest.cpp:62:Assertion
# Test name: ColorTest::testDefaultConstructor
# expected exception not thrown
# - Expected: PdfError
sed -e 's:CPPUNIT_TEST( testDefaultConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testGreyConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testRGBConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testCMYKConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testColorSeparationAllConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testColorSeparationNoneConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testColorSeparationConstructor ://\0:' \
-e 's:CPPUNIT_TEST( testColorCieLabConstructor ://\0:' \
-i test/unit/ColorTest.h || die

# ColorTest.cpp:42:Assertion
# Test name: ColorTest::testHexNames
# assertion failed
# - Expression: static_cast<int>(rgb.GetGreen() * 255.0) == 0x0A
sed -e 's:CPPUNIT_TEST( testHexNames ://\0:' \
-i test/unit/ColorTest.h || die

# Bug #352125: test failure, depending on installed fonts
# ##Failure Location unknown## : Error
# Test name: FontTest::testFonts
# uncaught exception of type PoDoFo::PdfError
# - ePdfError_UnsupportedFontFormat
sed -e 's:CPPUNIT_TEST( testFonts ://\0:' \
-i test/unit/FontTest.h || die

# Test name: EncodingTest::testDifferencesEncoding
# equality assertion failed
# - Expected: 1
# - Actual : 0
sed -e 's:CPPUNIT_TEST( testDifferencesEncoding ://\0:' \
-i test/unit/EncodingTest.h || die

# Bug #407015: fix to compile with Lua 5.2
if has_version '>=dev-lang/lua-5.2' ; then
sed -e 's: lua_open(: luaL_newstate(:' \
-e 's: luaL_getn(: lua_rawlen(:' -i \
tools/podofocolor/luaconverter.cpp \
tools/podofoimpose/planreader_lua.cpp || die
fi
}

src_configure() {

# Bug #381359: undefined reference to `PoDoFo::PdfVariant::DelayedLoadImpl()'
filter-flags -fvisibility-inlines-hidden

mycmakeargs+=(
"-DPODOFO_BUILD_SHARED=1"
"-DPODOFO_HAVE_JPEG_LIB=1"
"-DPODOFO_HAVE_PNG_LIB=1"
"-DPODOFO_HAVE_TIFF_LIB=1"
"-DWANT_FONTCONFIG=1"
"-DUSE_STLPORT=0"
-DWANT_BOOST=$(usex boost ON OFF)
-DHAVE_LIBIDN=$(usex idn ON OFF)
-DPODOFO_HAVE_CPPUNIT=$(usex test ON OFF)
-DPODOFO_BUILD_LIB_ONLY=$(usex tools OFF ON)
)

cmake-utils_src_configure
mkdir -p "${S}/test/TokenizerTest/objects" || die
}

src_test() {
cd "${CMAKE_BUILD_DIR}"/test/unit
./podofo-test --selftest || die "self test failed"
}

0 comments on commit 289e000

Please sign in to comment.