mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
This option is added by ghostscript and is passed down to its modules
e.g. brotli, brotli does expect c99 or newer standard and hence uses
declarations after statement. This option causes compiler e.g. clang
to find this warning and treat it as error on 32bit builds
./brotli/c/dec/decode.c:440:12: error: mixing declarations and code is incompatible with standards before C99 [-Werror,-Wdeclaration-after-statement]
440 | uint32_t __fastload_table = (*table);
| ^
1 error generated.
(From OE-Core rev: 9b8e0b9a30f1de8bd1816f2528bc696f769dd8dc)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
77 lines
3.0 KiB
BlitzBasic
77 lines
3.0 KiB
BlitzBasic
SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter"
|
|
DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \
|
|
a back-end to a program such as ghostview, it can display PostScript and PDF \
|
|
documents in an X11 environment. \
|
|
\
|
|
Furthermore, it can render PostScript and PDF files as graphics to be printed \
|
|
on non-PostScript printers. Supported printers include common \
|
|
dot-matrix, inkjet and laser models. \
|
|
"
|
|
HOMEPAGE = "http://www.ghostscript.com"
|
|
SECTION = "console/utils"
|
|
|
|
LICENSE = "AGPL-3.0-or-later"
|
|
LIC_FILES_CHKSUM = "file://LICENSE;md5=f98ffa763e50cded76f49bce73aade16"
|
|
|
|
DEPENDS = "tiff jpeg fontconfig cups libpng freetype zlib"
|
|
|
|
UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases"
|
|
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
|
|
|
|
def gs_verdir(v):
|
|
return "".join(v.split("."))
|
|
|
|
SRC_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${@gs_verdir("${PV}")}/${BPN}-${PV}.tar.gz \
|
|
file://ghostscript-9.16-Werror-return-type.patch \
|
|
file://avoid-host-contamination.patch \
|
|
file://0001-Fix-32-bit-build.patch \
|
|
"
|
|
|
|
SRC_URI[sha256sum] = "5bd6da34794928cc7e616f288e32bd0be7f9a5ca2d3c206a0af2c19a4e3a318f"
|
|
|
|
PACKAGECONFIG ??= ""
|
|
PACKAGECONFIG[gtk] = "--enable-gtk,--disable-gtk,gtk+3"
|
|
PACKAGECONFIG[libidn] = "--with-libidn,--without-libidn,libidn"
|
|
PACKAGECONFIG[libpaper] = "--with-libpaper,--without-libpaper,libpaper"
|
|
PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \
|
|
--without-x, virtual/libx11 libxext libxt"
|
|
|
|
EXTRA_OECONF = "--with-jbig2dec \
|
|
--with-fontpath=${datadir}/fonts \
|
|
CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \
|
|
PKGCONFIG=pkg-config \
|
|
"
|
|
|
|
EXTRA_OECONF:append:mipsarcho32 = " --with-large_color_index=0"
|
|
|
|
EXTRA_OECONF:append:armv7a = "${@bb.utils.contains('TUNE_FEATURES','neon','',' --disable-neon',d)}"
|
|
EXTRA_OECONF:append:armv7ve = "${@bb.utils.contains('TUNE_FEATURES','neon','',' --disable-neon',d)}"
|
|
|
|
TARGET_CFLAGS += "-std=gnu17 -Wno-error=declaration-after-statement -fPIC"
|
|
|
|
# Uses autoconf but not automake, can't do out-of-tree
|
|
inherit autotools-brokensep pkgconfig
|
|
|
|
# Prune the source tree of libraries that we're using our packaging of, so that
|
|
# ghostscript can't link to them. Can't prune zlib as that's needed for the
|
|
# native tools.
|
|
prune_sources() {
|
|
rm -rf ${S}/jpeg/ ${S}/libpng/ ${S}/tiff/ ${S}/expat/ ${S}/freetype/ ${S}/cups/lib
|
|
}
|
|
do_unpack[postfuncs] += "prune_sources"
|
|
|
|
do_install:append () {
|
|
oe_runmake DESTDIR=${D} install-so
|
|
oe_runmake DESTDIR=${D} install-data
|
|
cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/
|
|
cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/
|
|
}
|
|
|
|
# ghostscript does not supports "arc"
|
|
COMPATIBLE_HOST = "^(?!arc).*"
|
|
|
|
# some entries in NVD uses gpl_ghostscript
|
|
CVE_PRODUCT = "ghostscript gpl_ghostscript"
|
|
|
|
CVE_STATUS[CVE-2023-38560] = "not-applicable-config: PCL isn't part of the Ghostscript release"
|