The spec file gets processed by configure, the version will be filled
in automatically.
To generate an rpm make sure to install rpm-build, then "configure" as you
would usually do, run "make dist", then process the generated tarball
with rpmbuild:
rpmbuild -tb tox-0.0.0.tar.gz
Tested on Fedora 22.
supported options:
--with-dependency-search=DIR will tell configure to look for various
dependencies in DIR/include and DIR/lib
Alternatively you can also specify libsodium header and libs location
with --with-libsodium-headers and --with-libsodium-libs if it is
installed elsewhere.
Ncurses and libconfig are handled via the default pkg-config way, see
./configure --help=short for detailed information.
The tox library is compiled as libtoxcore in shared and static variants,
public headers are installed to ${prefix}/include/tox
A pkg-config libtoxcore.pc configuration file is provided.
Use ./configure --help for a full list of configure options or
./configure --help=short for the options that I added.
To generate the configure script after pulling from git use:
autoreconf -i
To generate a release tarball use:
make dist
Unit tests are handled by the libcheck library integration that is provided
by autotools, use:
make check
to compile and run the tests.
Unit tests are currently optional, i.e. - if the check library is not
found on the system, then tests will be disabled. Same goes for nTox and
DHT bootstrap daemon - they will be enabled or disabled depending on the
availability of ncurses (for nTox) or libconfig (for DHT bootstrap
daemon).
The above can be also tuned by:
--enable-tests / --disable-tests
--enable-ntox / --disable-ntox
--enable-dht-bootstrap-daemon / --disable-dht-bootstrap-daemon
This commit introduces a few things. Basically I didn't like the fact that
although we had a coding style document, no one was following it. See
https://github.com/irungentoo/ProjectTox-Core/issues/453 for more info regarding
that. This commit just marks the first of my efforts to refactor the code base
according to the posted coding style document by introducing an astylerc and a
optional git pre-commit hook.
I propose that users can add this functionality as a pre-commit hook. More
info is in the README file.
However, this has only been tested on Linux and I imagine should work on OSX as
well. I don't think pre-commit hooks work on Windows, but I may be mistaken.
The future commits I plan are refactoring the source files for other offending
items such as using typedefs. See http://wiki.tox.im/index.php/Coding_Style.
Added crypto to the DHT communications.
This defeats completely the first attack mentioned in
docs/DHT_hardening.
Also updated the build system to build the latest test (it links it with
libsodium)