mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-04-08 11:34:13 +00:00
Remove aclocal.m4 from version control
Henceforward, aclocal.m4 will be generated by the 'autoreconf' command. The 'autoreconf -f -i' command may now emit a warning "Unsupported attribute section, the test may fail" on some systems, but it will still generate the proper aclocal.m4 and ./configure files. To suppress this warning, simply invoke autoreconf with '-I m4' argument: autoreconf -f -i -I m4 The INSTALL.md has been updated accordingly, and a new 'Notes for Developers' technical document added, explaining the use of aclocal and autoreconf, and documenting that these warning messages are of no concern.
This commit is contained in:
parent
f6c2706796
commit
e51189a1c8
1
.gitignore
vendored
1
.gitignore
vendored
@ -12,6 +12,7 @@
|
||||
VERSION.txt
|
||||
/configure
|
||||
/autom4te.cache
|
||||
/aclocal.m4
|
||||
Makefile
|
||||
testconfig.sh
|
||||
config.log
|
||||
|
16
INSTALL.md
16
INSTALL.md
@ -68,7 +68,7 @@ To compile a native (ie, not cross-compiled) Serval DNA from source, run the
|
||||
following commands:
|
||||
|
||||
$ cd $HOME/src/serval-dna
|
||||
$ autoreconf -f -i
|
||||
$ autoreconf -f -i -I m4
|
||||
$ ./configure
|
||||
$ make
|
||||
$
|
||||
@ -76,7 +76,8 @@ following commands:
|
||||
A successful session should appear something like:
|
||||
|
||||
$ cd $HOME/src/serval-dna
|
||||
$ autoreconf -f -i
|
||||
$ autoreconf -f -i -I m4
|
||||
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
|
||||
$ ./configure
|
||||
checking build system type... i686-pc-linux-gnu
|
||||
checking host system type... i686-pc-linux-gnu
|
||||
@ -109,13 +110,16 @@ On Solaris, the system `make` command may not be GNU Make, and the system
|
||||
`cc` command may not be GNU Gcc. The following may work:
|
||||
|
||||
$ cd $HOME/src/serval-dna
|
||||
$ autoreconf -f -i
|
||||
$ autoreconf -f -i -I m4
|
||||
$ CC=gcc
|
||||
$ export CC
|
||||
$ ./configure
|
||||
$ gmake
|
||||
$
|
||||
|
||||
In the event of a build failure, first consult the [Notes for
|
||||
Developers](./doc/Development.md), then [contact the Serval Project][].
|
||||
|
||||
Built artifacts
|
||||
---------------
|
||||
|
||||
@ -176,8 +180,9 @@ developing test scripts.
|
||||
Configure
|
||||
---------
|
||||
|
||||
The [doc/Servald-Configuration](./doc/Servald-Configuration.md) document
|
||||
describes the configuration of Serval DNA in detail.
|
||||
Before running `servald`, it must be configured correctly. The
|
||||
[doc/Servald-Configuration](./doc/Servald-Configuration.md) document describes
|
||||
the configuration of Serval DNA in detail.
|
||||
|
||||
About the examples
|
||||
------------------
|
||||
@ -210,6 +215,7 @@ This document is available under the [Creative Commons Attribution 4.0 Internati
|
||||
[gcc 4.7]: http://gcc.gnu.org/gcc-4.7/
|
||||
[OpenWRT]: ./doc/OpenWRT.md
|
||||
[Serval Mesh Extender]: http://developer.servalproject.org/dokuwiki/doku.php?id=content:meshextender:
|
||||
[contact the Serval Project]: http://developer.servalproject.org/dokuwiki/doku.php?id=content:contact
|
||||
[RFD900]: http://rfdesign.com.au/index.php/rfd900
|
||||
[Mesh Potato]: http://villagetelco.org/mesh-potato/
|
||||
[Commotion Wireless]: http://commotionwireless.net/
|
||||
|
11
README.md
11
README.md
@ -14,14 +14,17 @@ participate in the [Serval mesh network][].
|
||||
Download, build and test
|
||||
------------------------
|
||||
|
||||
[INSTALL.md](./INSTALL.md) contains instructions for downloading, building and
|
||||
testing Serval DNA on most Linux and some Linux-like platforms.
|
||||
* [INSTALL.md](./INSTALL.md) contains instructions for downloading, building
|
||||
and testing Serval DNA on most Linux and some Linux-like platforms.
|
||||
|
||||
* [Notes for Developers](./doc/Development.md) contains useful information for
|
||||
developers of Serval DNA, which may also help resolve build issues.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
[doc/Servald-Configuration.md](./doc/Servald-Configuration.md) describes how to
|
||||
set up and run a Serval DNA daemon.
|
||||
* [doc/Servald-Configuration.md](./doc/Servald-Configuration.md) describes how
|
||||
to set up and run a Serval DNA daemon.
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
|
1117
aclocal.m4
vendored
1117
aclocal.m4
vendored
File diff suppressed because it is too large
Load Diff
92
doc/Development.md
Normal file
92
doc/Development.md
Normal file
@ -0,0 +1,92 @@
|
||||
Notes for Serval DNA Developers
|
||||
===============================
|
||||
[Serval Project][], January 2016
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
This document is intended for all developers of [Serval DNA][], and also for
|
||||
non-developers who are experiencing errors in the [build][] process.
|
||||
|
||||
Autoconf
|
||||
--------
|
||||
|
||||
The [configure.in](../configure.in) file is an [autoconf][] script that
|
||||
contains instructions for adapting the build of Serval DNA to different
|
||||
platforms and CPU architectures. This script makes use of many [GNU M4][]
|
||||
macros, each of which tests an aspect of the build environment, such as the
|
||||
make and version of the C compiler (eg, [GCC][], [Clang][]), the availability
|
||||
of headers, functions and system calls in the standard library, and so forth.
|
||||
|
||||
Most of these M4 macros are standard, either supplied with [autoconf][] or from
|
||||
the [autoconf macro archive][]. Some macros are specific to Serval DNA, either
|
||||
to improve on a standard macro or perform a test for which no standard macro
|
||||
exists. These extra macros are locally defined in files within the [m4](../m4)
|
||||
sub-directory.
|
||||
|
||||
The [autoreconf][] command used in the [build][] instructions generates an
|
||||
`aclocal.m4` file that includes all the necessary files from the [m4](../m4)
|
||||
directory. In turn, it then includes this `aclocal.m4` file when invoking [GNU
|
||||
M4][] to convert the [configure.in](../configure.in) file into the
|
||||
`./configure` script.
|
||||
|
||||
Internally, [autoconf][] generates the `aclocal.m4` file by invoking the
|
||||
[aclocal][] utility. Used without arguments, [aclocal][] may emit some warning
|
||||
messages that look like this:
|
||||
|
||||
$ cd serval-dna
|
||||
$ aclocal
|
||||
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
|
||||
configure.in:18: warning: Unsupported attribute section, the test may fail
|
||||
../../lib/autoconf/lang.m4:224: AC_LANG_SOURCE is expanded from...
|
||||
../../lib/autoconf/lang.m4:241: AC_LANG_PROGRAM is expanded from...
|
||||
../../lib/autoconf/lang.m4:193: AC_LANG_CONFTEST is expanded from...
|
||||
../../lib/autoconf/general.m4:2672: _AC_LINK_IFELSE is expanded from...
|
||||
../../lib/autoconf/general.m4:2689: AC_LINK_IFELSE is expanded from...
|
||||
../../lib/m4sugar/m4sh.m4:639: AS_IF is expanded from...
|
||||
../../lib/autoconf/general.m4:2042: AC_CACHE_VAL is expanded from...
|
||||
../../lib/autoconf/general.m4:2063: AC_CACHE_CHECK is expanded from...
|
||||
/usr/share/aclocal/ax_gcc_var_attribute.m4:57: AX_GCC_VAR_ATTRIBUTE is expanded from...
|
||||
configure.in:18: the top level
|
||||
$
|
||||
|
||||
These messages are harmless; the correct `aclocal.m4` is still generated. To
|
||||
suppress most of these messages from the output of [aclocal][] and
|
||||
[autoreconf][], give the `-I m4` option:
|
||||
|
||||
$ cd serval-dna
|
||||
$ autoreconf -f -i -I m4
|
||||
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
|
||||
$
|
||||
|
||||
About the examples
|
||||
------------------
|
||||
|
||||
The examples in this document are [Bourne shell][] commands, using standard
|
||||
quoting and variable expansion. Commands issued by the user are prefixed with
|
||||
the shell prompt `$` to distinguish them from the output of the command.
|
||||
Single and double quotes around arguments are part of the shell syntax, so are
|
||||
not seen by the command. Lines ending in backslash `\` continue the command on
|
||||
the next line.
|
||||
|
||||
The directory paths used in the examples are for illustrative purposes only,
|
||||
and may need to be changed for your particular circumstances.
|
||||
|
||||
-----
|
||||
**Copyright 2015 Serval Project Inc.**
|
||||

|
||||
Available under the [Creative Commons Attribution 4.0 International licence][CC BY 4.0].
|
||||
|
||||
|
||||
[Serval Project]: http://www.servalproject.org/
|
||||
[CC BY 4.0]: ../LICENSE-DOCUMENTATION.md
|
||||
[Serval DNA]: ../README.md
|
||||
[autoconf]: http://www.gnu.org/software/autoconf/autoconf.html
|
||||
[autoconf macro archive]: http://www.gnu.org/software/autoconf-archive/
|
||||
[GNU M4]: http://www.gnu.org/software/m4/m4.html
|
||||
[GCC]: https://gcc.gnu.org/
|
||||
[Clang]: http://clang.llvm.org/
|
||||
[build]: ../INSTALL.md
|
||||
[aclocal]: https://www.gnu.org/software/automake/manual/html_node/aclocal-Invocation.html
|
||||
[autoreconf]: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf.html#autoreconf-Invocation
|
||||
[Bourne shell]: http://en.wikipedia.org/wiki/Bourne_shell
|
@ -15,6 +15,9 @@ DNA][] component of the [Serval mesh network][].
|
||||
persistent configuration system and its command-line API, the built-in
|
||||
system file paths, daemon instances and basic network configuration.
|
||||
|
||||
* [Notes for Developers](./Development.md) contains information of use to
|
||||
developers of Serval DNA and to those experiencing build problems.
|
||||
|
||||
* [MDP Packet Filtering](./Mesh-Packet-Filtering.md) describes the
|
||||
configuration options and rules file syntax for filtering incoming and
|
||||
outgoing MDP packets.
|
||||
|
@ -1,14 +1,7 @@
|
||||
The Autoconf macros in this directory were copied from the GNU Autoconf Archive
|
||||
http://www.gnu.org/software/autoconf-archive/
|
||||
http://www.gnu.org/software/autoconf-archive/, and modified as needed.
|
||||
|
||||
To use them, simply concatenate them all into the aclocal.m4 file in the
|
||||
project root directory:
|
||||
The autoreconf(1) command generates an aclocal.m4 file, which includes all the
|
||||
files in this directory that define macros that are used by configure.in.
|
||||
|
||||
cd batphone/jni/servald
|
||||
cat m4/* >aclocal.m4
|
||||
|
||||
Then you can run autoconf with no special arguments:
|
||||
|
||||
autoconf
|
||||
./configure
|
||||
make
|
||||
See INSTALL.md for more information.
|
||||
|
Loading…
x
Reference in New Issue
Block a user