1 1.8 jmcneill # $NetBSD: Makefile.usermode,v 1.8 2011/08/12 00:57:23 jmcneill Exp $ 2 1.1 jmcneill 3 1.1 jmcneill MACHINE_ARCH= usermode 4 1.1 jmcneill USETOOLS?= no 5 1.1 jmcneill NEED_OWN_INSTALL_TARGET?= no 6 1.1 jmcneill .include <bsd.own.mk> 7 1.1 jmcneill 8 1.1 jmcneill ## 9 1.1 jmcneill ## (1) port identification 10 1.1 jmcneill ## 11 1.1 jmcneill USERMODE= $S/arch/usermode 12 1.1 jmcneill GENASSYM_CONF= ${USERMODE}/usermode/genassym.cf 13 1.1 jmcneill 14 1.1 jmcneill ## 15 1.1 jmcneill ## (2) compile settings 16 1.1 jmcneill ## 17 1.6 jmcneill DEFCOPTS= -O2 -fno-omit-frame-pointer 18 1.5 jmcneill CPPFLAGS+= -Dusermode 19 1.2 jmcneill CPPFLAGS.init_main.c+= -Dmain=kernmain 20 1.1 jmcneill 21 1.8 jmcneill CPPFLAGS.thunk.c+= -U_KERNEL -I/usr/include 22 1.8 jmcneill 23 1.1 jmcneill ## 24 1.1 jmcneill ## (3) libkern and compat 25 1.1 jmcneill ## 26 1.1 jmcneill KERN_AS= obj 27 1.6 jmcneill COMPAT_AS= obj 28 1.1 jmcneill 29 1.1 jmcneill ## 30 1.1 jmcneill ## (4) local objects, compile rules, and dependencies 31 1.1 jmcneill ## 32 1.8 jmcneill MD_OBJS= thunk.o 33 1.8 jmcneill MD_CFILES= ${USERMODE}/usermode/thunk.c 34 1.1 jmcneill MD_SFILES= 35 1.1 jmcneill 36 1.1 jmcneill ## 37 1.1 jmcneill ## (5) link settings 38 1.1 jmcneill ## 39 1.8 jmcneill SYSTEM_LD= @${_MKSHMSG} " link ${.CURDIR:T}/${.TARGET}"; \ 40 1.6 jmcneill ${_MKSHECHO}\ 41 1.6 jmcneill ${CC} ${COPTS} -Wl,-Map,$@.map -o $@ '$${SYSTEM_OBJ}' '$${EXTRA_OBJ}' vers.o; \ 42 1.6 jmcneill ${CC} ${COPTS} -Wl,-Map,$@.map -o $@ ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o 43 1.7 jmcneill NVFLAGS= -n 44 1.1 jmcneill 45 1.1 jmcneill ## 46 1.1 jmcneill ## (6) port specific target dependencies 47 1.1 jmcneill ## 48 1.1 jmcneill 49 1.8 jmcneill thunk.o: ${USERMODE}/usermode/thunk.c 50 1.8 jmcneill ${CC} ${COPTS} -I${.CURDIR} -c -o $@ ${USERMODE}/usermode/thunk.c 51 1.8 jmcneill 52 1.1 jmcneill ## 53 1.1 jmcneill ## (7) misc settings 54 1.1 jmcneill ## 55 1.1 jmcneill 56 1.1 jmcneill ## 57 1.1 jmcneill ## (8) config(8) generated machinery 58 1.1 jmcneill %INCLUDES 59 1.1 jmcneill 60 1.1 jmcneill %OBJS 61 1.1 jmcneill 62 1.1 jmcneill %CFILES 63 1.1 jmcneill 64 1.1 jmcneill %SFILES 65 1.1 jmcneill 66 1.1 jmcneill %LOAD 67 1.1 jmcneill 68 1.1 jmcneill %RULES 69 1.1 jmcneill 70 1.1 jmcneill ## 71 1.1 jmcneill ## (9) port independent kernel machinery 72 1.1 jmcneill ## 73 1.1 jmcneill .include "$S/conf/Makefile.kern.inc" 74 1.1 jmcneill 75 1.1 jmcneill ## 76 1.1 jmcneill ## (10) appending make options 77 1.1 jmcneill ## 78 1.1 jmcneill %MAKEOPTIONSAPPEND 79