Annotation of truecrypt/boot/windows/makefile, revision 1.1.1.3

1.1       root        1: #
                      2: # Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
                      3: #
                      4: # Governed by the TrueCrypt License 2.4 the full text of which is contained
                      5: # in the file License.txt included in TrueCrypt binary and source code
                      6: # distribution packages.
                      7: #
                      8: 
                      9: PROJ = BootLoader
                     10: .SILENT:
                     11: 
                     12: !ifndef MSVC16_ROOT
                     13: !error Environment variable MSVC16_ROOT must point to the installation directory of MS Visual C++ 1.5
                     14: !endif
                     15: 
                     16: ENVPATH = $(PATH)
                     17: 
                     18: CPP = $(MSVC16_ROOT)\bin\cl.exe
                     19: LD = $(MSVC16_ROOT)\bin\link.exe
                     20: 
                     21: AFLAGS = /nologo /AT /omf
                     22: 
                     23: CPPFLAGS = /nologo /W2 /Fc /I "$(MSVC16_ROOT)\Include" /I"..\..\.." /I"..\..\..\Common" /I"..\..\..\Crypto"
                     24: CPPFLAGS = $(CPPFLAGS) /D __int8=char /D __int16=int /D __int32=long /D BOOL=__int32 /D FALSE=0 /D TRUE=1
                     25: CPPFLAGS = $(CPPFLAGS) /D LITTLE_ENDIAN=1234 /D BYTE_ORDER=1234 /D TC_WINDOWS_BOOT /D TC_MINIMIZE_CODE_SIZE /D TC_NO_COMPILER_INT64
                     26: CPPFLAGS = $(CPPFLAGS) /D malloc=malloc_NA
                     27: 
                     28: LFLAGS = /NOLOGO /ONERROR:NOEXE /NOI /BATCH
                     29: 
                     30: 
                     31: !ifdef DEBUG
                     32: 
                     33: OBJDIR = Debug
                     34: OUTDIR = $(OBJDIR)
                     35: TARGETEXT = exe
                     36: CPPFLAGS = $(CPPFLAGS) /AM /Zl /G2 /D _DEBUG /D DEBUG /Od /Z7 /D_DOS
                     37: LFLAGS = $(LFLAGS) /CO /STACK:32768
                     38: OBJS =
                     39: LIBS = mlibce
                     40: PROJDIR = ..
                     41: 
                     42: !else
                     43: 
                     44: OBJDIR = Release
1.1.1.3 ! root       45: 
        !            46: !ifdef SINGLE_CIPHER
        !            47: OBJDIR = $(OBJDIR)_$(SINGLE_CIPHER)
        !            48: CPPFLAGS = $(CPPFLAGS) /D TC_WINDOWS_BOOT_SINGLE_CIPHER_MODE /D TC_WINDOWS_BOOT_$(SINGLE_CIPHER)
        !            49: !endif
        !            50: 
1.1       root       51: OUTDIR = $(OBJDIR)
                     52: TARGETEXT = com
1.1.1.3 ! root       53: TARGETS = $(OUTDIR)\BootDefs.i $(OUTDIR)\BootSector.bin $(OUTDIR)\Decompressor.com
1.1       root       54: CPPFLAGS = $(CPPFLAGS) /AT /Zl /f- /G3 /Oe /Os /Ob1 /OV0 /Gs /Gf /Gy /D NDEBUG
                     55: LFLAGS = $(LFLAGS) /NOD /NOE /TINY
                     56: OBJS = $(OUTDIR)\BootCrt.obj
                     57: LIBS = slibce
                     58: 
                     59: !endif
                     60: 
1.1.1.3 ! root       61: !if 1
        !            62: SRCDIR = ..
        !            63: !else
        !            64: SRCDIR = $(MAKEDIR)
        !            65: !endif
