Makefile 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. # This is BSD Makefile
  2. # BSD GNU
  3. # ${.TARGET} $@
  4. # ${.ALLSRC} $^
  5. # ${.IMPSRC} $<
  6. INCDIR ?= /usr/include
  7. INCDIR_I386 ?= ${INCDIR}/i386-linux-gnu
  8. PY = python2.7
  9. 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
  10. all: Libc.odc ${DEFS} strerrnocase.txt
  11. Libc.odc: Libc.txt
  12. ./txt2odc.py Libc.txt Libc.odc
  13. 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
  14. ${PY} ./untempl.py Libc.txt.templ $@
  15. clockspersec:
  16. grep "define CLOCKS_PER_SEC" ${INCDIR_I386}/bits/time.h | awk '{print $$4}' | cut -d ')' -f 1 | tr -d '\n' > $@
  17. sigstksz:
  18. grep "define SIGSTKSZ" ${INCDIR}/asm-generic/signal.h | awk '{print $$3}' | tr -d '\n' > $@
  19. defs-map:
  20. ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/mman-common.h | grep "MAP_" > $@
  21. echo " MAP_ANON* = MAP_ANONYMOUS;" >> $@
  22. defs-prot:
  23. ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/mman-common.h | grep "PROT_" > $@
  24. defs-sigmask:
  25. ./dumpdefs.py 2 2 i ${INCDIR}//asm-generic/signal-defs.h | grep "SIG_" | grep -v __sighandler_t > $@
  26. defs-signo:
  27. ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/signal.h | grep " SIG" > $@
  28. nsig:
  29. grep "#define _NSIG" ${INCDIR}/asm-generic/signal.h | head -1 | awk '{print $$3}' | tr -d '\n' > $@
  30. defs-fpe:
  31. ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/siginfo.h | grep " FPE_" | sed s'/__SI_FAULT|//' > $@
  32. defs-sa:
  33. ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/signal.h | grep " SA_" > $@
  34. defs-errno:
  35. ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/errno-base.h > $@
  36. ./dumpdefs.py 2 1 i ${INCDIR}/asm-generic/errno.h >> $@
  37. namemax:
  38. grep " NAME_MAX " ${INCDIR}/linux/limits.h | awk '{print $$3}' | tr -d '\n' > $@
  39. defs-fcntlo:
  40. ./dumpdefs.py 2 1 s ${INCDIR}/asm-generic/fcntl.h | grep " O_" > $@
  41. ./dumpdefs.py 2 2 s ${INCDIR}/asm-generic/fcntl.h | grep " O_" >> $@
  42. defs-basictypes: sizeofs
  43. ./sizeofs > $@
  44. defs-sc: scs
  45. ./scs > $@
  46. defs-clockid:
  47. ./dumpdefs.py 2 1 i ${INCDIR}/linux/time.h | grep CLOCK_ > $@
  48. defs-wait:
  49. grep "define WAIT_ANY" ${INCDIR_I386}/sys/wait.h | sed s'/(//' | sed s'/)//' | awk '{print " " $$3 "* = " $$4 ";"}' > $@
  50. ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WCONTINUED" >> $@
  51. ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WNOHANG" >> $@
  52. ./dumpdefs.py 2 1 s ${INCDIR}/linux/wait.h | grep " WUNTRACED" >> $@
  53. dumpstrerrno.c: defs-errno
  54. grep -v ERESTART $^ | grep -v EJUSTRETURN | ./mkdumpstrerrno.py > $@
  55. strerrnocase.txt: dumpstrerrno
  56. ./dumpstrerrno | ./mkstrerrnocase.py > $@
  57. scs: scs.c
  58. ${CC} -m32 scs.c -o $@
  59. sizeofs: sizeofs.c
  60. ${CC} -m32 sizeofs.c -o $@
  61. clean:
  62. rm -f ${DEFS} Libc.txt Libc.odc dumpstrerrno dumpstrerrno.c strerrnocase.txt sizeofs scs