util/libreboot-utils: randomisation test

to test the effectiveness of the rand function

Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
Leah Rowe
2026-03-25 22:20:19 +00:00
parent dc7a02da2d
commit e0319f0116
5 changed files with 79 additions and 10 deletions
+23 -3
View File
@@ -25,6 +25,7 @@ HELLFLAGS = $(STRICT) -Weverything
PROG = nvmutil
PROGMKH = mkhtemp
PROGLOT = lottery
OBJS_NVMUTIL = \
obj/nvmutil.o \
@@ -48,11 +49,19 @@ OBJS_MKHTEMP = \
obj/lib/mkhtemp.o \
obj/lib/rand.o
OBJS_LOTTERY = \
obj/lottery.o \
obj/lib/file.o \
obj/lib/string.o \
obj/lib/num.o \
obj/lib/mkhtemp.o \
obj/lib/rand.o
# default mode
CFLAGS_MODE = $(PORTABLE)
CC_MODE = $(CC)
all: $(PROG) $(PROGMKH)
all: $(PROG) $(PROGMKH) $(PROGLOT)
$(PROG): $(OBJS_NVMUTIL)
$(CC_MODE) $(OBJS_NVMUTIL) -o $(PROG) $(LDFLAGS)
@@ -60,9 +69,13 @@ $(PROG): $(OBJS_NVMUTIL)
$(PROGMKH): $(OBJS_MKHTEMP)
$(CC_MODE) $(OBJS_MKHTEMP) -o $(PROGMKH) $(LDFLAGS)
$(PROGLOT): $(OBJS_LOTTERY)
$(CC_MODE) $(OBJS_LOTTERY) -o $(PROGLOT) $(LDFLAGS)
# ensure obj directory exists
$(OBJS_NVMUTIL): obj
$(OBJS_MKHTEMP): obj
$(OBJS_LOTTERY): obj
obj:
mkdir obj || true
@@ -76,6 +89,9 @@ obj/nvmutil.o: nvmutil.c
obj/mkhtemp.o: mkhtemp.c
$(CC_MODE) $(CFLAGS_MODE) -c mkhtemp.c -o obj/mkhtemp.o
obj/lottery.o: lottery.c
$(CC_MODE) $(CFLAGS_MODE) -c lottery.c -o obj/lottery.o
# library/helper objects
obj/lib/state.o: lib/state.c
@@ -113,19 +129,23 @@ obj/lib/rand.o: lib/rand.c
# install
install: $(PROG) $(PROGMKH)
install: $(PROG) $(PROGMKH) $(PROGLOT)
$(INSTALL) -d $(DESTDIR)$(PREFIX)/bin
$(INSTALL) $(PROG) $(DESTDIR)$(PREFIX)/bin/$(PROG)
chmod 755 $(DESTDIR)$(PREFIX)/bin/$(PROG)
$(INSTALL) $(PROGMKH) $(DESTDIR)$(PREFIX)/bin/$(PROGMKH)
chmod 755 $(DESTDIR)$(PREFIX)/bin/$(PROGMKH)
$(INSTALL) $(PROGLOT) $(DESTDIR)$(PREFIX)/bin/$(PROGLOT)
chmod 755 $(DESTDIR)$(PREFIX)/bin/$(PROGLOT)
uninstall:
rm -f $(DESTDIR)$(PREFIX)/bin/$(PROG)
rm -f $(DESTDIR)$(PREFIX)/bin/$(PROGMKH)
rm -f $(DESTDIR)$(PREFIX)/bin/$(PROGLOT)
clean:
rm -f $(PROG) $(PROGMKH) $(OBJS_NVMUTIL) $(OBJS_MKHTEMP)
rm -f $(PROG) $(PROGMKH) $(OBJS_NVMUTIL) $(OBJS_MKHTEMP) \
$(OBJS_LOTTERY)
distclean: clean