1.1       root       66: 
                     67: TARGETS = $(TARGETS) $(OUTDIR)\$(PROJ).$(TARGETEXT)
                     68: 
                     69: OBJS = $(OBJS) $(OUTDIR)\BootConfig.obj
                     70: OBJS = $(OBJS) $(OUTDIR)\BootConsoleIo.obj
                     71: OBJS = $(OBJS) $(OUTDIR)\BootDebug.obj
                     72: OBJS = $(OBJS) $(OUTDIR)\BootDiskIo.obj
                     73: OBJS = $(OBJS) $(OUTDIR)\BootEncryptedIo.obj
                     74: OBJS = $(OBJS) $(OUTDIR)\BootMain.obj
1.1.1.2   root       75: OBJS = $(OBJS) $(OUTDIR)\BootMemory.obj
1.1       root       76: OBJS = $(OBJS) $(OUTDIR)\IntFilter.obj
                     77: OBJS = $(OBJS) $(OUTDIR)\Platform.obj
                     78: 
                     79: OBJS = $(OBJS) $(OUTDIR)\Crc.obj
                     80: OBJS = $(OBJS) $(OUTDIR)\Crypto.obj
                     81: OBJS = $(OBJS) $(OUTDIR)\Endian.obj
                     82: OBJS = $(OBJS) $(OUTDIR)\Pkcs5.obj
                     83: OBJS = $(OBJS) $(OUTDIR)\Volumes.obj
                     84: OBJS = $(OBJS) $(OUTDIR)\Xts.obj
                     85: 
1.1.1.3 ! root       86: OBJS = $(OBJS) $(OUTDIR)\Rmd160.obj
        !            87: 
        !            88: !if !DEFINED (SINGLE_CIPHER)
1.1       root       89: OBJS = $(OBJS) $(OUTDIR)\AesSmall.obj
1.1.1.3 ! root       90: !else if "$(SINGLE_CIPHER)" == "AES"
        !            91: OBJS = $(OBJS) $(OUTDIR)\AesSmall_x86.obj
        !            92: OBJS = $(OBJS) $(OUTDIR)\Aestab.obj
        !            93: !endif
        !            94: 
        !            95: !if !DEFINED (SINGLE_CIPHER) || "$(SINGLE_CIPHER)" == "SERPENT"
1.1       root       96: OBJS = $(OBJS) $(OUTDIR)\Serpent.obj
1.1.1.3 ! root       97: !endif
        !            98: 
        !            99: !if !DEFINED (SINGLE_CIPHER) || "$(SINGLE_CIPHER)" == "TWOFISH"
1.1       root      100: OBJS = $(OBJS) $(OUTDIR)\Twofish.obj
1.1.1.3 ! root      101: !endif
1.1       root      102: 
                    103: 
                    104: all: env $(TARGETS)
                    105: 
                    106: env:
                    107:        set INCLUDE=.
                    108:        set LIB=.
                    109:        set LIBPATH=.
                    110:        
                    111: clean:
                    112:        -del /q /s $(OBJDIR) >NUL:
                    113: 
                    114: 
                    115: .asm{$(OUTDIR)}.obj:
                    116:        cd $(OBJDIR)
1.1.1.3 ! root      117:        $(AS) $(AFLAGS) /c "$(SRCDIR)\$<"
        !           118:        cd ..
        !           119: 
        !           120: {..\..\Crypto}.asm{$(OUTDIR)}.obj:
        !           121:        cd $(OBJDIR)
        !           122:        echo $(<F)
        !           123:        nasm.exe -Xvc -f obj -O3 "$(SRCDIR)\$<" -o "$(<B).obj" -l "$(<B).lst"
1.1       root      124:        cd ..
                    125: 
                    126: {..\..\Crypto}.c{$(OUTDIR)}.obj:
                    127:        cd $(OBJDIR)
                    128:        set PATH=.
1.1.1.3 ! root      129:        $(CPP) $(CPPFLAGS) /c "$(SRCDIR)\$<"
1.1       root      130:        set PATH=$(ENVPATH)
                    131:        cd ..
                    132:        
                    133: {..\..\Common}.c{$(OUTDIR)}.obj:
                    134:        cd $(OBJDIR)
                    135:        set PATH=.
