diff options
Diffstat (limited to 'src/Build/Include/Makefile.inc')
-rw-r--r-- | src/Build/Include/Makefile.inc | 46 |
1 files changed, 39 insertions, 7 deletions
diff --git a/src/Build/Include/Makefile.inc b/src/Build/Include/Makefile.inc index 9a38dcee..0f68df36 100644 --- a/src/Build/Include/Makefile.inc +++ b/src/Build/Include/Makefile.inc @@ -3,9 +3,9 @@ # Copyright (c) 2008-2012 TrueCrypt Developers Association and which is governed # by the TrueCrypt License 3.0. # # Modifications and additions to the original source code (contained in this file) -# and all other portions of this file are Copyright (c) 2013-2016 IDRIX +# and all other portions of this file are Copyright (c) 2013-2017 IDRIX # and are governed by the Apache License 2.0 the full text of which is # contained in the file License.txt included in VeraCrypt binary and source # code distribution packages. # @@ -13,27 +13,55 @@ $(NAME): $(NAME).a clean: @echo Cleaning $(NAME) - rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSEX) $(OBJS:.o=.d) *.gch + rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJSSSE41) $(OBJSSSSE3) $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) *.gch %.o: %.c @echo Compiling $(<F) $(CC) $(CFLAGS) -c $< -o $@ +%.o0: %.c + @echo Compiling $(<F) + $(CC) $(CFLAGS) -O0 -c $< -o $@ + +%.osse41: %.c + @echo Compiling $(<F) + $(CC) $(CFLAGS) -mssse3 -msse4.1 -c $< -o $@ + +%.oshani: %.c + @echo Compiling $(<F) + $(CC) $(CFLAGS) -mssse3 -msse4.1 -msha -c $< -o $@ + +%.ossse3: %.c + @echo Compiling $(<F) + $(CC) $(CFLAGS) -mssse3 -c $< -o $@ + %.o: %.cpp @echo Compiling $(<F) $(CXX) $(CXXFLAGS) -c $< -o $@ +%.osse41: %.cpp + @echo Compiling $(<F) + $(CXX) $(CXXFLAGS) -mssse3 -msse4.1 -c $< -o $@ + +%.oshani: %.cpp + @echo Compiling $(<F) + $(CXX) $(CXXFLAGS) -mssse3 -msse4.1 -msha -c $< -o $@ + +%.ossse3: %.cpp + @echo Compiling $(<F) + $(CXX) $(CXXFLAGS) -mssse3 -c $< -o $@ + %.o: %.S @echo Compiling $(<F) $(CC) $(CFLAGS) -c $< -o $@ ifeq "$(PLATFORM)" "MacOSX" %.o: %.asm @echo Assembling $(<F) - $(AS) $(ASFLAGS) -f macho32 -o $@.32 $< - $(AS) $(ASFLAGS) -f macho64 -o $@.64 $< + $(AS) $(ASFLAGS32) -f macho32 -o $@.32 $< + $(AS) $(ASFLAGS64) -f macho64 -o $@.64 $< lipo -create $@.32 $@.64 -output $@ else %.o: %.asm @echo Assembling $(<F) @@ -46,9 +74,13 @@ endif $(CXX) $(CXXFLAGS) -g0 -c $< || (rm -f $(<F).gch && exit 1) # Embedded files +ifeq "$(PLATFORM)" "OpenBSD" +OD_BIN := ggod -v -t u1 -A n +else OD_BIN := od -v -t u1 -A n +endif TR_SED_BIN := tr '\n' ' ' | tr -s ' ' ',' | sed -e 's/^,//g' -e 's/,$$/n/' | tr 'n' '\n' %.xml.h: %.xml @echo Converting $(<F) @@ -63,11 +95,11 @@ TR_SED_BIN := tr '\n' ' ' | tr -s ' ' ',' | sed -e 's/^,//g' -e 's/,$$/n/' | tr $(OD_BIN) $< | $(TR_SED_BIN) >$@ # Dependencies --include $(OBJS:.o=.d) $(OBJSEX:.oo=.d) +-include $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) $(OBJSHANI:.oshani=.d) $(OBJSSSE41:.osse41=.d) $(OBJSSSSE3:.ossse3=.d) -$(NAME).a: $(OBJS) $(OBJSEX) +$(NAME).a: $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJSSSE41) $(OBJSSSSE3) @echo Updating library $@ - $(AR) $(AFLAGS) -rcu $@ $(OBJS) $(OBJSEX) + $(AR) $(AFLAGS) -rc $@ $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJSHANI) $(OBJSSSE41) $(OBJSSSSE3) $(RANLIB) $@ |