[arch-commits] Commit in ghostscript/repos/extra-x86_64 (4 files)
Antonio Rojas
arojas at gemini.archlinux.org
Sun Dec 12 10:21:35 UTC 2021
Date: Sunday, December 12, 2021 @ 10:21:35
Author: arojas
Revision: 431920
archrelease: copy trunk to extra-x86_64
Added:
ghostscript/repos/extra-x86_64/2010_add_build_timestamp_setting.patch
(from rev 431919, ghostscript/trunk/2010_add_build_timestamp_setting.patch)
ghostscript/repos/extra-x86_64/PKGBUILD
(from rev 431919, ghostscript/trunk/PKGBUILD)
Deleted:
ghostscript/repos/extra-x86_64/2010_add_build_timestamp_setting.patch
ghostscript/repos/extra-x86_64/PKGBUILD
----------------------------------------+
2010_add_build_timestamp_setting.patch | 238 ++++++++++++++---------------
PKGBUILD | 247 +++++++++++++++----------------
2 files changed, 245 insertions(+), 240 deletions(-)
Deleted: 2010_add_build_timestamp_setting.patch
===================================================================
--- 2010_add_build_timestamp_setting.patch 2021-12-12 10:21:21 UTC (rev 431919)
+++ 2010_add_build_timestamp_setting.patch 2021-12-12 10:21:35 UTC (rev 431920)
@@ -1,119 +0,0 @@
-Description: Allow the build timestamp to be externally set
- In order to make Ghostscript output reproducible, we need a way to
- set the build timestamp to other values than the current time.
- We now consistently use gp_get_realtime() instead of directly calling
- time() or gp_get_usertime() and make gp_get_realtime() use the value
- found in the SOURCE_DATE_EPOCH environment variable if set. Also,
- environment timezone is fixed to UTC if SOURCE_DATE_EPOCH is used to
- avoid variations.
-Author: Eduard Sanou <dhole at openmailbox.org>
-Author: Peter De Wachter <pdewacht at gmail.com>
-Bug-Debian: https://bugs.debian.org/794004
-Last-Update: 2015-07-30
----
-This patch header follows DEP-3: https://dep.debian.net/deps/dep3/
---- a/base/gp_unix.c
-+++ b/base/gp_unix.c
-@@ -19,6 +19,7 @@
- #ifdef __MINGW32__
- # include "windows_.h"
- #endif
-+#include "errno_.h"
- #include "pipe_.h"
- #include "string_.h"
- #include "time_.h"
-@@ -148,6 +149,7 @@
- gp_get_realtime(long *pdt)
- {
- struct timeval tp;
-+ const char *env;
-
- #if gettimeofday_no_timezone /* older versions of SVR4 */
- {
-@@ -167,6 +169,26 @@
- }
- #endif
-
-+ env = getenv("SOURCE_DATE_EPOCH");
-+ if (env) {
-+ char *end;
-+ long timestamp;
-+
-+ errno = 0;
-+ timestamp = strtol(env, &end, 10);
-+ if (env == end || *end || errno != 0) {
-+ lprintf("Ghostscript: SOURCE_DATE_EPOCH is not a number!\n");
-+ timestamp = 0;
-+ }
-+
-+ tp.tv_sec = timestamp;
-+ tp.tv_usec = 0;
-+
-+ /* We need to fix the environment timezone to get reproducible */
-+ /* results when parsing the result of gp_get_realtime. */
-+ setenv("TZ", "UTC", 1);
-+ }
-+
- /* tp.tv_sec is #secs since Jan 1, 1970 */
- pdt[0] = tp.tv_sec;
-
---- a/devices/vector/gdevpdf.c
-+++ b/devices/vector/gdevpdf.c
-@@ -427,6 +427,7 @@
- */
- {
- struct tm tms;
-+ long secs_ns[2];
- time_t t;
- char buf[1+2+4+2+2+2+2+2+1+2+1+2+1+1+1]; /* (D:yyyymmddhhmmssZhh'mm')\0 */
- int timeoffset;
-@@ -438,7 +439,8 @@
- timesign = 'Z';
- timeoffset = 0;
- #else
-- time(&t);
-+ gp_get_realtime(secs_ns);
-+ t = secs_ns[0];
- tms = *gmtime(&t);
- tms.tm_isdst = -1;
- timeoffset = (int)difftime(t, mktime(&tms)); /* tz+dst in seconds */
---- a/devices/vector/gdevpdfe.c
-+++ b/devices/vector/gdevpdfe.c
-@@ -199,6 +199,7 @@
- {
- /* We don't write a day time because we don't have a time zone. */
- struct tm tms;
-+ long secs_ns[2];
- time_t t;
- char buf1[4+1+2+1+2+1]; /* yyyy-mm-dd\0 */
-
-@@ -206,7 +207,8 @@
- memset(&t, 0, sizeof(t));
- memset(&tms, 0, sizeof(tms));
- #else
-- time(&t);
-+ gp_get_realtime(secs_ns);
-+ t = secs_ns[0];
- tms = *localtime(&t);
- #endif
- gs_sprintf(buf1,
---- a/devices/vector/gdevpsu.c
-+++ b/devices/vector/gdevpsu.c
-@@ -183,6 +183,7 @@
- fprintf(f, "%%%%Creator: %s %ld (%s)\n", gs_product, (long)gs_revision,
- dev->dname);
- {
-+ long secs_ns[2];
- time_t t;
- struct tm tms;
-
-@@ -190,7 +191,8 @@
- memset(&t, 0, sizeof(t));
- memset(&tms, 0, sizeof(tms));
- #else
-- time(&t);
-+ gp_get_realtime(secs_ns);
-+ t = secs_ns[0];
- tms = *localtime(&t);
- #endif
- fprintf(f, "%%%%CreationDate: %d/%02d/%02d %02d:%02d:%02d\n",
Copied: ghostscript/repos/extra-x86_64/2010_add_build_timestamp_setting.patch (from rev 431919, ghostscript/trunk/2010_add_build_timestamp_setting.patch)
===================================================================
--- 2010_add_build_timestamp_setting.patch (rev 0)
+++ 2010_add_build_timestamp_setting.patch 2021-12-12 10:21:35 UTC (rev 431920)
@@ -0,0 +1,119 @@
+Description: Allow the build timestamp to be externally set
+ In order to make Ghostscript output reproducible, we need a way to
+ set the build timestamp to other values than the current time.
+ We now consistently use gp_get_realtime() instead of directly calling
+ time() or gp_get_usertime() and make gp_get_realtime() use the value
+ found in the SOURCE_DATE_EPOCH environment variable if set. Also,
+ environment timezone is fixed to UTC if SOURCE_DATE_EPOCH is used to
+ avoid variations.
+Author: Eduard Sanou <dhole at openmailbox.org>
+Author: Peter De Wachter <pdewacht at gmail.com>
+Bug-Debian: https://bugs.debian.org/794004
+Last-Update: 2015-07-30
+---
+This patch header follows DEP-3: https://dep.debian.net/deps/dep3/
+--- a/base/gp_unix.c
++++ b/base/gp_unix.c
+@@ -19,6 +19,7 @@
+ #ifdef __MINGW32__
+ # include "windows_.h"
+ #endif
++#include "errno_.h"
+ #include "pipe_.h"
+ #include "string_.h"
+ #include "time_.h"
+@@ -148,6 +149,7 @@
+ gp_get_realtime(long *pdt)
+ {
+ struct timeval tp;
++ const char *env;
+
+ #if gettimeofday_no_timezone /* older versions of SVR4 */
+ {
+@@ -167,6 +169,26 @@
+ }
+ #endif
+
++ env = getenv("SOURCE_DATE_EPOCH");
++ if (env) {
++ char *end;
++ long timestamp;
++
++ errno = 0;
++ timestamp = strtol(env, &end, 10);
++ if (env == end || *end || errno != 0) {
++ lprintf("Ghostscript: SOURCE_DATE_EPOCH is not a number!\n");
++ timestamp = 0;
++ }
++
++ tp.tv_sec = timestamp;
++ tp.tv_usec = 0;
++
++ /* We need to fix the environment timezone to get reproducible */
++ /* results when parsing the result of gp_get_realtime. */
++ setenv("TZ", "UTC", 1);
++ }
++
+ /* tp.tv_sec is #secs since Jan 1, 1970 */
+ pdt[0] = tp.tv_sec;
+
+--- a/devices/vector/gdevpdf.c
++++ b/devices/vector/gdevpdf.c
+@@ -427,6 +427,7 @@
+ */
+ {
+ struct tm tms;
++ long secs_ns[2];
+ time_t t;
+ char buf[1+2+4+2+2+2+2+2+1+2+1+2+1+1+1]; /* (D:yyyymmddhhmmssZhh'mm')\0 */
+ int timeoffset;
+@@ -438,7 +439,8 @@
+ timesign = 'Z';
+ timeoffset = 0;
+ #else
+- time(&t);
++ gp_get_realtime(secs_ns);
++ t = secs_ns[0];
+ tms = *gmtime(&t);
+ tms.tm_isdst = -1;
+ timeoffset = (int)difftime(t, mktime(&tms)); /* tz+dst in seconds */
+--- a/devices/vector/gdevpdfe.c
++++ b/devices/vector/gdevpdfe.c
+@@ -199,6 +199,7 @@
+ {
+ /* We don't write a day time because we don't have a time zone. */
+ struct tm tms;
++ long secs_ns[2];
+ time_t t;
+ char buf1[4+1+2+1+2+1]; /* yyyy-mm-dd\0 */
+
+@@ -206,7 +207,8 @@
+ memset(&t, 0, sizeof(t));
+ memset(&tms, 0, sizeof(tms));
+ #else
+- time(&t);
++ gp_get_realtime(secs_ns);
++ t = secs_ns[0];
+ tms = *localtime(&t);
+ #endif
+ gs_sprintf(buf1,
+--- a/devices/vector/gdevpsu.c
++++ b/devices/vector/gdevpsu.c
+@@ -183,6 +183,7 @@
+ fprintf(f, "%%%%Creator: %s %ld (%s)\n", gs_product, (long)gs_revision,
+ dev->dname);
+ {
++ long secs_ns[2];
+ time_t t;
+ struct tm tms;
+
+@@ -190,7 +191,8 @@
+ memset(&t, 0, sizeof(t));
+ memset(&tms, 0, sizeof(tms));
+ #else
+- time(&t);
++ gp_get_realtime(secs_ns);
++ t = secs_ns[0];
+ tms = *localtime(&t);
+ #endif
+ fprintf(f, "%%%%CreationDate: %d/%02d/%02d %02d:%02d:%02d\n",
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2021-12-12 10:21:21 UTC (rev 431919)
+++ PKGBUILD 2021-12-12 10:21:35 UTC (rev 431920)
@@ -1,121 +0,0 @@
-# Maintainer: AndyRTR <andyrtr at archlinux.org>
-
-pkgbase=ghostscript
-pkgname=(ghostscript ghostxps ghostpcl)
-pkgver=9.55.0
-pkgrel=2
-pkgdesc="An interpreter for the PostScript language"
-url="https://www.ghostscript.com/"
-arch=('x86_64')
-license=('AGPL3' 'custom')
-depends=('libxt' 'libcups' 'fontconfig' 'zlib' 'libpng' 'libjpeg' 'jbig2dec'
- 'libtiff' 'lcms2' 'dbus' 'libpaper' 'ijs' 'openjpeg2' 'libidn')
-makedepends=('gtk3' 'gnutls' 'glu' 'freeglut')
-# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
-source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver//./}/ghostpdl-${pkgver}.tar.xz
- #https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/ghostpdl-${pkgver/.0//}/ghostpdl-${pkgver}.tar.xz
- 2010_add_build_timestamp_setting.patch)
-sha512sums=('d23864be1548ce7c7ae61398f52c34c5485dfe74e78bf7ef16c8fa5690e2ea857cc9795409a70feda5ff78c27b3c2bbc0e0710d190763fca77137ee9c56a0fed'
- 'cd7794ee4f28b11177021b950196385200b610127ed6cb94a45e3202b690b721a0dfcc0276ff39448d4dab64c1b31a76e6c323696a8315aad9edc22077f18a3d')
-
-### update jbig2dec first! ###
-
-### make sure to rebuild core/groff on version updates - https://bugs.archlinux.org/task/67751 ###
-
-prepare() {
- cd ghostpdl-${pkgver}
-
- # *** remove after final decision ***
- # new in 9.54.0:
- # https://www.ghostscript.com/doc/9.54.0/News.htm
-
- # 1) inclusion of the tesseract/leptonica sources for OCR capabilities
- # at the moment we do not support linking with tesseract/leptonica shared libraries.
- # As is normal with such included libraries, deleting those directories and (re)running
- # configure (on Unix like systems) will automatically build without the OCR functionality.
- # increases package size ghostpcl 2.7->4.9MB | ghostscript 18->23MB | ghostxps 2,7->4.9MB
- # https://www.ghostscript.com/doc/9.54.0/VectorDevices.htm#UseOCR -
- # this doesn't seem to be worth to keep enabled until linking with shared libs is supported
- rm -r tesseract leptonica
-
- # 2) new directory addition in the source tree: "extract/".
- # It contains the implementation for the writing of docx format files used by the
- # new "docxwrite" device. This is *not* a "thirdparty library".
- # For distribution package maintainers, if you want your packaged Ghostscript to include
- # the "docxwrite" device, do not delete this directory.
- # ^ this one doesn't affect package size - so let's keep it
-
- # force it to use system-libs
- rm -r cups/libs expat ijs jbig2dec jpeg lcms2mt libpng openjpeg tiff zlib
- # using tree freetype because of https://bugs.archlinux.org/task/56849
- # lcms2mt is the new lcms2 fork aimed to replace lcms2 in a thread safe way
-
- # http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=40dc5b409c6262b18b4bf5386b5482ead4c511e3
- # libs link unwanted to libgpdl that isn't installed
- rm -rf gpdl
-
- # https://bugs.ghostscript.com/show_bug.cgi?id=704405
- sed -i "s/gscms_transformm_color_const/gscms_transform_color_const/" base/gsicc_lcms2.c
-
- # Debian: # allow the build timestamp to be externally set
- patch -Np1 -i ../2010_add_build_timestamp_setting.patch
-}
-
-build() {
- cd ghostpdl-${pkgver}
- ./configure --prefix=/usr \
- --enable-dynamic \
- --with-ijs \
- --with-jbig2dec \
- --with-x \
- --with-drivers=ALL \
- --with-fontpath=/usr/share/fonts/gsfonts \
- --enable-fontconfig \
- --enable-freetype \
- --enable-openjpeg \
- --with-system-libtiff \
- --with-libpaper \
- --disable-compile-inits #--help # needed for linking with system-zlib
- make
-}
-
-package_ghostscript() {
- optdepends=('texlive-core: needed for dvipdf'
- 'gtk3: needed for gsx')
-
- cd ghostpdl-${pkgver}
- make DESTDIR="${pkgdir}" install-gs install-so-gs
- # replace statically linked gs binary with symlink to dynamically linked gsc
- rm -v "${pkgdir}"/usr/bin/gs
- ln -s gsc "${pkgdir}"/usr/bin/gs
-
- # remove unwanted localized manpages
- rm -rv "${pkgdir}"/usr/share/man/de
-
- install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
-}
-
-package_ghostxps() {
- pkgdesc="${pkgdesc/PostScript/XPS document}"
- depends=("ghostscript=${pkgver}-${pkgrel}")
-
- cd ghostpdl-${pkgver}
- make DESTDIR="${pkgdir}" install-gxps install-so-gxps
- rm -r "${pkgdir}"/usr/include
-
- install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
-
- # fix file conflict - FS#70238
- rm -r "${pkgdir}"/usr/lib/libgxps.so
-}
-
-package_ghostpcl() {
- pkgdesc="${pkgdesc/PostScript/PCL 6}"
- depends=("ghostscript=${pkgver}-${pkgrel}")
-
- cd ghostpdl-${pkgver}
- make DESTDIR="${pkgdir}" install-gpcl6 install-so-gpcl6
- rm -r "${pkgdir}"/usr/include
-
- install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
-}
Copied: ghostscript/repos/extra-x86_64/PKGBUILD (from rev 431919, ghostscript/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2021-12-12 10:21:35 UTC (rev 431920)
@@ -0,0 +1,126 @@
+# Maintainer: AndyRTR <andyrtr at archlinux.org>
+
+pkgbase=ghostscript
+pkgname=(ghostscript ghostxps ghostpcl)
+pkgver=9.55.0
+pkgrel=3
+pkgdesc="An interpreter for the PostScript language"
+url="https://www.ghostscript.com/"
+arch=('x86_64')
+license=('AGPL3' 'custom')
+depends=('libxt' 'libcups' 'fontconfig' 'zlib' 'libpng' 'libjpeg' 'jbig2dec'
+ 'libtiff' 'lcms2' 'dbus' 'libpaper' 'ijs' 'openjpeg2' 'libidn')
+makedepends=('gtk3' 'gnutls' 'glu' 'freeglut')
+# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
+source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver//./}/ghostpdl-${pkgver}.tar.xz
+ #https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/ghostpdl-${pkgver/.0//}/ghostpdl-${pkgver}.tar.xz
+ 2010_add_build_timestamp_setting.patch
+ fix-gx_default_copy_alpha.patch::"https://git.ghostscript.com/?p=ghostpdl.git;a=patch;h=d9d8db23e862707795e76ea8f8cdcf7434b2df65")
+sha512sums=('d23864be1548ce7c7ae61398f52c34c5485dfe74e78bf7ef16c8fa5690e2ea857cc9795409a70feda5ff78c27b3c2bbc0e0710d190763fca77137ee9c56a0fed'
+ 'cd7794ee4f28b11177021b950196385200b610127ed6cb94a45e3202b690b721a0dfcc0276ff39448d4dab64c1b31a76e6c323696a8315aad9edc22077f18a3d'
+ '94a63b2d33cf1412bfba75d4cab31c5d6f00846b2e608ad82200ff0d55a11bb80d827c12d4edd1f38cef029cae6cdcd5e39cd98791a17bf356119ba8f74fd0a9')
+
+### update jbig2dec first! ###
+
+### make sure to rebuild core/groff on version updates - https://bugs.archlinux.org/task/67751 ###
+
+prepare() {
+ cd ghostpdl-${pkgver}
+
+ # *** remove after final decision ***
+ # new in 9.54.0:
+ # https://www.ghostscript.com/doc/9.54.0/News.htm
+
+ # 1) inclusion of the tesseract/leptonica sources for OCR capabilities
+ # at the moment we do not support linking with tesseract/leptonica shared libraries.
+ # As is normal with such included libraries, deleting those directories and (re)running
+ # configure (on Unix like systems) will automatically build without the OCR functionality.
+ # increases package size ghostpcl 2.7->4.9MB | ghostscript 18->23MB | ghostxps 2,7->4.9MB
+ # https://www.ghostscript.com/doc/9.54.0/VectorDevices.htm#UseOCR -
+ # this doesn't seem to be worth to keep enabled until linking with shared libs is supported
+ rm -r tesseract leptonica
+
+ # 2) new directory addition in the source tree: "extract/".
+ # It contains the implementation for the writing of docx format files used by the
+ # new "docxwrite" device. This is *not* a "thirdparty library".
+ # For distribution package maintainers, if you want your packaged Ghostscript to include
+ # the "docxwrite" device, do not delete this directory.
+ # ^ this one doesn't affect package size - so let's keep it
+
+ # force it to use system-libs
+ rm -r cups/libs expat ijs jbig2dec jpeg lcms2mt libpng openjpeg tiff zlib
+ # using tree freetype because of https://bugs.archlinux.org/task/56849
+ # lcms2mt is the new lcms2 fork aimed to replace lcms2 in a thread safe way
+
+ # http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=40dc5b409c6262b18b4bf5386b5482ead4c511e3
+ # libs link unwanted to libgpdl that isn't installed
+ rm -rf gpdl
+
+ # https://bugs.ghostscript.com/show_bug.cgi?id=704405
+ sed -i "s/gscms_transformm_color_const/gscms_transform_color_const/" base/gsicc_lcms2.c
+
+ # Debian: # allow the build timestamp to be externally set
+ patch -Np1 -i ../2010_add_build_timestamp_setting.patch
+
+ # Fix build of asymptote
+ patch -Np1 -i ../fix-gx_default_copy_alpha.patch
+}
+
+build() {
+ cd ghostpdl-${pkgver}
+ ./configure --prefix=/usr \
+ --enable-dynamic \
+ --with-ijs \
+ --with-jbig2dec \
+ --with-x \
+ --with-drivers=ALL \
+ --with-fontpath=/usr/share/fonts/gsfonts \
+ --enable-fontconfig \
+ --enable-freetype \
+ --enable-openjpeg \
+ --with-system-libtiff \
+ --with-libpaper \
+ --disable-compile-inits #--help # needed for linking with system-zlib
+ make
+}
+
+package_ghostscript() {
+ optdepends=('texlive-core: needed for dvipdf'
+ 'gtk3: needed for gsx')
+
+ cd ghostpdl-${pkgver}
+ make DESTDIR="${pkgdir}" install-gs install-so-gs
+ # replace statically linked gs binary with symlink to dynamically linked gsc
+ rm -v "${pkgdir}"/usr/bin/gs
+ ln -s gsc "${pkgdir}"/usr/bin/gs
+
+ # remove unwanted localized manpages
+ rm -rv "${pkgdir}"/usr/share/man/de
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
+}
+
+package_ghostxps() {
+ pkgdesc="${pkgdesc/PostScript/XPS document}"
+ depends=("ghostscript=${pkgver}-${pkgrel}")
+
+ cd ghostpdl-${pkgver}
+ make DESTDIR="${pkgdir}" install-gxps install-so-gxps
+ rm -r "${pkgdir}"/usr/include
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
+
+ # fix file conflict - FS#70238
+ rm -r "${pkgdir}"/usr/lib/libgxps.so
+}
+
+package_ghostpcl() {
+ pkgdesc="${pkgdesc/PostScript/PCL 6}"
+ depends=("ghostscript=${pkgver}-${pkgrel}")
+
+ cd ghostpdl-${pkgver}
+ make DESTDIR="${pkgdir}" install-gpcl6 install-so-gpcl6
+ rm -r "${pkgdir}"/usr/include
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
+}
More information about the arch-commits
mailing list