summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2017-01-05Test a few cmake option combinations before the build.iphydf
This takes a few seconds but allows us to cover cases that aren't checked often.
2017-01-04Portability fixesDavid Zero
- 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.
2017-01-04Add secure memcmp and memzero implementation.Diadlo
Implementation mostly taken from libsodium utils. Fix #347
2016-12-29Remove .cabal-sandbox option from tox-spectest find line.iphydf
This was just for finding it in toktok-stack, which now uses haskell-stack, and thus no longer has a .cabal-sandbox. We'll just assume that the Makefile properly sets up the path such that tox-spectest is available.
2016-12-28simplify integration as a third-party lib in cmake projectsNils Fenner
The CMAKE_SOURCE_DIR variable points to the top-level directory of a project while we want to point to the top-level directory of the lib. This change simplifies the integration as a third-party lib. We can use CMAKE_CURRENT_SOURCE_DIR or simply "nothing" ('.') to point to the directory where the CMakeLists.txt file resides.
2016-12-23Release v0.1.2iphydf
2016-12-22Use `tox_options_set_*` instead of direct member access.iphydf
Also added a `tox_options_copy` function for cloning an options object. This can be useful when creating several Tox instances with slightly varying options.
2016-12-20Add test to check if tox_new/tox_kill leaks.iphydf
We create and destroy 20k tox instances and run a single tox_iterate on it. This test is not comprehensive, but provides a simple check to see whether the destruction properly cleans up memory and perhaps other resources.
2016-12-17Release v0.1.1iphydf
2016-12-14Release 0.1.0.iphydf
Fixes #216.
2016-12-14Fix Libs line in toxcore.pc pkg-config file.iphydf
CMake lists are `;` separated and CMAKE_THREAD_LIBS_INIT contains "-lpthread". This resulted in "-l-lpthread;-lrt" on Linux.
2016-12-13Add compatibility pkg-config modules: libtoxcore, libtoxav.iphydf
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.
2016-12-13Add apidsl file for toxencryptsave.iphydf
This breaks the toxencryptsave API. It hides the Tox_Pass_Key struct definition.
2016-12-13Fix version compatibility test.sudden6
Also added some test cases for it.
2016-12-13Fix padding in SAVED_FRIEND struct and add test.Robin Lindén
Test covers saving and loading of a Tox instance with a friend added.
2016-12-05Don't build nTox by default.iphydf
Build it on Travis. It won't be built on the windows builds regardless of having it enabled globally. Fixes #292.
2016-11-28Don't error on warnings by defaultMaxim Biro
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.
2016-11-24Version Patch v0.0.4 => v0.0.5Gregory Mullen (grayhatter)
2016-11-23Add knob to suppress building the nTox clientIsmael Luceno
2016-11-23Add knob to suppress building the toxav testIsmael Luceno
2016-11-21Mark Tox_Options struct as deprecated.iphydf
We will remove it in v0.1.
2016-11-14v0.0.4iphydf
2016-11-12Use apidsl for the crypto_core API.iphydf
This allows us to use apidsl features like namespaces to enforce a naming standard.
2016-11-11Disable -Wunused-but-set-variable compiler warning flag.iphydf
This warning is triggered in `av_test.c`, where we have an open issue. Silencing the warning locally would make the issue less visible. This way, we will see the warning when we start removing the `-Wno-*` flags.
2016-11-08Add spectest to the cmake test suite.iphydf
This allows for easier development. It is not used on travis (yet).
2016-11-08Disable some gcc-specific warnings.iphydf
Also, disable -pedantic on C++, because it's not really useful there, and causes a lot of warnings on `enum FOO { BAR, };` (comma at end of enumerator list).
2016-11-07Release v0.0.3.iphydf
2016-11-06Remove assocendoffile78
2016-11-06Enable all possible C compiler warning flags.iphydf
We disable the ones that fire, so we can use -Werror. We can then investigate each warning individually and see whether to fix it or to keep silencing it.
2016-11-02Compile as C++ for windows builds.iphydf
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.
2016-10-30Version Patch v0.0.2Gregory Mullen (grayhatter)
2016-10-28toxav renaming: group.{h,c} -> groupav.{h,c}Dmytro Vorobiov
toxav file for "group" conflicts with toxcore "group" file. While this works fine in almost all cases, Xcode on macOS is confused with that.
2016-10-26Error if format_test can't be executed.iphydf
This ensures that on Travis, format_test will always be executed, or the build fails.
2016-10-11Remove duplicate tests: split tests part 2.iphydf
2016-10-11Install libraries with RPATH.iphydf
This makes deployment easier, as the install libpath is used to look up dependent libraries.
2016-10-06Set log level for DEBUG=ON to LOG_DEBUG.iphydf
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.
2016-10-05Add option to build tox-bootstrapdMaxim Biro
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.
2016-10-04Add option to set test timeoutMaxim Biro
Some tests take 20 or more minutes to run before they timeout, this allows to limit their runtime if needed.
2016-10-02Rebuild apidsl'd headers in cmake.iphydf
- Moved apidsl headers next to their generated versions. In the future, perhaps all (or most) headers will be apidsl-generated, so the sources should stay together. - Try to find apidsl/apigen binary and astyle binary and use it for the format test. Don't run the format test if these can't be found.
2016-10-02Remove the _test suffix in auto_test calls.iphydf
All tests must end in `_test` so we can use this convention to slightly shorten the names in `auto_test` calls. This also enforces the convention so future tests obey it.
2016-09-28Add version-sync script to update all places with versions.iphydf
This will update tox.in.h only. Currently, you will still need to manually update tox.h. An upcoming PR (#154) will update tox.h as part of the build.
2016-09-28v0.0.0 => v0.0.1Gregory Mullen (grayhatter)
2016-09-25Work around bug in opencv3 headers.iphydf
OpenCV 3.1 doesn't define cvRound in C, only in C++. Thus, we now need to compile av_test as C++ code.
2016-09-24Move ring buffer out of toxcore/util into toxav.iphydf
Toxcore itself doesn't use this data structure. Only toxav does, so now toxav owns the code for it.
2016-09-24Make toxcore code C++ compatible.iphydf
It is still C code, so still compatible with C compilers as well. This change lets us see more clearly where implicit conversions occur by making them explicit.
2016-09-21Fix strict-ld grep expressions to include digits.iphydf
`tox_options_[gs]et_ipv6_enabled` were missing from the version script because the grep expression only accepted `[a-z_]`. Now it also accepts digits in the function names.
2016-09-20Add OSX and Windows build to travis config.iphydf
Tests for Windows are disabled for now, until we figure out which tests can successfully run on wine and select only those.
2016-09-19Add STRICT_ABI cmake flag to generate export lists.iphydf
Enabling this flag will generate and use an LD version script. It ensures that the dynamic libraries (libtoxcore.so, libtoxav.so) only export the symbols that are defined in their public API (tox.h and toxav.h, respectively).
2016-09-18Only build toxav if opus and vpx are found.iphydf
2016-09-17Complete old groupchat conversion to new APIJfreegman