serval-dna/doc
Andrew Bettison ca8e846264 Add iOS Framework Bundle build
The new ios/configure script performs a separate ../configure for each of
the following iOS targets:

    iPhoneOS        on armv7
    iPhoneOS        on arm64
    iPhoneSimulator on i386
    iPhoneSimulator on x86_64

The script then creates ios/Makefile that builds a static iOS Framework
Bundle suitable for inclusion in an Xcode iOS project.

Add the --xcode-sdk=SDK option to configure.ac, to support cross
compiling using Apple Xcode.  It prefixes all compile/link toolchain
commands with the "xcrun --sdk SDK" command, ie, CC, AS, LD, AR, RANLIB,
etc.

Re-structure headerfiles.mk to separate "public" from "private" headers,
because the Framework module only exposes the public ones.  Moves the
SQLITE3_AMALGAMATION definition from Makefile.in into headerfiles.mk.

Update INSTALL.md and add a technical document for Apple iOS.

This enables development of Serval DNA within the context of an Xcode
iOS project using the standard edit-make-test cycle: after modifying a
Serval DNA source file, "cd ios; make" will recompile the changed file
for all the target architectures and update the Framework Bundle.
Rebuilding the Xcode project will then incorporate the changes, which
can be tested immediately.
2018-03-06 15:29:29 +10:30
..
Apple-iOS.md Add iOS Framework Bundle build 2018-03-06 15:29:29 +10:30
cc-by-4.0.png Add CC-BY-4.0 license text 2014-05-19 17:28:42 +09:30
CLI-API.md Update INSTALL.md to describe built artifacts 2016-10-19 09:47:48 +10:30
Cooee.md Document Cooee service discovery protocol 2014-05-30 17:08:22 +09:30
Development.md Add iOS Framework Bundle build 2018-03-06 15:29:29 +10:30
Mesh-Datagram-Protocol.md Improve MDP technical documentation 2017-11-22 17:38:17 +10:30
Mesh-Packet-Filtering.md Add MDP packet filter rules documentation 2014-05-23 14:51:25 +09:30
Mesh-Stream-Protocol.md Add text of CC BY 4.0 license 2014-05-21 17:37:23 +09:30
OpenBTS.md Add text of CC BY 4.0 license 2014-05-21 17:37:23 +09:30
OpenWRT.md Fix broken link 2015-01-07 15:56:56 +01:00
README.md Update INSTALL.md to describe built artifacts 2016-10-19 09:47:48 +10:30
REST-API-Keyring.md Add Swift keyring client API with tests 2018-03-06 15:29:17 +10:30
REST-API-MeshMB.md Update restful api docs 2017-05-30 09:27:48 +09:30
REST-API-MeshMS.md Spruce up MeshMS REST API tech doc a bit 2017-10-20 17:22:38 +10:30
REST-API-Rhizome.md Improve and document HTTP REST Rhizome import 2017-10-20 15:50:18 +10:30
REST-API.md Improve and document HTTP REST Rhizome import 2017-10-20 15:50:18 +10:30
Serval-Infrastructure.md Add text of CC BY 4.0 license 2014-05-21 17:37:23 +09:30
Servald-Configuration.md Improve tech doc of MDP and servald config 2017-10-20 17:22:34 +10:30
Testing.md Update copyright messages in documentation 2016-09-21 18:31:31 +09:30
Tunnelling.md Add text of CC BY 4.0 license 2014-05-21 17:37:23 +09:30

Serval DNA Technical Documentation

Serval Project, October 2016

This directory contains technical documents that accompany the Serval DNA component of the Serval mesh network.

  • Building Serval DNA has instructions to build a native Serval DNA executable.

  • Testing Serval DNA describes the Serval DNA test scripts and the test framework.

  • Configuring Serval DNA describes the persistent configuration system and its command-line API, the built-in system file paths, daemon instances and basic network configuration.

  • Notes for Developers contains information of use to developers of Serval DNA and to those experiencing build problems.

  • MDP Packet Filtering describes the configuration options and rules file syntax for filtering incoming and outgoing MDP packets.

  • Tunnelling describes how to tunnel IP over the Serval mesh network.

  • Serval DNA on OpenWRT describes how to build and install Serval DNA packages for the OpenWRT platform.

  • Serval DNA OpenBTS support describes how Serval DNA has been integrated with the Commotion Wireless OpenBTS mobile telephony platform.

  • Mesh Datagram Protocol (MDP) describes the fundamental mesh protocol used in Serval Mesh networks and its C programming API.

  • Mesh Stream Protocol (MSP) describes a reliable message stream protocol used in Serval Mesh networks and its C programming API.

  • REST API describes the common features of the various HTTP REST APIs through which applications access the services of the Serval mesh network, including:

  • CLI API describes the command-line interface used for controlling the Serval DNA daemon and accessing its services.

  • Cooee describes the protocol used for discovering services available on nearby (reachable) mesh network nodes.

  • Serval Infrastructure contains notes on plans for how a Serval mesh network can use the Internet to increase its reach and usefulness.


Copyright 2014 Serval Project Inc.
Copyright 2016 Flinders University
CC-BY-4.0 This document is available under the Creative Commons Attribution 4.0 International licence.