Update to 9.54.0

Resolves: rhbz#1923969
This commit is contained in:
Richard Lescak 2021-07-26 19:57:22 +02:00
parent edd401d729
commit 0b47225282
8 changed files with 17 additions and 313 deletions

1
.gitignore vendored
View File

@ -58,3 +58,4 @@ ghostscript-8.71.tar.xz
/ghostscript-9.52.tar.xz
/ghostscript-9.53.1.tar.xz
/ghostscript-9.53.3.tar.xz
/ghostscript-9.54.0.tar.xz

View File

@ -1,10 +0,0 @@
diff --git a/lib/dvipdf b/lib/dvipdf
index 13e1985..078292b 100755
--- a/lib/dvipdf
+++ b/lib/dvipdf
@@ -43,4 +43,4 @@ fi
# We have to include the options twice because -I only takes effect if it
# appears before other options.
-exec dvips -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -P- -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -
+exec dvips -R -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -P- -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -

View File

@ -1,94 +0,0 @@
diff --git a/base/gp_unix.c b/base/gp_unix.c
index c576566..4165654 100644
--- a/base/gp_unix.c
+++ b/base/gp_unix.c
@@ -402,42 +402,50 @@ int gp_enumerate_fonts_next(void *enum_state, char **fontname, char **path)
return 0; /* gp_enumerate_fonts_init failed for some reason */
}
- if (state->index == state->font_list->nfont) {
- return 0; /* we've run out of fonts */
- }
-
- /* Bits of the following were borrowed from Red Hat's
- * fontconfig patch for Ghostscript 7 */
- font = state->font_list->fonts[state->index];
+ /* We use the loop so we can skip over fonts that return errors */
+ while(1) {
+ if (state->index == state->font_list->nfont) {
+ return 0; /* we've run out of fonts */
+ }
- result = FcPatternGetString (font, FC_FAMILY, 0, &family_fc);
- if (result != FcResultMatch || family_fc == NULL) {
- dmlprintf(state->mem, "DEBUG: FC_FAMILY mismatch\n");
- return 0;
- }
+ /* Bits of the following were borrowed from Red Hat's
+ * fontconfig patch for Ghostscript 7 */
+ font = state->font_list->fonts[state->index];
+ state->index++;
+
+ /* We do the FC_FILE first because this *should* never fail
+ * and it gives us a string to use in later debug prints
+ */
+ result = FcPatternGetString (font, FC_FILE, 0, &file_fc);
+ if (result != FcResultMatch || file_fc == NULL) {
+ dmlprintf(state->mem, "DEBUG: FC_FILE mismatch\n");
+ continue;
+ }
- result = FcPatternGetString (font, FC_FILE, 0, &file_fc);
- if (result != FcResultMatch || file_fc == NULL) {
- dmlprintf(state->mem, "DEBUG: FC_FILE mismatch\n");
- return 0;
- }
+ result = FcPatternGetString (font, FC_FAMILY, 0, &family_fc);
+ if (result != FcResultMatch || family_fc == NULL) {
+ dmlprintf1(state->mem, "DEBUG: FC_FAMILY mismatch in %s\n", (char *)file_fc);
+ continue;
+ }
- result = FcPatternGetBool (font, FC_OUTLINE, 0, &outline_fc);
- if (result != FcResultMatch) {
- dmlprintf1(state->mem, "DEBUG: FC_OUTLINE failed to match on %s\n", (char*)family_fc);
- return 0;
- }
+ result = FcPatternGetBool (font, FC_OUTLINE, 0, &outline_fc);
+ if (result != FcResultMatch) {
+ dmlprintf2(state->mem, "DEBUG: FC_OUTLINE failed to match on %s in %s\n", (char*)family_fc, (char *)file_fc);
+ continue;
+ }
- result = FcPatternGetInteger (font, FC_SLANT, 0, &slant_fc);
- if (result != FcResultMatch) {
- dmlprintf(state->mem, "DEBUG: FC_SLANT didn't match\n");
- return 0;
- }
+ result = FcPatternGetInteger (font, FC_SLANT, 0, &slant_fc);
+ if (result != FcResultMatch) {
+ dmlprintf1(state->mem, "DEBUG: FC_SLANT didn't match in %s\n", (char *)file_fc);
+ continue;
+ }
- result = FcPatternGetInteger (font, FC_WEIGHT, 0, &weight_fc);
- if (result != FcResultMatch) {
- dmlprintf(state->mem, "DEBUG: FC_WEIGHT didn't match\n");
- return 0;
+ result = FcPatternGetInteger (font, FC_WEIGHT, 0, &weight_fc);
+ if (result != FcResultMatch) {
+ dmlprintf1(state->mem, "DEBUG: FC_WEIGHT didn't match in %s\n", (char *)file_fc);
+ continue;
+ }
+ break;
}
/* Gross hack to work around Fontconfig's inability to tell
@@ -450,7 +458,6 @@ int gp_enumerate_fonts_next(void *enum_state, char **fontname, char **path)
/* return the font path straight out of fontconfig */
*path = (char*)file_fc;
- state->index ++;
return 1;
#else
return 0;

View File

@ -1,50 +0,0 @@
From 41ef9a0bc36b9db7115fbe9623f989bfb47bbade Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Tue, 20 Oct 2020 09:49:45 +0100
Subject: [PATCH] Bug 702985: drop use of FT_CALLBACK_DEF() def
From 2.10.3, Freetype disappeared the FT_CALLBACK_DEF() macro, which is what
we used when defining our callbacks from Freetype.
No guidance forthcoming from the Freetype developer who made those changes,
so change to explicitly declaring the callbacks file static.
Should fix the reported build failures.
---
base/fapi_ft.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/base/fapi_ft.c b/base/fapi_ft.c
index 65fa6dcf4..21aef2f06 100644
--- a/base/fapi_ft.c
+++ b/base/fapi_ft.c
@@ -125,7 +125,7 @@ static void
delete_inc_int_info(gs_fapi_server * a_server,
FT_IncrementalRec * a_inc_int_info);
-FT_CALLBACK_DEF(void *)
+static void *
FF_alloc(FT_Memory memory, long size)
{
gs_memory_t *mem = (gs_memory_t *) memory->user;
@@ -133,7 +133,7 @@ FF_alloc(FT_Memory memory, long size)
return (gs_malloc(mem, size, 1, "FF_alloc"));
}
-FT_CALLBACK_DEF(void *)
+static void *
FF_realloc(FT_Memory memory, long cur_size, long new_size, void *block)
{
gs_memory_t *mem = (gs_memory_t *) memory->user;
@@ -153,7 +153,7 @@ FT_CALLBACK_DEF(void *)
return (tmp);
}
-FT_CALLBACK_DEF(void)
+static void
FF_free(FT_Memory memory, void *block)
{
gs_memory_t *mem = (gs_memory_t *) memory->user;
--
2.17.1

View File

@ -1,65 +0,0 @@
From 6c2c8af4270e258ce30885547e9e9c67b3275493 Mon Sep 17 00:00:00 2001
Message-Id: <6c2c8af4270e258ce30885547e9e9c67b3275493.1608637099.git.mjg@fedoraproject.org>
From: rpm-build <mjg@fedoraproject.org>
Date: Tue, 22 Dec 2020 12:35:51 +0100
Subject: [PATCH] restore ovp for good
The original patch touches configure.ac only. Patch configure as well
for our release builds: These are the ovp-related changes after autogen.sh
(which one would use for git builds).
Signed-off-by: rpm-build <mjg@fedoraproject.org>
---
configure | 22 ++++++----------------
1 file changed, 6 insertions(+), 16 deletions(-)
diff --git a/configure b/configure
index 317885c..d51c574 100755
--- a/configure
+++ b/configure
@@ -961,7 +961,6 @@ with_gpdl
enable_compile_inits
with_drivers
with_driversfile
-with_openprinting
enable_hidden_visibility
enable_dynamic
with_fontpath
@@ -11218,15 +11217,7 @@ IBM_DEVS='ibmpro jetp3852'
OKI_DEVS='oki182 okiibm oki4w'
JAPAN_DEVS='lips4 lips4v ljet4pjl lj4dithp dj505j picty180 lips2p bjc880j pr201 pr150 pr1000 pr1000_4 jj100 bj10v bj10vh mj700v2c mj500c mj6000c mj8000c fmpr fmlbp ml600 lbp310 lbp320 md50Mono md50Eco md1xMono escpage lp2000 npdl rpdl'
MISC_PDEVS='uniprint ap3250 atx23 atx24 atx38 itk24i itk38 coslw2p coslwxl declj250 fs600 imagen lj250 m8510 necp6 oce9050 r4081 sj48 tek4696 t4693d2 t4693d4 t4693d8 dl2100 la50 la70 la75 la75plus ln03 xes md2k md5k gdi samsunggdi'
-
-
-# Check whether --with-openprinting was given.
-if test "${with_openprinting+set}" = set; then :
- withval=$with_openprinting; OPVP_DEVS='opvp oprp'
-else
- OPVP_DEVS=''
-fi
-
+OPVP_DEVS='opvp oprp'
ETS_HALFTONING_DEVS='rinkj'
@@ -11265,12 +11256,11 @@ while test -n "$drivers"; do
PRINTERS)
P_DEVS0="$P_DEVS0 $CANON_DEVS $EPSON_DEVS $HP_DEVS $LEXMARK_DEVS $BROTHER_DEVS $APPLE_DEVS $IBM_DEVS $OKI_DEVS $JAPAN_DEVS $MISC_PDEVS $ETS_HALFTONING_DEVS $URF_DEVS"
IJS_DEVS0="$IJSDEVS"
- if test x"$OPVP_DEVS" != x"" ; then
- if test x$ac_cv_lib_dl_dlopen != xno -a x$found_iconv != xno; then
- P_DEVS0="$P_DEVS0 $OPVP_DEVS"
- else
- as_fn_error $? "Unable to include opvp/oprp driver due to missing or disabled prerequisites..." "$LINENO" 5
- fi
+ if test x$ac_cv_lib_dl_dlopen != xno -a x$found_iconv != xno; then
+ P_DEVS0="$P_DEVS0 $OPVP_DEVS"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to include opvp/oprp driver due to missing or disabled prerequisites..." >&5
+$as_echo "$as_me: WARNING: Unable to include opvp/oprp driver due to missing or disabled prerequisites..." >&2;}
fi
;;
FILES)
--
2.30.0.rc0.297.gbcca948854

