git.fiddlerwoaroof.com
Browse code

checkpoint

Greg Wiley authored on 11/04/2017 17:28:22
Showing 1 changed files
... ...
@@ -1,23 +1,21 @@
1
-MODULEFLAGS = -fPIC -fno-stack-protector
2
-MODULEOBJS = dual_control.o logging.o token.o conversation.o
3
-TESTOBJS = $(patsubst %.o, t_%.o, $(MODULEOBJS))
1
+CXXFLAGS += -fPIC -fno-stack-protector
2
+CFLAGS += -fPIC -fno-stack-protector
3
+
4
+OBJS = logging.o conversation.o token.o dual_control.o
4 5
 HEADERS = logging.h test_support.h token.h
6
+
5 7
 MODULELIB = pam_dual_control.so
8
+
6 9
 UNAME_S := $(shell uname -s)
7 10
 
11
+
8 12
 .PHONY: all
9 13
 all: dual_control.a
10 14
 
11
-dual_control.a: $(MODULEOBJS)
15
+dual_control.a: $(OBJS)
12 16
 	ar rvs $@ $^
13 17
 	ranlib $@
14 18
 
15
-$(MODULEOBJS): %.o: %.c $(HEADERS)
16
-	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(MODULEFLAGS) $< -o $@
17
-
18
-$(TESTOBJS): t_%.o: %.c $(HEADERS)
19
-	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(MODULEFLAGS) -D UNIT_TEST $< -o $@
20
-
21 19
 .PHONY: clean
22 20
 clean:
23 21
 	@rm -f *.o *.a
... ...
@@ -27,14 +25,21 @@ clean:
27 25
 distclean: clean
28 26
 	@rm -f Makefile config.h
29 27
 
30
-dual_control_test: dual_control_test.c t_dual_control.o
31
-	$(CC) $(CFLAGS) $(CPPFLAGS) -lpam -o $@ $^
32 28
 
33
-logging_test: logging_test.c t_logging.o
34
-	$(CC) $(CFLAGS) $(CPPFLAGS) -lpam -o $@ $^
29
+t_%.o: %.c
30
+	$(CC) -c $(CPPFLAGS) $(CFLAGS) -D UNIT_TEST -o $@ $<
31
+
32
+t_%.o: %.cc
33
+	$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -D UNIT_TEST -o $@ $<
34
+
35
+dual_control_test: dual_control_test.o t_dual_control.o
36
+	$(CXX) $(CXXFLAGS) $(CPPLAGS)  -lpam -o $@ $^
37
+
38
+logging_test: logging_test.o t_logging.o
39
+	$(CXX) $(CXXFLAGS) $(CPPFLAGS) -lpam -o $@ $^
35 40
 
36
-token_test: token_test.c t_token.o
37
-	$(CC) $(CFLAGS) $(CPPFLAGS) -lpam -o $@ $^
41
+token_test: token_test.o t_token.o
42
+	$(CXX) $(CXXFLAGS) $(CPPFLAGS)  -lpam -o $@ $^
38 43
 
39 44
 .PHONY: test
40 45
 test: dual_control_test logging_test token_test
... ...
@@ -44,9 +49,9 @@ test: dual_control_test logging_test token_test
44 49
 	@echo all tests passed
45 50
 
46 51
 .PHONY: install
47
-install: $(MODULEOBJS)
52
+install: $(OBJS)
48 53
 ifeq ($(UNAME_S), Linux)
49
-	ld $(LDFLAGS) -x --shared -lpam -o $(DESTDIR)@PAM_MODULE_DIRECTORY@/$(MODULELIB) $(MODULEOBJS)
54
+	ld $(LDFLAGS) -x --shared -lpam -o $(DESTDIR)@PAM_MODULE_DIRECTORY@/$(MODULELIB) $(OBJS)
50 55
 else
51 56
 	@echo installation recipe not known for $(UNAME_S)
52 57
 endif