libzahl

big integer library
git clone git://git.suckless.org/libzahl
Log | Files | Refs | README | LICENSE

INSTALL (1625B)


      1 Configure libzahl
      2 =================
      3 
      4 libzahl is configured by editing config.mk. You may choose
      5 to make a copy of config.mk, and reference the copy with
      6 CONFIG when running make. For example:
      7     cp config.mk my-config.mk
      8     # edit my-config.mk
      9     make CONFIG=my-config.mk
     10 
     11 Unless you are compiling for Linux you may have to add
     12     -D'FAST_RANDOM_PATHNAME="<path to a non-blocking random number generator>"'
     13 (/dev/urandom on Linux) and
     14     -D'SECURE_RANDOM_PATHNAME="<path to a blocking random number generator>"'
     15 (/dev/random on Linux) to CPPFLAGS.
     16 
     17 If you are using a C standard library where the higher bits have higher
     18 entropy in the lower bits in rand(3) (as historically was the case),
     19 remove -DGOOD_RAND from CPPFLAGS.
     20 
     21 If you don't care if your program crashes on failure, you can add
     22 -DZAHL_UNSAFE to CPPFLAGS. This will give you a marginal performance
     23 boost. You should also add, preferably,
     24     #define ZAHL_UNSAFE
     25 before including <zahl.h> in your program if you are doing this.
     26 
     27 If your CPU does not support indirect jumps (computed jumps) you should
     28 add -DZAHL_ISA_MISSING_INDIRECT_JUMP to CPPFLAGS, and preferably add
     29     #define ZAHL_ISA_MISSING_INDIRECT_JUMP
     30 before including <zahl.h> in your program.
     31 
     32 libzahl contains some (very little) assembly code. In the event
     33 that the used instructions are not supported on your machine, please
     34 report it, and in the meanwhile add -DZAHL_NO_ASM to CPPFLAGS. You
     35 may also have to do this if you are compiling with a compiler that
     36 does not support extended inline assembly. You may also have to add
     37     #define ZAHL_NO_ASM
     38 to your program before includeing <zahl.h>