1Check the CC and CFLAGS lines in the makefile 2 3If your C library does not support the times(3) function, change the 4#define TIMES to 5#undef TIMES in speed.c 6If it does, check the HZ value for the times(3) function. 7If your system does not define CLK_TCK it will be assumed to 8be 100.0. 9 10If possible use gcc v 2.7.? 11Turn on the maximum optimising (normally '-O3 -fomit-frame-pointer' for gcc) 12In recent times, some system compilers give better performace. 13 14type 'make' 15 16run './destest' to check things are ok. 17run './rpw' to check the tty code for reading passwords works. 18run './speed' to see how fast those optimisations make the library run :-) 19run './des_opts' to determin the best compile time options. 20 21The output from des_opts should be put in the makefile options and des_enc.c 22should be rebuilt. For 64 bit computers, do not use the DES_PTR option. 23For the DEC Alpha, edit des.h and change DES_LONG to 'unsigned int' 24and then you can use the 'DES_PTR' option. 25 26The file options.txt has the options listed for best speed on quite a 27few systems. Look and the options (UNROLL, PTR, RISC2 etc) and then 28turn on the relevant option in the Makefile. 29 30There are some special Makefile targets that make life easier. 31make cc - standard cc build 32make gcc - standard gcc build 33make x86-elf - x86 assembler (elf), linux-elf. 34make x86-out - x86 assembler (a.out), FreeBSD 35make x86-solaris- x86 assembler 36make x86-bsdi - x86 assembler (a.out with primative assembler). 37 38If at all possible use the assembler (for Windows NT/95, use 39asm/win32.obj to link with). The x86 assembler is very very fast. 40 41A make install will by default install 42libdes.a in /usr/local/lib/libdes.a 43des in /usr/local/bin/des 44des_crypt.man in /usr/local/man/man3/des_crypt.3 45des.man in /usr/local/man/man1/des.1 46des.h in /usr/include/des.h 47 48des(1) should be compatible with sunOS's but I have been unable to 49test it. 50 51These routines should compile on MSDOS, most 32bit and 64bit version 52of Unix (BSD and SYSV) and VMS, without modification. 53The only problems should be #include files that are in the wrong places. 54 55These routines can be compiled under MSDOS. 56I have successfully encrypted files using des(1) under MSDOS and then 57decrypted the files on a SparcStation. 58I have been able to compile and test the routines with 59Microsoft C v 5.1 and Turbo C v 2.0. 60The code in this library is in no way optimised for the 16bit 61operation of MSDOS. 62 63When building for glibc, ignore all of the above and just unpack into 64glibc-1.??/des and then gmake as per normal. 65 66As a final note on performace. Certain CPUs like sparcs and Alpha often give 67a %10 speed difference depending on the link order. It is rather anoying 68when one program reports 'x' DES encrypts a second and another reports 69'x*0.9' the speed. 70