Makefile.usermode revision 1.14
11.14Sjmcneill# $NetBSD: Makefile.usermode,v 1.14 2011/08/25 11:06:29 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.8Sjmcneillthunk.o: ${USERMODE}/usermode/thunk.c 721.13Sjmcneill ${CC} ${CPPFLAGS.thunk.c} -c -o $@ ${USERMODE}/usermode/thunk.c 731.8Sjmcneill 741.14Sjmcneillthunk_sdl.o: ${USERMODE}/usermode/thunk_sdl.c 751.14Sjmcneill ${CC} ${CPPFLAGS.thunk_sdl.c} -c -o $@ ${USERMODE}/usermode/thunk_sdl.c 761.14Sjmcneill 771.1Sjmcneill## 781.1Sjmcneill## (7) misc settings 791.1Sjmcneill## 801.1Sjmcneill 811.1Sjmcneill## 821.1Sjmcneill## (8) config(8) generated machinery 831.1Sjmcneill%INCLUDES 841.1Sjmcneill 851.1Sjmcneill%OBJS 861.1Sjmcneill 871.1Sjmcneill%CFILES 881.1Sjmcneill 891.1Sjmcneill%SFILES 901.1Sjmcneill 911.1Sjmcneill%LOAD 921.1Sjmcneill 931.1Sjmcneill%RULES 941.1Sjmcneill 951.1Sjmcneill## 961.1Sjmcneill## (9) port independent kernel machinery 971.1Sjmcneill## 981.1Sjmcneill.include "$S/conf/Makefile.kern.inc" 991.1Sjmcneill 1001.1Sjmcneill## 1011.1Sjmcneill## (10) appending make options 1021.1Sjmcneill## 1031.1Sjmcneill%MAKEOPTIONSAPPEND 104