DEADSOFTWARE

Linux Libc generator
[bbcp.git] / BlackBox / _Linux_ / Lin / Mod / gen-Libc / Makefile
1 # This is BSD Makefile
2 # BSD GNU
3 # ${.TARGET} $@
4 # ${.ALLSRC} $^
5 # ${.IMPSRC} $<
7 INCDIR ?= /usr/include
8 INCDIR_I386 ?= ${INCDIR}/i386-linux-gnu
10 PY = python2.7
12 DEFS = clockspersec sigstksz defs-map defs-prot defs-sigmask nsig defs-signo defs-fpe defs-sa defs-errno namemax defs-fcntlo defs-basictypes defs-sc defs-clockid defs-wait
14 all: Libc.txt ${DEFS} strerrnocase.txt
16 Libc.txt: Libc.txt.templ ${DEFS} libver osname machine custom fields-dirent fields-sigaction fields-siginfo fields-stack fields-stat fields-tm fields-ucontext fields-timespec
17 ${PY} ./untempl.py Libc.txt.templ $@
19 clockspersec:
20 grep "define CLOCKS_PER_SEC" ${INCDIR_I386}/bits/time.h | awk '{print $$4}' | cut -d ')' -f 1 | tr -d '\n' > $@
22 sigstksz:
23 grep "define SIGSTKSZ" ${INCDIR}/asm-generic/signal.h | awk '{print $$3}' | tr -d '\n' > $@
25 defs-map:
26 ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/mman-common.h | grep "MAP_" > $@
27 echo " MAP_ANON* = MAP_ANONYMOUS;" >> $@
29 defs-prot:
30 ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/mman-common.h | grep "PROT_" > $@
32 defs-sigmask:
33 ./dumpdefs.py 2 2 i ${INCDIR}//asm-generic/signal-defs.h | grep "SIG_" | grep -v __sighandler_t > $@
35 defs-signo:
36 ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/signal.h | grep " SIG" > $@
38 nsig:
39 grep "#define _NSIG" ${INCDIR}/asm-generic/signal.h | head -1 | awk '{print $$3}' | tr -d '\n' > $@
41 defs-fpe:
42 ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/siginfo.h | grep " FPE_" | sed s'/__SI_FAULT|//' > $@
44 defs-sa:
45 ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/signal.h | grep " SA_" > $@
47 defs-errno:
48 ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/errno-base.h > $@
49 ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/errno.h >> $@
51 namemax:
52 grep " NAME_MAX " ${INCDIR}/linux/limits.h | awk '{print $$3}' | tr -d '\n' > $@
54 defs-fcntlo:
55 ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/fcntl.h | grep " O_" > $@
56 ./dumpdefs.py 2 2 s ${INCDIR}/asm-generic/fcntl.h | grep " O_" >> $@
58 defs-basictypes: sizeofs
59 ./sizeofs > $@
61 defs-sc: scs
62 ./scs > $@
64 defs-clockid:
65 ./dumpdefs.py 2 1 i ${INCDIR}/linux/time.h | grep CLOCK_ > $@
67 defs-wait:
68 grep "define WAIT_ANY" ${INCDIR_I386}/sys/wait.h | sed s'/(//' | sed s'/)//' | awk '{print " " $$3 "* = " $$4 ";"}' > $@
69 ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WCONTINUED" >> $@
70 ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WNOHANG" >> $@
71 ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WUNTRACED" >> $@
73 dumpstrerrno.c: defs-errno
74 grep -v ERESTART $^ | grep -v EJUSTRETURN | ./mkdumpstrerrno.py > $@
76 strerrnocase.txt: dumpstrerrno
77 ./dumpstrerrno | ./mkstrerrnocase.py > $@
79 scs: scs.c
80 ${CC} -m32 scs.c -o $@
82 sizeofs: sizeofs.c
83 ${CC} -m32 sizeofs.c -o $@
85 clean:
86 rm -f ${DEFS} Libc.txt dumpstrerrno dumpstrerrno.c strerrnocase.txt sizeofs scs