forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tex4ht-20090611_p1038-r2.ebuild
114 lines (92 loc) · 3.28 KB
/
tex4ht-20090611_p1038-r2.ebuild
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=4
inherit latex-package toolchain-funcs java-pkg-opt-2
IUSE=""
# tex4ht-20050331_p2350 -> tex4ht-1.0.2005_03_31_2350
MY_P="${PN}-1.0.${PV:0:4}_${PV:4:2}_${PV:6:2}_${PV/*_p/}"
DESCRIPTION="Converts (La)TeX to (X)HTML, XML and OO.org"
HOMEPAGE="http://www.cse.ohio-state.edu/~gurari/TeX4ht/
http://www.cse.ohio-state.edu/~gurari/TeX4ht/bugfixes.html"
SRC_URI="http://www.cse.ohio-state.edu/~gurari/TeX4ht/fix/${MY_P}.tar.gz"
LICENSE="LPPL-1.2"
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
SLOT="0"
DEPEND=">=sys-apps/sed-4
java? ( >=virtual/jdk-1.5 )"
RDEPEND="app-text/ghostscript-gpl
media-gfx/imagemagick
java? ( >=virtual/jre-1.5 )"
IUSE="java"
S="${WORKDIR}/${MY_P}"
src_prepare() {
epatch "${FILESDIR}/${PN}-texlive-updates.patch"
cd "${S}/texmf/tex4ht/base/unix"
sed -i \
-e "s#~/tex4ht.dir#${EPREFIX}/usr/share#" \
-e "s#tpath/tex/texmf/fonts/tfm/!#t${EPREFIX}/usr/share/texmf/fonts/tfm/!\nt${EPREFIX}/usr/local/share/texmf/fonts/tfm/!\nt${EPREFIX}/var/cache/fonts/tfm/!#" \
-e "s#%%~/texmf-dist#${EPREFIX}/usr/share/texmf#g" tex4ht.env \
|| die "sed of tex4ht.env failed"
einfo "Removing precompiled java stuff"
find "${S}" '(' -name '*.class' -o -name '*.jar' ')' -print -delete
}
src_compile() {
cd "${S}/src/"
einfo "Compiling postprocessor sources..."
for f in tex4ht t4ht htcmd ; do
$(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -o $f $f.c \
-DENVFILE="\"${EPREFIX}/usr/share/texmf/tex4ht/base/tex4ht.env\"" \
-DHAVE_DIRENT_H -DKPATHSEA -lkpathsea \
|| die "Compiling $f failed"
done
if use java; then
einfo "Compiling java files..."
cd java
ejavac *.java */*.java */*/*.java -d ../../texmf/tex4ht/bin
cd "${S}/texmf/tex4ht/bin"
# Create the jar needed by oolatex
jar -cf "${S}/${PN}.jar" * || die "failed to create jar"
fi
}
src_install () {
# install the binaries
dobin "${S}/src/tex4ht" "${S}/src/t4ht" "${S}/src/htcmd"
# install the scripts
if ! use java; then
rm -f "${S}"/bin/unix/oo*
rm -f "${S}"/bin/unix/jh*
fi
dobin "${S}"/bin/unix/mk4ht || die
# install the .4ht scripts
insinto /usr/share/texmf/tex/generic/tex4ht
doins "${S}"/texmf/tex/generic/tex4ht/* || die
# install the special htf fonts
insinto /usr/share/texmf/tex4ht
doins -r "${S}/texmf/tex4ht/ht-fonts" || die
if use java; then
# install the java files
doins -r "${S}/texmf/tex4ht/bin"
java-pkg_jarinto /usr/share/texmf/tex4ht/bin
java-pkg_dojar "${S}/${PN}.jar"
fi
# install the .4xt files
doins -r "${S}/texmf/tex4ht/xtpipes" || die
# install the env file
insinto /usr/share/texmf/tex4ht/base
newins "${S}/texmf/tex4ht/base/unix/tex4ht.env" tex4ht.env || die
if latex-package_has_tetex_3 ; then
insinto /etc/texmf/texmf.d
doins "${FILESDIR}/50tex4ht.cnf" || die
fi
insinto /usr/share/texmf/tex/generic/${PN}
insopts -m755
doins "${S}"/bin/ht/unix/* || die
}
pkg_postinst() {
use java || elog 'ODF converters (oolatex & friends) require the java use flag'
latex-package_pkg_postinst
elog "In order to avoid collisions with multiple packages"
elog "We are not installing the scripts in /usr/bin anymore"
elog "If you want to use, say, htlatex, you can use 'mk4ht htlatex file'"
}