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