summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 9bebc1959abdb58dbdc2638456259caad25eb154 (plain) (blame)
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
DESTDIR=/

.NOTPARALLEL:
default:
	mkdir tmp -p
	cp src/hp.html tmp/hp.html
	-[ ! -f tmp/hp.css ] && wget -c https://sijanec.eu/assets/css/styles.css?ref=sear.c-make -Otmp/hp.css
	php -r "file_put_contents('tmp/hp.html', str_replace('INSERT-STYLESHEET-HERE', str_replace('%', '%%', file_get_contents('tmp/hp.css')), file_get_contents('tmp/hp.html')));"
	xxd -i < tmp/hp.html > tmp/hp.xxd
	echo ', 0' >> tmp/hp.xxd
	xxd -i < src/osdd.xml > tmp/osdd.xxd
	echo ', 0' >> tmp/osdd.xxd
	gcc -Wall -Wextra -pedantic -Wno-unused-parameter -g -Isrc -Itmp -pthread src/main.c $$(xml2-config --libs --cflags) -lmicrohttpd -lm -osear.c

install:
	mkdir -p $(DESTDIR)/usr/bin/
	cp sear.c $(DESTDIR)/usr/bin/

distclean:
	rm sear.c tmp -rf

clean:
	rm sear.c tmp -rf

prepare:
	sudo apt install libmicrohttpd-dev xxd build-essential libxml2-dev php-cli -y

test-http:
	mkdir -p tmp
	gcc -Wall -pedantic -g -Isrc -Itmp test/nanohttp.c $$(xml2-config --libs --cflags) -otmp/nanohttp

test-http-valgrind:
	valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --log-file=valgrind-out.txt tmp/nanohttp http://sijanec.eu/

valgrind:
	valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes --verbose --log-file=valgrind-out.txt ./sear.c