|
|
1.1.1.5 root 1: #
2: # Copyright (c) TrueCrypt Foundation. All rights reserved.
3: #
1.1.1.6 ! root 4: # Covered by the TrueCrypt License 2.3 the full text of which is contained
1.1.1.5 root 5: # in the file License.txt included in TrueCrypt binary and source code
6: # distribution packages.
7: #
1.1 root 8:
1.1.1.6 ! root 9: KERNEL_SRC ?= /usr/src/linux
! 10: KERNEL_BUILD ?= $(KERNEL_SRC)
1.1 root 11:
12: TC_COMMON := ../../Common
13: TC_CRYPTO := ../../Crypto
14:
15: ifneq ($(MAKECMDGOALS),clean)
16: ifdef TC_BASE
17: -include $(TC_BASE)/Linux/Common/.platform
18: endif
19: endif
20:
21: ifdef NO_WARNINGS
22: EXTRA_CFLAGS += -w
23: else
24: EXTRA_CFLAGS += -Wno-strict-prototypes
25: endif
1.1.1.4 root 26: # Do not enable strict aliasing
27: EXTRA_CFLAGS += -fno-strict-aliasing
1.1 root 28: EXTRA_CFLAGS += $(TYPES)
1.1.1.5 root 29: EXTRA_CFLAGS += -DBOOL=int -DTRUE=1 -DFALSE=0
1.1 root 30: EXTRA_CFLAGS += -DLINUX_DRIVER
31: EXTRA_CFLAGS += -I$(KERNEL_SRC)/drivers/md
32: EXTRA_CFLAGS += -I$(TC_BASE)/Crypto
33: EXTRA_CFLAGS += -I$(TC_BASE)/Common
1.1.1.5 root 34: EXTRA_CFLAGS += -I$(TC_BASE)
1.1 root 35:
36: OBJS := $(TC_CRYPTO)/Aescrypt.o
37: OBJS += $(TC_CRYPTO)/Aeskey.o
38: OBJS += $(TC_CRYPTO)/Aestab.o
39: OBJS += $(TC_CRYPTO)/Bf_ecb.o
40: OBJS += $(TC_CRYPTO)/Bf_enc.o
41: OBJS += $(TC_CRYPTO)/Bf_skey.o
42: OBJS += $(TC_CRYPTO)/C_ecb.o
43: OBJS += $(TC_CRYPTO)/C_enc.o
44: OBJS += $(TC_CRYPTO)/C_skey.o
45: OBJS += $(TC_CRYPTO)/Des.o
46: OBJS += $(TC_CRYPTO)/Des_enc.o
47: OBJS += $(TC_CRYPTO)/Ecb3_enc.o
48: OBJS += $(TC_CRYPTO)/Serpent.o
49: OBJS += $(TC_CRYPTO)/Set_key.o
50: OBJS += $(TC_CRYPTO)/Twofish.o
51: OBJS += $(TC_COMMON)/Crc.o
52: OBJS += $(TC_COMMON)/Crypto.o
53: OBJS += $(TC_COMMON)/Endian.o
1.1.1.2 root 54: OBJS += $(TC_COMMON)/GfMul.o
1.1 root 55: OBJS += $(TC_COMMON)/Tests.o
56: OBJS += Dm-target.o
57:
58: truecrypt-objs := $(OBJS)
59: obj-m := truecrypt.o
60:
1.1.1.5 root 61: USER_OBJS_PRESENT := ../.user-objs
62: USER_OBJS_CLEAN := ../.kernel-objs
1.1 root 63:
1.1.1.5 root 64: .PHONY: clean install truecrypt
65:
66: truecrypt: $(USER_OBJS_CLEAN) platform
1.1.1.6 ! root 67: @$(MAKE) TC_BASE=$(PWD)/../.. -C $(KERNEL_BUILD) SUBDIRS=$(PWD) M=$(PWD) modules
1.1 root 68:
1.1.1.3 root 69: CMN := ../../Linux/Common
70:
71: platform: $(CMN)/.platform
72:
73: $(CMN)/.platform: $(CMN)/Platform.c
74: @$(CC) -o $(CMN)/platform $<
75: @$(CMN)/platform >$(CMN)/.platform
1.1 root 76:
1.1.1.5 root 77: $(USER_OBJS_CLEAN):
78: @rm -f $(OBJS) $(USER_OBJS_PRESENT)
79: @>$(USER_OBJS_CLEAN)
1.1 root 80:
81: clean:
82: -rm -f $(OBJS) ../Common/.platform ../Common/platform
1.1.1.6 ! root 83: $(MAKE) -C $(KERNEL_BUILD) SUBDIRS=$(PWD) M=$(PWD) clean
1.1 root 84:
85: install: truecrypt
1.1.1.6 ! root 86: $(MAKE) -C $(KERNEL_BUILD) SUBDIRS=$(PWD) M=$(PWD) modules_install
1.1 root 87: depmod -a
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.