Commit Graph

295 Commits

Author SHA1 Message Date
Uwe Hermann 382bea8250 chronovu-la: Add missing libusb dependencies.
The chronovu-la driver now uses libusb (in addition to libftdi), so add
a missing <libusb.h> #include and libusb dependency in configure.ac.
2015-11-15 16:20:07 +01:00
Daniel Elstner 3d86913266 build: Match up Python headers with interpreter version
Check for either Python 2 or Python 3 header files depending on
the version of the Python interpreter. Also require the module
version to exactly match the interpreter version.

This may fix bug #645.
2015-11-01 22:01:40 +01:00
Daniel Elstner b04a532fa3 build: Also look for python-2.7 pkg-config module
Apparently Gentoo names the module python-2.7 instead of python27.
2015-10-31 16:02:30 +01:00
Daniel Elstner a6dc3dacab zip: Provide fallback if zip_discard() is unavailable
zip_discard() was introduced in libzip 0.11, which some systems
do not have yet. Provide a fallback replacement for zip_discard(),
and reduce the requirement to libzip 0.10 again.

This fixes bug #674.
2015-10-30 15:09:46 +01:00
Daniel Elstner 896fc9c723 build: Require libzip 0.11
This is needed for zip_discard().
2015-10-17 00:07:57 +02:00
Uwe Hermann 739a1ec4f8 configure.ac: Korad KDxxxxP depends on libserialport. 2015-10-13 23:26:40 +02:00
Hannu Vuolasaho e75ee7de25 korad-kdxxxxp: Initial driver skeleton. 2015-10-13 23:15:33 +02:00
Daniel Elstner 655b116cc1 build: Do not define FIRMWARE_DIR on Windows
The hard-coded location is bound to be wrong anyway. Instead, rely
on the new resource lookup code to find the firmware files in a
location relative to the library or executable.
2015-10-03 14:08:32 +02:00
Martin Lederhilger b11afbb142 gwinstek-gds-800: Initial driver implementation. 2015-09-30 19:54:58 +02:00
Martin Lederhilger 7c198f968b gwinstek-gds-800: Initial driver skeleton. 2015-09-30 19:22:27 +02:00
Daniel Elstner eb2373f167 configure: Check for numpy Python module
This fixes bug #533.
2015-09-15 18:31:45 +02:00
Daniel Elstner 56c8705e37 Build: Move _POSIX_C_SOURCE definition to config.h
Do not redefine it though when already set, so that it can be
overridden by the user, or indirectly by the compiler settings.
2015-09-13 18:54:46 +02:00
Daniel Elstner 6ec6c43b47 Build: Include <config.h> first in all source files
Since Autoconf places some important feature flags only into the
configuration header, it is necessary to include it globally to
guarantee a consistent build.
2015-09-13 18:54:46 +02:00
Daniel Elstner bcc3694ff7 Build: Use GNUMAKEFLAGS for --no-print-directory 2015-09-10 19:35:17 +02:00
Daniel Elstner 96e05afa77 hung-chang-dso-2100: Enable only if libieee1284 is available 2015-09-10 18:36:30 +02:00
Daniel Glöckner 05ac4a9828 hung-chang-dso-2100: Initial driver skeleton. 2015-09-10 14:42:12 +02:00
Daniel Elstner 4512ccd36c Build: Show compiler versions in summary 2015-09-08 04:57:59 +02:00
Daniel Elstner 39cf2004dc Build: Fix restore of LIBS after temporary change 2015-09-08 04:02:04 +02:00
Daniel Elstner c1adbb1e23 Build: Add configure check for libusb event-abstraction
This is intended to make people notice when libusb is too old
for the new Windows code. However, this is not foolproof, since
the libusb version may be different at runtime.
2015-09-08 00:08:16 +02:00
Daniel Elstner 3841c4c58d Build: Use SR_PROG_MAKE_NO_PRINT_DIRECTORY 2015-09-07 23:54:00 +02:00
Daniel Elstner 6aa7fcf16a Build: Show compiler and flags in configure summary 2015-09-07 23:20:17 +02:00
Daniel Elstner 5b9e9bba74 Build: Use SR_PROG_MAKE_ORDER_ONLY
As of now, the resulting substitution @ORDER@ is unused.
2015-09-07 23:20:17 +02:00
Daniel Elstner 8c2024e021 Build: Implement libieee1284 check via SR_ARG_OPT_CHECK 2015-09-07 23:20:17 +02:00
Daniel Glöckner 28d86fa9a5 Check for libieee1284
Will be needed by the Hung-Chang DSO-2100 driver.
2015-08-30 19:03:51 +02:00
Daniel Elstner bbb3996c06 configure: Enable largefile support on 32-bit systems 2015-08-28 18:35:16 +02:00
Uwe Hermann 8006cdc53d configure.ac: Add libserialport dependency to kern-scale. 2015-08-28 16:32:14 +02:00
Uwe Hermann 607dcdeae1 kern-scale: Add initial driver contents.
This currently supports (and is tested on) the KERN EW 6200-2NM,
other models will be added later.
2015-08-28 11:59:31 +02:00
Uwe Hermann 9380ec2f05 kern-scale: Initial driver skeleton. 2015-08-28 11:43:04 +02:00
Daniel Elstner 65489c1ada Build: Use TESTS prefix instead of CHECK for flag variables
In order to avoid confusion of the flags-gathering pkg-config
result with the actual test for the availability of "check",
change the pkg-config output variable prefix from CHECK to TESTS.
2015-08-26 13:13:39 +02:00
Daniel Elstner e662d9e8e5 Build: Limit system features to C99 and POSIX
Use -std=c99 to try and enforce standard compliance.
2015-08-25 12:58:39 +02:00
Daniel Elstner ba1c29dc22 Build: Reduce unnecessary config substitutions
Variable substitutions with a constant value may as well be
set directly in Makefile.am.
2015-08-24 22:20:30 +02:00
Daniel Elstner bc8ff24de6 Build: Leave LIBS alone during configure
Put the extra libraries into SR_EXTRA_LIBS instead of LIBS.
Create an SR_CHECK_LIBS macro to make that easy. Substitute
SR_EXTRA_LIBS into libsigrok.pc, too.
2015-08-24 22:19:05 +02:00
Daniel Elstner 4ed3d9b6db Build: Simplify driver dependency check 2015-08-24 20:15:36 +02:00
Daniel Elstner 2d143826b0 Build: Add private copy of C++11 check macro
Place a copy of ax_cxx_compile_stdcxx_11.m4 from the Autoconf
macro archive into our private m4/ directory. This is cleaner
than trying to parse M4 file versions etc. Plus, the macro is
now always available.
2015-08-24 20:15:20 +02:00
Daniel Elstner 0ab8386a5c Build: Prefer newer versions of libftdi and SWIG 2015-08-24 20:14:57 +02:00
Daniel Elstner 26b67f1141 Build: Use commas to separate missing dependencies
Beautify the output. Also fix the PyGObject test.
2015-08-24 20:14:48 +02:00
Daniel Elstner b84a733105 Build: Check for accepted compiler flags
Introduce the SR_CHECK_COMPILE_FLAGS macro and use it to check
for additional compiler flags. Put the accepted flags into the
separate substitution variable SR_EXTRA_CFLAGS.

