xref: /aosp_15_r20/external/libcap/contrib/capso/Makefile (revision 2810ac1b38eead2603277920c78344c84ddf3aff)
1topdir=$(shell pwd)/../..
2include ../../Make.Rules
3
4# Always build sources this way:
5CFLAGS += -fPIC $(CAPSO_DEBUG)
6
7all: bind
8
9bind: bind.c capso.so
10	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ bind.c capso.so -L../../libcap -lcap
11
12../../libcap/loader.txt:
13	$(MAKE) -C ../../libcap loader.txt
14
15capso.o: capso.c capso.h ../../libcap/execable.h ../../libcap/loader.txt
16	$(CC) $(CFLAGS) $(CPPFLAGS) -DLIBCAP_VERSION=\"libcap-$(VERSION).$(MINOR)\" -DSHARED_LOADER=\"$(shell cat ../../libcap/loader.txt)\" -c capso.c -o $@
17
18capso.so: capso.o
19	$(LD) $(LDFLAGS) -o $@ $< $(LIBCAPLIB) -ldl -Wl,-e,__so_start
20	sudo setcap cap_net_bind_service=p $@
21
22clean:
23	rm -f bind capso.o capso.so *~
24