Commit graph

60 commits

Author SHA1 Message Date
Giacomo Tesio
b6107c8777 Makefile: enable static compilation with musl
Assuming a Debian GNU/Linux system with wget, tar, git, make
and musl-gcc

```
mkdir build
cd build
export BUILD_TARGET=$PWD
export CC="musl-gcc"

echo download and build zlib
wget http://zlib.net/current/zlib.tar.gz
tar xvf zlib.tar.gz
cd zlib-1.3.1/
./configure --prefix=$BUILD_TARGET --static
make
make install
cd ..

echo download and build openssl
wget https://github.com/openssl/openssl/releases/download/openssl-3.4.0/openssl-3.4.0.tar.gz
tar xvf openssl-3.4.0.tar.gz
cd openssl-3.4.0
CC="musl-gcc -fPIE -pie -static -idirafter /usr/include/ -idirafter /usr/include/x86_64-linux-gnu/" ./Configure no-shared no-async --prefix=$BUILD_TARGET --openssldir=$BUILD_TARGET/ssl linux-x86_64
make depend
make
make install
cd ..

echo download and build curl
wget https://curl.se/download/curl-7.88.1.tar.gz
tar xvf curl-7.88.1.tar.gz
cd curl-7.88.1
./configure --disable-shared --enable-static --disable-silent-rules --disable-debug --disable-warnings --disable-werror --disable-curldebug --disable-symbol-hiding --disable-ares --disable-rt --disable-ech --disable-dependency-tracking --disable-libtool-lock --enable-http --disable-ftp --disable-file --disable-ldap --disable-ldaps --disable-rtsp --disable-proxy --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --disable-mqtt --disable-manual --disable-libcurl-option --disable-ipv6 --disable-openssl-auto-load-config --disable-versioned-symbols --disable-verbose --disable-sspi --disable-crypto-auth --disable-ntlm --disable-ntlm-wb --disable-tls-srp --enable-unix-sockets --disable-cookies --disable-socketpair --disable-http-auth --disable-doh --disable-mime --disable-dateparse --disable-netrc --disable-progress-meter --disable-dnsshuffle --disable-get-easy-options --disable-alt-svc --disable-websockets --without-brotli --without-zstd --without-libpsl --without-libgsasl --without-librtmp --without-winidn --with-openssl=$BUILD_TARGET/ --disable-threaded-resolver --with-zlib=$BUILD_TARGET/ --prefix=$BUILD_TARGET/
make
make install
cd ..

echo download and build snac2
git clone https://codeberg.org/grunfink/snac2.git
cd snac2 # assuming this commit in master
make CFLAGS="-g -Wall -Wextra -pedantic -static -DWITHOUT_SHM" PREFIX=$BUILD_TARGET LDFLAGS="-L$BUILD_TARGET/lib64 -lcurl -lssl -lcrypto -lz"
make install PREFIX=$BUILD_TARGET
cd ..

echo a statically linked snac is ready at $BUILD_TARGET/bin
```
2024-11-20 21:51:43 +01:00
default
000db2c1e4 Updated dependencies. 2024-11-12 10:36:07 +01:00
default
34dbddb2b5 Updated dependencies. 2024-11-07 21:57:38 +01:00
default
12373b018e Added -pedantic compilation flag. 2024-10-08 07:45:17 +02:00
default
15095709f7 Updated dependencies. 2024-08-24 18:39:20 +02:00
default
e92331b8da Updated dependencies. 2024-08-12 16:10:38 +02:00
Louis Brauer
25ef07b1ec More or less smaller fixes :) 2024-05-27 23:55:51 +02:00
default
7b0e9285af Updated dependencies. 2024-05-09 09:32:43 +02:00
default
7d83679617 Updated dependencies. 2024-03-25 16:17:20 +01:00
default
15ac48280b The command-line 'note' also allows attachments. 2024-03-15 20:26:35 +01:00
default
a0377b662d Updated dependencies. 2024-03-12 06:28:06 +01:00
default
fcf9f9e331 Updated depedencies. 2024-02-15 19:25:14 +01:00
default
6c556581e0 Rewritten a sentence to be clearer in README.md. 2024-01-13 09:12:16 +01:00
default
bb134950de Don't hardcode the -lrt, as OpenBSD does not have it. 2024-01-12 17:52:04 +01:00
default
034a08a8f0 Added -lrt to the linkage line, as it's needed at least in Ubuntu 20.04.6 LTS. 2024-01-12 17:40:26 +01:00
default
f4633b9356 Use xs_html in the static greeting page. 2023-11-24 00:05:45 +01:00
default
bc5d0d4ed0 Replaced encode_html_strict() with xs_html_encode(). 2023-11-20 18:33:24 +01:00
default
621c65159d Updated dependencies. 2023-11-17 08:52:48 +01:00
default
6cd3e76890 Added FastCGI support. 2023-10-17 20:02:08 +02:00
default
b7d0f297c3 mastoapi: Don't exclude posts of type Page or Article. 2023-10-16 20:49:58 +02:00
default
253e7f9eaa Don't allow creating users which user name strings only differ in case. 2023-10-13 06:33:12 +02:00
default
c314e995a4 Backport from xs. 2023-09-25 18:25:09 +02:00
default
749dbef349 Used xs_match() in some places. 2023-09-21 21:25:45 +02:00
default
f31eb8d9f2 Updated dependencies. 2023-09-21 11:55:59 +02:00
default
fafdbbf815 Replaced usage of random() with xs_rnd_buf(). 2023-06-05 18:29:25 +02:00
default
a7881f0ab6 Added an 'uninstall' Makefile target. 2023-06-01 17:18:36 +02:00
default
970ad7a540 Got rid of xs_encdec.h. 2023-05-17 10:08:57 +02:00
default
920ff76297 Print the total running time at httpd stop. 2023-05-08 09:34:27 +02:00
default
185aac2387 Added -Wextra to C flags. 2023-05-04 09:28:36 +02:00
default
cd19efcae2 Updated dependencies. 2023-05-04 09:17:50 +02:00
default
74e644ab07 Updated dependencies. 2023-04-25 10:12:23 +02:00
default
353e393f4d New file mastoapi.c. 2023-04-08 06:09:05 +02:00
default
631f16aea8 Updated dependencies. 2023-01-08 10:32:23 +01:00
Anna “CyberTailor”
9858d27818
Makefile improvements
* Don't overwrite CFLAGS from env
* Respect CPPFLAGS and LDFLAGS
* Create bindir in "install"
2022-12-09 21:07:50 +05:00
default
eb2cde3b6d Updated dependencies. 2022-11-23 15:07:40 +01:00
default
3e09c229e1 Moved db_upgrade() to its source file. 2022-11-23 15:05:55 +01:00
default
8aade19c8c New Makefile variable PREFIX_MAN, to install man pages wherever you want. 2022-11-08 13:01:10 +01:00
default
9de7175503 Also use CFLAGS in the linking phase. 2022-10-28 21:55:36 +02:00
default
13ac53b06a Updated dependencies. 2022-10-22 06:05:03 +02:00
default
9aec7c9fa8 Moved message formatting to format.c. 2022-10-07 18:30:54 +02:00
default
f1a7d9957d Updated Makefile. 2022-10-04 08:53:43 +02:00
default
4bb40857b2 New function initdb(). 2022-10-04 08:51:24 +02:00
default
e8c421c51d Backport from xs. 2022-10-03 11:18:49 +02:00
default
849913dc59 Use the time functions of xs_time.h. 2022-10-02 09:27:17 +02:00
default
8bb7582062 Implemented the helper thread. 2022-10-01 20:57:06 +02:00
default
5afb60f173 Got xs_set.h from xs. 2022-09-28 10:27:01 +02:00
default
4f3b70d997 More work in not_really_markdown(). 2022-09-27 10:51:57 +02:00
default
c41f982eea Updated dependencies. 2022-09-27 10:15:34 +02:00
default
e0c0195616 [html.c] new file. 2022-09-27 09:07:07 +02:00
default
bdc166111d [activitypub.c] New file. 2022-09-23 17:33:33 +02:00