Age | Commit message (Collapse) | Author |
|
|
|
We can run the spectest from within cmake, so we should exercise that.
|
|
|
|
This requires that every symbol, even if static (file-scope), is unique.
The idea is that we can easily run "whole" program static analysis on
programs that include monolith.h ("whole" is in quotes, as we don't
include dependencies like libsodium in this static analysis).
|
|
Also some minor reformatting and fixes to the hstox sut driver.
|
|
The new encoding is `0` for `Nothing` and `[1, x]` for `Just x`.
|
|
|
|
|
|
Fixes #411.
|
|
Also fix a mistake with forgotten braces around parameter
|
|
|
|
|
|
socket -> net_socket
htons -> net_htons
htonl -> net_htonl
connect -> net_connect
sendto -> net_sendto_ip4
getaddrinfo -> net_getipport
sa_family_t -> Family
|
|
|
|
|
|
|
|
"All rights reserved" was incorrect. The project was licensed under GPL3,
which means a lot of rights are licensed to everybody in the world, i.e.
not reserved to the "Tox Project".
|
|
|
|
|
|
|
|
this updates the version-sync script to generate proper SO versions
which will be used by cmake and libtool to create version symlinks
on the system when a library is installed as well as setting the SO
version in the binary.
To see what this does, you have to configure tox with a prefix:
./configure --prefix=/tmp/tox-with-libtool
mkdir cbuild && cd cbuild && cmake -DCMAKE_INSTALL_PREFIX=/tmp/tox-with-cmake ..
Then run `make && make install`.
in both instances you should see the following installed in `lib/`:
libtoxcore.so -> libtoxcore.so.1.4.0
libtoxcore.so.1 -> libtoxcore.so.1.4.0
libtoxcore.so.1.4.0
inside the binary the soname should be the one with .1 and it should not
contain the full version:
$ objdump -p libtoxcore.so.1.4.0 | grep SONAME
SONAME libtoxcore.so.1
|
|
tar -jxf expects a file.
|
|
Fixes #363.
|
|
This way we can at least see what fails in which way.
|
|
This reverts commit 59e2a844f04a8725e8079f854158aa86ef5988b2, and
defines _DARWIN_C_SOURCE in toxcore/network.c
|
|
This one is not allowed to fail and ensures that toxcore can at least be
built for OSX.
|
|
This reverts commit f3469070fe899e8e4fd88665386a55bad9f77cd8.
|
|
This takes a few seconds but allows us to cover cases that aren't checked
often.
|
|
- CFLAG gnu99 was changed to c99.
- CXXFLAG c++98 was changed to c++11.
- CFLAG -pedantic-errors was added so that non-ISO C now throws errors.
- _XOPEN_SOURCE feature test macro added and set to 600 to expose SUSv3
and c99 definitions in modules that required them.
- Fixed tests (and bootstrap daemon logging) that were failing due to
the altered build flags.
- Avoid string suffix misinterpretation; explicit narrowing conversion.
- Misc. additions to .gitignore to make sure build artifacts don't wind
up in version control.
|
|
closes #319
|
|
|
|
|
|
Also, make sure this won't happen again by checking for it in
format-source.
|
|
These were generated by the autotools build. Some clients may depend on
these files instead of the newer split pkg-config files. New clients
should be using the toxcore, toxav, toxencryptsave, and toxdns modules.
|
|
This breaks the toxencryptsave API. It hides the Tox_Pass_Key struct
definition.
|
|
We also never really tested this, because we run make distcheck, which
does another configure with default flags instead of the ones we passed.
Fixes #317.
|
|
|
|
Build it on Travis. It won't be built on the windows builds regardless
of having it enabled globally.
Fixes #292.
|
|
Having -Werror set by default causes users' builds to fail because
toxcore is not warning-free. Failing on errors is appropriate for the
development phase, e.g. when building it in a CI enviroment, but it
doesn't make much sense to fail builds for users and let them figure out
that they need to pass -DWARNINGS=OFF to make the library build.
|
|
|
|
This allows us to use apidsl features like namespaces to enforce a
naming standard.
|
|
Travis seems to no longer set $TERM, which breaks opam. We now manually
set it to some hopefully sane value.
|
|
|
|
|
|
Compiling as C++ changes nothing semantically, but ensures that we don't
break C++ compatibility while also retaining C compatibility.
C++ compatibility is useful for tooling and additional diagnostics and
analyses.
|
|
This ensures that on Travis, format_test will always be executed, or the
build fails.
|
|
We use TRACE=ON (cmake flag) to enable LOG_TRACE. This way, a regular
build can enable DEBUG while not paying the price of TRACE. This is
particularly important for FFI bindings (especially Python), where
invoking callbacks can be an expensive operation.
|
|
When cross-compiling to <target> from Linux, cmake might find native Linux
libconfig and decide to build tox-bootstrapd. If the target is Windows, this
will fail, as tox-bootstrapd can't be built for Windows in the first place. If
the target is Linux of some other architecture, then using host native
libconfig will fail too. Thus an option is needed to guard against this.
|
|
|
|
|