1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
-
-
-
-
+
+
+
+
-
-
+
-
-
+
-
-
+
-
-
-
-
-
-
+
+
+
+
-
+
+
+
+
+
-
-
+
+
+
-
+
-
-
+
+
|
# ObjMatrix
## What is ObjMatrix?
ObjMatrix is a [Matrix](https://matrix.org) client library for
[ObjFW](https://objfw.nil.im).
It is currently in early development stages.
## How to build it?
You need [ObjFW](https://objfw.nil.im) and
[ObjSQLite3](https://fossil.nil.im/objsqlite3) installed in order to do this.
ObjMatrix uses modern Objective-C, and hence cannot be compiled with GCC, but
Install [ObjFW](https://objfw.nil.im) first, either via your distribution on by
following the instructions on how to compile it yourself. Make sure you compile
ObjFW using Clang, as ObjMatrix is written in modern Objective-C and hence
cannot be compiled with GCC.
only with Clang. So install Clang first and ObjFW will automatically pick it up.
You can install them all like this:
Then install [ObjSQLite3](https://fl.nil.im/objsqlite3):
$ for i in objfw objsqlite3 objmatrix; do
fossil clone https://fossil.nil.im/$i $i.fossil &&
fossil clone https://fl.nil.im/objsqlite3
mkdir $i &&
cd $i &&
cd objsqlite3
fossil open ../$i.fossil &&
./autogen.sh &&
./configure &&
make &&
sudo make install &&
cd .. || break
meson setup build
meson compile -C build
sudo meson install -C build
done
Now you can build and install ObjMatrix like this:
fossil clone https://fl.nil.im/objmatrix
cd objmatrix
meson setup build
meson compile -C build
You might need to install your distribution's `-dev` packages for OpenSSL
beforehand. E.g. on Ubuntu:
sudo meson install -C build
You can run the tests like this:
$ sudo apt install libssl-dev
meson test -C build
## Contributing
Just create an account on the
[ObjMatrix Fossil](https://fossil.nil.im/objmatrix) and post your patch on the
[forum](https://fossil.nil.im/objmatrix/forum). After a few patches, you will
[ObjMatrix Fossil](https://fl.nil.im/objmatrix) and post your patch on the
[forum](https://fl.nil.im/objmatrix/forum). After a few patches, you will
be granted commit access.
|