--- truecrypt/linux/cli/makefile 2018/04/24 16:43:12 1.1.1.1 +++ truecrypt/linux/cli/makefile 2018/04/24 16:45:57 1.1.1.4 @@ -1,9 +1,9 @@ -# TrueCrypt Linux Makefile +# TrueCrypt Linux CLI Makefile TC_COMMON := ../../Common TC_CRYPTO := ../../Crypto -CC := gcc +CC ?= gcc ifneq ($(MAKECMDGOALS),clean) -include ../Common/.platform @@ -19,9 +19,11 @@ CFLAGS += -D_cdecl="" -DBOOL=int -DTRUE= CFLAGS += $(TYPES) ifndef DEBUG +# Do not enable strict aliasing CFLAGS += -O2 -fno-strict-aliasing else CFLAGS += -ggdb +NO_STRIP := 1 endif KERNEL_OBJS_F := ../.kernel-objs @@ -48,18 +50,19 @@ OBJS += $(TC_CRYPTO)/Whirlpool.o OBJS += $(TC_COMMON)/Crc.o OBJS += $(TC_COMMON)/Crypto.o OBJS += $(TC_COMMON)/Endian.o +OBJS += $(TC_COMMON)/GfMul.o +OBJS += $(TC_COMMON)/Fat.o +OBJS += $(TC_COMMON)/Format.o OBJS += $(TC_COMMON)/Keyfiles.o OBJS += $(TC_COMMON)/Pkcs5.o +OBJS += $(TC_COMMON)/Random.o OBJS += $(TC_COMMON)/Volumes.o OBJS += $(TC_COMMON)/Tests.o OBJS += Cli.o %.o: %.c @echo Compiling $($@ + @$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -MMD -o $@ -c $< all: objclean truecrypt @echo Done. @@ -68,15 +71,13 @@ all: objclean truecrypt @$(CC) -o ../Common/platform $< @../Common/platform >../Common/.platform -ifneq ($(MAKECMDGOALS),clean) --include $(OBJS:.o=.dep) -endif +-include $(OBJS:.o=.d) truecrypt: $(OBJS) - @echo Linking truecrypt - @$(CC) -o truecrypt $(OBJS) -ifndef DEBUG - @strip truecrypt + @echo Linking $@ + @$(CC) -o $@ $(OBJS) +ifndef NO_STRIP + @strip $@ endif man: truecrypt.1 @@ -89,4 +90,4 @@ objclean: @>$(USER_OBJS_F) clean: - -rm -f truecrypt ${OBJS} *.dep $(TC_COMMON)/*.dep $(TC_CRYPTO)/*.dep ../Common/platform ../Common/.platform + -rm -f truecrypt ${OBJS} *.d $(TC_COMMON)/*.d $(TC_CRYPTO)/*.d ../Common/platform ../Common/.platform