From 318ef85a9f5d480fb70b6e9884c7542f99d63d04 Mon Sep 17 00:00:00 2001 From: Peter Stuge Date: Fri, 16 Nov 2012 00:13:56 +0100 Subject: [PATCH 1/2] Require pkg-config to find libusb-1.0, and fix libusb.h #includes --- Makefile.am | 8 ++++---- configure.ac | 26 ++++++++++++-------------- libztex.h | 2 +- miner.h | 2 +- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/Makefile.am b/Makefile.am index 85dd1701..83566c6b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -15,7 +15,7 @@ EXTRA_DIST = example.conf m4/gnulib-cache.m4 linux-usb-cgminer \ SUBDIRS = lib compat ccan -INCLUDES = $(PTHREAD_FLAGS) -fno-strict-aliasing $(JANSSON_INCLUDES) $(USB_FLAGS) +INCLUDES = $(PTHREAD_FLAGS) -fno-strict-aliasing $(JANSSON_INCLUDES) bin_PROGRAMS = cgminer @@ -24,13 +24,13 @@ bin_SCRIPTS = *.cl cgminer_LDFLAGS = $(PTHREAD_FLAGS) cgminer_LDADD = $(DLOPEN_FLAGS) @LIBCURL_LIBS@ @JANSSON_LIBS@ @PTHREAD_LIBS@ \ @OPENCL_LIBS@ @NCURSES_LIBS@ @PDCURSES_LIBS@ @WS2_LIBS@ \ - @UDEV_LIBS@ @USB_LIBS@ \ + @UDEV_LIBS@ @LIBUSB_LIBS@ \ @MATH_LIBS@ lib/libgnu.a ccan/libccan.a if HAVE_WINDOWS -cgminer_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@ +cgminer_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@ @LIBUSB_CFLAGS@ else -cgminer_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@ @LIBCURL_CFLAGS@ +cgminer_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@ @LIBUSB_CFLAGS@ @LIBCURL_CFLAGS@ endif # common sources diff --git a/configure.ac b/configure.ac index 53b5d9f6..04bd80cd 100644 --- a/configure.ac +++ b/configure.ac @@ -62,8 +62,6 @@ AC_FUNC_ALLOCA have_win32=false PTHREAD_FLAGS="-lpthread" -USB_LIBS="" -USB_FLAGS="" DLOPEN_FLAGS="-ldl" OPENCL_LIBS="-lOpenCL" WS2_LIBS="" @@ -343,15 +341,17 @@ if test "x$bitforce$modminer" != xnono; then fi AM_CONDITIONAL([HAVE_LIBUDEV], [test x$libudev != xno]) +PKG_PROG_PKG_CONFIG() + if test "x$ztex" != xno; then - AC_CHECK_LIB(usb-1.0, libusb_init, , - AC_MSG_ERROR([Could not find usb library - please install libusb])) - AC_DEFINE([HAVE_LIBUSB], [1], [Defined to 1 if libusb is wanted]) - USB_LIBS="-lusb-1.0" - USB_FLAGS="" + case $target in + *) + PKG_CHECK_MODULES(LIBUSB, libusb-1.0, [AC_DEFINE(HAVE_LIBUSB, 1, [Define if you have libusb-1.0])], [AC_MSG_ERROR([Could not find usb library - please install libusb-1.0])]) + ;; + esac fi - -PKG_PROG_PKG_CONFIG() +AC_SUBST(LIBUSB_LIBS) +AC_SUBST(LIBUSB_CFLAGS) PKG_CHECK_MODULES([LIBCURL], [libcurl >= 7.18.2], ,[AC_MSG_ERROR([Missing required libcurl dev >= 7.18.2])]) AC_SUBST(LIBCURL_LIBS) @@ -412,8 +412,6 @@ AC_SUBST(PDCURSES_LIBS) AC_SUBST(WS2_LIBS) AC_SUBST(MATH_LIBS) AC_SUBST(UDEV_LIBS) -AC_SUBST(USB_LIBS) -AC_SUBST(USB_FLAGS) AC_CONFIG_FILES([ Makefile @@ -512,9 +510,9 @@ fi echo echo "Compilation............: make (or gmake)" echo " CPPFLAGS.............: $CPPFLAGS" -echo " CFLAGS...............: $CFLAGS" -echo " LDFLAGS..............: $LDFLAGS $PTHREAD_FLAGS $USB_FLAGS" -echo " LDADD................: $DLOPEN_FLAGS $LIBCURL_LIBS $JANSSON_LIBS $PTHREAD_LIBS $OPENCL_LIBS $NCURSES_LIBS $PDCURSES_LIBS $WS2_LIBS $MATH_LIBS $UDEV_LIBS $USB_LIBS" +echo " CFLAGS...............: $CFLAGS $LIBUSB_CFLAGS" +echo " LDFLAGS..............: $LDFLAGS $PTHREAD_FLAGS" +echo " LDADD................: $DLOPEN_FLAGS $LIBCURL_LIBS $JANSSON_LIBS $PTHREAD_LIBS $OPENCL_LIBS $NCURSES_LIBS $PDCURSES_LIBS $WS2_LIBS $MATH_LIBS $UDEV_LIBS $LIBUSB_LIBS" echo echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')" echo " prefix...............: $prefix" diff --git a/libztex.h b/libztex.h index d424545c..4b5dab3b 100644 --- a/libztex.h +++ b/libztex.h @@ -22,7 +22,7 @@ #ifndef __LIBZTEX_H__ #define __LIBZTEX_H__ -#include +#include #define LIBZTEX_MAX_DESCRIPTORS 512 #define LIBZTEX_SNSTRING_LEN 10 diff --git a/miner.h b/miner.h index e7a0526d..736f605b 100644 --- a/miner.h +++ b/miner.h @@ -103,7 +103,7 @@ static inline int fsync (int fd) #endif #ifdef HAVE_LIBUSB - #include + #include #endif #ifdef USE_ZTEX From 30c5a166798a2985a2d04ee2d5deca74dc9dafe4 Mon Sep 17 00:00:00 2001 From: Peter Stuge Date: Fri, 16 Nov 2012 00:59:21 +0100 Subject: [PATCH 2/2] configure.ac: Support FreeBSD libusb which doesn't have libusb-1.0.pc --- configure.ac | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configure.ac b/configure.ac index 04bd80cd..73bfc03c 100644 --- a/configure.ac +++ b/configure.ac @@ -345,6 +345,11 @@ PKG_PROG_PKG_CONFIG() if test "x$ztex" != xno; then case $target in + *-*-freebsd*) + LIBUSB_LIBS="-lusb" + LIBUSB_CFLAGS="" + AC_DEFINE(HAVE_LIBUSB, 1, [Define if you have libusb-1.0]) + ;; *) PKG_CHECK_MODULES(LIBUSB, libusb-1.0, [AC_DEFINE(HAVE_LIBUSB, 1, [Define if you have libusb-1.0])], [AC_MSG_ERROR([Could not find usb library - please install libusb-1.0])]) ;;