blob: 40fdda83b14bd90fef8901ae1e0878ccff9eb5da (
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit eutils
DESCRIPTION="CadSoft EAGLE schematic and printed circuit board (PCB) layout editor"
HOMEPAGE="http://www.cadsoft.de"
SRC_URI="
x86? ( ftp://ftp.cadsoft.de/${PN}/program/${PV%\.[0-9]}/${PN}-lin32-${PV}.run )
amd64? ( ftp://ftp.cadsoft.de/${PN}/program/${PV%\.[0-9]}/${PN}-lin64-${PV}.run )"
LICENSE="cadsoft-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE="doc linguas_de linguas_zh"
QA_PREBUILT="opt/eagle/bin/eagle"
RESTRICT="mirror bindist"
RDEPEND="
sys-libs/glibc
dev-libs/openssl:0
>=sys-libs/zlib-1.2.8-r1
>=media-libs/freetype-2.5.0.1
>=media-libs/fontconfig-2.10.92
x11-libs/libXext
x11-libs/libX11
>=x11-libs/libXrender-0.9.8
>=x11-libs/libXrandr-1.4.2
>=x11-libs/libXcursor-1.1.14
>=x11-libs/libXi-1.7.2
net-print/cups
x11-libs/libxcb
"
# Append ${PV} since that's what upstream installs to
case "${LINGUAS}" in
*de*)
MY_LANG="de";;
*)
MY_LANG="en";;
esac
src_unpack() {
# Extract the built-in .tar.bz2 file starting at __DATA__
sed -e '1,/^__DATA__$/d' "${DISTDIR}/${A}" | tar xj || die "unpacking failed"
}
src_install() {
local installdir="/opt/eagle"
# Set MY_LANG for this function only since UPDATE_zh and README_zh
# don't exist
[[ ${LINGUAS} == *zh* ]] && MY_INST_LANG="zh" || MY_INST_LANG="${MY_LANG}"
# Install the documentation
cd doc/
local pattern="^((README|UPDATE)_${MY_LANG}|library_${MY_LANG}\.txt)$"
for docs in README_* UPDATE_* library_*.txt; do
if [[ $docs =~ $pattern ]]; then
dodoc $docs
fi
rm -f $docs
done
doman eagle.1
rm eagle.1
# Install extra documentation if requested
pattern="^((tutorial|manual|generate-3d-idf-data)_|(connect-device-split-symbol|make-symbol-device-package-bsdl-2011)-)${MY_LANG}.pdf$"
if use doc; then
cd ulp/
for docs in generate-3d-idf-data_*.pdf connect-device-split-symbol-*.pdf make-symbol-device-package-bsdl-2011-*.pdf; do
if [[ ! $docs =~ $pattern ]]; then
rm $docs
fi
done
cd ../
for docs in manual_* tutorial_*; do
if [[ ! $docs =~ $pattern ]]; then
rm $docs
fi
done
else
rm {elektro-tutorial,manual_*,tutorial_*,layer-setup_designrules}.pdf
rm -rf ulp/
fi
rm -f license*.txt eagle.dtd
cd "${S}"
insinto $installdir
doins -r .
fperms 0755 ${installdir}/bin/eagle
# Install wrapper (suppressing leading tabs)
# see bug #188368 or http://www.cadsoftusa.com/training/faq/#3
exeinto /opt/bin
newexe "${FILESDIR}/eagle_wrapper_script" eagle
# Finally, append the path of the eagle binary respecting $installdir and any
# arguments passed to the script (thanks Denilson)
echo "${installdir}/bin/eagle" '"$@"' >> "${D}/opt/bin/eagle"
echo -e "ROOTPATH=${installdir}/bin\nPRELINK_PATH_MASK=${installdir}" > "${S}/90eagle-${PV}"
doenvd "${S}/90eagle-${PV}"
# Create desktop entry
newicon bin/${PN}icon50.png ${PF}-icon50.png
make_desktop_entry "${ROOT}/opt/bin/eagle" "CadSoft EAGLE Layout Editor" ${PF}-icon50 "Graphics;Electronics"
}
pkg_postinst() {
elog "Run \`env-update && source /etc/profile\` from within \${ROOT}"
elog "now to set up the correct paths."
elog "You must first run eagle as root to invoke product registration."
echo
ewarn "Due to some necessary changes in the data structure, once you edit"
ewarn "a file with version 7.x you will no longer be able to edit it"
ewarn "with versions prior to 7.0!"
ewarn
ewarn "Please read /usr/share/doc/${PF}/UPDATE_${MY_LANG} if you are upgrading from a version prior 7.x!"
}
|