blob: d4222c773d05e83ac718d20ca5ef5abff5ec4165 [file] [log] [blame]
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05001SUMMARY = "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=b17cea54743435ab2a581c237bea294a"
15
16DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng"
17DEPENDS_class-native = "libpng-native"
18
19SRC_URI_BASE = "http://downloads.ghostscript.com/public/ghostscript-${PV}.tar.gz \
20 file://ghostscript-9.15-parallel-make.patch \
21 file://ghostscript-9.16-Werror-return-type.patch \
22 file://png_mak.patch \
23 file://0001-Bug-696497-Fix-support-for-building-with-no-jbig2-de.patch \
24 file://0002-Bug-696497-part-2-fix-support-for-building-with-a-JP.patch \
25 file://do-not-check-local-libpng-source.patch \
26"
27
28SRC_URI = "${SRC_URI_BASE} \
29 file://ghostscript-9.02-prevent_recompiling.patch \
30 file://ghostscript-9.02-genarch.patch \
31 file://objarch.h \
32 file://cups-no-gcrypt.patch \
33 "
34
35SRC_URI_class-native = "${SRC_URI_BASE} \
36 file://ghostscript-native-fix-disable-system-libtiff.patch \
37 file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \
38 "
39
40SRC_URI[md5sum] = "33a47567d7a591c00a253caddd12a88a"
41SRC_URI[sha256sum] = "5fc93079749a250be5404c465943850e3ed5ffbc0d5c07e10c7c5ee8afbbdb1b"
42
43EXTRA_OECONF = "--without-x --with-system-libtiff --without-jbig2dec \
44 --with-fontpath=${datadir}/fonts \
45 --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \
46 --with-cups-datadir=${datadir}/cups \
47 ${@base_conditional('SITEINFO_ENDIANNESS', 'le', '--enable-little-endian', '--enable-big-endian', d)} \
48 "
49
50EXTRA_OECONF_append_mips = " --with-large_color_index=0"
51EXTRA_OECONF_append_mipsel = " --with-large_color_index=0"
52
53# Explicity disable libtiff, fontconfig,
54# freetype, cups for ghostscript-native
55EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \
56 --without-jbig2dec \
57 --with-fontpath=${datadir}/fonts \
58 --without-libidn --disable-fontconfig \
59 --disable-freetype --disable-cups"
60
61# This has been fixed upstream but for now we need to subvert the check for time.h
62# http://bugs.ghostscript.com/show_bug.cgi?id=692443
63# http://bugs.ghostscript.com/show_bug.cgi?id=692426
64CFLAGS += "-DHAVE_SYS_TIME_H=1"
65BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1"
66
67inherit autotools
68
69do_configure_prepend () {
70 mkdir -p obj
71 mkdir -p soobj
72 if [ -e ${WORKDIR}/objarch.h ]; then
73 cp ${WORKDIR}/objarch.h obj/arch.h
74 fi
75}
76
77do_configure_append () {
78 # copy tools from the native ghostscript build
79 if [ "${PN}" != "ghostscript-native" ]; then
80 mkdir -p obj/aux soobj
81 for i in genarch genconf mkromfs echogs gendev genht; do
82 cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i
83 done
84 fi
85}
86
87do_install_append () {
88 mkdir -p ${D}${datadir}/ghostscript/${PV}/
89 cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/
90 cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/
91}
92
93do_compile_class-native () {
94 mkdir -p obj
95 for i in genarch genconf mkromfs echogs gendev genht; do
96 oe_runmake obj/aux/$i
97 done
98}
99
100do_install_class-native () {
101 install -d ${D}${bindir}/ghostscript-${PV}
102 for i in genarch genconf mkromfs echogs gendev genht; do
103 install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i
104 done
105}
106
107BBCLASSEXTEND = "native"