|
|
1.1 root 1: # TrueCrypt Linux Makefile
2:
3: TC_COMMON := ../../Common
4: TC_CRYPTO := ../../Crypto
5:
6: CC := gcc
7:
8: ifneq ($(MAKECMDGOALS),clean)
9: -include ../Common/.platform
10: endif
11:
12: ifdef NO_WARNINGS
13: CFLAGS := -w
14: else
15: CFLAGS := -W
16: endif
17: CFLAGS += -I../../Crypto -I../../Common -I../Kernel
18: CFLAGS += -D_cdecl="" -DBOOL=int -DTRUE=1 -DFALSE=0 -DMAX_PATH=260
19: CFLAGS += $(TYPES)
20:
21: ifndef DEBUG
22: CFLAGS += -O2 -fno-strict-aliasing
23: else
24: CFLAGS += -ggdb
25: endif
26:
27: KERNEL_OBJS_F := ../.kernel-objs
28: USER_OBJS_F := ../.user-objs
29:
30: OBJS := $(TC_CRYPTO)/Aescrypt.o
31: OBJS += $(TC_CRYPTO)/Aeskey.o
32: OBJS += $(TC_CRYPTO)/Aestab.o
33: OBJS += $(TC_CRYPTO)/Bf_ecb.o
34: OBJS += $(TC_CRYPTO)/Bf_enc.o
35: OBJS += $(TC_CRYPTO)/Bf_skey.o
36: OBJS += $(TC_CRYPTO)/C_ecb.o
37: OBJS += $(TC_CRYPTO)/C_enc.o
38: OBJS += $(TC_CRYPTO)/C_skey.o
39: OBJS += $(TC_CRYPTO)/Des.o
40: OBJS += $(TC_CRYPTO)/Des_enc.o
41: OBJS += $(TC_CRYPTO)/Ecb3_enc.o
42: OBJS += $(TC_CRYPTO)/Rmd160.o
43: OBJS += $(TC_CRYPTO)/Serpent.o
44: OBJS += $(TC_CRYPTO)/Set_key.o
45: OBJS += $(TC_CRYPTO)/Sha1.o
46: OBJS += $(TC_CRYPTO)/Twofish.o
47: OBJS += $(TC_CRYPTO)/Whirlpool.o
48: OBJS += $(TC_COMMON)/Crc.o
49: OBJS += $(TC_COMMON)/Crypto.o
50: OBJS += $(TC_COMMON)/Endian.o
51: OBJS += $(TC_COMMON)/Keyfiles.o
52: OBJS += $(TC_COMMON)/Pkcs5.o
53: OBJS += $(TC_COMMON)/Volumes.o
54: OBJS += $(TC_COMMON)/Tests.o
55: OBJS += Cli.o
56:
57: %.o: %.c
58: @echo Compiling $(<F)
59: @$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -o $@ -c $<
60:
61: %.dep: %.c
62: @$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -M -MT $*.o $< >$@
63:
64: all: objclean truecrypt
65: @echo Done.
66:
67: ../Common/.platform: ../Common/Platform.c
68: @$(CC) -o ../Common/platform $<
69: @../Common/platform >../Common/.platform
70:
71: ifneq ($(MAKECMDGOALS),clean)
72: -include $(OBJS:.o=.dep)
73: endif
74:
75: truecrypt: $(OBJS)
76: @echo Linking truecrypt
77: @$(CC) -o truecrypt $(OBJS)
78: ifndef DEBUG
79: @strip truecrypt
80: endif
81:
82: man: truecrypt.1
83:
84: truecrypt.1: objclean truecrypt
85: help2man -N -i Man/help2man.inc ./truecrypt >Man/truecrypt.1
86:
87: objclean:
88: @if [ -f $(KERNEL_OBJS_F) ]; then rm -f ${OBJS} $(KERNEL_OBJS_F); fi
89: @>$(USER_OBJS_F)
90:
91: clean:
92: -rm -f truecrypt ${OBJS} *.dep $(TC_COMMON)/*.dep $(TC_CRYPTO)/*.dep ../Common/platform ../Common/.platform
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.