kumquat-buildroot/package/openocd/openocd.mk

125 lines
5.0 KiB
Makefile
Raw Normal View History

################################################################################
#
# openocd
#
################################################################################
OPENOCD_VERSION = 0.10.0
OPENOCD_SOURCE = openocd-$(OPENOCD_VERSION).tar.bz2
OPENOCD_SITE = http://sourceforge.net/projects/openocd/files/openocd/$(OPENOCD_VERSION)
OPENOCD_LICENSE = GPL-2.0+
OPENOCD_LICENSE_FILES = COPYING
# 0002-configure-enable-build-on-uclinux.patch patches configure.ac
OPENOCD_AUTORECONF = YES
# The bundled jimtcl really wants to find a existing $CXX, so feed it
# false when we do not have one.
OPENOCD_CONF_ENV = \
$(if $(BR2_INSTALL_LIBSTDCPP),,CXX=false) \
CFLAGS="$(TARGET_CFLAGS) -std=gnu99"
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
OPENOCD_CONF_OPTS = \
--oldincludedir=$(STAGING_DIR)/usr/include \
--includedir=$(STAGING_DIR)/usr/include \
--disable-doxygen-html \
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
--with-jim-shared=no \
--disable-shared \
--enable-dummy \
--disable-werror
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
# Rely on the Config.in options of each individual adapter selecting
# the dependencies they need.
OPENOCD_DEPENDENCIES = \
$(if $(BR2_PACKAGE_LIBFTDI1),libftdi1) \
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
$(if $(BR2_PACKAGE_LIBUSB),libusb) \
$(if $(BR2_PACKAGE_LIBUSB_COMPAT),libusb-compat) \
$(if $(BR2_PACKAGE_LIBHID),libhid)
# Adapters
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
OPENOCD_CONF_OPTS += \
$(if $(BR2_PACKAGE_OPENOCD_FTDI),--enable-ftdi,--disable-ftdi) \
$(if $(BR2_PACKAGE_OPENOCD_STLINK),--enable-stlink,--disable-stlink) \
$(if $(BR2_PACKAGE_OPENOCD_TI_ICDI),--enable-ti-icdi,--disable-ti-icdi) \
$(if $(BR2_PACKAGE_OPENOCD_ULINK),--enable-ulink,--disable-ulink) \
$(if $(BR2_PACKAGE_OPENOCD_UBLASTER2),--enable-usb-blaster-2,--disable-usb-blaster-2) \
$(if $(BR2_PACKAGE_OPENOCD_JLINK),--enable-jlink,--disable-jlink) \
$(if $(BR2_PACKAGE_OPENOCD_OSDBM),--enable-osbdm,--disable-osbdm) \
$(if $(BR2_PACKAGE_OPENOCD_OPENDOUS),--enable-opendous,--disable-opendous) \
$(if $(BR2_PACKAGE_OPENOCD_AICE),--enable-aice,--disable-aice) \
$(if $(BR2_PACKAGE_OPENOCD_VSLLINK),--enable-vsllink,--disable-vsllink) \
$(if $(BR2_PACKAGE_OPENOCD_USBPROG),--enable-usbprog,--disable-usbprog) \
$(if $(BR2_PACKAGE_OPENOCD_RLINK),--enable-rlink,--disable-rlink) \
$(if $(BR2_PACKAGE_OPENOCD_ARMEW),--enable-armjtagew,--disable-armjtagew) \
$(if $(BR2_PACKAGE_OPENOCD_CMSIS_DAP),--enable-cmsis-dap,--disable-cmsis-dap) \
$(if $(BR2_PACKAGE_OPENOCD_PARPORT),--enable-parport,--disable-parport) \
$(if $(BR2_PACKAGE_OPENOCD_VPI),--enable-jtag_vpi,--disable-jtag_vpi) \
$(if $(BR2_PACKAGE_OPENOCD_UBLASTER),--enable-usb-blaster,--disable-usb-blaster) \
$(if $(BR2_PACKAGE_OPENOCD_AMTJT),--enable-amtjtagaccel,--disable-amjtagaccel) \
$(if $(BR2_PACKAGE_OPENOCD_ZY1000_MASTER),--enable-zy1000-master,--disable-zy1000-master) \
$(if $(BR2_PACKAGE_OPENOCD_ZY1000),--enable-zy1000,--disable-zy1000) \
$(if $(BR2_PACKAGE_OPENOCD_EP93XX),--enable-ep93xx,--disable-ep93xx) \
$(if $(BR2_PACKAGE_OPENOCD_AT91RM),--enable-at91rm9200,--disable-at91rm9200) \
$(if $(BR2_PACKAGE_OPENOCD_BCM2835),--enable-bcm2835gpio,--disable-bcm2835gpio) \
$(if $(BR2_PACKAGE_OPENOCD_GW16012),--enable-gw16012,--disable-gw16012) \
$(if $(BR2_PACKAGE_OPENOCD_PRESTO),--enable-presto,--disable-presto) \
$(if $(BR2_PACKAGE_OPENOCD_OPENJTAG),--enable-openjtag,--disable-openjtag) \
$(if $(BR2_PACKAGE_OPENOCD_BUSPIRATE),--enable-buspirate,--disable-buspirate) \
$(if $(BR2_PACKAGE_OPENOCD_SYSFS),--enable-sysfsgpio,--disable-sysfsgpio)
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
# Enable all configuration options for host build.
#
# Note that deprecated options have been removed. CMSIS_DAP needs
# hidapi (currently not included in buildroot) and zy1000 stuff fails
# to build, so they've been removed too.
#
HOST_OPENOCD_CONF_OPTS = \
--enable-ftdi \
--enable-stlink \
--enable-ti-icdi \
--enable-ulink \
--enable-usb-blaster-2 \
--enable-jlink \
--enable-osbdm \
--enable-opendous \
--enable-aice \
--enable-vsllink \
--enable-usbprog \
--enable-rlink \
--enable-armjtagew \
--enable-parport \
--enable-jtag_vpi \
--enable-usb-blaster \
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
--enable-amtjtagaccel \
--enable-gw16012 \
--enable-presto \
--enable-openjtag \
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
--enable-buspirate \
--enable-sysfsgpio \
--oldincludedir=$(HOST_DIR)/include \
--includedir=$(HOST_DIR)/include \
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
--disable-doxygen-html \
--with-jim-shared=no \
--disable-shared \
--enable-dummy \
--disable-werror
openocd: bump to version 0.8.0 This patch adds the management of (almost) all the config options of openocd 0.8.0. A BR config variable is added for (almost) every adapter known to openocd and all the dependencies are automatically calculated from the chosen adapters, so only the necessary libraries are built. Note that CMSIS_DAP adapter requires hidapi (not libhid) and hidapi is not actually included in buildroot, so it has been removed. Also zy1000 adapters are actually broken in openocd and have been removed. The host version of the package enables all the possible adapters and the related libraries. [Thomas: - Slightly fixup the commit log. - Rename the patches to the new patch naming convention. - Update hash file using a contribution from Vincent Stehlé. - Move the thread dependency from the OpenOCD option down to each sub-option that actually needs it (when it needs libusb, libusb-compat or libftdi). We keep only one comment, as we would otherwise have to add too many repeatitive comments. - Remove commented options. - Add missing dependency on BR2_ARCH_HAS_ATOMICS when selecting BR2_PACKAGE_LIBFTDI. - Remove trailing white spaces. - Pass -std=gnu99, needed to build with a basic toolchain. - Write the OPENOCD_DEPENDENCIES and OPENOCD_CONF_OPTS conditions in a more compact way. - Adjust indentation for HOST_OPENOCD_CONF_OPTS. - Reword the comment above HOST_OPENOCD_CONF_OPTS.] Signed-off-by: Claudio Laurita <claudio.laurita@integrazionetotale.it> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-14 20:02:17 +01:00
HOST_OPENOCD_DEPENDENCIES = host-libftdi host-libusb host-libusb-compat
# Avoid documentation rebuild. On PowerPC64(le), we patch the
# configure script. Due to this, the version.texi files gets
# regenerated, and then since it has a newer date than openocd.info,
# openocd build system rebuilds the documentation. Unfortunately, this
# documentation rebuild fails on old machines. We work around this by
# faking the date of the generated version.texi file, to make the
# build system believe the documentation doesn't need to be
# regenerated.
define OPENOCD_FIX_VERSION_TEXI
touch -r $(@D)/doc/openocd.info $(@D)/doc/version.texi
endef
OPENOCD_POST_BUILD_HOOKS += OPENOCD_FIX_VERSION_TEXI
HOST_OPENOCD_POST_BUILD_HOOKS += OPENOCD_FIX_VERSION_TEXI
$(eval $(autotools-package))
$(eval $(host-autotools-package))