summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended
diff options
context:
space:
mode:
authorJoe Slater <jslater@windriver.com>2017-06-15 14:35:26 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-06-23 11:44:13 +0100
commitd3e8504ce7a25908fe5ad7973d807d199950dc9a (patch)
tree767fdefdb315ad3dabe68ec465f92d9816b06fe3 /meta/recipes-extended
parenta16d0f6c496f4c8c61accbabd6769839bda62f36 (diff)
downloadpoky-d3e8504ce7a25908fe5ad7973d807d199950dc9a.tar.gz
ghostscript: move to version 9.21
Eliminate CVE patches that are now in source. Add CUPSCONFIG to configure options. (From OE-Core rev: 3041f94896b50a5a5d19caf0dd0e7910c730e18e) Signed-off-by: Joe Slater <jslater@windriver.com> to be scrunched Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended')
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10219.patch49
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10220.patch55
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7978.patch30
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7979.patch48
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2016-8602.patch47
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/CVE-2017-7975.patch23
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch19
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-native-fix-disable-system-libtiff.patch (renamed from meta/recipes-extended/ghostscript/ghostscript/ghostscript-native-fix-disable-system-libtiff.patch)22
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-prevent_recompiling.patch (renamed from meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-prevent_recompiling.patch)25
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript/mkdir-p.patch36
-rw-r--r--meta/recipes-extended/ghostscript/ghostscript_9.21.bb (renamed from meta/recipes-extended/ghostscript/ghostscript_9.20.bb)20
11 files changed, 98 insertions, 276 deletions
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10219.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10219.patch
deleted file mode 100644
index 574abe0e42..0000000000
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10219.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From 4bef1a1d32e29b68855616020dbff574b9cda08f Mon Sep 17 00:00:00 2001
2From: Robin Watts <Robin.Watts@artifex.com>
3Date: Thu, 29 Dec 2016 15:57:43 +0000
4Subject: [PATCH] Bug 697453: Avoid divide by 0 in scan conversion code.
5
6Arithmetic overflow due to extreme values in the scan conversion
7code can cause a division by 0.
8
9Avoid this with a simple extra check.
10
11 dx_old=cf814d81
12 endp->x_next=b0e859b9
13 alp->x_next=8069a73a
14
15leads to dx_den = 0
16
17Upstream-Status: Backport
18CVE: CVE-2016-10219
19
20Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
21---
22 base/gxfill.c | 4 ++--
23 1 file changed, 2 insertions(+), 2 deletions(-)
24
25diff --git a/base/gxfill.c b/base/gxfill.c
26index 99196c0..2f81bb0 100644
27--- a/base/gxfill.c
28+++ b/base/gxfill.c
29@@ -1741,7 +1741,7 @@ intersect(active_line *endp, active_line *alp, fixed y, fixed y1, fixed *p_y_new
30 fixed dx_old = alp->x_current - endp->x_current;
31 fixed dx_den = dx_old + endp->x_next - alp->x_next;
32
33- if (dx_den <= dx_old)
34+ if (dx_den <= dx_old || dx_den == 0)
35 return false; /* Intersection isn't possible. */
36 dy = y1 - y;
37 if_debug3('F', "[F]cross: dy=%g, dx_old=%g, dx_new=%g\n",
38@@ -1750,7 +1750,7 @@ intersect(active_line *endp, active_line *alp, fixed y, fixed y1, fixed *p_y_new
39 /* Do the computation in single precision */
40 /* if the values are small enough. */
41 y_new =
42- ((dy | dx_old) < 1L << (size_of(fixed) * 4 - 1) ?
43+ (((ufixed)(dy | dx_old)) < (1L << (size_of(fixed) * 4 - 1)) ?
44 dy * dx_old / dx_den :
45 (INCR_EXPR(mq_cross), fixed_mult_quo(dy, dx_old, dx_den)))
46 + y;
47--
482.10.2
49
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10220.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10220.patch
deleted file mode 100644
index 5e1e8ba10c..0000000000
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-10220.patch
+++ /dev/null
@@ -1,55 +0,0 @@
1From daf85701dab05f17e924a48a81edc9195b4a04e8 Mon Sep 17 00:00:00 2001
2From: Ken Sharp <ken.sharp@artifex.com>
3Date: Wed, 21 Dec 2016 16:54:14 +0000
4Subject: [PATCH] fix crash with bad data supplied to makeimagedevice
5
6Bug #697450 "Null pointer dereference in gx_device_finalize()"
7
8The problem here is that the code to finalise a device unconditionally
9frees the icc_struct member of the device structure. However this
10particular (weird) device is not setup as a normal device, probably
11because its very, very ancient. Its possible for the initialisation
12of the device to abort with an error before calling gs_make_mem_device()
13which is where the icc_struct member gets allocated (or set to NULL).
14
15If that happens, then the cleanup code tries to free the device, which
16calls finalize() which tries to free a garbage pointer.
17
18Setting the device memory to 0x00 after we allocate it means that the
19icc_struct member will be NULL< and our memory manager allows for that
20happily enough, which avoids the problem.
21
22Upstream-Status: Backport
23CVE: CVE-2016-10220
24
25Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
26---
27 base/gsdevmem.c | 12 ++++++++++++
28 1 file changed, 12 insertions(+)
29
30diff --git a/base/gsdevmem.c b/base/gsdevmem.c
31index 97b9cf4..fe75bcc 100644
32--- a/base/gsdevmem.c
33+++ b/base/gsdevmem.c
34@@ -225,6 +225,18 @@ gs_makewordimagedevice(gx_device ** pnew_dev, const gs_matrix * pmat,
35
36 if (pnew == 0)
37 return_error(gs_error_VMerror);
38+
39+ /* Bug #697450 "Null pointer dereference in gx_device_finalize()"
40+ * If we have incorrect data passed to gs_initialise_wordimagedevice() then the
41+ * initialisation will fail, crucially it will fail *before* it calls
42+ * gs_make_mem_device() which initialises the device. This means that the
43+ * icc_struct member will be uninitialsed, but the device finalise method
44+ * will unconditionally free that memory. Since its a garbage pointer, bad things happen.
45+ * Apparently we do still need makeimagedevice to be available from
46+ * PostScript, so in here just zero the device memory, which means that
47+ * the finalise routine won't have a problem.
48+ */
49+ memset(pnew, 0x00, st_device_memory.ssize);
50 code = gs_initialize_wordimagedevice(pnew, pmat, width, height,
51 colors, num_colors, word_oriented,
52 page_device, mem);
53--
542.10.2
55
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7978.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7978.patch
deleted file mode 100644
index 668f205968..0000000000
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7978.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From 6f749c0c44e7b9e09737b9f29edf29925a34f0cf Mon Sep 17 00:00:00 2001
2From: Chris Liddell <chris.liddell@artifex.com>
3Date: Wed, 5 Oct 2016 09:59:25 +0100
4Subject: [PATCH] Bug 697179: Reference count device icc profile
5
6when copying a device
7
8Upstream-Status: Backport
9CVE: CVE-2016-7978
10
11Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
12---
13 base/gsdevice.c | 1 +
14 1 file changed, 1 insertion(+)
15
16diff --git a/base/gsdevice.c b/base/gsdevice.c
17index 778106f..aea986a 100644
18--- a/base/gsdevice.c
19+++ b/base/gsdevice.c
20@@ -614,6 +614,7 @@ gx_device_init(gx_device * dev, const gx_device * proto, gs_memory_t * mem,
21 dev->memory = mem;
22 dev->retained = !internal;
23 rc_init(dev, mem, (internal ? 0 : 1));
24+ rc_increment(dev->icc_struct);
25 }
26
27 void
28--
292.10.2
30
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7979.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7979.patch
deleted file mode 100644
index 9e930d3a42..0000000000
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-7979.patch
+++ /dev/null
@@ -1,48 +0,0 @@
1From 875a0095f37626a721c7ff57d606a0f95af03913 Mon Sep 17 00:00:00 2001
2From: Ken Sharp <ken.sharp@artifex.com>
3Date: Wed, 5 Oct 2016 10:10:58 +0100
4Subject: [PATCH] DSC parser - validate parameters
5
6Bug #697190 ".initialize_dsc_parser doesn't validate the parameter is a dict type before using it."
7
8Regardless of any security implications, its simply wrong for a PostScript
9operator not to validate its parameter(s).
10
11No differences expected.
12
13Upstream-Status: Backport
14CVE: CVE-2016-7979
15
16Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
17---
18 psi/zdscpars.c | 13 +++++++++----
19 1 file changed, 9 insertions(+), 4 deletions(-)
20
21diff --git a/psi/zdscpars.c b/psi/zdscpars.c
22index c05e154..9b4b605 100644
23--- a/psi/zdscpars.c
24+++ b/psi/zdscpars.c
25@@ -150,11 +150,16 @@ zinitialize_dsc_parser(i_ctx_t *i_ctx_p)
26 ref local_ref;
27 int code;
28 os_ptr const op = osp;
29- dict * const pdict = op->value.pdict;
30- gs_memory_t * const mem = (gs_memory_t *)dict_memory(pdict);
31- dsc_data_t * const data =
32- gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init");
33+ dict *pdict;
34+ gs_memory_t *mem;
35+ dsc_data_t *data;
36
37+ check_read_type(*op, t_dictionary);
38+
39+ pdict = op->value.pdict;
40+ mem = (gs_memory_t *)dict_memory(pdict);
41+
42+ data = gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init");
43 if (!data)
44 return_error(gs_error_VMerror);
45 data->document_level = 0;
46--
472.10.2
48
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-8602.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-8602.patch
deleted file mode 100644
index e58567cfec..0000000000
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2016-8602.patch
+++ /dev/null
@@ -1,47 +0,0 @@
1From f5c7555c30393e64ec1f5ab0dfae5b55b3b3fc78 Mon Sep 17 00:00:00 2001
2From: Chris Liddell <chris.liddell@artifex.com>
3Date: Sat, 8 Oct 2016 16:10:27 +0100
4Subject: [PATCH] Bug 697203: check for sufficient params in .sethalftone5
5
6and param types
7
8Upstream-Status: Backport
9CVE: CVE-2016-8602
10
11Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
12---
13 psi/zht2.c | 12 ++++++++++--
14 1 file changed, 10 insertions(+), 2 deletions(-)
15
16diff --git a/psi/zht2.c b/psi/zht2.c
17index fb4a264..dfa27a4 100644
18--- a/psi/zht2.c
19+++ b/psi/zht2.c
20@@ -82,14 +82,22 @@ zsethalftone5(i_ctx_t *i_ctx_p)
21 gs_memory_t *mem;
22 uint edepth = ref_stack_count(&e_stack);
23 int npop = 2;
24- int dict_enum = dict_first(op);
25+ int dict_enum;
26 ref rvalue[2];
27 int cname, colorant_number;
28 byte * pname;
29 uint name_size;
30 int halftonetype, type = 0;
31 gs_gstate *pgs = igs;
32- int space_index = r_space_index(op - 1);
33+ int space_index;
34+
35+ if (ref_stack_count(&o_stack) < 2)
36+ return_error(gs_error_stackunderflow);
37+ check_type(*op, t_dictionary);
38+ check_type(*(op - 1), t_dictionary);
39+
40+ dict_enum = dict_first(op);
41+ space_index = r_space_index(op - 1);
42
43 mem = (gs_memory_t *) idmemory->spaces_indexed[space_index];
44
45--
462.10.2
47
diff --git a/meta/recipes-extended/ghostscript/ghostscript/CVE-2017-7975.patch b/meta/recipes-extended/ghostscript/ghostscript/CVE-2017-7975.patch
index d0886c9120..e406086e8f 100644
--- a/meta/recipes-extended/ghostscript/ghostscript/CVE-2017-7975.patch
+++ b/meta/recipes-extended/ghostscript/ghostscript/CVE-2017-7975.patch
@@ -1,6 +1,7 @@
1From 5e57e483298dae8b8d4ec9aab37a526736ac2e97 Mon Sep 17 00:00:00 2001 1From b39be1019b4acc1aa50c6026463c543332e95a31 Mon Sep 17 00:00:00 2001
2From: Shailesh Mistry <shailesh.mistry@hotmail.co.uk> 2From: Catalin Enache <catalin.enache@windriver.com>
3Date: Wed, 26 Apr 2017 22:12:14 +0100 3Date: Mon, 8 May 2017 16:18:14 +0300
4
4Subject: [PATCH] Bug 697693: Prevent SEGV due to integer overflow. 5Subject: [PATCH] Bug 697693: Prevent SEGV due to integer overflow.
5 6
6While building a Huffman table, the start and end points were susceptible 7While building a Huffman table, the start and end points were susceptible
@@ -12,15 +13,17 @@ Upstream-Status: Backport
12CVE: CVE-2017-7975 13CVE: CVE-2017-7975
13 14
14Signed-off-by: Catalin Enache <catalin.enache@windriver.com> 15Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
15---
16 jbig2dec/jbig2_huffman.c | 4 ++--
17 1 file changed, 2 insertions(+), 2 deletions(-)
18 16
19diff --git a/jbig2dec/jbig2_huffman.c b/jbig2dec/jbig2_huffman.c 17Contents of this patch were extracted from a larger patch which addressed
20index 511e461..b4189a1 100644 18two CVE's. The context (location of {) was also modified to apply to
19ghostscript 9.21.
20
21Signed-off-by: Joe Slater <joe.slater@windriver.com>
22
23
21--- a/jbig2dec/jbig2_huffman.c 24--- a/jbig2dec/jbig2_huffman.c
22+++ b/jbig2dec/jbig2_huffman.c 25+++ b/jbig2dec/jbig2_huffman.c
23@@ -421,8 +421,8 @@ jbig2_build_huffman_table(Jbig2Ctx *ctx, const Jbig2HuffmanParams *params) 26@@ -421,8 +421,8 @@ jbig2_build_huffman_table(Jbig2Ctx *ctx,
24 27
25 if (PREFLEN == CURLEN) { 28 if (PREFLEN == CURLEN) {
26 int RANGELEN = lines[CURTEMP].RANGELEN; 29 int RANGELEN = lines[CURTEMP].RANGELEN;
@@ -31,6 +34,4 @@ index 511e461..b4189a1 100644
31 byte eflags = 0; 34 byte eflags = 0;
32 35
33 if (end_j > max_j) { 36 if (end_j > max_j) {
34--
352.10.2
36 37
diff --git a/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch b/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch
new file mode 100644
index 0000000000..c4794e7d8f
--- /dev/null
+++ b/meta/recipes-extended/ghostscript/ghostscript/avoid-host-contamination.patch
@@ -0,0 +1,19 @@
1Remove hardcode path refer to host to avoid host contamination.
2
3Upstream-Status: Inappropriate [embedded specific]
4
5Signed-off-by: Kai Kang <kai.kang@windriver.com>
6---
7diff --git a/devices/devs.mak b/devices/devs.mak
8index 3070d2e..df663f0 100644
9--- a/devices/devs.mak
10+++ b/devices/devs.mak
11@@ -546,7 +546,7 @@ $(DEVOBJ)gdevxalt.$(OBJ) : $(DEVSRC)gdevxalt.c $(GDEVX) $(math__h) $(memory__h)\
12 ### NON PORTABLE, ONLY UNIX WITH GCC SUPPORT
13
14 $(DEVOBJ)X11.so : $(x11alt_) $(x11_) $(DEVS_MAK) $(MAKEDIRS)
15- $(CCLD) $(LDFLAGS) -shared -o $(DEVOBJ)X11.so $(x11alt_) $(x11_) -L/usr/X11R6/lib -lXt -lSM -lICE -lXext -lX11 $(XLIBDIRS)
16+ $(CCLD) $(LDFLAGS) -shared -o $(DEVOBJ)X11.so $(x11alt_) $(x11_) -lXt -lSM -lICE -lXext -lX11 $(XLIBDIRS)
17
18 ###### --------------- Memory-buffered printer devices --------------- ######
19
diff --git a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-native-fix-disable-system-libtiff.patch b/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-native-fix-disable-system-libtiff.patch
index 9158117d01..bff3e61763 100644
--- a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-native-fix-disable-system-libtiff.patch
+++ b/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-native-fix-disable-system-libtiff.patch
@@ -5,23 +5,26 @@ ghostscrip could work while system-libtiff is
5disabled. 5disabled.
6 6
7Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 7Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
8
9Updated to apply to ghostscript 9.21.
10
11Signed-off-by: Joe Slater <joe.slater@windriver.com>
12
8Upstream-Status: Pending 13Upstream-Status: Pending
9---
10 configure.ac | 5 +++++
11 1 file changed, 5 insertions(+)
12 14
13diff --git a/configure.ac b/configure.ac 15
16
14--- a/configure.ac 17--- a/configure.ac
15+++ b/configure.ac 18+++ b/configure.ac
16@@ -1055,6 +1055,7 @@ Disabling tiff output devices.]) 19@@ -1259,6 +1259,7 @@ case "x$with_system_libtiff" in
17 esac 20 esac
18 21
19 if test $SHARE_LIBTIFF -eq 0; then 22 if test x"$SHARE_LIBTIFF" = x"0" ; then
20+ if test -e $LIBTIFFDIR/configure; then 23+ if test -e $LIBTIFFDIR/configure; then
21 echo
22 echo "Running libtiff configure script..." 24 echo "Running libtiff configure script..."
23 olddir=`pwd` 25 olddir=`pwd`
24@@ -1069,6 +1070,10 @@ if test $SHARE_LIBTIFF -eq 0; then 26 if ! test -d "$LIBTIFFCONFDIR" ; then
27@@ -1272,6 +1273,10 @@ if test x"$SHARE_LIBTIFF" = x"0" ; then
25 cd "$olddir" 28 cd "$olddir"
26 echo 29 echo
27 echo "Continuing with Ghostscript configuration..." 30 echo "Continuing with Ghostscript configuration..."
@@ -32,6 +35,3 @@ diff --git a/configure.ac b/configure.ac
32 fi 35 fi
33 36
34 AC_SUBST(SHARE_LIBTIFF) 37 AC_SUBST(SHARE_LIBTIFF)
35--
361.8.1.2
37
diff --git a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-prevent_recompiling.patch b/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-prevent_recompiling.patch
index e709195d8c..f2c6d04e06 100644
--- a/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-prevent_recompiling.patch
+++ b/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.21-prevent_recompiling.patch
@@ -9,15 +9,13 @@ Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
9 9
10Rebase to 9.19 10Rebase to 9.19
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12---
13 base/unix-aux.mak | 64 +++++++++++++++++++++++++++----------------------------
14 1 file changed, 32 insertions(+), 32 deletions(-)
15 12
16diff --git a/base/unix-aux.mak b/base/unix-aux.mak 13Rebase to 9.21
17index 0110667..e2eb1a1 100644 14Signed-off-by: Joe Slater <joe.slater@windriver.com>
15
18--- a/base/unix-aux.mak 16--- a/base/unix-aux.mak
19+++ b/base/unix-aux.mak 17+++ b/base/unix-aux.mak
20@@ -71,44 +71,44 @@ $(GLOBJ)gp_sysv.$(OBJ): $(GLSRC)gp_sysv.c $(stdio__h) $(time__h) $(AK)\ 18@@ -66,45 +66,45 @@ $(GLOBJ)gp_sysv.$(OBJ): $(GLSRC)gp_sysv.
21 19
22 # -------------------------- Auxiliary programs --------------------------- # 20 # -------------------------- Auxiliary programs --------------------------- #
23 21
@@ -61,14 +59,14 @@ index 0110667..e2eb1a1 100644
61- $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) $(AUX)memento.$(OBJ) 59- $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) $(AUX)memento.$(OBJ)
62- 60-
63-$(MKROMFS_XE)_0: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_0) $(UNIX_AUX_MAK) $(MAKEDIRS) 61-$(MKROMFS_XE)_0: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_0) $(UNIX_AUX_MAK) $(MAKEDIRS)
64- $(CCAUX_) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_0 $(MKROMFS_OBJS_0) $(AUXEXTRALIBS) 62- $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_0 $(MKROMFS_OBJS_0) $(AUXEXTRALIBS)
65- 63-
66+#MKROMFS_OBJS_0=$(MKROMFS_ZLIB_OBJS) $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \ 64+#MKROMFS_OBJS_0=$(MKROMFS_ZLIB_OBJS) $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \
67+# $(AUX)gscdefs.$(OBJ) $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \ 65+# $(AUX)gscdefs.$(OBJ) $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \
68+# $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) $(AUX)memento.$(OBJ) 66+# $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) $(AUX)memento.$(OBJ)
69+# 67+#
70+#$(MKROMFS_XE)_0: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_0) $(UNIX_AUX_MAK) $(MAKEDIRS) 68+#$(MKROMFS_XE)_0: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_0) $(UNIX_AUX_MAK) $(MAKEDIRS)
71+# $(CCAUX_) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_0 $(MKROMFS_OBJS_0) $(AUXEXTRALIBS) 69+# $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_0 $(MKROMFS_OBJS_0) $(AUXEXTRALIBS)
72+# 70+#
73 # .... and one using the zlib library linked via the command line 71 # .... and one using the zlib library linked via the command line
74-MKROMFS_OBJS_1=$(AUX)gscdefs.$(OBJ) \ 72-MKROMFS_OBJS_1=$(AUX)gscdefs.$(OBJ) \
@@ -77,23 +75,22 @@ index 0110667..e2eb1a1 100644
77- $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) 75- $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ)
78- 76-
79-$(MKROMFS_XE)_1: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_1) $(UNIX_AUX_MAK) $(MAKEDIRS) 77-$(MKROMFS_XE)_1: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_1) $(UNIX_AUX_MAK) $(MAKEDIRS)
80- $(CCAUX_) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_1 $(MKROMFS_OBJS_1) $(AUXEXTRALIBS) 78- $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_1 $(MKROMFS_OBJS_1) $(AUXEXTRALIBS)
81- 79-
82-$(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(UNIX_AUX_MAK) $(MAKEDIRS) 80-$(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(UNIX_AUX_MAK) $(MAKEDIRS)
83- $(CP_) $(MKROMFS_XE)_$(SHARE_ZLIB) $(MKROMFS_XE) 81- $(CP_) $(MKROMFS_XE)_$(SHARE_ZLIB) $(MKROMFS_XE)
82-
84+#MKROMFS_OBJS_1=$(AUX)gscdefs.$(OBJ) \ 83+#MKROMFS_OBJS_1=$(AUX)gscdefs.$(OBJ) \
85+# $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \ 84+# $(AUX)gpmisc.$(OBJ) $(AUX)gp_getnv.$(OBJ) \
86+# $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \ 85+# $(AUX)gp_unix.$(OBJ) $(AUX)gp_unifs.$(OBJ) $(AUX)gp_unifn.$(OBJ) \
87+# $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ) 86+# $(AUX)gp_stdia.$(OBJ) $(AUX)gsutil.$(OBJ)
88+# 87+#
89+#$(MKROMFS_XE)_1: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_1) $(UNIX_AUX_MAK) $(MAKEDIRS) 88+#$(MKROMFS_XE)_1: $(GLSRC)mkromfs.c $(MKROMFS_COMMON_DEPS) $(MKROMFS_OBJS_1) $(UNIX_AUX_MAK) $(MAKEDIRS)
90+# $(CCAUX_) $(GENOPT) $(CFLAGS) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_1 $(MKROMFS_OBJS_1) $(AUXEXTRALIBS) 89+# $(CCAUX_) $(GENOPTAUX) $(I_)$(GLSRCDIR)$(_I) $(I_)$(GLOBJ)$(_I) $(I_)$(ZSRCDIR)$(_I) $(GLSRC)mkromfs.c $(O_)$(MKROMFS_XE)_1 $(MKROMFS_OBJS_1) $(AUXEXTRALIBS)
91+# 90+#
92+#$(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(UNIX_AUX_MAK) $(MAKEDIRS) 91+#$(MKROMFS_XE): $(MKROMFS_XE)_$(SHARE_ZLIB) $(UNIX_AUX_MAK) $(MAKEDIRS)
93+# $(CP_) $(MKROMFS_XE)_$(SHARE_ZLIB) $(MKROMFS_XE) 92+# $(CP_) $(MKROMFS_XE)_$(SHARE_ZLIB) $(MKROMFS_XE)
94 93+#
95 # Query the environment to construct gconfig_.h. 94 # Query the environment to construct gconfig_.h.
96 # These are all defined conditionally (except the JasPER one), so that 95 # These are all defined conditionally (except the JasPER one), so that
97-- 96 # they can be overridden by settings from the configure script.
982.8.1
99
diff --git a/meta/recipes-extended/ghostscript/ghostscript/mkdir-p.patch b/meta/recipes-extended/ghostscript/ghostscript/mkdir-p.patch
new file mode 100644
index 0000000000..5a7eab1c21
--- /dev/null
+++ b/meta/recipes-extended/ghostscript/ghostscript/mkdir-p.patch
@@ -0,0 +1,36 @@
1ghostscript: allow directories to be created more than once
2
3When doing parallel builds, we might try to create directories
4more than once. This should not cause an error.
5
6Upstream-Status: Pending
7
8Signed-off-by: Joe Slater <joe.slater@windriver.com>
9
10
11--- a/base/unix-end.mak
12+++ b/base/unix-end.mak
13@@ -17,15 +17,14 @@
14 UNIX_END_MAK=$(GLSRC)unix-end.mak $(TOP_MAKEFILES)
15 # Define the rule for building standard configurations.
16 directories: $(UNIX_END_MAK)
17- @if test "$(BINDIR)" != "" -a ! -d $(BINDIR); then mkdir $(BINDIR); fi
18- @if test "$(GLGENDIR)" != "" -a ! -d $(GLGENDIR); then mkdir $(GLGENDIR); fi
19- @if test "$(GLOBJDIR)" != "" -a ! -d $(GLOBJDIR); then mkdir $(GLOBJDIR); fi
20- @if test "$(DEVGENDIR)" != "" -a ! -d $(DEVGENDIR); then mkdir $(DEVGENDIR); fi
21- @if test "$(DEVOBJDIR)" != "" -a ! -d $(DEVOBJDIR); then mkdir $(DEVOBJDIR); fi
22- @if test "$(AUXDIR)" != "" -a ! -d $(AUXDIR); then mkdir $(AUXDIR); fi
23- @if test "$(PSGENDIR)" != "" -a ! -d $(PSGENDIR); then mkdir $(PSGENDIR); fi
24- @if test "$(PSGENDIR)" != "" -a ! -d $(PSGENDIR)/cups; then mkdir $(PSGENDIR)/cups; fi
25- @if test "$(PSOBJDIR)" != "" -a ! -d $(PSOBJDIR); then mkdir $(PSOBJDIR); fi
26+ @if test "$(BINDIR)" != "" -a ! -d $(BINDIR); then mkdir -p $(BINDIR); fi
27+ @if test "$(GLGENDIR)" != "" -a ! -d $(GLGENDIR); then mkdir -p $(GLGENDIR); fi
28+ @if test "$(GLOBJDIR)" != "" -a ! -d $(GLOBJDIR); then mkdir -p $(GLOBJDIR); fi
29+ @if test "$(DEVGENDIR)" != "" -a ! -d $(DEVGENDIR); then mkdir -p $(DEVGENDIR); fi
30+ @if test "$(DEVOBJDIR)" != "" -a ! -d $(DEVOBJDIR); then mkdir -p $(DEVOBJDIR); fi
31+ @if test "$(AUXDIR)" != "" -a ! -d $(AUXDIR); then mkdir -p $(AUXDIR); fi
32+ @if test "$(PSGENDIR)" != "" -a ! -d $(PSGENDIR)/cups; then mkdir -p $(PSGENDIR)/cups; fi
33+ @if test "$(PSOBJDIR)" != "" -a ! -d $(PSOBJDIR); then mkdir -p $(PSOBJDIR); fi
34
35
36 gs: .gssubtarget $(UNIX_END_MAK)
diff --git a/meta/recipes-extended/ghostscript/ghostscript_9.20.bb b/meta/recipes-extended/ghostscript/ghostscript_9.21.bb
index 2e6fefff3c..ed0fd431a7 100644
--- a/meta/recipes-extended/ghostscript/ghostscript_9.20.bb
+++ b/meta/recipes-extended/ghostscript/ghostscript_9.21.bb
@@ -19,42 +19,40 @@ DEPENDS_class-native = "libpng-native"
19UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" 19UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases"
20UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" 20UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
21 21
22SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs920/${BPN}-${PV}.tar.gz \ 22SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs921/${BPN}-${PV}.tar.gz \
23 file://ghostscript-9.15-parallel-make.patch \ 23 file://ghostscript-9.15-parallel-make.patch \
24 file://ghostscript-9.16-Werror-return-type.patch \ 24 file://ghostscript-9.16-Werror-return-type.patch \
25 file://png_mak.patch \ 25 file://png_mak.patch \
26 file://do-not-check-local-libpng-source.patch \ 26 file://do-not-check-local-libpng-source.patch \
27 file://avoid-host-contamination.patch \
28 file://mkdir-p.patch \
27" 29"
28 30
29SRC_URI = "${SRC_URI_BASE} \ 31SRC_URI = "${SRC_URI_BASE} \
30 file://ghostscript-9.02-prevent_recompiling.patch \ 32 file://ghostscript-9.21-prevent_recompiling.patch \
31 file://ghostscript-9.02-genarch.patch \ 33 file://ghostscript-9.02-genarch.patch \
32 file://objarch.h \ 34 file://objarch.h \
33 file://cups-no-gcrypt.patch \ 35 file://cups-no-gcrypt.patch \
36 file://CVE-2016-7977.patch \
34 file://CVE-2017-7207.patch \ 37 file://CVE-2017-7207.patch \
35 file://CVE-2016-10219.patch \
36 file://CVE-2016-10220.patch \
37 file://CVE-2017-5951.patch \ 38 file://CVE-2017-5951.patch \
38 file://CVE-2016-8602.patch \
39 file://CVE-2017-7975.patch \ 39 file://CVE-2017-7975.patch \
40 file://CVE-2016-7977.patch \
41 file://CVE-2016-7978.patch \
42 file://CVE-2016-7979.patch \
43 file://CVE-2017-9216.patch \ 40 file://CVE-2017-9216.patch \
44 " 41 "
45 42
46SRC_URI_class-native = "${SRC_URI_BASE} \ 43SRC_URI_class-native = "${SRC_URI_BASE} \
47 file://ghostscript-native-fix-disable-system-libtiff.patch \ 44 file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \
48 file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ 45 file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \
49 " 46 "
50 47
51SRC_URI[md5sum] = "93c5987cd3ab341108be1ebbaadc24fe" 48SRC_URI[md5sum] = "5f213281761d2750fcf27476c404d17f"
52SRC_URI[sha256sum] = "949b64b46ecf8906db54a94ecf83ab97534ebf946f770d3c3f283cb469cb6e14" 49SRC_URI[sha256sum] = "02bceadbc4dddeb6f2eec9c8b1623d945d355ca11b8b4df035332b217d58ce85"
53 50
54EXTRA_OECONF = "--without-x --with-system-libtiff --without-jbig2dec \ 51EXTRA_OECONF = "--without-x --with-system-libtiff --without-jbig2dec \
55 --with-fontpath=${datadir}/fonts \ 52 --with-fontpath=${datadir}/fonts \
56 --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ 53 --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \
57 --with-cups-datadir=${datadir}/cups \ 54 --with-cups-datadir=${datadir}/cups \
55 CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \
58 " 56 "
59 57
60EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0" 58EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0"