tlib9: import frand function from Plan 9 - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit a8a775abbe711d4442004264cac4cc84aed9cf6a
 (DIR) parent bb044732c6122cc3ba7c7bc7a44bc2ea762d31b1
 (HTM) Author: David du Colombier <0intro@gmail.com>
       Date:   Fri,  1 Sep 2017 22:51:14 +0200
       
       lib9: import frand function from Plan 9
       
       Fixes #15.
       
       Diffstat:
         A src/lib9/frand.c                    |      17 +++++++++++++++++
         M src/lib9/mkfile                     |       1 +
       
       2 files changed, 18 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/src/lib9/frand.c b/src/lib9/frand.c
       t@@ -0,0 +1,17 @@
       +#include        <u.h>
       +#include        <libc.h>
       +
       +#define        MASK        0x7fffffffL
       +#define        NORM        (1.0/(1.0+MASK))
       +
       +double
       +p9frand(void)
       +{
       +        double x;
       +
       +        do {
       +                x = lrand() * NORM;
       +                x = (x + lrand()) * NORM;
       +        } while(x >= 1);
       +        return x;
       +}
 (DIR) diff --git a/src/lib9/mkfile b/src/lib9/mkfile
       t@@ -102,6 +102,7 @@ LIB9OFILES=\
                execl.$O\
                exitcode.$O\
                fcallfmt.$O\
       +        frand.$O\
                get9root.$O\
                getcallerpc-$OBJTYPE.$O\
                getenv.$O\