From 191a5736c202dfb784e86a8190edc64e80dc62e5 Mon Sep 17 00:00:00 2001 From: Paul Fertser Date: Wed, 11 Sep 2013 23:07:59 +0200 Subject: libusb: require pkg-config support An alternative approach to show how much cleaner the pure pkg-config way is. This changes the discovery procedures for libusb-1.0 and libusb-0.1, making them depend on pkg-config being properly installed and configured, including the necessary build host configuration for the cross-builds (see http://www.flameeyes.eu/autotools-mythbuster/pkgconfig/cross-compiling.html) It should make it possible to compile OpenOCD without changes and extra effort on GNU/Linux, FreeBSD users would need to supply a .pc file for their libusb implementation or add LIBUSB1_LIBS and LIBUSB1_CFLAGS to the configure environment. Change-Id: I826e378dd1e0d101a549a573b2c63212a7e00b64 Signed-off-by: Paul Fertser Signed-off-by: Andreas Fritiofson Reviewed-on: http://openocd.zylin.com/1467 Reviewed-by: Xiaofan Reviewed-by: Spencer Oliver Tested-by: Spencer Oliver --- src/Makefile.am | 4 ++-- src/helper/Makefile.am | 2 ++ src/helper/replacements.c | 2 +- src/jtag/aice/Makefile.am | 2 +- src/jtag/drivers/Makefile.am | 2 ++ src/jtag/drivers/libusb1_common.h | 2 +- src/jtag/drivers/mpsse.c | 2 +- src/jtag/drivers/ti_icdi_usb.c | 2 +- 8 files changed, 11 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/Makefile.am b/src/Makefile.am index 5c2081a..3413ba9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -75,11 +75,11 @@ endif LIBUSB = if USE_LIBUSB1 -LIBUSB += -lusb-1.0 +LIBUSB += $(LIBUSB1_LIBS) endif if USE_LIBUSB0 -LIBUSB += -lusb +LIBUSB += $(LIBUSB0_LIBS) endif libopenocd_la_LIBADD = \ diff --git a/src/helper/Makefile.am b/src/helper/Makefile.am index 9e27d05..215bbae 100644 --- a/src/helper/Makefile.am +++ b/src/helper/Makefile.am @@ -5,6 +5,8 @@ noinst_LTLIBRARIES = libhelper.la CONFIGFILES = options.c time_support_common.c +libhelper_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBUSB1_CFLAGS) + libhelper_la_SOURCES = \ binarybuffer.c \ $(CONFIGFILES) \ diff --git a/src/helper/replacements.c b/src/helper/replacements.c index d8d8fd0..b083096 100644 --- a/src/helper/replacements.c +++ b/src/helper/replacements.c @@ -278,7 +278,7 @@ int win_select(int max_fd, fd_set *rfds, fd_set *wfds, fd_set *efds, struct time #endif #if defined HAVE_LIBUSB1 && !defined HAVE_LIBUSB_ERROR_NAME -#include +#include /* Verbatim from git://git.libusb.org/libusb.git tag 1.0.9 * The libusb_error enum is compatible down to v0.9.1 */ diff --git a/src/jtag/aice/Makefile.am b/src/jtag/aice/Makefile.am index 38c441e..7b9469d 100644 --- a/src/jtag/aice/Makefile.am +++ b/src/jtag/aice/Makefile.am @@ -1,6 +1,6 @@ include $(top_srcdir)/common.mk -AM_CPPFLAGS += -I$(top_srcdir)/src/jtag/drivers +AM_CPPFLAGS += -I$(top_srcdir)/src/jtag/drivers $(LIBUSB1_CFLAGS) $(LIBUSB0_CFLAGS) noinst_LTLIBRARIES = libocdaice.la diff --git a/src/jtag/drivers/Makefile.am b/src/jtag/drivers/Makefile.am index e3ed219..e8f1efb 100644 --- a/src/jtag/drivers/Makefile.am +++ b/src/jtag/drivers/Makefile.am @@ -6,6 +6,8 @@ libocdjtagdrivers_la_LIBADD = libocdjtagdrivers_la_SOURCES = \ $(DRIVERFILES) +libocdjtagdrivers_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBUSB1_CFLAGS) $(LIBUSB0_CFLAGS) + ULINK_FIRMWARE = $(srcdir)/OpenULINK EXTRA_DIST = $(ULINK_FIRMWARE) diff --git a/src/jtag/drivers/libusb1_common.h b/src/jtag/drivers/libusb1_common.h index cd1f7f1..0e653d8 100644 --- a/src/jtag/drivers/libusb1_common.h +++ b/src/jtag/drivers/libusb1_common.h @@ -22,7 +22,7 @@ #ifndef JTAG_LIBUSB_COMMON_H #define JTAG_LIBUSB_COMMON_H -#include +#include #define jtag_libusb_device libusb_device #define jtag_libusb_device_handle libusb_device_handle diff --git a/src/jtag/drivers/mpsse.c b/src/jtag/drivers/mpsse.c index c5fd6d7..c5e0b61 100644 --- a/src/jtag/drivers/mpsse.c +++ b/src/jtag/drivers/mpsse.c @@ -24,7 +24,7 @@ #include "mpsse.h" #include "helper/log.h" -#include +#include /* Compatibility define for older libusb-1.0 */ #ifndef LIBUSB_CALL diff --git a/src/jtag/drivers/ti_icdi_usb.c b/src/jtag/drivers/ti_icdi_usb.c index c0c0718..f10d120 100644 --- a/src/jtag/drivers/ti_icdi_usb.c +++ b/src/jtag/drivers/ti_icdi_usb.c @@ -33,7 +33,7 @@ #include -#include +#include #define ICDI_WRITE_ENDPOINT 0x02 #define ICDI_READ_ENDPOINT 0x83 -- cgit v1.1