summaryrefslogtreecommitdiff
path: root/dev-embedded/openocd
diff options
context:
space:
mode:
Diffstat (limited to 'dev-embedded/openocd')
-rw-r--r--dev-embedded/openocd/Manifest1
-rw-r--r--dev-embedded/openocd/files/openocd-0.10.0-fno-common.patch11
-rw-r--r--dev-embedded/openocd/files/openocd-0.10.0-gcc10.patch36
-rw-r--r--dev-embedded/openocd/openocd-0.10.0-r1.ebuild129
-rw-r--r--dev-embedded/openocd/openocd-0.9.0.ebuild132
-rw-r--r--dev-embedded/openocd/openocd-9999.ebuild123
6 files changed, 132 insertions, 300 deletions
diff --git a/dev-embedded/openocd/Manifest b/dev-embedded/openocd/Manifest
index d245d5b1033e..58dcefd97178 100644
--- a/dev-embedded/openocd/Manifest
+++ b/dev-embedded/openocd/Manifest
@@ -1,2 +1 @@
DIST openocd-0.10.0.tar.gz 6124274 BLAKE2B 3b455fce6c62626b507e8609789e95e6a542038605423400d08ad2d14d6db0953194bb22d893e3919c79ef02a1b43ccb6396d3370273e375d340c41b587bdfbf SHA512 44b303b0df1d7c13bc18b8995493de64fed7a853704455d484dfc4a74a1ba4b0d42b4679a7009ec015dc71c47152e5556a1a02665cfafe7af80c608b68d8310a
-DIST openocd-0.9.0.tar.gz 4970346 BLAKE2B 96421b32a3e64fc1ed362288f5a444cc1249f3d6daab6307f920c86fff11cb74a0bbb9f021788b848a8755139ee1c43c54793ac57a429f4e39df47f0775c2538 SHA512 698b43867f8134da43a50f5d2ff2ae33b71df8ccffc45fb5c3d0bd7a6289fcd9e7bb3d89287ad4dbdb02e1871db69f3913db950965335eaf8559247f2e58c227
diff --git a/dev-embedded/openocd/files/openocd-0.10.0-fno-common.patch b/dev-embedded/openocd/files/openocd-0.10.0-fno-common.patch
new file mode 100644
index 000000000000..c924b2f8fec0
--- /dev/null
+++ b/dev-embedded/openocd/files/openocd-0.10.0-fno-common.patch
@@ -0,0 +1,11 @@
+--- a/src/jtag/drivers/bitbang.h
++++ b/src/jtag/drivers/bitbang.h
+@@ -35,7 +35,7 @@ struct bitbang_interface {
+ void (*swdio_drive)(bool on);
+ };
+
+-const struct swd_driver bitbang_swd;
++extern const struct swd_driver bitbang_swd;
+
+ extern bool swd_mode;
+
diff --git a/dev-embedded/openocd/files/openocd-0.10.0-gcc10.patch b/dev-embedded/openocd/files/openocd-0.10.0-gcc10.patch
new file mode 100644
index 000000000000..b7e3ea13bfb0
--- /dev/null
+++ b/dev-embedded/openocd/files/openocd-0.10.0-gcc10.patch
@@ -0,0 +1,36 @@
+https://bugs.gentoo.org/722640
+http://openocd.zylin.com/gitweb?p=openocd.git;a=commitdiff;h=c60252ac2b636c4d99b766a574b9df0966151696
+From c60252ac2b636c4d99b766a574b9df0966151696 Mon Sep 17 00:00:00 2001
+From: Andreas Fritiofson <andreas.fritiofson@gmail.com>
+Date: Fri, 17 Apr 2020 13:49:28 +0200
+Subject: [PATCH] bitbang: Fix FTBFS with GCC 10
+
+GCC 10 defaults to -fno-common which breaks the sharing of bitbang_swd
+struct between bitbang drivers due to a missing extern.
+
+Change-Id: I2b4122f7939cec91a72284006748f99a23548324
+Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
+Reviewed-on: http://openocd.zylin.com/5592
+Tested-by: jenkins
+Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
+Reviewed-by: Jonathan McDowell <noodles-openocd@earth.li>
+---
+ src/jtag/drivers/bitbang.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jtag/drivers/bitbang.h b/src/jtag/drivers/bitbang.h
+index edb779c..bbbc693 100644
+--- a/src/jtag/drivers/bitbang.h
++++ b/src/jtag/drivers/bitbang.h
+@@ -56,7 +56,7 @@ struct bitbang_interface {
+ void (*swdio_drive)(bool on);
+ };
+
+-const struct swd_driver bitbang_swd;
++extern const struct swd_driver bitbang_swd;
+
+ extern bool swd_mode;
+
+--
+1.9.1
+
diff --git a/dev-embedded/openocd/openocd-0.10.0-r1.ebuild b/dev-embedded/openocd/openocd-0.10.0-r1.ebuild
index 3ff79b542bd2..3f1984002dbe 100644
--- a/dev-embedded/openocd/openocd-0.10.0-r1.ebuild
+++ b/dev-embedded/openocd/openocd-0.10.0-r1.ebuild
@@ -1,14 +1,13 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=7
-inherit eutils multilib flag-o-matic toolchain-funcs udev
+inherit udev
-# One ebuild to rule them all
if [[ ${PV} == *9999 ]] ; then
inherit autotools git-r3
- EGIT_REPO_URI="https://git.code.sf.net/p/${PN}/code"
+ EGIT_REPO_URI=" https://repo.or.cz/openocd.git"
else
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
@@ -36,106 +35,68 @@ RDEPEND="
)
ftdi? ( dev-embedded/libftdi:= )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-[[ ${PV} == "9999" ]] && DEPEND+=" >=sys-apps/texinfo-5" #549946
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
+
+PATCHES=(
+ "${FILESDIR}/${P}-gcc10.patch"
+)
src_prepare() {
default
- if [[ ${PV} == "9999" ]] ; then
+ 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-arm-jtag-ew
--enable-at91rm9200
+ --enable-bcm2835gpio
+ --enable-buspirate
+ --enable-ep93xx
--enable-gw16012
- --enable-arm-jtag-ew
--enable-sysfsgpio
- --enable-bcm2835gpio
+ --disable-internal-jimtcl
+ --disable-internal-libjaylink
+ --disable-werror
+ $(use_enable cmsis-dap)
+ $(use_enable dummy)
+ $(use_enable ftdi openjtag)
+ $(use_enable ftdi presto)
+ $(use_enable ftdi usb-blaster)
+ $(use_enable jlink)
+ $(use_enable parport)
+ $(use_enable parport parport_ppdev)
+ $(use_enable usb aice)
+ $(use_enable usb armjtagew)
+ $(use_enable usb ftdi)
+ $(use_enable usb osbdm)
+ $(use_enable usb opendous)
+ $(use_enable usb rlink)
+ $(use_enable usb stlink)
+ $(use_enable usb ti-icdi)
+ $(use_enable usb usbprog)
+ $(use_enable usb usb-blaster-2)
+ $(use_enable usb ulink)
+ $(use_enable usb vsllink)
+ $(use_enable verbose-io verbose-jtag-io)
+ $(use_enable verbose-io verbose-usb-io)
+ $(use_enable verbose-io verbose_usb_comms)
)
- # 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-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-rlink
- --disable-stlink
- --disable-vsllink
- --disable-armjtagew
- )
- fi
-
- if use jlink; then
- myconf+=(
- --enable-jlink
- )
- else
- myconf+=(
- --disable-jlink
- )
- fi
-
- if use ftdi; then
- myconf+=(
- --enable-usb-blaster
- --enable-openjtag
- --enable-presto
- )
- else
- myconf+=(
- --disable-openjtag
- --disable-presto
- --disable-usb-blaster
- )
- 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[@]}"
+ econf "${myconf[@]}"
}
src_install() {
default
dostrip /usr/bin
- udev_dorules "${D}"/usr/share/${PN}/contrib/*.rules
+ udev_dorules "${ED}"/usr/share/${PN}/contrib/*.rules
}
pkg_postinst() {
diff --git a/dev-embedded/openocd/openocd-0.9.0.ebuild b/dev-embedded/openocd/openocd-0.9.0.ebuild
deleted file mode 100644
index c5b465544b1f..000000000000
--- a/dev-embedded/openocd/openocd-0.9.0.ebuild
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils multilib flag-o-matic toolchain-funcs udev
-
-# One ebuild to rule them all
-if [[ ${PV} == *9999 ]] ; then
- inherit autotools git-r3
- EGIT_REPO_URI="https://git.code.sf.net/p/${PN}/code"
-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="https://sourceforge.net/projects/openocd/"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="cmsis-dap dummy ftdi parport +usb verbose-io"
-RESTRICT="strip" # includes non-native binaries
-
-RDEPEND="
- acct-group/plugdev
- >=dev-lang/jimtcl-0.76
- cmsis-dap? ( dev-libs/hidapi )
- usb? (
- virtual/libusb:0
- virtual/libusb:1
- )
- ftdi? ( dev-embedded/libftdi:= )"
-
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-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
- --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
- udev_dorules "${D}"/usr/share/${PN}/contrib/*.rules
-}
-
-pkg_postinst() {
- elog "To access openocd devices as user you must be in the plugdev group"
-}
diff --git a/dev-embedded/openocd/openocd-9999.ebuild b/dev-embedded/openocd/openocd-9999.ebuild
index d098f2e20c50..6ea2fa49994f 100644
--- a/dev-embedded/openocd/openocd-9999.ebuild
+++ b/dev-embedded/openocd/openocd-9999.ebuild
@@ -1,14 +1,13 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=7
-inherit eutils multilib flag-o-matic toolchain-funcs udev
+inherit udev
-# One ebuild to rule them all
if [[ ${PV} == *9999 ]] ; then
inherit autotools git-r3
- EGIT_REPO_URI="https://git.code.sf.net/p/${PN}/code"
+ EGIT_REPO_URI=" https://repo.or.cz/openocd.git"
else
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
@@ -29,113 +28,71 @@ RDEPEND="
acct-group/plugdev
>=dev-lang/jimtcl-0.76:0=
cmsis-dap? ( dev-libs/hidapi )
- jlink? ( >=dev-embedded/libjaylink-0.2 )
+ jlink? ( >=dev-embedded/libjaylink-0.2.0 )
usb? (
virtual/libusb:0
virtual/libusb:1
)
ftdi? ( dev-embedded/libftdi:= )"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-apps/texinfo
virtual/pkgconfig"
-[[ ${PV} == "9999" ]] && DEPEND+=" >=sys-apps/texinfo-5" #549946
src_prepare() {
default
- if [[ ${PV} == "9999" ]] ; then
+ 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-arm-jtag-ew
--enable-at91rm9200
+ --enable-bcm2835gpio
+ --enable-buspirate
+ --enable-ep93xx
--enable-gw16012
- --enable-arm-jtag-ew
--enable-sysfsgpio
- --enable-bcm2835gpio
+ --disable-internal-jimtcl
+ --disable-internal-libjaylink
+ --disable-werror
+ $(use_enable cmsis-dap)
+ $(use_enable dummy)
+ $(use_enable ftdi openjtag)
+ $(use_enable ftdi presto)
+ $(use_enable ftdi usb-blaster)
+ $(use_enable jlink)
+ $(use_enable parport)
+ $(use_enable parport parport_ppdev)
+ $(use_enable usb aice)
+ $(use_enable usb armjtagew)
+ $(use_enable usb ftdi)
+ $(use_enable usb osbdm)
+ $(use_enable usb opendous)
+ $(use_enable usb rlink)
+ $(use_enable usb stlink)
+ $(use_enable usb ti-icdi)
+ $(use_enable usb usbprog)
+ $(use_enable usb usb-blaster-2)
+ $(use_enable usb ulink)
+ $(use_enable usb vsllink)
+ $(use_enable verbose-io verbose-jtag-io)
+ $(use_enable verbose-io verbose-usb-io)
+ $(use_enable verbose-io verbose_usb_comms)
)
- # 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-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-rlink
- --disable-stlink
- --disable-vsllink
- --disable-armjtagew
- )
- fi
-
- if use jlink; then
- myconf+=(
- --enable-jlink
- )
- else
- myconf+=(
- --disable-jlink
- )
- fi
-
- if use ftdi; then
- myconf+=(
- --enable-usb-blaster
- --enable-openjtag
- --enable-presto
- )
- else
- myconf+=(
- --disable-openjtag
- --disable-presto
- --disable-usb-blaster
- )
- 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[@]}"
+ econf "${myconf[@]}"
}
src_install() {
default
dostrip /usr/bin
- udev_dorules "${D}"/usr/share/${PN}/contrib/*.rules
+ udev_dorules "${ED}"/usr/share/${PN}/contrib/*.rules
}
pkg_postinst() {