diff options
Diffstat (limited to 'meta/recipes-extended/ghostscript/ghostscript_10.0.0.bb')
| -rw-r--r-- | meta/recipes-extended/ghostscript/ghostscript_10.0.0.bb | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/meta/recipes-extended/ghostscript/ghostscript_10.0.0.bb b/meta/recipes-extended/ghostscript/ghostscript_10.0.0.bb new file mode 100644 index 0000000000..56a93632e2 --- /dev/null +++ b/meta/recipes-extended/ghostscript/ghostscript_10.0.0.bb | |||
| @@ -0,0 +1,129 @@ | |||
| 1 | SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" | ||
| 2 | DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ | ||
| 3 | a back-end to a program such as ghostview, it can display PostScript and PDF \ | ||
| 4 | documents in an X11 environment. \ | ||
| 5 | \ | ||
| 6 | Furthermore, it can render PostScript and PDF files as graphics to be printed \ | ||
| 7 | on non-PostScript printers. Supported printers include common \ | ||
| 8 | dot-matrix, inkjet and laser models. \ | ||
| 9 | " | ||
| 10 | HOMEPAGE = "http://www.ghostscript.com" | ||
| 11 | SECTION = "console/utils" | ||
| 12 | |||
| 13 | LICENSE = "GPL-3.0-only" | ||
| 14 | LIC_FILES_CHKSUM = "file://LICENSE;md5=f98ffa763e50cded76f49bce73aade16" | ||
| 15 | |||
| 16 | DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng" | ||
| 17 | DEPENDS:class-native = "libpng-native" | ||
| 18 | |||
| 19 | UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" | ||
| 20 | UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" | ||
| 21 | |||
| 22 | # As of ghostscript 9.54.0 the jpeg issue in the CVE is present in the gs jpeg sources | ||
| 23 | # however we use an external jpeg which doesn't have the issue. | ||
| 24 | CVE_CHECK_IGNORE += "CVE-2013-6629" | ||
| 25 | |||
| 26 | def gs_verdir(v): | ||
| 27 | return "".join(v.split(".")) | ||
| 28 | |||
| 29 | |||
| 30 | SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${@gs_verdir("${PV}")}/${BPN}-${PV}.tar.gz \ | ||
| 31 | file://ghostscript-9.15-parallel-make.patch \ | ||
| 32 | file://ghostscript-9.16-Werror-return-type.patch \ | ||
| 33 | file://do-not-check-local-libpng-source.patch \ | ||
| 34 | file://avoid-host-contamination.patch \ | ||
| 35 | file://mkdir-p.patch \ | ||
| 36 | file://cross-compile.patch \ | ||
| 37 | " | ||
| 38 | |||
| 39 | SRC_URI = "${SRC_URI_BASE} \ | ||
| 40 | file://cups-no-gcrypt.patch \ | ||
| 41 | " | ||
| 42 | |||
| 43 | SRC_URI:class-native = "${SRC_URI_BASE} \ | ||
| 44 | file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \ | ||
| 45 | file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ | ||
| 46 | " | ||
| 47 | |||
| 48 | SRC_URI[sha256sum] = "a57764d70caf85e2fc0b0f59b83b92e25775631714dcdb97cc6e0cea414bb5a3" | ||
| 49 | |||
| 50 | # Put something like | ||
| 51 | # | ||
| 52 | # PACKAGECONFIG:append:pn-ghostscript = " x11" | ||
| 53 | # | ||
| 54 | # in local.conf to enable building with X11. Be careful. The order | ||
| 55 | # of the overrides matters! | ||
| 56 | # | ||
| 57 | #PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" | ||
| 58 | PACKAGECONFIG:class-native = "" | ||
| 59 | |||
| 60 | PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ | ||
| 61 | --without-x, virtual/libx11 libxext libxt gtk+3\ | ||
| 62 | " | ||
| 63 | |||
| 64 | EXTRA_OECONF = "--without-libpaper --with-system-libtiff --with-jbig2dec \ | ||
| 65 | --with-fontpath=${datadir}/fonts \ | ||
| 66 | --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ | ||
| 67 | --with-cups-datadir=${datadir}/cups \ | ||
| 68 | CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ | ||
| 69 | " | ||
| 70 | |||
| 71 | EXTRA_OECONF:append:mipsarcho32 = " --with-large_color_index=0" | ||
| 72 | |||
| 73 | # Explicity disable libtiff, fontconfig, | ||
| 74 | # freetype, cups for ghostscript-native | ||
| 75 | EXTRA_OECONF:class-native = "--without-x --with-system-libtiff=no \ | ||
| 76 | --without-libpaper \ | ||
| 77 | --with-fontpath=${datadir}/fonts \ | ||
| 78 | --without-libidn --disable-fontconfig \ | ||
| 79 | --enable-freetype --disable-cups " | ||
| 80 | |||
| 81 | # This has been fixed upstream but for now we need to subvert the check for time.h | ||
| 82 | # http://bugs.ghostscript.com/show_bug.cgi?id=692443 | ||
| 83 | # http://bugs.ghostscript.com/show_bug.cgi?id=692426 | ||
| 84 | CFLAGS += "-DHAVE_SYS_TIME_H=1" | ||
| 85 | BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1" | ||
| 86 | |||
| 87 | inherit autotools-brokensep | ||
| 88 | |||
| 89 | do_configure:prepend:class-target () { | ||
| 90 | rm -rf ${S}/jpeg/ | ||
| 91 | } | ||
| 92 | |||
| 93 | do_configure:append () { | ||
| 94 | # copy tools from the native ghostscript build | ||
| 95 | if [ "${PN}" != "ghostscript-native" ]; then | ||
| 96 | mkdir -p obj/aux soobj | ||
| 97 | for i in genarch genconf mkromfs echogs gendev genht packps; do | ||
| 98 | cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i | ||
| 99 | done | ||
| 100 | fi | ||
| 101 | } | ||
| 102 | |||
| 103 | do_install:append () { | ||
| 104 | mkdir -p ${D}${datadir}/ghostscript/${PV}/ | ||
| 105 | cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ | ||
| 106 | cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ | ||
| 107 | } | ||
| 108 | |||
| 109 | do_compile:class-native () { | ||
| 110 | mkdir -p obj | ||
| 111 | for i in genarch genconf mkromfs echogs gendev genht packps; do | ||
| 112 | oe_runmake obj/aux/$i | ||
| 113 | done | ||
| 114 | } | ||
| 115 | |||
| 116 | do_install:class-native () { | ||
| 117 | install -d ${D}${bindir}/ghostscript-${PV} | ||
| 118 | for i in genarch genconf mkromfs echogs gendev genht packps; do | ||
| 119 | install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i | ||
| 120 | done | ||
| 121 | } | ||
| 122 | |||
| 123 | BBCLASSEXTEND = "native" | ||
| 124 | |||
| 125 | # ghostscript does not supports "arc" | ||
| 126 | COMPATIBLE_HOST = "^(?!arc).*" | ||
| 127 | |||
| 128 | # some entries in NVD uses gpl_ghostscript | ||
| 129 | CVE_PRODUCT = "ghostscript gpl_ghostscript" | ||
