Annotation of truecrypt/driver/makefile, revision 1.1.1.5

1.1       root        1: #
1.1.1.3   root        2: # TrueCrypt Windows driver Makefile
1.1       root        3: #
                      4: 
1.1.1.5 ! root        5: # Windows Driver Development Kit base path
        !             6: DDK = C:\WINDDK\3790.1830
        !             7: 
        !             8: !IFDEF WINDDK_3790_1830
        !             9: DDK = $(WINDDK_3790_1830)
        !            10: !ENDIF
1.1       root       11: 
                     12: BASENAME = truecrypt
1.1.1.3   root       13: OS = wxp
                     14: ARCH = i386
                     15: MACHINE = IX86
                     16: DEFS = -D_X86_ -Di386
                     17: CC = $(DDK)\bin\x86\cl.exe
                     18: LD = $(DDK)\bin\x86\link.exe
                     19: 
                     20: !IFDEF AMD64
                     21: 
                     22: BASENAME = truecrypt-x64
                     23: OS = wnet
                     24: ARCH = amd64
                     25: MACHINE = AMD64
                     26: DEFS = -DAMD64 -D_AMD64_
                     27: CC = $(DDK)\bin\win64\x86\amd64\cl.exe
                     28: LD = $(DDK)\bin\win64\x86\amd64\link.exe
                     29:  
                     30: !ENDIF
1.1       root       31: 
                     32: 
1.1.1.5 ! root       33: CFLAGS = -nologo $(CFLAGS) \
1.1.1.3   root       34: -EHs-c- -Zp8 -GS -Gy -cbstring -Gz -Gm- \
                     35: -GR- -GF -W3 -Wp64 -FI$(DDK)\inc\$(OS)\warning.h \
                     36: -I$(DDK)\inc\$(OS) -I$(DDK)\inc\ddk\$(OS) \
                     37: -I$(DDK)\inc\ddk\wdm\$(OS) -I$(DDK)\inc\crt \
1.1.1.5 ! root       38: -I..\..\Common -I..\..\Crypto -I..\..
1.1       root       39: 
1.1.1.3   root       40: DEFS = $(DEFS) -DNT4_DRIVER -DSTD_CALL -DCONDITION_HANDLING=1 \
1.1       root       41: -DNT_UP=1 -DNT_INST=0 -DWIN32=100 -D_NT1X_=100 \
1.1.1.3   root       42: -DWINNT=1 -D_WIN32_WINNT=0x0400 -DWIN32_LEAN_AND_MEAN=1 -DDEVL=1 \
                     43: -D_UNICODE -DLITTLE_ENDIAN -DFPO=0 -D_DLL=1 -D_IDWBUILD 
1.1       root       44: 
1.1.1.3   root       45: LINK_OPTS = -nologo -machine:$(MACHINE) \
                     46: -MERGE:_PAGE=PAGE -MERGE:_TEXT=.text -SECTION:INIT,d \
1.1       root       47: -INCREMENTAL:NO -FORCE:MULTIPLE -RELEASE -FULLBUILD \
                     48: -IGNORE:4001,4037,4039,4065,4070,4078,4087,4089,4096 -NODEFAULTLIB \
                     49: -MERGE:.rdata=.text -MAP:$(BASENAME).map -driver -align:0x20 \
1.1.1.3   root       50: -subsystem:native -base:0x10000 -entry:DriverEntry
1.1       root       51: 
1.1.1.5 ! root       52: OBJECTS = Aescrypt.obj Aeskey.obj Aestab.obj Bf_ecb.obj Bf_enc.obj Bf_skey.obj \
        !            53: C_ecb.obj C_enc.obj C_skey.obj Des.obj Des_enc.obj Ecb3_enc.obj Rmd160.obj \
        !            54: Serpent.obj Set_key.obj Sha1.obj Twofish.obj Whirlpool.obj \
        !            55: Ntdriver.obj Ntvol.obj \
        !            56: Cache.obj Crc.obj Crypto.obj Endian.obj GfMul.obj Pkcs5.obj Volumes.obj \
1.1.1.4   root       57: Tests.obj Driver.res
1.1       root       58: 
1.1.1.3   root       59: LIBS = $(DDK)\lib\$(OS)\$(ARCH)\ntoskrnl.lib \
                     60: $(DDK)\lib\$(OS)\$(ARCH)\hal.lib \
                     61: $(DDK)\lib\$(OS)\$(ARCH)\bufferoverflowK.lib
1.1       root       62: 
                     63: 
1.1.1.3   root       64: !IFDEF RELEASE
1.1       root       65: 
1.1.1.3   root       66: # Release
                     67: DEFS = $(DEFS) -DNO_DISK_ACCESS -DNDEBUG 
                     68: CFLAGS = $(CFLAGS) -Gs- -Oxs -Oy -w34244 -w34267 -w34189 -FAcs
                     69: COPYRELEASE = copy $(BASENAME).sys "..\..\Release\Setup files"
1.1       root       70: 
1.1.1.3   root       71: !ELSE
1.1       root       72: 
1.1.1.3   root       73: # Debug
                     74: CFLAGS = $(CFLAGS) -Gs -Z7 -Od -Oi -Oy- 
                     75: DEFS = $(DEFS) -DDBG=1 -D_DEBUG -DDEBUG -DRDRDBG -DSRVDBG -DDBG_MESSAGES=1
                     76: LINK_OPTS = -debug $(LINK_OPTS)
                     77: COPYRELEASE =
1.1       root       78: 
                     79: !ENDIF
                     80: 
1.1.1.3   root       81: CFLAGS = $(CFLAGS) $(DEFS)
1.1       root       82: 
                     83: 
1.1.1.3   root       84: all: $(BASENAME).sys
1.1.1.5 ! root       85:        
1.1       root       86: {..}.c{}.obj :
1.1.1.3   root       87:        @$(CC) -c $(CFLAGS) $<
1.1       root       88: 
1.1.1.3   root       89: {..\..\Common}.c{}.obj :
                     90:        @$(CC) -c $(CFLAGS) $<
1.1       root       91: 
1.1.1.3   root       92: {..\..\Crypto}.c{}.obj :
                     93:        @$(CC) -c $(CFLAGS) $<
                     94:                
                     95: {..}.rc{}.res :
1.1.1.5 ! root       96:        @echo Driver.rc
        !            97:        @rc -r -fo Driver.res $< 
1.1       root       98: 
1.1.1.3   root       99: $(BASENAME).sys : $(OBJECTS) $(LIBS)
1.1.1.5 ! root      100:        @echo Linking...
        !           101:        @echo $(BASENAME).sys
        !           102:        @$(LD) $(LINK_OPTS) $(OBJECTS) $(LIBS) -out:$(BASENAME).sys
        !           103:        @$(COPYRELEASE)

unix.superglobalmegacorp.com

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