1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
5 inherit autotools flag-o-matic sgml-catalog-r1 toolchain-funcs
7 DESCRIPTION="Jade is an implementation of DSSSL for formatting SGML and XML documents"
8 HOMEPAGE="http://openjade.sourceforge.net"
9 SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.gz"
13 KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
18 >=app-text/opensp-1.5.1
27 eapply "${FILESDIR}"/${P}-deplibs.patch
28 eapply "${FILESDIR}"/${P}-ldflags.patch
29 eapply "${FILESDIR}"/${P}-msggen.pl.patch
30 eapply "${FILESDIR}"/${P}-respect-ldflags.patch
31 eapply "${FILESDIR}"/${P}-libosp-la.patch
32 eapply "${FILESDIR}"/${P}-gcc46.patch
33 eapply "${FILESDIR}"/${P}-no-undefined.patch
34 eapply "${FILESDIR}"/${P}-wchar_t-uint.patch
35 eapply "${FILESDIR}"/${P}-chmod.patch #487218
37 # Please note! Opts are disabled. If you know what you're doing
38 # feel free to remove this line. It may cause problems with
39 # docbook-sgml-utils among other things.
40 #ALLOWED_FLAGS="-O -O1 -O2 -pipe -g -march"
43 # Default CFLAGS and CXXFLAGS is -O2 but this make openjade segfault
44 # on hppa. Using -O1 works fine. So I force it here.
45 use hppa && replace-flags -O2 -O1
47 ln -s config/configure.in configure.ac || die
48 cp "${FILESDIR}"/${P}-acinclude.m4 acinclude.m4 || die
49 rm config/missing || die
56 # avoids dead-store elimination optimization
57 # leading to segfaults on GCC 6
59 tc-is-clang || append-cxxflags $(test-flags-CXX -fno-lifetime-dse)
61 # We need Prefix env, bug #287358
62 CONFIG_SHELL="${CONFIG_SHELL:-${BASH}}" \
65 --enable-default-catalog="${EPREFIX}"/etc/sgml/catalog \
66 --enable-default-search-path="${EPREFIX}"/usr/share/sgml \
67 --enable-splibdir="${EPREFIX}"/usr/$(get_libdir) \
68 --libdir="${EPREFIX}"/usr/$(get_libdir) \
69 --datadir="${EPREFIX}"/usr/share/sgml/${P} \
75 emake -j1 SHELL="${BASH}"
79 #dodir /usr/$(get_libdir)
83 libdir="${EPREFIX}"/usr/$(get_libdir) \
86 find "${D}" -name '*.la' -delete || die
88 dosym openjade /usr/bin/jade
89 dosym onsgmls /usr/bin/nsgmls
90 dosym osgmlnorm /usr/bin/sgmlnorm
91 dosym ospam /usr/bin/spam
92 dosym ospent /usr/bin/spent
93 dosym osx /usr/bin/sgml2xml
95 insinto /usr/share/sgml/${P}
96 doins dsssl/builtins.dsl
98 newins - catalog <<-EOF
99 SYSTEM "builtins.dsl" "builtins.dsl"
102 insinto /usr/share/sgml/${P}/dsssl
103 doins dsssl/{dsssl.dtd,style-sheet.dtd,fot.dtd}
104 newins "${FILESDIR}"/${P}.dsssl-catalog catalog
106 # Breaks sgml2xml among other things
107 #insinto /usr/share/sgml/${P}/unicode
108 #doins unicode/{catalog,unicode.sd,unicode.syn,gensyntax.pl}
111 newins - "${P}.cat" <<-EOF
112 CATALOG "${EPREFIX}/usr/share/sgml/openjade-${PV}/catalog"
113 CATALOG "${EPREFIX}/usr/share/sgml/openjade-${PV}/dsssl/catalog"
116 local HTML_DOCS=( doc/*.htm )
122 # work-around old revision removing it
123 cp "${ED}"/etc/sgml/${P}.cat "${T}" || die
127 local backup=${T}/${P}.cat
128 local real=${EROOT}/etc/sgml/${P}.cat
129 if ! cmp -s "${backup}" "${real}"; then
130 cp "${backup}" "${real}" || die
132 # this one's shared with docbook-dsssl, so we need to do it in postinst
133 if ! grep -q -s ${P}.cat \
134 "${EROOT}"/etc/sgml/sgml-docbook.cat; then
135 ebegin "Adding ${P}.cat to /etc/sgml/sgml-docbook.cat"
136 cat >> "${EROOT}"/etc/sgml/sgml-docbook.cat <<-EOF
137 CATALOG "${EPREFIX}/etc/sgml/${P}.cat"
141 sgml-catalog-r1_pkg_postinst
145 if [[ -z ${REPLACED_BY_VERSION} ]]; then
146 ebegin "Removing ${P}.cat from /etc/sgml/sgml-docbook.cat"
147 sed -i -e '/${P}/d' \
148 "${EROOT}"/etc/sgml/sgml-docbook.cat
150 if [[ ! -s ${EROOT}/etc/sgml/sgml-docbook.cat ]]; then
151 rm -f "${EROOT}"/etc/sgml/sgml-docbook.cat
154 sgml-catalog-r1_pkg_postrm