summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/ghostscript/ghostscript_9.25.bb
diff options
context:
space:
mode:
authorJagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>2018-09-17 22:14:50 +0530
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-09-20 05:41:32 -0700
commitebecaa5f4814fa30d0b304c495ed4533bbffd5a6 (patch)
treec99267c1711cf17a9b6dcac7089506a697b4d8ba /meta/recipes-extended/ghostscript/ghostscript_9.25.bb
parent8a839b7e2bb1f19025a8dab388019697c7512500 (diff)
downloadpoky-ebecaa5f4814fa30d0b304c495ed4533bbffd5a6.tar.gz
ghostscript: upgrade to 9.25
Removed below patches, as v9.25 source already has those changes/security fixes: 0001-Bug-699665-memory-corruption-in-aesdecode.patch 0001-pdfwrite-Guard-against-trying-to-output-an-infinite-.patch 0002-Bug-699656-Handle-LockDistillerParams-not-being-a-bo.patch 0003-Fix-Bug-699660-shading_param-incomplete-type-checkin.patch 0004-Hide-the-.shfill-operator.patch 0005-Bug-699657-properly-apply-file-permissions-to-.tempf.patch remove-direct-symlink.patch Re-worked ghostscript-9.21-native-fix-disable-system-libtiff.patch and ghostscript-9.21-prevent_recompiling.patch to fix warnings in do_patch task of ghostscript v9.25 recipe. Highlights of ghostscript v9.25 release: --------------------------------------- - This release fixes problems with argument handling, some unintended results of the security fixes to the SAFER file access restrictions (specifically accessing ICC profile files), and some additional security issues over the recent 9.24 release. - Note: The ps2epsi utility does not, and cannot call Ghostscript with the -dSAFER command line option. It should never be called with input from untrusted sources. - Security issues have been the primary focus of this release, including solving several (well publicised) real and potential exploits. - As well as Ghostscript itself, jbig2dec has had a significant amount of work improving its robustness in the face of out specification files. - IMPORTANT: We are in the process of forking LittleCMS. LCMS2 is not thread safe, and cannot be made thread safe without breaking the ABI. Our fork will be thread safe, and include performance enhancements (these changes have all be been offered and rejected upstream). We will maintain compatibility between Ghostscript and LCMS2 for a time, but not in perpetuity. Our fork will be available as its own package separately from Ghostscript (and MuPDF). - The usual round of bug fixes, compatibility changes, and incremental improvements. (From OE-Core rev: 4340928b8878b91b5a2750eb6bc87918740511ca) Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended/ghostscript/ghostscript_9.25.bb')
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript_9.25.bb125
1 files changed, 125 insertions, 0 deletions
diff --git a/meta/recipes-extended/ghostscript/ghostscript_9.25.bb b/meta/recipes-extended/ghostscript/ghostscript_9.25.bb
new file mode 100644
index 0000000000..35eaaeb2fa
--- /dev/null
+++ b/meta/recipes-extended/ghostscript/ghostscript_9.25.bb
@@ -0,0 +1,125 @@
1SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter"
2DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \
3a back-end to a program such as ghostview, it can display PostScript and PDF \
4documents in an X11 environment. \
5\
6Furthermore, it can render PostScript and PDF files as graphics to be printed \
7on non-PostScript printers. Supported printers include common \
8dot-matrix, inkjet and laser models. \
9"
10HOMEPAGE = "http://www.ghostscript.com"
11SECTION = "console/utils"
12
13LICENSE = "GPLv3"
14LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc"
15
16DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng"
17DEPENDS_class-native = "libpng-native"
18
19UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases"
20UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
21
22SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs925/${BPN}-${PV}.tar.gz \
23 file://ghostscript-9.15-parallel-make.patch \
24 file://ghostscript-9.16-Werror-return-type.patch \
25 file://do-not-check-local-libpng-source.patch \
26 file://avoid-host-contamination.patch \
27 file://mkdir-p.patch \
28"
29
30SRC_URI = "${SRC_URI_BASE} \
31 file://ghostscript-9.21-prevent_recompiling.patch \
32 file://ghostscript-9.02-genarch.patch \
33 file://objarch.h \
34 file://cups-no-gcrypt.patch \
35 "
36
37SRC_URI_class-native = "${SRC_URI_BASE} \
38 file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \
39 file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \
40 "
41
42SRC_URI[md5sum] = "eebd0fadbfa8e800094422ce65e94d5d"
43SRC_URI[sha256sum] = "baafa64740b090bff50b220a6df3be95c46069b7e30f4b4effed28316e5b2389"
44
45# Put something like
46#
47# PACKAGECONFIG_append_pn-ghostscript = " x11"
48#
49# in local.conf to enable building with X11. Be careful. The order
50# of the overrides matters!
51#
52#PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
53PACKAGECONFIG_class-native = ""
54
55PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \
56 --without-x, virtual/libx11 libxext libxt gtk+3\
57 "
58
59EXTRA_OECONF = "--with-system-libtiff --without-jbig2dec \
60 --with-fontpath=${datadir}/fonts \
61 --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \
62 --with-cups-datadir=${datadir}/cups \
63 CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \
64 "
65
66EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0"
67
68# Explicity disable libtiff, fontconfig,
69# freetype, cups for ghostscript-native
70EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \
71 --without-jbig2dec \
72 --with-fontpath=${datadir}/fonts \
73 --without-libidn --disable-fontconfig \
74 --disable-freetype --disable-cups"
75
76# This has been fixed upstream but for now we need to subvert the check for time.h
77# http://bugs.ghostscript.com/show_bug.cgi?id=692443
78# http://bugs.ghostscript.com/show_bug.cgi?id=692426
79CFLAGS += "-DHAVE_SYS_TIME_H=1"
80BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1"
81
82inherit autotools
83
84do_configure_prepend () {
85 mkdir -p obj
86 mkdir -p soobj
87 if [ -e ${WORKDIR}/objarch.h ]; then
88 cp ${WORKDIR}/objarch.h obj/arch.h
89 fi
90}
91
92do_configure_append () {
93 # copy tools from the native ghostscript build
94 if [ "${PN}" != "ghostscript-native" ]; then
95 mkdir -p obj/aux soobj
96 for i in genarch genconf mkromfs echogs gendev genht packps; do
97 cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i
98 done
99 fi
100}
101
102do_install_append () {
103 mkdir -p ${D}${datadir}/ghostscript/${PV}/
104 cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/
105 cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/
106}
107
108do_compile_class-native () {
109 mkdir -p obj
110 for i in genarch genconf mkromfs echogs gendev genht packps; do
111 oe_runmake obj/aux/$i
112 done
113}
114
115do_install_class-native () {
116 install -d ${D}${bindir}/ghostscript-${PV}
117 for i in genarch genconf mkromfs echogs gendev genht packps; do
118 install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i
119 done
120}
121
122BBCLASSEXTEND = "native"
123
124# ghostscript does not supports "arc"
125COMPATIBLE_HOST = "^(?!arc).*"