Home | History | Annotate | Line # | Download | only in include
      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 HDRS="$HDRS mcontext.h"
     25 HDRS="$HDRS frame_regs.h"
     26 HDRS="$HDRS cpufunc.h"
     27 
     28 for hdr in ${HDRS}; do
     29 	G="_USERMODE_$(echo ${hdr} | sed 's/\./_/g' | tr [a-z] [A-Z])"
     30 
     31 	cat > ${hdr} << EOF
     32 /* \$NetBSD\$ */
     33 
     34 /*
     35  * Automatically generated by $0 on $(date)
     36  * Do not modify directly!
     37  */
     38 #ifndef $G
     39 #define $G
     40 
     41 #if defined(__i386__)
     42 #include "../../i386/include/${hdr}"
     43 #elif defined(__x86_64__)
     44 #include "../../amd64/include/${hdr}"
     45 #elif defined(__arm__)
     46 #include "../../arm/include/${hdr}"
     47 #else
     48 #error port me
     49 #endif
     50 EOF
     51 
     52 	# header specific quirks
     53 	if [ "$hdr" = "disklabel.h" ]; then
     54 		echo "#include <machine/types.h>" >> ${hdr}
     55 		echo "#ifndef __HAVE_OLD_DISKLABEL" >> ${hdr}
     56 		echo "#undef DISKUNIT" >> ${hdr}
     57 		echo "#undef DISKPART" >> ${hdr}
     58 		echo "#undef DISKMINOR" >> ${hdr}
     59 		echo "#endif" >> ${hdr}
     60 	elif [ "$hdr" = "ptrace.h" ]; then
     61 		echo "#undef __HAVE_PTRACE_MACHDEP" >> ${hdr}
     62 		echo "#undef __HAVE_PROCFS_MACHDEP" >> ${hdr}
     63 	elif [ "$hdr" = "param.h" ]; then
     64 		cat >> ${hdr} << EOF
     65 #ifdef __arm__
     66 #define MACHINE "evbarm"
     67 #define PGSHIFT 12
     68 #define NBPG (1 << PGSHIFT)
     69 #define PGOFSET (NBPG - 1)
     70 #define NKMEMPAGES_MIN_DEFAULT  ((8 * 1024 * 1024) >> PAGE_SHIFT)
     71 #endif
     72 EOF
     73 		echo "#undef UPAGES" >> ${hdr}
     74 		echo "#define UPAGES 12" >> ${hdr}
     75 		echo "#undef USPACE" >> ${hdr}
     76 		echo "#define USPACE (PAGE_SIZE*UPAGES)" >> ${hdr}
     77 		echo "" >> ${hdr}
     78 		echo "#undef NKMEMPAGES_MAX_UNLIMITED" >> ${hdr}
     79 		echo "#include \"opt_kmempages.h\"" >> ${hdr}
     80 		echo "" >> ${hdr}
     81 	elif [ "$hdr" = "elf_machdep.h" ]; then
     82 		echo "#ifdef ELF_MD_PROBE_FUNC" >> ${hdr}
     83 		echo "#undef ELF_MD_PROBE_FUNC" >> ${hdr}
     84 		echo "#endif" >> ${hdr}
     85 	fi
     86 
     87 	echo >>${hdr}
     88 	echo "#endif" >> ${hdr}
     89 done
     90