View File

@ -1,46 +0,0 @@
From c6ce09aa5c9ed0c66c597478a2c4fb75aa25267f Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Wed, 7 Oct 2020 17:41:36 +0100
Subject: [PATCH] Revert "Remove deprecated opvp/oprp devices from default
build"
This reverts commit 66c2469c7d4543f32d6dc93edf1d649e809b8419.
A user got in touch to say that he maintains a printer driver "back end" that
uses the opvp device. So reinstating it - at least we know it's getting
tested.
---
configure.ac | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
index 640aca7f0..fafe37c36 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2638,8 +2638,7 @@ IBM_DEVS='ibmpro jetp3852'
OKI_DEVS='oki182 okiibm oki4w'
JAPAN_DEVS='lips4 lips4v ljet4pjl lj4dithp dj505j picty180 lips2p bjc880j pr201 pr150 pr1000 pr1000_4 jj100 bj10v bj10vh mj700v2c mj500c mj6000c mj8000c fmpr fmlbp ml600 lbp310 lbp320 md50Mono md50Eco md1xMono escpage lp2000 npdl rpdl'
MISC_PDEVS='uniprint ap3250 atx23 atx24 atx38 itk24i itk38 coslw2p coslwxl declj250 fs600 imagen lj250 m8510 necp6 oce9050 r4081 sj48 tek4696 t4693d2 t4693d4 t4693d8 dl2100 la50 la70 la75 la75plus ln03 xes md2k md5k gdi samsunggdi'
-
-AC_ARG_WITH([openprinting],, OPVP_DEVS='opvp oprp', OPVP_DEVS='')
+OPVP_DEVS='opvp oprp'
ETS_HALFTONING_DEVS='rinkj'
@@ -2679,12 +2678,10 @@ while test -n "$drivers"; do
PRINTERS)
P_DEVS0="$P_DEVS0 $CANON_DEVS $EPSON_DEVS $HP_DEVS $LEXMARK_DEVS $BROTHER_DEVS $APPLE_DEVS $IBM_DEVS $OKI_DEVS $JAPAN_DEVS $MISC_PDEVS $ETS_HALFTONING_DEVS $URF_DEVS"
IJS_DEVS0="$IJSDEVS"
- if test x"$OPVP_DEVS" != x"" ; then
- if test x$ac_cv_lib_dl_dlopen != xno -a x$found_iconv != xno; then
- P_DEVS0="$P_DEVS0 $OPVP_DEVS"
- else
- AC_MSG_ERROR(Unable to include opvp/oprp driver due to missing or disabled prerequisites...)
- fi
+ if test x$ac_cv_lib_dl_dlopen != xno -a x$found_iconv != xno; then
+ P_DEVS0="$P_DEVS0 $OPVP_DEVS"
+ else
+ AC_MSG_WARN(Unable to include opvp/oprp driver due to missing or disabled prerequisites...)
fi
;;
FILES)

