aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 44869e6a93c92a257072f26a5fe44dec242b59c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Makefile

all: main endpoints.so

.PHONY: all clean

endpoints.o: endpoints.c
	$(CC) -c $< -o $@

rename.ld: endpoints.o
	# Looks terrible
	# All it does it generates renaming
	echo SECTIONS { > $@
	@readelf --syms endpoints.o | awk '/FUNC/ && /GLOBAL/ {printf "\t%s = %s;\n", gensub(/_/, "/", "g", $$8), $$8;}' >> $@
	echo } >> $@

endpoints.so: endpoints.o rename.ld
	$(CC) -shared -Wl,rename.ld $< -fPIE -o $@

main: main.c
	$(CC) $< -ldl -lmicrohttpd -o $@

clean:
	$(RM) main endpoints.o endpoints.so rename.ld