blob: 81e776d8f647fd2359b8af161eff887fb5969a50 [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001SUMMARY = "Poppler is a PDF rendering library based on the xpdf-3.0 code base"
2HOMEPAGE = "https://poppler.freedesktop.org/"
3LICENSE = "GPL-2.0-only"
4LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
5
6SRC_URI = "http://poppler.freedesktop.org/${BP}.tar.xz \
7 file://0001-Do-not-overwrite-all-our-build-flags.patch \
8 file://basename-include.patch \
Andrew Geisslerc5535c92023-01-27 16:10:19 -06009 file://0001-cmake-Do-not-use-isystem.patch \
Andrew Geissler1e488cd2023-10-03 09:44:52 -050010 file://CVE-2023-34872.patch \
Andrew Geissler517393d2023-01-13 08:55:19 -060011 "
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050012SRC_URI[sha256sum] = "b04148bf849c1965ada7eff6be4685130e3a18a84e0cce73bf9bc472ec32f2b4"
Andrew Geissler517393d2023-01-13 08:55:19 -060013
14DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
15
16inherit cmake pkgconfig gobject-introspection
17
18PACKAGECONFIG ??= "jpeg openjpeg png tiff nss splash"
19PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON -DENABLE_DCTDECODER=libjpeg,-DWITH_JPEG=OFF -DENABLE_DCTDECODER=none,jpeg"
20PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng"
21PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff"
22PACKAGECONFIG[curl] = "-DENABLE_LIBCURL=ON,-DENABLE_LIBCURL=OFF,curl"
23PACKAGECONFIG[openjpeg] = "-DENABLE_LIBOPENJPEG=openjpeg2,-DENABLE_LIBOPENJPEG=none,openjpeg"
24PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON,-DENABLE_QT5=OFF,qtbase qttools-native"
25PACKAGECONFIG[nss] = "-DWITH_NSS3=ON,-DWITH_NSS3=OFF,nss"
26PACKAGECONFIG[splash] = "-DENABLE_SPLASH=ON -DENABLE_BOOST=ON,-DENABLE_SPLASH=OFF -DENABLE_BOOST=OFF,boost"
27
28# surprise - did not expect this to work :)
29inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)}
30
31SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
32
33EXTRA_OECMAKE += " \
34 -DENABLE_CMS=lcms2 \
35 -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
36 -DBUILD_GTK_TESTS=OFF \
37 -DENABLE_ZLIB=ON \
38 -DRUN_GPERF_IF_PRESENT=OFF \
39 -DCMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES:PATH='${STAGING_INCDIR}' \
40 ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_GOBJECT_INTROSPECTION=ON', '-DENABLE_GOBJECT_INTROSPECTION=OFF', d)} \
41"
42EXTRA_OECMAKE:append:class-native = " -DENABLE_CPP=OFF"
43
44do_configure:append() {
45 # poppler macro uses pkg-config to check for g-ir runtimes. Something
46 # makes them point to /usr/bin. Align them to sysroot - that's where the
47 # gir-wrappers are:
48 sed -i 's: ${bindir}/g-ir: ${STAGING_BINDIR}/g-ir:' ${B}/build.ninja
49}
50
51PACKAGES =+ "libpoppler libpoppler-glib"
52FILES:libpoppler = "${libdir}/libpoppler.so.*"
53FILES:libpoppler-glib = "${libdir}/libpoppler-glib.so.*"
54
55RDEPENDS:libpoppler = "poppler-data"
56
57BBCLASSEXTEND = "native"