diff --git a/app-text/poppler/patches/poppler-23.09.0.patchset b/app-text/poppler/patches/poppler-23.09.0.patchset new file mode 100644 index 000000000..94b3b5960 --- /dev/null +++ b/app-text/poppler/patches/poppler-23.09.0.patchset @@ -0,0 +1,23 @@ +From 27bd78bdb38a78e4f776e463e2b3947a578d0d67 Mon Sep 17 00:00:00 2001 +From: Begasus +Date: Thu, 24 Aug 2023 13:40:34 +0200 +Subject: Turn off POSITION_INDEPENDENT_CODE + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f0887a8..5d909aa 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -19,6 +19,9 @@ set(CMAKE_TRY_COMPILE_CONFIGURATION "${_CMAKE_BUILD_TYPE_UPPER}") + + include(MacroOptionalFindPackage) + find_package(PkgConfig) ++ ++set(CMAKE_POSITION_INDEPENDENT_CODE OFF) ++ + include(TestBigEndian) + test_big_endian(WORDS_BIGENDIAN) + include(CheckFileOffsetBits) +-- +2.37.3 + diff --git a/app-text/poppler/poppler23-23.09.0.recipe b/app-text/poppler/poppler23-23.09.0.recipe new file mode 100644 index 000000000..6a4c92fb3 --- /dev/null +++ b/app-text/poppler/poppler23-23.09.0.recipe @@ -0,0 +1,538 @@ +SUMMARY="A PDF rendering library" +DESCRIPTION="Poppler is a PDF rendering library based on the xpdf-3.0 code \ +base." +HOMEPAGE="https://poppler.freedesktop.org/" +COPYRIGHT="2008 Adam Batkin + Adobe Systems Inc. + 2012-2015 Adam Reichold + 2007-2017 Adrian Johnson + 2008 Adrian Page + 2013 Adrian Perez de Castro + 2014 Aki Koskinen + 2004-2017 Albert Astals Cid + 2015 Aleksei Volkov + 2006-2010 Alexander Neundorf + 2012 Alexander Saprykin + 2012 Alexey Pavlov + 2016 Alok Anand + 2015 André Esser + 2015 André Guerreiro + 2011 Andrea Canciani + 2011 Andreas Hartmetz + 2013 Anthony Granger + 2012 Anthony Wesley + 2014 Anuj Khare + 2015-2016 Arseniy Lartsev + 2012 Arseny Solokha + 2015 Arthur Stavisky + 2009, 2011 Axel Strübing + 2014 Bogdan Cristea + 2008 Boris Toloknov + 2005-2008 Brad Hards + 2010 Brian Cameron + 2010 Brian Ewins + 2016-2017 Caolán McNamara + 2006-2016 Carlos Garcia Campos + 2008 Carl Worth + 2010 Christian Feuersänger + 2009 Christian Persch + 2008-2009 Chris Wilson + 2017 Christoph Cullmann + 2013 Christoph Duelli + 1998-2003 Daniel Veillard + 2011 Daiki Ueno + 2005 Dan Sheridan + 2011 Daniel Glöckner + 2013 Daniel Kahn Gillmor + 2011 Daniel Richard G. + 2009 Darren Kenny + 2009-2010 David Benjamin + 2006 David Faure + 1997, Derek B. Noonburg + 2015 Dmytro Morgun + 2013 Dominik Haumann + 2006-2007 Dominic Lachowicz + 2008 Ed Avis + 2006-2007, 2013 Ed Catmur + 2014 Ed Porras + 2011 Edward Jiang + 2004 Enrico Ros + 2009 Eric Toombs + 2012, 2015 Even Rouault + 2012-2014 Fabio D'Urso + 2017 Francesco Poli + 1989, 1991-2016 Free Software Foundation, Inc. + 2012 Gerald Schmidt + 2013 German Poo-Caamano + 2011 Glad Deschrijver + 1996-2013 Glyph & Cog, LLC. + 2009 Glenn Ganz + 1999-2000 Gueorgui Ovtcharov + 2010, 2012 Guillermo A. Amaral B. + 2016 Hanno Meyer-Thurow + 2014-2015 Hans-Peter Deifel + 2017 Hans-Ulrich Jüttner + 2010 Harry Roberts + 2008 Haruyuki Kawabe + 2008, 2010-2014 Hib Eris + 2012 Horst Prote + 2017 Hubert Figuière + 2008 Hugo Mercier + 2013-2014 Igalia S.L. + 2011-2012 Igor Slepchin + 2012 Ihar Filipau + 2007 Ilmari Heikkinen + 2008-2010 Ilya Gorenbein + 2007-2008 Iñigo Martínez + Insight Consortium + 2016 Jakub Alba + 2010 Jakob Voss + 2016 Jakub Kucharski + 2009-2010, 2015 Jakub Wilk + 2017 Jan-Erik S + 2009 Jan Jockusch + 2010 Jan Kümmel + 2017 Jason Alan Palmer + 2012-2016 Jason Crain + 2006-2007 Jauco Noordzij + 2005-2008 Jeff Muizelaar + 2016 Jeffrey Morlan + 2015 Jeremy Echols + Jerry Epplin + 2011 Jim Meyering + 2014 Jiri Slaby + 2013 Johannes Brandstätter + 2005 Jonathan Blandford + 2007-2009 Jonathan Kew + 2010 Jonathan Liu + 2011, 2013 José Aliste + 2011 Joshua Richardson + 2013 Julien Nabet + 2006-2008 Julien Rebetez + 2010 Jürg Billeter + 2016 Khaled Hosny + 2009 KDAB via Guillermo Amaral + 2010 Kenneth Berland + 2008 Kees Cook + 2011, 2015 Kenji Uno + 2002 Kitware, Inc. + 2008 Kjartan Maraas + 2007-2009, 2012 Koji Otani + 2006-2007 Kouhei Sutou + 2009 Kovid Goyal + 2005-2007 Kristian Høgsberg + 2006-2007 Krzysztof Kowalczyk + 2006-2007 Laurent Montel + 2017 Léonard Michelet + 2013, 2015 Li Junling + 2012-2013 Lu Wang + 2014 Luigi Scarso + 2012 Luis Parravicini + 2005 Marco Pesenti Gritti + 2010, 2012, 2014-2015 Marek Kasik + 2012 Mark Brand + 2008 Mark Kaplan + 2010, 2012 Mark Riedesel + 2015 Markus Kilås + 2012 Markus Trippelsdorf + 2005 Martin Kretzschmar + 2016 Masamichi Hosoda + 2009 Matthias Drochner + 2010 Matthias Fauconneau + 2009 Matthias Franz + 2012 Matthias Kramm + 2009 Michael K. Johnson + 2008 Michael Vrable + 2013 Michael Weiser + 2009 M Joonas Pihlaja + 2010 Mike Slegeir + 2009 Mozilla Corporation + 2005 Net Integration Technologies, Inc. + 2009 Nick Jones + 2005-2006 Nickolay V. Shmyrev + 2010 Nils Höglund + 2012-2017 Oliver Sander + 2014 Olly Betts + 2010 OSSD CDAC Mumbai by Leena Chourey and Onkar Potdar + 2012 Patrick Pfeifer + 2010 Patrick Spendrin + 2006 Paul Walmsley + 2010 Paweł Wiejacha + 2012-2014 Peter Breitenlohner + 2009 Peter Kerzum + 2009, 2015 Petr Gajdos + 2010 Philip Lorenz + 2015 Philipp Reinkemeier + 2006-2014 Pino Toscano + Rainer Dorsch + 2006 Rainer Keller + 2006 Raj Kumar + 2009 Reece Dunn + 2004-2006 Red Hat, Inc. + 2008 Richard Airlie + 2014 Richard PALO + 2014 Rodrigo Rivas Costa + 2017 Roland Hieber + 2009 Ross Moore + 2009 Ryszard Trojnacki + 2011 Sam Liao + 2009 Sanjoy Mahajan + 2004 Scott James Remnant + 2006 Scott Turner + 2014 Scott West + 2017 Sebastian Rasmussen + 2009 Shawn Rutledge + 2009 Shen Liang + 2011 Simon Kellner + 2010 Srinivas Adicherla + 2005-2006 Stefan Kebekus + 2006 Stefan Schweizer + 2009 Stefan Thomas + 2011 Stephen Reichling + 2008 Steven G. Johnson + 2014 Steven Lee + 2011 Steven Murdoch + 2010, 2012-2013, 2015 Suzuki Toshiya + 2015 Tamas Szekeres + 2005-2006 Takashi Iwai + 2016 Takahiro Hashimoto + The GLib Team + 2005-2010 The Poppler Developers + 2013 Thomas Fischer + 2009-2017 Thomas Freitag + 2011 Thomas Klausner + 2006 Thorkild Stray + 2009, 2014 Till Kamppeter + 2008 Timothy Lee + 2017 Tobias C. Berner + 2005, 2012, 2015 Tobias Koening + 2011 Tom Gleason + 2008 Tomas Are Haavet + 2010-2011 Tomas Hoger + 2016 Tor Lillqvist + 2008 Vasile Gaburici + 2016 Vincent Le Garrec + 2011 Vittal Aithal + 2012 Yi Yang + 2013 Yury G. Kudryashov + 2008-2009 Warren Toomey + 2006 Wilfried Huss + 2009-2016 William Bader + 2007 Will Stephenson + 1994 X Consortium" +LICENSE="GNU GPL v2" +REVISION="1" +SOURCE_URI="https://poppler.freedesktop.org/poppler-$portVersion.tar.xz" +CHECKSUM_SHA256="80d1d44dd8bdf4ac1a47d56c5065075eb9991790974b1ed7d14b972acde88e55" +SOURCE_DIR="poppler-$portVersion" +PATCHES="poppler-$portVersion.patchset" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +libVersion="131.0.0" +libCppVersion="0.11.0" +libGlibVersion="8.26.0" +libQt5Version="1.33.0" +libQt6Version="3.4.0" +libVersionCompat="$libVersion compat >= ${libVersion%%.*}" +libCppVersionCompat="$libCppVersion compat >= ${libCppVersion%%.*}" +libGlibVersionCompat="$libGlibVersion compat >= ${libGlibVersion%%.*}" +libQt5VersionCompat="$libQt5Version compat >= ${libQt5Version%%.*}" +libQt6VersionCompat="$libQt6Version compat >= ${libQt6Version%%.*}" + +PROVIDES=" + poppler23$secondaryArchSuffix = $portVersion + lib:libpoppler$secondaryArchSuffix = $libVersionCompat + lib:libpoppler_cpp$secondaryArchSuffix = $libCppVersionCompat + " +REQUIRES=" + haiku$secondaryArchSuffix + poppler_data >= 0.4.11 + lib:libcairo$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:liblcms2$secondaryArchSuffix +# lib:libnspr4$secondaryArchSuffix +# lib:libnss3$secondaryArchSuffix +# lib:libnssutil3$secondaryArchSuffix + lib:libopenjp2$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix +# lib:libsmime3$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +PROVIDES_devel=" + poppler23${secondaryArchSuffix}_devel = $portVersion + devel:libpoppler$secondaryArchSuffix = $libVersionCompat + devel:libpoppler_cpp$secondaryArchSuffix = $libCppVersionCompat + devel:libpoppler_glib$secondaryArchSuffix = $libGlibVersionCompat + devel:libpoppler_qt5$secondaryArchSuffix = $libQt5VersionCompat + devel:libpoppler_qt6$secondaryArchSuffix = $libQt6VersionCompat + " +REQUIRES_devel=" + haiku${secondaryArchSuffix}_devel + poppler23$secondaryArchSuffix == $portVersion base + lib:libpoppler_glib$secondaryArchSuffix + lib:libpoppler_qt5$secondaryArchSuffix + lib:libpoppler_qt6$secondaryArchSuffix + devel:libcairo$secondaryArchSuffix + devel:libcurl$secondaryArchSuffix + devel:libfontconfig$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix + devel:libgio_2.0$secondaryArchSuffix + devel:libglib_2.0$secondaryArchSuffix + devel:libgobject_2.0$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix + devel:libintl$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:liblcms2$secondaryArchSuffix +# devel:libnspr4$secondaryArchSuffix +# devel:libnss3$secondaryArchSuffix + devel:libopenjp2$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix + devel:libQt5Core$secondaryArchSuffix + devel:libQt5Gui$secondaryArchSuffix + devel:libQt5Widgets$secondaryArchSuffix + devel:libQt5Xml$secondaryArchSuffix + devel:libQt6Core$secondaryArchSuffix + devel:libQt6Gui$secondaryArchSuffix + devel:libQt6Widgets$secondaryArchSuffix + devel:libQt6Xml$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +CONFLICTS_devel=" + poppler${secondaryArchSuffix}_devel + " + +# GLIB +SUMMARY_glib="$SUMMARY (glib bindings)" +DESCRIPTION_glib="$DESCRIPTION (glib bindings)" + +PROVIDES_glib=" + poppler23${secondaryArchSuffix}_glib = $portVersion + lib:libpoppler_glib$secondaryArchSuffix = $libGlibVersionCompat + " +REQUIRES_glib=" + haiku$secondaryArchSuffix + poppler23$secondaryArchSuffix == $portVersion base + lib:libcairo$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libgio_2.0$secondaryArchSuffix + lib:libglib_2.0$secondaryArchSuffix + lib:libgobject_2.0$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:liblcms2$secondaryArchSuffix + lib:libopenjp2$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " +CONFLICTS_glib=" + poppler${secondaryArchSuffix}_glib + " + +# QT5 +SUMMARY_qt5="$SUMMARY (Qt5 bindings)" +DESCRIPTION_qt5="$DESCRIPTION (Qt5 bindings)" + +PROVIDES_qt5=" + poppler23${secondaryArchSuffix}_qt5 = $portVersion + lib:libpoppler_qt5$secondaryArchSuffix = $libQt5VersionCompat + " +REQUIRES_qt5=" + haiku$secondaryArchSuffix + poppler23$secondaryArchSuffix == $portVersion base + lib:libcurl$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:liblcms2$secondaryArchSuffix + lib:libopenjp2$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libQt5Core$secondaryArchSuffix + lib:libQt5Gui$secondaryArchSuffix + lib:libQt5Widgets$secondaryArchSuffix + lib:libQt5Xml$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " +CONFLICTS_qt5=" + poppler${secondaryArchSuffix}_qt5 + " + +# QT6 +SUMMARY_qt6="$SUMMARY (Qt6 bindings)" +DESCRIPTION_qt6="$DESCRIPTION (Qt6 bindings)" + +PROVIDES_qt6=" + poppler23${secondaryArchSuffix}_qt6 = $portVersion + lib:libpoppler_qt6$secondaryArchSuffix = $libQt6VersionCompat + " +REQUIRES_qt6=" + haiku$secondaryArchSuffix + poppler23$secondaryArchSuffix == $portVersion base + lib:libcurl$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:liblcms2$secondaryArchSuffix + lib:libopenjp2$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libQt6Core$secondaryArchSuffix + lib:libQt6Gui$secondaryArchSuffix + lib:libQt6Widgets$secondaryArchSuffix + lib:libQt6Xml$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " +CONFLICTS_qt6=" + poppler${secondaryArchSuffix}_qt6 + " + +SUMMARY_tools="Binaries for the poppler package" +PROVIDES_tools=" + poppler23${secondaryArchSuffix}_tools + cmd:pdfattach + cmd:pdfdetach + cmd:pdffonts + cmd:pdfimages + cmd:pdfinfo + cmd:pdfseparate + cmd:pdfsig + cmd:pdftocairo + cmd:pdftohtml + cmd:pdftoppm + cmd:pdftops + cmd:pdftotext + cmd:pdfunite + " +REQUIRES_tools=" + poppler23$secondaryArchSuffix == $portVersion base + haiku$secondaryArchSuffix + lib:libcairo$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:liblcms2$secondaryArchSuffix + " +CONFLICTS_tools=" + poppler${secondaryArchSuffix}_tools + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + poppler_data >= 0.4.12 + devel:libboost_system$secondaryArchSuffix >= 1.83.0 + devel:libcairo$secondaryArchSuffix + devel:libcurl$secondaryArchSuffix + devel:libfontconfig$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix + devel:libgio_2.0$secondaryArchSuffix + devel:libglib_2.0$secondaryArchSuffix + devel:libgobject_2.0$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix + devel:libintl$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:liblcms2$secondaryArchSuffix +# devel:libnspr4$secondaryArchSuffix +# devel:libnss3$secondaryArchSuffix + devel:libopenjp2$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix + devel:libQt5Core$secondaryArchSuffix + devel:libQt5Gui$secondaryArchSuffix + devel:libQt5Widgets$secondaryArchSuffix + devel:libQt5Xml$secondaryArchSuffix + devel:libQt6Core$secondaryArchSuffix + devel:libQt6Gui$secondaryArchSuffix + devel:libQt6Widgets$secondaryArchSuffix + devel:libQt6Xml$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:gawk + cmd:grep + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:perl + cmd:pkg_config$secondaryArchSuffix + " + +defineDebugInfoPackage poppler23$secondaryArchSuffix \ + "$(getPackagePrefix tools)"/bin/pdfdetach \ + "$(getPackagePrefix tools)"/bin/pdffonts \ + "$(getPackagePrefix tools)"/bin/pdfimages \ + "$(getPackagePrefix tools)"/bin/pdfinfo \ + "$(getPackagePrefix tools)"/bin/pdfseparate \ + "$(getPackagePrefix tools)"/bin/pdftocairo \ + "$(getPackagePrefix tools)"/bin/pdftohtml \ + "$(getPackagePrefix tools)"/bin/pdftoppm \ + "$(getPackagePrefix tools)"/bin/pdftops \ + "$(getPackagePrefix tools)"/bin/pdftotext \ + "$(getPackagePrefix tools)"/bin/pdfunite \ + "$libDir"/libpoppler.so.$libVersion \ + "$libDir"/libpoppler-cpp.so.$libCppVersion \ + "$(getPackagePrefix glib)/$relativeLibDir"/libpoppler-glib.so.$libGlibVersion \ + "$(getPackagePrefix qt5)/$relativeLibDir"/libpoppler-qt5.so.$libQt5Version \ + "$(getPackagePrefix qt6)/$relativeLibDir"/libpoppler-qt6.so.$libQt6Version + +BUILD() +{ + cmake -B build -S. $cmakeDirArgs \ + -DCMAKE_CXX_FLAGS="-D_BSD_SOURCE" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \ + -DBUILD_QT5_TESTS=OFF \ + -DBUILD_QT6_TESTS=OFF \ + -DBUILD_CPP_TESTS=OFF \ + -DBUILD_MANUAL_TESTS=OFF + make -C build $jobArgs +} + +INSTALL() +{ + make -C build install + + prepareInstalledDevelLibs libpoppler \ + libpoppler-cpp \ + libpoppler-glib \ + libpoppler-qt5 \ + libpoppler-qt6 + fixPkgconfig + + mkdir -p $(dirname $includeDir) + mv $prefix/include $includeDir + rm -rf $prefix/share + + # GLIB + packageEntries "glib" \ + $libDir/*glib* + + # QT5 + packageEntries "qt5" \ + $libDir/*qt5* + + # QT6 + packageEntries "qt6" \ + $libDir/*qt6* + + # Tools + packageEntries tools \ + $prefix/bin \ + $manDir + + # DEVEL + packageEntries devel \ + $developDir +}