blob: b0fe8ea5b2ae1017fa8d1258e2391b68d1593a7d (
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
103
104
105
106
107
108
109
110
111
112
113
114
115
|
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
# this could be a multiple python package
# but the way it is packaged makes it very time consuming.
PYTHON_COMPAT=( python2_7 )
inherit eutils toolchain-funcs python-single-r1
MYP=${PN}.net-${PV}
DESCRIPTION="Automated astrometric calibration programs and service"
HOMEPAGE="http://astrometry.net/"
SRC_URI="https://github.com/dstndstn/astrometry.net/releases/download/${PV}/${MYP}.tar.gz"
LICENSE="BSD GPL-2 GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="examples"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
dev-python/astropy[${PYTHON_USEDEP}]
dev-python/fitsio[${PYTHON_USEDEP}]
dev-python/numpy[${PYTHON_USEDEP}]
media-libs/libpng:0
media-libs/netpbm
sci-astronomy/wcslib:0=
sci-libs/cfitsio:0=
sci-libs/gsl:0=
sys-libs/zlib:0=
virtual/jpeg:0
x11-libs/cairo
${PYTHON_DEPS}"
DEPEND="${RDEPEND}
dev-lang/swig:0
virtual/pkgconfig"
S="${WORKDIR}/${MYP}"
PATCHES=(
"${FILESDIR}"/${PN}-0.67-soname.patch
"${FILESDIR}"/${PN}-0.67-qsortr.patch
)
# "${FILESDIR}"/${PN}-0.72-dynlink.patch
src_prepare() {
default
# respect user compilation flags
sed -e '/-O3/d' \
-e '/-fomit-frame-pointer/d' \
-i util/makefile.common || die
# fix underlinking
sed -e "s|-lm|-lm $($(tc-getPKG_CONFIG) --libs wcslib gsl)|" \
-i util/Makefile || die
export SYSTEM_GSL=yes
}
src_compile() {
tc-export CC RANLIB AR
# fragile makefiles, build targets sequentially
emake
emake py
emake extra
emake report.txt
}
src_test() {
emake test
local d
for d in util blind libkd; do
pushd ${d} > /dev/null
./test || die "failed tests in ${d}"
popd ${d} > /dev/null
done
}
ap_make() {
emake \
INSTALL_DIR="${ED%/}/usr" \
DATA_INSTALL_DIR="${ED%/}/usr/share/astrometry" \
LIB_INSTALL_DIR="${ED%/}/usr/$(get_libdir)" \
ETC_INSTALL_DIR="${ED%/}/etc" \
MAN1_INSTALL_DIR="${ED%/}/usr/share/man/man1" \
DOC_INSTALL_DIR="${ED%/}/usr/share/doc/${PF}" \
EXAMPLE_INSTALL_DIR="${ED%/}/usr/share/doc/${PF}/examples" \
PY_BASE_INSTALL_DIR="${D}/$(python_get_sitedir)/astrometry" \
PY_BASE_LINK_DIR="../$(python_get_sitedir | sed -e 's|/usr/||')/astrometry" \
FINAL_DIR="${EPREFIX%/}/usr" \
DATA_FINAL_DIR="${EPREFIX%/}/usr/share/astrometry" \
$@
}
src_install() {
ap_make install-core
ap_make -C util install
ap_make -C blind install-extra
# remove duplicates and non installable libraries
# cfitsio
rm "${ED}"/usr/bin/{fitscopy,imcopy,listhead} || die
# cfitsio utilities
rm "${ED}"/usr/bin/{fitsverify,imarith,imstat,liststruc,modhead,tablist,tabmerge} || die
rm "${ED}"/usr/$(get_libdir)/lib*.a || die
rm "${ED}"/usr/share/doc/${PF}/LICENSE || die
if use examples; then
docompress -x /usr/share/doc/${PF}/examples
else
rm -r "${ED}"/usr/share/doc/${PF}/examples || die
fi
}
|