View File

@ -27,13 +27,7 @@
# tarballs, and their release tags/branches do not use the dot in version
# tag. This makes obtaining the current version harder, and might prevent
# automatic builds of new releases...
%global version_short %(echo "%{version}" | tr -d '.')
# Starting version of new sup-package layout scheme for Ghostscript, which is
# conflicting with the previous sup-package layout scheme.
#
# NOTE: Remove this once F28 is EOL.
%global conflicts_vers 9.22-5
%global version_short %%(echo "%{version}" | tr -d '.')
# Obtain the location of Google Droid fonts directory:
%global google_droid_fontpath %%(dirname $(fc-list : file | grep "DroidSansFallback"))
@ -47,8 +41,8 @@
Name: ghostscript
Summary: Interpreter for PostScript language & PDF
Version: 9.53.3
Release: 6%{?dist}
Version: 9.54.0
Release: 1%{?dist}
License: AGPLv3+
@ -57,6 +51,11 @@ Source: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
Requires: libgs%{?_isa} = %{version}-%{release}
Requires: jbig2dec-libs = %{jbig2dec_version}
Requires: %{name}-tools-fonts%{?_isa} = %{version}-%{release}
Requires: %{name}-tools-printing%{?_isa} = %{version}-%{release}
Provides: ghostscript-core = %{version}-%{release}
Obsoletes: ghostscript-core < 9.53.3-6
# Auxiliary build requirements:
BuildRequires: automake
@ -89,7 +88,7 @@ BuildRequires: zlib-devel
# Enabling the GUI possibilities of Ghostscript:
BuildRequires: gtk3-devel
BuildRequires: libXt-devel
BuildRequires: make
BuildRequires: make
# =============================================================================
@ -101,16 +100,10 @@ BuildRequires: make
# Upstream patches -- official upstream patches released by upstream since the
# ---------------- last rebase that are necessary for any reason:
#Patch000: example000.patch
Patch001: ghostscript-9.53.3-drop-ft-callback-def.patch
Patch002: ghostscript-9.53.3-restore-opvp-device.patch
# Not exactly upstream but the result of the above after autogen.sh
Patch003: ghostscript-9.53.3-restore-opvp-device-for-good.patch
# Downstream patches -- these should be always included when doing rebase:
# ------------------
# Downstream patches for RHEL -- patches that we keep only in RHEL for various
# --------------------------- reasons, but are not enabled in Fedora:
%if %{defined rhel} || %{defined centos}
@ -142,9 +135,6 @@ Requires: adobe-mappings-pdf
Requires: google-droid-sans-fonts
Requires: urw-base35-fonts
# FIXME: Remove the line below once F28 is EOL.
Conflicts: %{name}-core < %{conflicts_vers}
%description -n libgs
This library provides Ghostscript's core functionality, based on Ghostscript's
API, which is useful for many packages that are build on top of Ghostscript.
@ -161,10 +151,6 @@ Requires: libgs%{?_isa} = %{version}-%{release}
Provides: %{name}-devel = %{version}-%{release}
Provides: %{name}-devel%{?_isa} = %{version}-%{release}
# FIXME: Remove the lines below once F28 is EOL.
Conflicts: %{name}-devel < %{conflicts_vers}
Obsoletes: %{name}-devel < %{conflicts_vers}
%description -n libgs-devel
This package contains development files that are useful for building packages
against Ghostscript's library, which provides Ghostscript's core functionality.
@ -182,7 +168,7 @@ against Ghostscript's library, which provides Ghostscript's core functionality.
%package tools-dvipdf
Summary: Ghostscript's 'dvipdf' utility
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{_bindir}/dvips
Requires: /usr/bin/dvips
%description tools-dvipdf
This package provides the utility 'dvipdf' for converting of TeX DVI files into
@ -241,23 +227,6 @@ BuildArch: noarch
%description doc
This package provides detailed documentation files for Ghostscript software.
# ---------------
# FIXME: Remove this subpackage once F28 is EOL.
%package core
Summary: Temporary meta-package for Ghostscript upgrade
Requires: libgs%{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{name}-tools-fonts%{?_isa} = %{version}-%{release}
Requires: %{name}-tools-printing%{?_isa} = %{version}-%{release}
%description core
This meta-package will install all dependencies of previous 'ghostscript-core'
package, which is necessary to enable smooth upgrade to new package scheme.
It will be removed once the Fedora 28 has reached EOL (End Of Life).
# === BUILD INSTRUCTIONS ======================================================
# Call the 'autosetup' macro to prepare the environment, but do not patch the
@ -266,7 +235,7 @@ It will be removed once the Fedora 28 has reached EOL (End Of Life).
%autosetup -N -S git
# Libraries that we already have packaged in Fedora (see Build Requirements):
rm -rf cups/libs freetype ijs jbig2dec jpeg lcms2* libpng openjpeg tiff windows zlib
rm -rf cups/libs freetype ijs jbig2dec jpeg lcms2* leptonica libpng openjpeg tesseract tiff windows zlib
# Add the remaining source code to the initial commit, patch the source code:
git add --all --force .
@ -344,7 +313,7 @@ ln -s %{_mandir}/man1/gs.1 %{buildroot}%{_mandir}/man1/ghostscript.1
# process for Ghostscript startup, and they advise using the symlinks where
# possible. The fontconfig (Ghostscript's search path) should be used preferably
# as a fallback only.
ln -fs %{google_droid_fontpath}/DroidSansFallback.ttf %{buildroot}%{_datadir}/%{name}/Resource/CIDFSubst/DroidSansFallback.ttf
ln -fs %{google_droid_fontpath}/DroidSansFallbackFull.ttf %{buildroot}%{_datadir}/%{name}/Resource/CIDFSubst/DroidSansFallback.ttf
for font in $(basename --multiple %{buildroot}%{_datadir}/%{name}/Resource/Font/*); do
ln -fs %{urw_base35_fontpath}/${font}.t1 %{buildroot}%{_datadir}/%{name}/Resource/Font/${font}
@ -462,13 +431,12 @@ done
%files doc
%doc %{_docdir}/%{name}/
# ---------------
%files core
# =============================================================================
%changelog
* Mon Jul 26 2021 Richard Lescak <rlescak@redhat.com> - 9.54.0-1
- Update to 9.54.0 (#1923969)
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 9.53.3-6
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937

View File

@ -1 +1 @@
SHA512 (ghostscript-9.53.3.tar.xz) = eb832c27eecd30f15e346408c592d7096fd23ef0a6fa59bd50ca327578915434530a4868e69249c2594def0910c527302e99d54f0877f726a8ca8bea6f0f17b7
SHA512 (ghostscript-9.54.0.tar.xz) = a3c96925f4dbf5e276fc543b88df185a0435c68166db15ac532094329ba8db314d739a292da18be7954daaafeeb290e641ea03edf888854d7e752998ec6062cc