SQ50 patches for libsigrok
Go to file
Uwe Hermann 67bd805523 Switch to a non-recursive automake setup.
Instead of >= 44 Makefile.am's we now only have one top-level
Makefile.am, and use the 'subdir-objects' automake option to
handle the build via non-recursive (auto)make.

This has the advantage of fewer (boilerplate or other) files and less
clutter in general, as well as performance advantages since the new
setup can build many files in parallel (with 'make -j'), not only 2 or 3
files within the same (e.g. hardware/xxxx/* subdirectory) and also since
we no longer need to build intermediate libtool helper libs per subdirectory.

A quick, non-scientific test build on a quad-core laptop with 'make -j 4'
yields a build time reduction from 35s to 19s.

All autotools features that worked before are still intact without any
regressions, including the Make targets 'install', 'uninstall', 'check',
'dist', 'clean', 'distclean' and so on, as well as all the usual portability
handling (build works on any OS, with any Make implementation such as
GNU Make or BSD Make, with any shell such as sh/ksh/zsh/bash/dash, etc. etc.)
and features such as out-of-tree build support, cross-compile support,
testsuite support (also with colored output), "silent make rules", etc. etc.
2014-03-20 13:10:05 +01:00
bindings python: Use OrderedDict for input formats. 2013-12-17 16:29:41 +00:00
contrib Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
hardware Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
input Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
output Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
tests Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
.gitignore Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
AUTHORS autotools: Don't use "foreign" option. 2013-03-17 13:15:56 +01:00
COPYING sr/srd: Move some files to their resp. dirs. 2011-12-30 11:14:05 +01:00
Doxyfile Doxyfile/Doxyfile_internal: Ignore doxy/* when creating docs. 2013-12-27 15:50:27 +01:00
Doxyfile_internal Doxyfile/Doxyfile_internal: Ignore doxy/* when creating docs. 2013-12-27 15:50:27 +01:00
HACKING HACKING: Updates, some additions. 2013-11-04 01:14:56 +01:00
Makefile.am Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
NEWS NEWS: Update for upcoming 0.2.2 release. 2013-11-04 01:24:49 +01:00
README Bump minimum libusb version to 1.0.16 2013-12-19 10:45:36 +01:00
README.devices brymen-bm86x: actual driver implementation 2014-02-27 22:50:09 +01:00
autogen.sh GPL headers: Use correct project name. 2013-04-23 22:24:30 +02:00
backend.c device: sr_dev_clear() now always works. 2014-02-26 21:34:58 +01:00
configure.ac Switch to a non-recursive automake setup. 2014-03-20 13:10:05 +01:00
device.c device: sr_dev_clear() now always works. 2014-02-26 21:34:58 +01:00
error.c error.c: Add SR_ERR_PROBE_GROUP handling. 2013-11-11 07:53:52 +01:00
filter.c Centralise duplicated logging helper defines. 2013-12-27 12:54:05 +01:00
hwdriver.c brymen-bm86x: Initial driver skeleton. 2014-02-27 22:50:09 +01:00
libsigrok-internal.h usb: remove unused sr_usb_find_usbtmc() 2014-02-07 18:53:04 +01:00
libsigrok.h Fix 'aquisition' typo in a few places. 2014-03-11 19:42:20 +01:00
libsigrok.pc.in Always link against the math library. 2013-05-10 21:46:30 +02:00
log.c Centralise duplicated logging helper defines. 2013-12-27 12:54:05 +01:00
proto.h hwdriver: Introduce sr_config_commit() API call. 2014-01-20 14:16:32 +01:00
session.c session: Auto-commit settings before acquisition. 2014-01-21 13:09:51 +01:00
session_driver.c Fixed session_driver so that it can run more than one session. 2014-03-01 11:23:08 +00:00
session_file.c sr file format: Bump version to 2. 2014-01-23 23:34:48 +01:00
std.c Update/extend some Doxygen comments. 2014-02-11 18:04:46 +01:00
strutil.c strutil: Add function to parse floating point numbers while ignoring the locale. 2014-01-16 16:27:35 +01:00
version.c GPL headers: Use correct project name. 2013-04-23 22:24:30 +02:00
version.h.in GPL headers: Use correct project name. 2013-04-23 22:24:30 +02:00

README

-------------------------------------------------------------------------------
README
-------------------------------------------------------------------------------

The sigrok project aims at creating a portable, cross-platform,
Free/Libre/Open-Source signal analysis software suite that supports various
device types (such as logic analyzers, oscilloscopes, multimeters, and more).

libsigrok is a shared library written in C which provides the basic API
for talking to hardware and reading/writing the acquired data into various
input/output file formats.


Status
------

libsigrok is in a usable state and has had official tarball releases.

While the API can change from release to release, this will always be
properly documented and reflected in the package version number and
in the shared library / libtool / .so-file version numbers.

However, there are _NO_ guarantees at all for stable APIs in git snapshots!
Distro packagers should only use released tarballs (no git snapshots).


Requirements
------------

 - git
 - gcc (>= 4.0)
 - make
 - autoconf >= 2.63
 - automake >= 1.11
 - libtool
 - pkg-config >= 0.22
 - libglib >= 2.32.0
 - libzip >= 0.10
 - libserialport >= 0.1.0 (optional, used by some drivers)
 - libusb-1.0 >= 1.0.16 (optional, used by some drivers)
 - libftdi >= 0.16 (optional, used by some drivers)
 - libudev >= 151 (optional, used by some drivers)
 - libasound / alsa-lib >= 1.0 (optional, only used by the alsa driver)
 - check >= 0.9.4 (optional, only needed to run unit tests)


Building and installing
-----------------------

In order to get the libsigrok source code and build it, run:

 $ git clone git://sigrok.org/libsigrok
 $ cd libsigrok
 $ ./autogen.sh
 $ ./configure
 $ make

For installing libsigrok:

 $ make install

See INSTALL or the following wiki page for more (OS-specific) instructions:

 http://sigrok.org/wiki/Building


Device-specific issues
----------------------

Please check README.devices for some notes and hints about device- or
driver-specific issues to be aware of.


Firmware
--------

Some devices supported by libsigrok need a firmware to be uploaded before the
device can be used. See README.devices for details.


Copyright and license
---------------------

libsigrok is licensed under the terms of the GNU General Public License
(GPL), version 3 or later.

While some individual source code files are licensed under the GPLv2+, and
some files are licensed under the GPLv3+, this doesn't change the fact that
the library as a whole is licensed under the terms of the GPLv3+.

Please see the individual source files for the full list of copyright holders.


Mailing lists
-------------

There are two mailing lists for sigrok/libsigrok:

 https://lists.sourceforge.net/lists/listinfo/sigrok-devel
 https://lists.sourceforge.net/lists/listinfo/sigrok-commits


IRC
---

You can find the sigrok developers in the #sigrok IRC channel on Freenode.


Website
-------

 http://sigrok.org/wiki/Libsigrok