Commit graph

75 commits

Author SHA1 Message Date
Emmanuel Gil Peyrot
c8d00665b3 Add an install and an install-debug targets
This makes the user able to use the familiar `make install` syntax, and
allows overriding of the default directories using the DESTDIR and
PREFIX variables, for example:
 make DESTDIR=packaging PREFIX=/usr install
2016-07-05 23:21:28 +01:00
Emmanuel Gil Peyrot
06cdb3f75e Specify the soname in the library and its name
This provides users of this library the guarantee that the ABI will
stay stable when MAJOR will reach 1, and will stay backwards compatible
for the entire duration of the 1.x.y branch.

It does require the maintainers to always update the version in the
Makefile at every ABI change.
2016-07-05 23:21:22 +01:00
Richard van der Hoff
952a3e15cf Merge branch 'rav/group_chat_js_bindings' 2016-05-26 13:58:14 +01:00
Mark Haines
bfeb554e86 Add a fuzzer for olm_group_decrypt 2016-05-26 13:25:34 +01:00
Richard van der Hoff
013f27f3dc Javascript bindings for group sessions 2016-05-25 17:48:01 +01:00
Richard van der Hoff
ee8172d882 Compile some of the crypto libs directly
sha256.c and aes.c contain conflicting declarations, so we need to compile them
as separate units. This requires a bit more Makefile-shuffling; the build
directory now includes 'src' or 'lib' as appropriate, and we just mkdir -p
before each compilation.
2016-05-25 17:08:44 +01:00
Richard van der Hoff
54d43010c8 Merge branch 'rav/jenkins_build' 2016-05-25 15:33:33 +01:00
Mark Haines
024685f3db Merge branch 'markjh/fuzzingII' 2016-05-25 14:32:03 +01:00
Richard van der Hoff
ed039d331c Merge branch 'master' into rav/jenkins_build 2016-05-24 16:30:23 +01:00
Richard van der Hoff
8d31f42b1e Build the tests with -g
think this got lost when mark added separate release/debug builds
2016-05-24 16:28:14 +01:00
Richard van der Hoff
15cb4ec0c0 Build the crypto libs as C99
Some of the crypto libs rely on UINT64_C, which in glibc 2.17 and earlier was
not defined for C++ code (see
https://sourceware.org/bugzilla/show_bug.cgi?id=15366).
2016-05-24 14:41:49 +01:00
Richard van der Hoff
4f1bb49d20 Rename olm.hh to olm.h 2016-05-23 18:55:05 +01:00
Richard van der Hoff
e21d5cb222 Fix warnings and set -Werror 2016-05-23 18:08:22 +01:00
Mark Haines
f47aabd094 Add support for building fuzzers using american fuzzy lop
Builds fuzzers using http://lcamtuf.coredump.cx/afl/
2016-05-23 17:32:24 +01:00
Mark Haines
aacf115468 Fix make clean to remove the library and all the .d files 2016-05-23 16:35:34 +01:00
Mark Haines
502bd9e10e Move comment to correct location 2016-05-23 16:31:33 +01:00
Mark Haines
2e986c512e Don't use $^ cause that includes the header files 2016-05-23 16:23:57 +01:00
Mark Haines
83ce82708e Use a rule to make the build directories 2016-05-23 16:21:37 +01:00
Mark Haines
509be1b1bf Put the .o files in separate directories so we can have both release and debug versions 2016-05-23 15:58:18 +01:00
Mark Haines
63265f10de Fix the Makefile so that it works with a clean git checkout 2016-05-20 17:44:44 +01:00
Richard van der Hoff
ab7610087a Remove dep files for js objects on clean 2016-05-20 16:50:14 +01:00
Richard van der Hoff
85f2d57e08 Add an 'all' target to the Makefile
So that we can build everything together.
2016-05-20 15:28:54 +01:00
Richard van der Hoff
488567a45f Use a version script to restrict symbols in the .so
We want to stop aes_* and sha_* functions leaking out of our .so, as well as
internal _olm_* symbols.

This also means we need to link the unit tests against the objects. Possibly we
should distinguish between unit tests and integration tests.
2016-05-20 15:15:40 +01:00
Richard van der Hoff
d4c8aae803 Add support for building the JS wrappers to the Makefile
Now that we have C and C++, we need to split the compile and link steps
(because we need different flags for the C and C++ files), so this is
easier with a Makefile.
2016-05-20 15:15:40 +01:00
Richard van der Hoff
b3a7a6b36c Add a makefile
Replace the python scripts for building the shared lib and tests with a
Makefile, which makes it easier to handle a mix of C and C++.
2016-05-20 15:15:40 +01:00