dev-embedded/openocd: Fix quoting issue from repoman
[gentoo.git] / dev-embedded / openocd / openocd-0.6.1.ebuild
1 # Copyright 1999-2013 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Id$
4
5 EAPI="4"
6
7 inherit eutils multilib flag-o-matic toolchain-funcs
8 if [[ ${PV} == "9999" ]] ; then
9         inherit autotools git-2
10         KEYWORDS=""
11         EGIT_REPO_URI="git://${PN}.git.sourceforge.net/gitroot/${PN}/${PN}"
12 else
13         KEYWORDS="~amd64 ~x86"
14         SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.bz2"
15 fi
16
17 DESCRIPTION="OpenOCD - Open On-Chip Debugger"
18 HOMEPAGE="http://openocd.sourceforge.net"
19
20 LICENSE="GPL-2"
21 SLOT="0"
22 IUSE="blaster dummy ftd2xx ftdi minidriver parport presto segger stlink usb versaloon"
23 RESTRICT="strip" # includes non-native binaries
24
25 # libftd2xx is the default because it is reported to work better.
26 DEPEND=">=dev-lang/jimtcl-0.73
27         usb? ( virtual/libusb:0 )
28         presto? ( dev-embedded/libftd2xx )
29         ftd2xx? ( dev-embedded/libftd2xx )
30         ftdi? ( dev-embedded/libftdi )"
31 RDEPEND="${DEPEND}"
32
33 REQUIRED_USE="blaster? ( || ( ftdi ftd2xx ) ) ftdi? ( !ftd2xx )"
34
35 src_prepare() {
36         if [[ ${PV} == "9999" ]] ; then
37                 sed -i -e "/@include version.texi/d" doc/${PN}.texi || die
38                 AT_NO_RECURSIVE=yes eautoreconf
39         fi
40
41         # Disable craptastic build settings.
42         sed -i \
43                 -e 's:if test "[$]OCDxprefix" != "[$]ac_default_prefix":if false:' \
44                 configure || die
45
46         if use ftdi ; then
47                 local pc="libftdi$(has_version '=dev-embedded/libftdi-1*' && echo 1)"
48                 # Use libftdi-1 paths #460916
49                 local libs=$($(tc-getPKG_CONFIG) --libs ${pc})
50                 sed -i \
51                         -e "s:-lftdi -lusb:${libs}:" \
52                         configure src/Makefile.in || die
53                 append-cppflags $($(tc-getPKG_CONFIG) --cflags ${pc})
54         fi
55 }
56
57 src_configure() {
58         # Here are some defaults
59         local myconf=(
60                 --enable-buspirate
61                 --enable-ioutil
62                 --disable-werror
63                 --disable-internal-jimtcl
64                 --enable-amtjtagaccel
65                 --enable-ep93xx
66                 --enable-at91rm9200
67                 --enable-gw16012
68                 --enable-oocd_trace
69         )
70
71         if use usb; then
72                 myconf+=(
73                         --enable-usbprog
74                         --enable-jlink
75                         --enable-rlink
76                         --enable-vsllink
77                         --enable-arm-jtag-ew
78                 )
79         fi
80
81         # add explicitely the path to libftd2xx
82         use ftd2xx && append-ldflags -L/opt/$(get_libdir)
83
84         if use blaster; then
85                 use ftdi && myconf+=( --enable-usb_blaster_libftdi )
86                 use ftd2xx && myconf+=( --enable-usb_blaster_ftd2xx )
87         fi
88         econf \
89                 $(use_enable dummy) \
90                 $(use_enable ftdi ft2232_libftdi) \
91                 $(use_enable ftd2xx ft2232_ftd2xx) \
92                 $(use_enable minidriver minidriver-dummy) \
93                 $(use_enable parport) \
94                 $(use_enable presto presto_ftd2xx) \
95                 $(use_enable stlink) \
96                 $(use_enable segger jlink) \
97                 $(use_enable versaloon vsllink) \
98                 "${myconf[@]}"
99 }
100
101 src_install() {
102         default
103         env -uRESTRICT prepstrip "${ED}"/usr/bin "${ED}"/usr/$(get_libdir)
104 }