370f8031 | CXXFLAGS += -fPIC -fno-stack-protector -std=c++14 |
739113f9 | CFLAGS += -fPIC -fno-stack-protector |
a4148e9b | OBJS = dual_control.o request.o dual_control_integrate.o |
739113f9 | |
b5ea7efd | MODULELIB = pam_dual_control.so |
739113f9 | |
184eb507 | UNAME_S := $(shell uname -s) |
e993f970 | |
739113f9 | |
233b0981 | .PHONY: all |
896ac0d6 | all: dual_control.a |
2278a14d | |
739113f9 | dual_control.a: $(OBJS) |
233b0981 | ar rvs $@ $^ |
49f68f43 | ranlib $@ |
233b0981 | .PHONY: clean |
49f68f43 | clean: |
9523791b | @rm -f *.o *.a @rm -f dual_control_test |
49f68f43 | |
233b0981 | .PHONY: distclean distclean: clean |
4262a925 | @git clean -xdf |
2278a14d | |
e56d3c56 | dual_control.o: dual_control.h |
de34378f | |
4a1812fd | dual_control_test: dual_control_test.o dual_control.o $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ $^ |
106b82e8 | request_test: request_test.o request.o |
74bdb8d9 | $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ $^ |
e56d3c56 | validator_test: validator_test.o validator.o |
55259c47 | $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ $^ |
7de08ef9 | |
2fade7af | conversation_test: conversation_test.o conversation.o $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ $^ |
de34378f | |
8e934bd2 | .PHONY: test |
2fade7af | test: validator_test request_test dual_control_test conversation_test |
f757e35b | @./validator_test |
106b82e8 | @./request_test |
4a1812fd | @./dual_control_test |
2fade7af | @./conversation_test |
55259c47 | |
b5ea7efd | .PHONY: install |
739113f9 | install: $(OBJS) |
184eb507 | ifeq ($(UNAME_S), Linux) |
739113f9 | ld $(LDFLAGS) -x --shared -lpam -o $(DESTDIR)@PAM_MODULE_DIRECTORY@/$(MODULELIB) $(OBJS) |
184eb507 | else @echo installation recipe not known for $(UNAME_S) endif |
f6a9ff01 | .PHONY: format format: |
bd2f5e9c | @./format.sh |
f6a9ff01 |