mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-01-18 02:39:44 +00:00
Move information from BUILD.txt into INSTALL.md
Also remove out of date TODO file, no longer relevant.
This commit is contained in:
parent
7cae7f5324
commit
a1cc415a4f
18
BUILD.txt
18
BUILD.txt
@ -1,18 +0,0 @@
|
||||
The test call application requires the following packages
|
||||
- Port audio - http://www.portaudio.com
|
||||
- Secret Rabbit Code - http://www.mega-nerd.com/SRC/
|
||||
- SpanDSP - http://www.soft-switch.org/
|
||||
- Codec2 - http://www.rowetel.com/blog/?page_id=452
|
||||
(svn co https://freetel.svn.sourceforge.net/svnroot/freetel/codec2 codec2)
|
||||
|
||||
The test call application can be disabled by adding --disable-voiptest to the
|
||||
configure line.
|
||||
|
||||
To build run the following commands..
|
||||
|
||||
autoreconf -f
|
||||
# May be called libtoolize
|
||||
glibtoolize -i
|
||||
./configure
|
||||
make
|
||||
|
60
INSTALL.md
60
INSTALL.md
@ -4,7 +4,9 @@ Serval DNA Build and Test
|
||||
To build
|
||||
--------
|
||||
|
||||
autoconf
|
||||
Run the following commands:
|
||||
|
||||
autoreconf -f -i
|
||||
./configure
|
||||
make
|
||||
|
||||
@ -19,9 +21,33 @@ The Serval DNA code successfully builds for the following platforms:
|
||||
* Mac OS X 10.7 “Lion”, x86\_64, [gcc 4.2][] available in [Xcode 4][] 3.2.6
|
||||
* Oracle SunOs 5.10 (Solaris), Sparc, [gcc 4.4][]
|
||||
|
||||
Built artefacts
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
The dependencies for build are expressed in [configure.in](./configure.in).
|
||||
Most mandatory dependencies are present by default in a conventional Linux
|
||||
development environment.
|
||||
|
||||
Mandatory dependencies:
|
||||
|
||||
* standard C library `libc` and standard headers
|
||||
* standard math library `libm` and headers `<math.h>` `<float.h>`
|
||||
* network services library `libnsl` and headers
|
||||
* socket library `libsocket` and headers
|
||||
* dynamic link library `libdl` and header `<dlfcn.h>`
|
||||
* Native Posix Threads Library `libpthread` and header `<pthread.h>`
|
||||
* on Solaris, the realtime library `librt` (for the `nanosleep()` function)
|
||||
|
||||
Optional:
|
||||
|
||||
* Java compiler and SDK (mandatory for Android's **libservald.so**)
|
||||
* ALSA sound library and headers (only present on Linux not Android)
|
||||
|
||||
Built artifacts
|
||||
---------------
|
||||
|
||||
The build process produces the following artifacts:
|
||||
|
||||
* **servald** is the main executable.
|
||||
|
||||
* **libservald.so** is a shared library built only for Android, which is linked
|
||||
@ -36,8 +62,33 @@ Built artefacts
|
||||
entry points to functions for managing the client end of a monitor connection
|
||||
with the servald daemon.
|
||||
|
||||
Testing
|
||||
-------
|
||||
Voice call test
|
||||
---------------
|
||||
|
||||
If the following packages are present then `./configure` will set the
|
||||
`HAVE_VOIPTEST` macro and build **servald** with its `phone` command available
|
||||
for performing voice call testing:
|
||||
|
||||
* [Port audio](http://www.portaudio.com)
|
||||
* [Secret Rabbit Code](http://www.mega-nerd.com/SRC/) (a.k.a. Sample Rate
|
||||
Convert) by Erik de Castor Lopo
|
||||
* [SpanDSP](http://www.soft-switch.org/) by Steve Underwood
|
||||
* [Codec2](http://www.rowetel.com/blog/?page_id=452) by Dave Rowe of Rowetel
|
||||
|
||||
The Codec2 source code can be fetched using [Subversion][]:
|
||||
|
||||
svn checkout https://freetel.svn.sourceforge.net/svnroot/freetel/codec2 codec2
|
||||
|
||||
The following options can be used to control the `HAVE_VOIPTEST` macro:
|
||||
|
||||
* `./configure --enable-voiptest` will set `HAVE_VOIPTEST` and fail if the
|
||||
necessary packages are not present
|
||||
|
||||
* `./configure --disable-voiptest` will unset `HAVE_VOIPTEST` and will not
|
||||
check for presence of the above packages
|
||||
|
||||
Test scripts
|
||||
------------
|
||||
|
||||
The scripts in the [tests](./tests/) directory require [Bash][] version 3.2.48
|
||||
or later. To run the tests, build the `servald` executable natively using [GNU
|
||||
@ -74,3 +125,4 @@ directory.
|
||||
[JNI]: http://en.wikipedia.org/wiki/Java_Native_Interface
|
||||
[Bash]: http://en.wikipedia.org/wiki/Bash_(Unix_shell)
|
||||
[GNU make]: http://www.gnu.org/software/make/
|
||||
[Subversion]: http://subversion.apache.org/
|
||||
|
38
TODO
38
TODO
@ -1,38 +0,0 @@
|
||||
Pending:
|
||||
|
||||
- Parallelise large-value reads and writes
|
||||
- Fix out-of-order problem for writing large values to stdout (file is fine)
|
||||
- Non-mmap() mode for Mesh Potato and JFFS
|
||||
- Return early if all peers have responded (what about broadcast address virtual-peers?)
|
||||
- Activation flag in HLR records so that create without further action does not make a completed record.
|
||||
- async mode: fork()/background after first response with file output (for pipelining with MP IVRs)
|
||||
- async mode: work with broadcast requests
|
||||
- async mode: work with instance=-1 requests
|
||||
- SID based Peer targeting, e.g., for writeItem
|
||||
- cache peer:SID mappings to allow later unicasting
|
||||
- consider NACK for peers with no results to return
|
||||
|
||||
Done:
|
||||
20100623 - testdna script now uses /bin/sh instead of /bin/csh facilitating testing on more embedded targets
|
||||
20100623 - Retries for requests (already deals with SET, including multi-packet SET?)
|
||||
20100623 - Multi-packet GET retry policy (okay, it is as bad as TFTP with retries, but that is probably okay for now,
|
||||
at least we have the potential to pipe-line)
|
||||
20100623 - Multi-packet set doesn't send multiple packets (ok to confirm each in turn)
|
||||
20100623 - Output to file confirmed functional
|
||||
20100623 - BATMAN peer list retrieval
|
||||
20100623 - excluding previous responders from re-broadcast requests
|
||||
20100611 - Added code for template based file output when reading variables
|
||||
20100611 - Added code to allow user specified peers
|
||||
20100601 - Space retries properly in time, and allow multiple recvfroms() per retry.
|
||||
20100601 - Do not request results from peers that have already responsed.
|
||||
20100601 - Ensure broadcasts do not result in duplicate identical results
|
||||
20100601 - broadcast get: compulsory retry regime
|
||||
20100531 - Simulated packet loss / BER for server for testing.
|
||||
20100531 - "response set" structure for efficient chaining of responses, as well as making it easier to manage retries
|
||||
20100529 - SET working (replace and noreplace modes)
|
||||
20100529 - Get rid of unnecessary timeouts
|
||||
20100529 - Regression test script
|
||||
20100529 - Batch-mode responses (for instance=-1)
|
||||
20100529 - Multi-instance requests now working (and with no unnecessary delays)
|
||||
20100529 - Search by SID now works
|
||||
20100529 - Reading all instances of a variable by SID without timeout, but actually reading them all
|
Loading…
Reference in New Issue
Block a user