libdyplo

BUILD

If you're using OpenEmbedded, the "libdyplo.bb" recipe builds and packs
everything.

It is possible to run parts of the software on a Linux system without
dyplo hardware. This is being used for unit-testing those components.

When manually building, you'll need a compiler and libtool. If there is
no "configure" script yet (this is the case if you clone the libdyplo
repository), you'll need autotools as well. On a standard Ubuntu setup
the command to get these prerequisites is:
  sudo apt-get install build-essential autoconf libtool

To create the "configure" script, run:

  autoreconf --install

To manually build the software, run the configure script, which will
create the makefile, and then run make to build the software. The
only dependency is pthreads.

./configure
make

Run "./configure --help" to list options. For faster building, supply a
"-j" parameter to make to use multiple cores, e.g. "make -j 4".

To build outside the repository, just refer to the "configure" script
using a relative path. For example, to build in a "build" directory:

mkdir build
cd build
../configure
make -j4


RUNNING TESTS

To run unit tests (on any system), just make the "check" target. This
will run the tests and report the results

make check

If you built for the target system (autotools "--host" can be used to
quickly cross-compile using a prebuilt toolchain, if you have that),
you can run both the software only and the hardware based tests. If
you're using the OpenEmbedded recipe, the executables will be in
a package called "libdyplo-test". Run the following programs to check
that everything is working. For testdyplodriver to work, you must have
kernel-module-dyplo installed, configured and loaded into the kernel.

testdyplo
testdyplodriver