1.1.1.3 ! root      136:        $(CPP) $(CPPFLAGS) /c "$(SRCDIR)\$<"
1.1       root      137:        set PATH=$(ENVPATH)
                    138:        cd ..
1.1.1.3 ! root      139: 
        !           140: .c{$(OUTDIR)}.obj:
        !           141:        cd $(OBJDIR)
        !           142:        set PATH=.
        !           143:        $(CPP) $(CPPFLAGS) /c "$(SRCDIR)\$<"
        !           144:        set PATH=$(ENVPATH)
        !           145:        cd ..
        !           146:                        
1.1       root      147: .cpp{$(OUTDIR)}.obj:
                    148:        cd $(OBJDIR)
                    149:        set PATH=.
1.1.1.3 ! root      150:        $(CPP) $(CPPFLAGS) /c "$(SRCDIR)\$<"
1.1       root      151:        set PATH=$(ENVPATH)
                    152:        cd ..
                    153: 
                    154: $(OUTDIR)\BootDefs.i: BootDefs.h
                    155:        cd $(OBJDIR)
                    156:        set PATH=.
1.1.1.3 ! root      157:        $(CPP) $(CPPFLAGS) /D TC_ASM_PREPROCESS /P /EP "$(SRCDIR)\BootDefs.h"
1.1       root      158:        set PATH=$(ENVPATH)
                    159:        cd ..
                    160:        
                    161: $(OUTDIR)\BootSector.bin: $(OUTDIR)\BootSector.obj
                    162:        cd $(OBJDIR)
                    163:        $(LD) $(LFLAGS) BootSector.obj,BootSector.bin,,,, >NUL:
                    164:        -dd.exe conv=notrunc bs=512 conv=notrunc if=BootSector.bin of=$(PROJ).flp 2>NUL:
                    165:        cd ..
                    166: 
1.1.1.3 ! root      167: $(OUTDIR)\Decompressor.com: $(OUTDIR)\BootCrt.obj $(OUTDIR)\Decompressor.obj
        !           168:        cd $(OBJDIR)
        !           169:        $(LD) $(LFLAGS) BootCrt.obj Decompressor.obj,Decompressor.com,Decompressor.map,$(MSVC16_ROOT)\lib\+slibce,,
        !           170:        -dd.exe conv=notrunc,sync bs=512 seek=1 if=Decompressor.com of=$(PROJ).flp 2>NUL:
        !           171:        cd ..
1.1       root      172: 
                    173: $(OUTDIR)\$(PROJ).$(TARGETEXT): $(OBJS)
                    174:        @echo Linking...
                    175:        cd $(OBJDIR)
                    176:        
                    177:        echo >NUL: @<<$(PROJ).crf2
1.1.1.3 ! root      178: 
1.1       root      179: $(PROJ).$(TARGETEXT)
                    180: $(PROJ).map
                    181: $(MSVC16_ROOT)\lib\+
                    182: $(LIBS)
                    183: ;
                    184: <<
                    185:        del $(PROJ).crf >NUL: 2>NUL:
                    186:        for %F in ($(**F)) do @echo %F + >>$(PROJ).crf
                    187:        type $(PROJ).crf2 >>$(PROJ).crf
                    188:        
                    189:        $(LD) $(LFLAGS) @$(PROJ).crf
                    190:        del $(PROJ).crf $(PROJ).crf2
                    191: 
                    192: !ifndef DEBUG
1.1.1.3 ! root      193:        gzip.exe -c -n --best $(PROJ).$(TARGETEXT) >$(PROJ).$(TARGETEXT).gz
        !           194:        -dd.exe conv=notrunc,sync bs=512 seek=5 if=$(PROJ).$(TARGETEXT).gz of=$(PROJ).flp 2>NUL:
1.1       root      195: !endif
                    196:        cd ..

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.