With this and the preceding changes, bug #578 should now be fixed.
2015-08-24 20:12:47 +02:00
Daniel Elstner 1bb196e496 Build: Move package check macros to m4/sigrok.m4
Define generic macros for pkg-config dependency checks etc. in
m4/sigrok.m4, so they can be easily reused by downstream modules.
2015-08-24 20:10:18 +02:00
Daniel Elstner 4cf2f34f43 Build: Make compiler warnings configurable
Use the SR_ARG_ENABLE_WARNINGS macro to configure and check for
the availability of compiler warning flags. Maintain separate
sets of warning flags for C and C++.

The configure option --enable-warnings=[min|max|fatal|no] can
be used to set the compiler warning level for all languages.
The default level is "max".
2015-08-24 20:08:24 +02:00
Daniel Elstner 24138539c1 Build: Move custom Autoconf macros to separate file
Place custom Autoconf macros which other sigrok modules may
re-use into a separate file m4/sigrok.m4. Also, introduce new
macros for defining the package and library versions, and for
gathering compiler warning flags.
2015-08-24 20:07:01 +02:00
Daniel Elstner ea1d535145 Build: Place Autoconf macros into m4/ directory
This separates the M4 macros from the other cruft in autostuff/
to prepare for the introduction of custom macro files.
2015-08-24 20:04:29 +02:00
Daniel Elstner cb4d28efd1 Build: Do not omit first argument to m4_warn()
It seems that contrary to what the documentation says, leaving
the category argument to m4_warn() empty is not allowed. Use
the "unsupported" category for lack of a better choice.
2015-08-24 20:04:13 +02:00
Uwe Hermann aafcb3fe87 FreeBSD: Also check for swig3.0.
On FreeBSD (for example) the SWIG binary can also be called "swig3.0".

This fixes (together with the recent "swig2.0" addition) bug #557.
2015-08-19 15:44:43 +02:00
Uwe Hermann 3f03ffaf2f FreeBSD: Also check for swig2.0 in addition to swig.
On FreeBSD (for example) the SWIG binary is called "swig2.0".

This fixes bug #557.
2015-08-18 18:28:30 +02:00
Daniel Elstner da0763d096 Build: Skip C++ CFLAGS and LIBS check when disabled
It is not a good idea to invoke PKG_CHECK_MODULES with an empty
list of modules to check, so skip the invocation in that case.
2015-08-18 18:20:50 +02:00
Daniel Elstner b8b727e45f Build: Fix typo that broke the driver enable options 2015-08-18 18:20:50 +02:00
Daniel Elstner d37c7109bf Build: Make SR_DRIVER() handle dependencies
Turn the hardware driver dependency handling on its head, by
making SR_DRIVER() take a list of dependencies to check for.
2015-08-18 18:20:50 +02:00
Daniel Elstner 7c16e74d45 Build: Make dependency on git change more robust
It can sometimes happen that .git/HEAD or .git/refs/head/*, which
are added as config.status dependencies during configure, do not
exist anymore at build time.  For instance, when the current branch
is deleted after switching to a different one.

Wrap the dependencies inside $(wildcard ...) to avoid this problem.
Note that this is a GNU make feature.  However, it should be fine
as it is only used for git builds.  Even if a non-GNU make is used,
the construct will hopefully just expand to nothing.
2015-08-18 18:20:50 +02:00
Uwe Hermann 965d68898a Build: Show glib/libzip version requirements in configure summary. 2015-08-16 23:56:43 +02:00
Uwe Hermann 2700e63d48 Build: Fix a typo causing libftdi1 detection issues. 2015-08-16 23:53:23 +02:00