From 441d1370330332b7d78f238d2f5e13f7aed5e4e0 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 25 Dec 2020 23:06:25 +0000 Subject: gentoo christmass resync : 25.12.2020 --- app-text/podofo/Manifest | 2 + .../podofo-0.9.6_p20190928-cmake_lua_version.patch | 15 ++ app-text/podofo/podofo-0.9.6_p20190928-r100.ebuild | 159 +++++++++++++++++++++ 3 files changed, 176 insertions(+) create mode 100644 app-text/podofo/files/podofo-0.9.6_p20190928-cmake_lua_version.patch create mode 100644 app-text/podofo/podofo-0.9.6_p20190928-r100.ebuild (limited to 'app-text/podofo') diff --git a/app-text/podofo/Manifest b/app-text/podofo/Manifest index be47612bad78..2f40aafb77fc 100644 --- a/app-text/podofo/Manifest +++ b/app-text/podofo/Manifest @@ -1,3 +1,5 @@ +AUX podofo-0.9.6_p20190928-cmake_lua_version.patch 522 BLAKE2B b911b2ab2b35f5eccb58b32e575a775fe43cac1576831bb4e47d10c666a1e7040d8c01c865ee63ef1c3ff3c1a1feb2059dc25c71924b61995302dad21c32c868 SHA512 953f41b44468918aa96af42ecf3de8e3dd0d7721ed7c6283d8a6d44941caf70d9ef63d7d59ee1d94081fdc91a915ba8770bc335f8af5d60b24cd1f6c04698f6f DIST podofo-0.9.6_p20190928.tar.xz 747532 BLAKE2B 39d051e6adca85bf0f124e5d48e1ff88dc951d7c1b38bc76dc7e3640ea9c3f8a59c6ba9a9105a263234e94932e450bec12dde455850dbf96cd7eec3e69a1a28d SHA512 b9d46fb02eeba61190a0efd17b507bba62d7246af6fff3c3514c9970e99e085f9aad92baa05cc6cf0a8c3c2843554099c904bff10be54dbb4d4cb7de460fc3cc +EBUILD podofo-0.9.6_p20190928-r100.ebuild 4846 BLAKE2B b61750e756ecb2bc82bac3d5efdfbd04f1086956de60c982f9c75b4ad02eecd11de12c13bd791a03c345adc48a187eb8b4c9739317b506a55ae4121f51fe10d3 SHA512 d6f532ddf3f86d1ae9658b3b7468fc10022edf905ec8431c3e4f5c7bcac0f34cb9387b94e542b3f0dd303cb6fb7536f0138604bc05433a799488fba2eaa36c4d EBUILD podofo-0.9.6_p20190928.ebuild 4666 BLAKE2B 6af9d14f8e2ad0d3c55d6f3add49d9f70322a189d25960e46b0ba3cb56105bf864b4a76b32a47febf74072a8a95c491997ba2ed3ed3c2e6bc2383efde706e241 SHA512 380a8ae526de4d43ad6bc4e7e6d444010855c2853239248daed8105a65bd9f97fd8e30f57219952a9a6fcc0b752fc575f9bcdf0766c04a3887a2c93877326e18 MISC metadata.xml 509 BLAKE2B 5bcba752f845dba107a60068a4be60776e8fba516b42a2434bed1173786117054eb77e933b667604c96c10bbc5ced810b8590c77626d13a575857ec1ba253dbb SHA512 ad2bbc4598d80be1fcd4fdbfe0a08bec65795f23e768762dc02be766d82cf1549b6861bd8e96bd72b468674ab1e36ebbead3464dc647378b72a8679fcf422236 diff --git a/app-text/podofo/files/podofo-0.9.6_p20190928-cmake_lua_version.patch b/app-text/podofo/files/podofo-0.9.6_p20190928-cmake_lua_version.patch new file mode 100644 index 000000000000..f178ae2a6c0c --- /dev/null +++ b/app-text/podofo/files/podofo-0.9.6_p20190928-cmake_lua_version.patch @@ -0,0 +1,15 @@ +Switch from the non-standard upstream CMake Lua module to the one bundled +with CMake, use only the Lua version requested by the ebuild, and do not +semi-quietly ignore the absence of Lua. + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -433,7 +433,7 @@ + ENDIF(WANT_FONTCONFIG) + + IF(NOT PODOFO_BUILD_LIB_ONLY) +-FIND_PACKAGE(LUA) ++FIND_PACKAGE(Lua ${LUA_VERSION} EXACT REQUIRED) + IF(LUA_FOUND) + # If we have lua, we can build podofoimpose. + MESSAGE("Lua found - PoDoFoImpose and PoDoFoColor will be built with Lua support") diff --git a/app-text/podofo/podofo-0.9.6_p20190928-r100.ebuild b/app-text/podofo/podofo-0.9.6_p20190928-r100.ebuild new file mode 100644 index 000000000000..cf6bcc0de02b --- /dev/null +++ b/app-text/podofo/podofo-0.9.6_p20190928-r100.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..4} ) + +inherit cmake flag-o-matic lua-single toolchain-funcs + +DESCRIPTION="PoDoFo is a C++ library to work with the PDF file format" +HOMEPAGE="https://sourceforge.net/projects/podofo/" +SRC_URI="https://dev.gentoo.org/~zmedico/dist/${P}.tar.xz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0/${PV%_*}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +IUSE="+boost idn libressl debug test +tools" +RESTRICT="!test? ( test )" +REQUIRED_USE="${LUA_REQUIRED_USE} + test? ( tools )" + +RDEPEND="${LUA_DEPS} + 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 )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.9.6_p20190928-cmake_lua_version.patch +) + +DOCS="AUTHORS ChangeLog TODO" + +src_prepare() { + cmake_src_prepare + local x sed_args + + if use libressl; then + sed -e 's:^#ifdef PODOFO_HAVE_OPENSSL_1_1$:#ifndef PODOFO_HAVE_OPENSSL_1_1:' \ + -i tools/podofosign/podofosign.cpp || die #663602 + fi + + # 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 $:#include \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(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+ + case "${ELUA}" in + lua5-1|luajit) + ;; + *) + sed -e 's: lua_open(: luaL_newstate(:' \ + -e 's: luaL_getn(: lua_rawlen(:' -i \ + tools/podofocolor/luaconverter.cpp \ + tools/podofoimpose/planreader_lua.cpp || die + ;; + esac +} + +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" + -DLUA_VERSION="$(lua_get_version)" + -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_src_configure + mkdir -p "${S}/test/TokenizerTest/objects" || die +} + +src_test() { + cd "${BUILD_DIR}"/test/unit || die + ./podofo-test --selftest || die "self test failed" +} -- cgit v1.2.3