forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
openocd-9999.ebuild
132 lines (118 loc) · 2.66 KB
/
openocd-9999.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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
inherit eutils multilib flag-o-matic toolchain-funcs udev
# One ebuild to rule them all
if [[ ${PV} == "9999" ]] ; then
inherit autotools git-2
EGIT_REPO_URI="git://git.code.sf.net/p/${PN}/code"
EGIT_PROJECT="${PN}"
else
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
S="${WORKDIR}"/${MY_P}
KEYWORDS="~amd64 ~arm ~x86"
SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${MY_PV}/${MY_P}.tar.gz"
fi
DESCRIPTION="OpenOCD - Open On-Chip Debugger"
HOMEPAGE="http://openocd.sourceforge.net"
LICENSE="GPL-2+"
SLOT="0"
IUSE="cmsis-dap dummy ftdi parport +usb verbose-io"
RESTRICT="strip" # includes non-native binaries
RDEPEND=">=dev-lang/jimtcl-0.76
dev-embedded/libjaylink
cmsis-dap? ( dev-libs/hidapi )
usb? (
virtual/libusb:0
virtual/libusb:1
)
ftdi? ( dev-embedded/libftdi:= )"
DEPEND="${RDEPEND}
virtual/pkgconfig"
[[ ${PV} == "9999" ]] && DEPEND+=" >=sys-apps/texinfo-5" #549946
src_prepare() {
epatch_user
if [[ ${PV} == "9999" ]] ; then
AT_NO_RECURSIVE=yes eautoreconf
fi
}
src_configure() {
# Here are some defaults
local myconf=(
--enable-buspirate
--disable-werror
--disable-internal-jimtcl
--disable-internal-libjaylink
--enable-amtjtagaccel
--enable-ep93xx
--enable-at91rm9200
--enable-gw16012
--enable-oocd_trace
--enable-arm-jtag-ew
--enable-sysfsgpio
--enable-bcm2835gpio
)
# Adapters requiring usb/libusb-1.X support
if use usb; then
myconf+=(
--enable-aice
--enable-usb-blaster-2
--enable-ftdi
--enable-ti-icdi
--enable-ulink
--enable-osbdm
--enable-opendous
--enable-usbprog
--enable-jlink
--enable-rlink
--enable-stlink
--enable-vsllink
--enable-armjtagew
$(use_enable verbose-io verbose-usb-io)
$(use_enable verbose-io verbose_usb_comms)
)
else
myconf+=(
--disable-aice
--disable-usb-blaster-2
--disable-ftdi
--disable-ti-icdi
--disable-ulink
--disable-osbdm
--disable-opendous
--disable-usbprog
--disable-jlink
--disable-rlink
--disable-stlink
--disable-vsllink
--disable-armjtagew
)
fi
if use ftdi; then
myconf+=(
--enable-usb_blaster_libftdi
--enable-openjtag_ftdi
--enable-presto_libftdi
)
else
myconf+=(
--disable-openjtag_ftdi
--disable-presto_libftdi
--disable-usb_blaster_libftdi
)
fi
econf \
$(use_enable dummy) \
$(use_enable cmsis-dap) \
$(use_enable parport) \
$(use_enable parport parport_ppdev) \
$(use_enable verbose-io verbose-jtag-io) \
"${myconf[@]}"
}
src_install() {
default
env -uRESTRICT prepstrip "${ED}"/usr/bin
udev_dorules "${D}"/usr/share/${PN}/contrib/*.rules
}