|
6 | 6 |
|
7 | 7 | all: list HIDTest U2FTest |
8 | 8 |
|
| 9 | +CC ?= gcc |
| 10 | +CXX ?= g++ |
| 11 | + |
9 | 12 | UNAME := $(shell uname) |
10 | 13 |
|
11 | 14 | ifeq ($(UNAME), Linux) |
12 | 15 |
|
13 | | -CFLAGS=-Ihidapi/hidapi -D__OS_LINUX -Icore/include |
14 | | -LDFLAGS=-lrt -ludev |
| 16 | +CPPFLAGS+=-Ihidapi/hidapi -D__OS_LINUX -Icore/include |
| 17 | +LDLIBS+=-lrt -ludev |
15 | 18 | HIDAPI=hid.o |
16 | 19 | hid.o: hidapi/linux/hid.c |
17 | | - gcc -c $(CFLAGS) -o hid.o hidapi/linux/hid.c |
| 20 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -o hid.o hidapi/linux/hid.c |
18 | 21 |
|
19 | 22 | endif # Linux |
20 | 23 |
|
21 | 24 | ifeq ($(UNAME), Darwin) |
22 | 25 |
|
23 | | -CFLAGS=-Ihidapi/hidapi -Icore/include -D__OS_MAC |
24 | | -LDFLAGS=-framework IOKit -framework CoreFoundation |
| 26 | +CPPFLAGS+=-Ihidapi/hidapi -Icore/include -D__OS_MAC |
| 27 | +LDLIBS+=-framework IOKit -framework CoreFoundation |
25 | 28 | HIDAPI=hid.o |
26 | 29 | hid.o: hidapi/mac/hid.c |
27 | | - gcc -c $(CFLAGS) -o hid.o hidapi/mac/hid.c |
| 30 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -o hid.o hidapi/mac/hid.c |
28 | 31 |
|
29 | 32 | endif # Darwin |
30 | 33 |
|
31 | 34 | # Crypto code. |
32 | 35 | LIBMINCRYPT=dsa_sig.o p256.o p256_ec.o p256_ecdsa.o sha256.o |
33 | 36 |
|
34 | 37 | dsa_sig.o: core/libmincrypt/dsa_sig.c |
35 | | - gcc -c $(CFLAGS) -Wall $^ |
| 38 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -Wall $^ |
36 | 39 |
|
37 | 40 | p256.o: core/libmincrypt/p256.c |
38 | | - gcc -c $(CFLAGS) -Wall $^ |
| 41 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -Wall $^ |
39 | 42 |
|
40 | 43 | p256_ec.o: core/libmincrypt/p256_ec.c |
41 | | - gcc -c $(CFLAGS) -Wall $^ |
| 44 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -Wall $^ |
42 | 45 |
|
43 | 46 | p256_ecdsa.o: core/libmincrypt/p256_ecdsa.c |
44 | | - gcc -c $(CFLAGS) -Wall $^ |
| 47 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -Wall $^ |
45 | 48 |
|
46 | 49 | sha256.o: core/libmincrypt/sha256.c |
47 | | - gcc -c $(CFLAGS) -Wall $^ |
| 50 | + $(CC) -c $(CPPFLAGS) $(CFLAGS) -Wall $^ |
48 | 51 |
|
49 | 52 | # utility tools. |
50 | 53 | u2f_util.o: u2f_util.cc u2f_util.h u2f.h u2f_hid.h |
51 | | - g++ -c $(CFLAGS) -Wall -o u2f_util.o u2f_util.cc |
| 54 | + $(CXX) -c $(CPPFLAGS) $(CFLAGS) -Wall -o u2f_util.o u2f_util.cc |
52 | 55 |
|
53 | 56 | # simple hidapi tool to list devices to see paths. |
54 | 57 | list: list.c $(HIDAPI) |
55 | | - gcc $(CFLAGS) -Wall -o $@ $^ $(LDFLAGS) |
| 58 | + $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -Wall -o $@ $^ $(LDLIBS) |
56 | 59 |
|
57 | 60 | # Low-level HID framing test. |
58 | 61 | HIDTest: HIDTest.cc u2f_util.o $(HIDAPI) |
59 | | - g++ $(CFLAGS) -Wall -o $@ $^ $(LDFLAGS) |
| 62 | + $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -Wall -o $@ $^ $(LDLIBS) |
60 | 63 |
|
61 | 64 | # U2F messaging crypto test. |
62 | 65 | U2FTest: U2FTest.cc u2f_util.o $(HIDAPI) $(LIBMINCRYPT) |
63 | | - g++ $(CFLAGS) -Wall -o $@ $^ $(LDFLAGS) |
| 66 | + $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -Wall -o $@ $^ $(LDLIBS) |
0 commit comments