| # Copyright 1999-2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Header: /var/cvsroot/gentoo-x86/dev-embedded/openocd/openocd-0.6.1.ebuild,v 1.2 2013/04/23 03:16:09 vapier Exp $ |
| |
| EAPI="4" |
| |
| inherit eutils multilib flag-o-matic toolchain-funcs |
| if [[ ${PV} == "9999" ]] ; then |
| inherit autotools git-2 |
| KEYWORDS="" |
| EGIT_REPO_URI="git://${PN}.git.sourceforge.net/gitroot/${PN}/${PN}" |
| else |
| KEYWORDS="amd64 x86" |
| SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.bz2" |
| fi |
| |
| DESCRIPTION="OpenOCD - Open On-Chip Debugger" |
| HOMEPAGE="http://openocd.sourceforge.net" |
| |
| LICENSE="GPL-2" |
| SLOT="0" |
| IUSE="blaster dummy ftd2xx ftdi minidriver parport presto segger usb versaloon" |
| RESTRICT="strip" # includes non-native binaries |
| |
| # libftd2xx is the default because it is reported to work better. |
| DEPEND=">=dev-lang/jimtcl-0.73 |
| usb? ( virtual/libusb:0 ) |
| presto? ( dev-embedded/libftd2xx ) |
| ftd2xx? ( dev-embedded/libftd2xx ) |
| ftdi? ( dev-embedded/libftdi )" |
| RDEPEND="${DEPEND}" |
| |
| REQUIRED_USE="blaster? ( || ( ftdi ftd2xx ) ) ftdi? ( !ftd2xx )" |
| |
| src_prepare() { |
| if [[ ${PV} == "9999" ]] ; then |
| sed -i -e "/@include version.texi/d" doc/${PN}.texi || die |
| AT_NO_RECURSIVE=yes eautoreconf |
| fi |
| |
| # Disable craptastic build settings. |
| sed -i \ |
| -e 's:if test "[$]OCDxprefix" != "[$]ac_default_prefix":if false:' \ |
| configure || die |
| |
| if use ftdi ; then |
| local pc="libftdi$(has_version '=dev-embedded/libftdi-1*' && echo 1)" |
| # Use libftdi-1 paths #460916 |
| local libs=$($(tc-getPKG_CONFIG) --libs ${pc}) |
| sed -i \ |
| -e "s:-lftdi -lusb:${libs}:" \ |
| configure src/Makefile.in || die |
| append-cppflags $($(tc-getPKG_CONFIG) --cflags ${pc}) |
| fi |
| } |
| |
| src_configure() { |
| # Here are some defaults |
| local myconf=( |
| --enable-buspirate |
| --enable-ioutil |
| --disable-werror |
| --disable-internal-jimtcl |
| --enable-amtjtagaccel |
| --enable-ep93xx |
| --enable-at91rm9200 |
| --enable-gw16012 |
| --enable-oocd_trace |
| ) |
| |
| if use usb; then |
| myconf+=( |
| --enable-usbprog |
| --enable-jlink |
| --enable-rlink |
| --enable-vsllink |
| --enable-arm-jtag-ew |
| ) |
| fi |
| |
| # add explicitely the path to libftd2xx |
| use ftd2xx && append-ldflags -L/opt/$(get_libdir) |
| |
| if use blaster; then |
| use ftdi && myconf+=( --enable-usb_blaster_libftdi ) |
| use ftd2xx && myconf+=( --enable-usb_blaster_ftd2xx ) |
| fi |
| econf \ |
| $(use_enable dummy) \ |
| $(use_enable ftdi ft2232_libftdi) \ |
| $(use_enable ftd2xx ft2232_ftd2xx) \ |
| $(use_enable minidriver minidriver-dummy) \ |
| $(use_enable parport) \ |
| $(use_enable presto presto_ftd2xx) \ |
| $(use_enable segger jlink) \ |
| $(use_enable versaloon vsllink) \ |
| "${myconf[@]}" |
| } |
| |
| src_install() { |
| default |
| env -uRESTRICT prepstrip "${ED}"/usr/bin "${ED}"/usr/$(get_libdir) |
| } |