Home | History | Annotate | Line # | Download | only in include
genheaders.sh revision 1.8.6.1
      1 #!/bin/sh
      2 #
      3 # Public domain
      4 #
      5 
      6 HDRS="asm.h"
      7 HDRS="$HDRS bswap.h"
      8 HDRS="$HDRS byte_swap.h"
      9 HDRS="$HDRS disklabel.h"
     10 HDRS="$HDRS elf_machdep.h"
     11 HDRS="$HDRS endian.h"
     12 HDRS="$HDRS endian_machdep.h"
     13 HDRS="$HDRS int_const.h"
     14 HDRS="$HDRS int_fmtio.h"
     15 HDRS="$HDRS int_limits.h"
     16 HDRS="$HDRS int_mwgwtypes.h"
     17 HDRS="$HDRS int_types.h"
     18 HDRS="$HDRS limits.h"
     19 HDRS="$HDRS netbsd32_machdep.h"
     20 HDRS="$HDRS param.h"
     21 HDRS="$HDRS ptrace.h"
     22 HDRS="$HDRS wchar_limits.h"
     23 HDRS="$HDRS cdefs.h"
     24 
     25 for hdr in ${HDRS}; do
     26 	G="_USERMODE_$(echo ${hdr} | sed 's/\./_/g' | tr [a-z] [A-Z])"
     27 
     28 	cat > ${hdr} << EOF
     29 /* \$NetBSD\$ */
     30 
     31 /*
     32  * Automatically generated by $0 on $(date)
     33  * Do not modify directly!
     34  */
     35 #ifndef $G
     36 #define $G
     37 
     38 #if defined(__i386__)
     39 #include "../../i386/include/${hdr}"
     40 #elif defined(__x86_64__)
     41 #include "../../amd64/include/${hdr}"
     42 #elif defined(__arm__)
     43 #include "../../arm/include/${hdr}"
     44 #else
     45 #error port me
     46 #endif
     47 EOF
     48 
     49 	# header specific quirks
     50 	if [ "$hdr" = "disklabel.h" ]; then
     51 		echo "#include <machine/types.h>" >> ${hdr}
     52 		echo "#ifndef __HAVE_OLD_DISKLABEL" >> ${hdr}
     53 		echo "#undef DISKUNIT" >> ${hdr}
     54 		echo "#undef DISKPART" >> ${hdr}
     55 		echo "#undef DISKMINOR" >> ${hdr}
     56 		echo "#endif" >> ${hdr}
     57 	elif [ "$hdr" = "ptrace.h" ]; then
     58 		echo "#undef __HAVE_PTRACE_MACHDEP" >> ${hdr}
     59 		echo "#undef __HAVE_PROCFS_MACHDEP" >> ${hdr}
     60 	elif [ "$hdr" = "param.h" ]; then
     61 		cat >> ${hdr} << EOF
     62 #ifdef __arm__
     63 #define MACHINE "evbarm"
     64 #define PGSHIFT 12
     65 #define NBPG (1 << PGSHIFT)
     66 #define PGOFSET (NBPG - 1)
     67 #define NKMEMPAGES_MIN_DEFAULT  ((8 * 1024 * 1024) >> PAGE_SHIFT)
     68 #endif
     69 EOF
     70 		echo "#undef UPAGES" >> ${hdr}
     71 		echo "#define UPAGES 12" >> ${hdr}
     72 		echo "#undef USPACE" >> ${hdr}
     73 		echo "#define USPACE (PAGE_SIZE*UPAGES)" >> ${hdr}
     74 		echo "" >> ${hdr}
     75 		echo "#undef NKMEMPAGES_MAX_UNLIMITED" >> ${hdr}
     76 		echo "#include \"opt_kmempages.h\"" >> ${hdr}
     77 		echo "" >> ${hdr}
     78 	elif [ "$hdr" = "elf_machdep.h" ]; then
     79 		echo "#ifdef ELF_MD_PROBE_FUNC" >> ${hdr}
     80 		echo "#undef ELF_MD_PROBE_FUNC" >> ${hdr}
     81 		echo "#endif" >> ${hdr}
     82 	fi
     83 
     84 	echo >>${hdr}
     85 	echo "#endif" >> ${hdr}
     86 done
     87