git.fiddlerwoaroof.com
Makefile.in
bb053ec9
 CXXFLAGS += -fPIC -fno-stack-protector -std=c++11
9bfc1fa9
 CFLAGS += -fPIC -fno-stack-protector
bb053ec9
 LDFLAGS = -lpam
739113f9
 
bb053ec9
 INTEGRATION_OBJS = sys_syslog.o sys_fstream.o sys_unistd.o sys_pwd.o pam.o dual_control_integrate.o
 OBJS = dual_control.o request.o validator.o conversation.o user.o token.o logger.o
a9690b1d
 TESTS = dual_control_test validator_test conversation_test request_test user_test token_test \
104ef108
 		logger_test session_test
ef39fb9d
 TESTOBJS = $(patsubst %,%.o,$(TESTS))
 SRCS := $(OBJS:.o=.cc) $(TESTOBJS:.o=.cc)
739113f9
 
b5ea7efd
 MODULELIB = pam_dual_control.so
739113f9
 
184eb507
 UNAME_S := $(shell uname -s)
e993f970
 
233b0981
 .PHONY: all
13286afe
 all: dual_control.a .depend
d5a78642
 
 .PHONY: version
 version:
 	@echo COMPILER VERSION --------------------------------
 	$(CXX) --version
2278a14d
 
739113f9
 dual_control.a: $(OBJS)
233b0981
 	ar rvs $@ $^
49f68f43
 	ranlib $@
 
233b0981
 .PHONY: clean
49f68f43
 clean:
9523791b
 	@rm -f *.o *.a
ef39fb9d
 	@rm -f *_test
 	@rm ./.depend
49f68f43
 
233b0981
 .PHONY: distclean
 distclean: clean
4262a925
 	@git clean -xdf
2278a14d
 
ef39fb9d
 .depend: $(SRCS)
 	rm -f ./.depend
c9d28422
 	$(CXX) -MM $^ > ./.depend;
4a1812fd
 
c9d28422
 -include .depend
7de08ef9
 
ef39fb9d
 $(TESTS): %: %.o $(OBJS)
bb053ec9
 	@$(CXX) $(CXXFLAGS) $(CPPFLAGS)  -o $@ $^
ef39fb9d
 	@./$@
de34378f
 
8e934bd2
 .PHONY: test
ef39fb9d
 test: $(TESTS)
f4d80c59
 	@echo Tests Passing
55259c47
 
b5ea7efd
 .PHONY: install
4aeb68ec
 install: $(OBJS) $(INTEGRATION_OBJS)
184eb507
 ifeq ($(UNAME_S), Linux)
1410462b
 	$(CXX) -lpam -shared -Wl,-x -o $(DESTDIR)@PAM_MODULE_DIRECTORY@/$(MODULELIB) $(OBJS) $(INTEGRATION_OBJS)
184eb507
 else
 	@echo installation recipe not known for $(UNAME_S)
 endif
 
f6a9ff01
 .PHONY: format
 format:
210c0dc8
 	@./format.sh *.cc *.h
f6a9ff01