Makefile.usermode revision 1.15
11.15Sjmcneill# $NetBSD: Makefile.usermode,v 1.15 2011/08/28 23:16:18 jmcneill Exp $ 21.1Sjmcneill 31.1SjmcneillMACHINE_ARCH= usermode 41.1SjmcneillUSETOOLS?= no 51.1SjmcneillNEED_OWN_INSTALL_TARGET?= no 61.1Sjmcneill.include <bsd.own.mk> 71.1Sjmcneill 81.1Sjmcneill## 91.1Sjmcneill## (1) port identification 101.1Sjmcneill## 111.1SjmcneillUSERMODE= $S/arch/usermode 121.1SjmcneillGENASSYM_CONF= ${USERMODE}/usermode/genassym.cf 131.1Sjmcneill 141.1Sjmcneill## 151.1Sjmcneill## (2) compile settings 161.1Sjmcneill## 171.10SjmcneillUSERMODE_LIBS= -lrt 181.14SjmcneillUSERMODE_CPPFLAGS=-U_KERNEL -I/usr/include 191.14SjmcneillUSERMODE_CPPFLAGS+=${CWARNFLAGS} ${NOGCCERROR:D:U-Werror} 201.10Sjmcneill 211.12SreinoudDEFCOPTS= -fno-omit-frame-pointer 221.5SjmcneillCPPFLAGS+= -Dusermode 231.2SjmcneillCPPFLAGS.init_main.c+= -Dmain=kernmain 241.1Sjmcneill 251.14SjmcneillOPT_SDL= %SDL% 261.14Sjmcneill.if !empty(OPT_SDL) 271.14SjmcneillSDL_CFLAGS!= sdl-config --cflags 281.14SjmcneillSDL_LIBS!= sdl-config --libs 291.14SjmcneillUSERMODE_LIBS+= -Wl,-Bdynamic ${SDL_LIBS} 301.14Sjmcneill.endif 311.14Sjmcneill 321.14SjmcneillCPPFLAGS.thunk.c+= ${USERMODE_CPPFLAGS} 331.14SjmcneillCPPFLAGS.thunk_sdl.c+= ${SDL_CFLAGS} ${USERMODE_CPPFLAGS} 341.8Sjmcneill 351.1Sjmcneill## 361.1Sjmcneill## (3) libkern and compat 371.1Sjmcneill## 381.1SjmcneillKERN_AS= obj 391.6SjmcneillCOMPAT_AS= obj 401.1Sjmcneill 411.1Sjmcneill## 421.1Sjmcneill## (4) local objects, compile rules, and dependencies 431.1Sjmcneill## 441.8SjmcneillMD_OBJS= thunk.o 451.8SjmcneillMD_CFILES= ${USERMODE}/usermode/thunk.c 461.14Sjmcneill.if !empty(OPT_SDL) 471.14SjmcneillMD_OBJS+= thunk_sdl.o 481.14SjmcneillMD_CFILES+= ${USERMODE}/usermode/thunk_sdl.c 491.14Sjmcneill.endif 501.1SjmcneillMD_SFILES= 511.1Sjmcneill 521.1Sjmcneill## 531.1Sjmcneill## (5) link settings 541.1Sjmcneill## 551.8SjmcneillSYSTEM_LD= @${_MKSHMSG} " link ${.CURDIR:T}/${.TARGET}"; \ 561.6Sjmcneill ${_MKSHECHO}\ 571.11Sreinoud ${CC} ${COPTS} -Wl,-Map,$@.map,-Bstatic -o $@ '$${SYSTEM_OBJ}' '$${EXTRA_OBJ}' vers.o ${USERMODE_LIBS}; \ 581.11Sreinoud ${CC} ${COPTS} -Wl,-Map,$@.map,-Bstatic -o $@ ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o ${USERMODE_LIBS} 591.7SjmcneillNVFLAGS= -n 601.1Sjmcneill 611.1Sjmcneill## 621.1Sjmcneill## (6) port specific target dependencies 631.1Sjmcneill## 641.1Sjmcneill 651.9Sjmcneill.if !make(obj) && !make(clean) && !make(cleandir) 661.9Sjmcneill.BEGIN: 671.9Sjmcneill @rm -f i386 && \ 681.9Sjmcneill ln -s $S/arch/i386/include i386 691.9Sjmcneill.endif 701.9Sjmcneill 711.15Sjmcneillthunk.d: ${USERMODE}/usermode/thunk.c 721.15Sjmcneill ${MKDEP} -f ${.TARGET} -- ${MKDEP_CFLAGS} \ 731.15Sjmcneill ${CPPFLAGS.thunk.c} ${USERMODE}/usermode/thunk.c 741.15Sjmcneill 751.8Sjmcneillthunk.o: ${USERMODE}/usermode/thunk.c 761.13Sjmcneill ${CC} ${CPPFLAGS.thunk.c} -c -o $@ ${USERMODE}/usermode/thunk.c 771.8Sjmcneill 781.15Sjmcneillthunk_sdl.d: ${USERMODE}/usermode/thunk.c 791.15Sjmcneill ${MKDEP} -f ${.TARGET} -- ${MKDEP_CFLAGS} \ 801.15Sjmcneill ${CPPFLAGS.thunk_sdl.c} ${USERMODE}/usermode/thunk_sdl.c 811.15Sjmcneill 821.14Sjmcneillthunk_sdl.o: ${USERMODE}/usermode/thunk_sdl.c 831.14Sjmcneill ${CC} ${CPPFLAGS.thunk_sdl.c} -c -o $@ ${USERMODE}/usermode/thunk_sdl.c 841.14Sjmcneill 851.1Sjmcneill## 861.1Sjmcneill## (7) misc settings 871.1Sjmcneill## 881.1Sjmcneill 891.1Sjmcneill## 901.1Sjmcneill## (8) config(8) generated machinery 911.1Sjmcneill%INCLUDES 921.1Sjmcneill 931.1Sjmcneill%OBJS 941.1Sjmcneill 951.1Sjmcneill%CFILES 961.1Sjmcneill 971.1Sjmcneill%SFILES 981.1Sjmcneill 991.1Sjmcneill%LOAD 1001.1Sjmcneill 1011.1Sjmcneill%RULES 1021.1Sjmcneill 1031.1Sjmcneill## 1041.1Sjmcneill## (9) port independent kernel machinery 1051.1Sjmcneill## 1061.1Sjmcneill.include "$S/conf/Makefile.kern.inc" 1071.1Sjmcneill 1081.1Sjmcneill## 1091.1Sjmcneill## (10) appending make options 1101.1Sjmcneill## 1111.1Sjmcneill%MAKEOPTIONSAPPEND 112