blob: b2124ed4f40a911a13e957c4e0d7044b11175286 (
plain)
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
|
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
# automatically generated by gs-ctan
# please do not edit this file
#
# TODO: write common base eclass for g-sorcery
#
# Original Author: Jauhien Piatlicki <piatlicki@gmail.com>
# Purpose: support installation of latex packages
# from overlays generated by gs-ctan
#
# Bugs to piatlicki@gmail.com
#
# @ECLASS: gs-ctan.eclass
#
# @ECLASS-VARIABLE: BASE_SRC_URI
# @DESCRIPTION: address of a repository with packages
#
# @ECLASS-VARIABLE: CATALOGUE
# @DESCRIPTION: directory on the server where package lives
#
# @ECLASS-VARIABLE: SOURCE_TYPE
# @DESCRIPTION: type of a package (zip or tar.xz)
#
# @ECLASS-VARIABLE: DIGEST_SOURCES
# @DESCRIPTION: whether manifest for sources exists
#
# @ECLASS-VARIABLE: REALNAME
# @DESCRIPTION: real name of a package in the repository
#
# @ECLASS-VARIABLE: GSCTAN_STORE_DIR
# @DESCRIPTION: store location for downloaded sources
GSCTAN_STORE_DIR="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}"
#
# @ECLASS-VARIABLE: GSCTAN_FETCH_CMD
# @DESCRIPTION: fetch command
GSCTAN_FETCH_CMD="wget"
inherit latex-package
if [[ ${SOURCE_TYPE} = "zip" ]]; then
EXPORT_FUNCTIONS src_{unpack,compile,install}
else
EXPORT_FUNCTIONS src_{unpack,install}
fi
SUFFIX="${SOURCE_TYPE}"
SOURCEFILE=${REALNAME}.${SUFFIX}
gs-ctan_fetch() {
addwrite "${GSCTAN_STORE_DIR}"
pushd "${GSCTAN_STORE_DIR}" >/dev/null || die "can't chdir to ${GSCTAN_STORE_DIR}"
if [[ ! -f "${SOURCEFILE}" ]]; then
$GSCTAN_FETCH_CMD ${BASE_SRC_URI}${CATALOGUE}${SOURCEFILE} || die
fi
popd >/dev/null || die
}
gs-ctan_src_unpack() {
if [[ ${SOURCE_TYPE} = "zip" ]]; then
if [[ x${DIGEST_SOURCES} = x ]]; then
gs-ctan_fetch
fi
cp ${GSCTAN_STORE_DIR}/${SOURCEFILE} . || die
unzip ${SOURCEFILE} || die
mv ${PN} ${P} || die
else
if [[ x${DIGEST_SOURCES} = x ]]; then
gs-ctan_fetch
fi
mkdir ${S} || die
cd ${S} || die
tar xvf ${GSCTAN_STORE_DIR}/${SOURCEFILE} || die
rm -rf tlpkg || die
fi
}
gs-ctan_src_compile() {
cd ${S} || die
latex-package_src_compile
for d in `ls -d -- */`; do
pushd ${d} || die
latex-package_src_compile
popd || die
done
}
gs-ctan_src_install() {
if [[ ${SOURCE_TYPE} = "zip" ]]; then
cd ${S} || die
latex-package_src_install
for d in `ls -d -- */`; do
pushd ${d} || die
latex-package_src_install
popd || die
done
else
insinto ${TEXMF}
doins -r *
fi
}
|