Commit Graph

10 Commits

Author SHA1 Message Date
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
Uwe Hermann 17794067f9 tests: Fix a few warnings.
Fix a bunch of "no previous prototype for ..." warnings exposed
by -Wmissing-prototypes.
2014-01-17 20:49:45 +01:00
Marvin Schmidt c3e2b08dc9 Fix test failure
The GError object has to initialized to NULL before being passed to
g_file_set_contents or it will throw the following critical warning

GLib-CRITICAL **: g_file_set_contents: assertion 'error == NULL || *error == NULL' failed

and return FALSE, which leads to failed assertion and subsequently
to the test failing
2013-12-07 12:25:18 +01:00
Uwe Hermann 57d0a2e195 unittests: Update for probe-groups changes. 2013-11-10 23:22:18 +01:00
Uwe Hermann 71185b48a1 Unit tests for 'binary' input format & version APIs. 2013-10-28 22:08:34 +01:00
Uwe Hermann 059f36325e unittests: Comment out a testcase.
The boundary test-case with SR_GHZ(18446744073ULL) currently fails, but
that is not practically relevant so comment it out for now, until we add
a proper fix.
2013-08-07 16:21:57 +02:00
Paul Sokolovsky ba253f2bb9 Fix sr_si_string_u64() test cases.
The function shall format 1004 as 1.004 k, 1004000 as 1.004 M and
1004000000 as 1.004 G.

References #73.
2013-08-07 16:21:57 +02:00
Uwe Hermann 44f91e2950 unittests: Disable a broken test for now. 2013-04-27 19:06:27 +02:00
Uwe Hermann 34e4c27391 unittests: Adapt to new GVariant system. 2013-04-12 17:59:38 +02:00
Uwe Hermann 79bb0e97d5 Add a testsuite for libsigrok.
This adds a suite of unit tests for libsigrok. It uses the 'Check'
tool/library (apt-get install check) to run the tests.

The configure tool tries to find libcheck. If it succeeds, a
"make check" will run all tests. Otherwise, none of the tests will
be built and "make check" will not run any tests.

This also means that users who don't have 'check' installed will still
be able to build and install libsigrok just fine.
2013-03-09 11:55:43 +01:00