Home | History | Annotate | Line # | Download | only in conf
Makefile.usermode revision 1.17
      1  1.17  jmcneill # $NetBSD: Makefile.usermode,v 1.17 2011/09/03 15:00:27 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.17  jmcneill USERMODE_HOSTOS!=uname -s
     18  1.10  jmcneill USERMODE_LIBS=	-lrt
     19  1.17  jmcneill .if ${USERMODE_HOSTOS} == "Linux"
     20  1.17  jmcneill USERMODE_LIBS+=	-lpthread
     21  1.17  jmcneill .endif
     22  1.14  jmcneill USERMODE_CPPFLAGS=-U_KERNEL -I/usr/include
     23  1.14  jmcneill USERMODE_CPPFLAGS+=${CWARNFLAGS} ${NOGCCERROR:D:U-Werror}
     24  1.10  jmcneill 
     25  1.12   reinoud DEFCOPTS=	-fno-omit-frame-pointer
     26  1.17  jmcneill CPPFLAGS+=	-Dusermode -D__NetBSD__ -Wno-unused-but-set-variable
     27   1.2  jmcneill CPPFLAGS.init_main.c+=	-Dmain=kernmain
     28   1.1  jmcneill 
     29  1.14  jmcneill OPT_SDL=	%SDL%
     30  1.16  jmcneill OPT_URKELVISOR=	%URKELVISOR%
     31  1.16  jmcneill 
     32  1.14  jmcneill .if !empty(OPT_SDL)
     33  1.14  jmcneill SDL_CFLAGS!=	sdl-config --cflags
     34  1.14  jmcneill SDL_LIBS!=	sdl-config --libs
     35  1.14  jmcneill USERMODE_LIBS+=	-Wl,-Bdynamic ${SDL_LIBS}
     36  1.14  jmcneill .endif
     37  1.14  jmcneill 
     38  1.14  jmcneill CPPFLAGS.thunk.c+=	${USERMODE_CPPFLAGS}
     39  1.14  jmcneill CPPFLAGS.thunk_sdl.c+=	${SDL_CFLAGS} ${USERMODE_CPPFLAGS}
     40  1.16  jmcneill CPPFLAGS.urkelvisor.c+=	${USERMODE_CPPFLAGS}
     41   1.8  jmcneill 
     42   1.1  jmcneill ##
     43   1.1  jmcneill ## (3) libkern and compat
     44   1.1  jmcneill ##
     45   1.1  jmcneill KERN_AS=	obj
     46   1.6  jmcneill COMPAT_AS=	obj
     47   1.1  jmcneill 
     48   1.1  jmcneill ##
     49   1.1  jmcneill ## (4) local objects, compile rules, and dependencies
     50   1.1  jmcneill ##
     51   1.8  jmcneill MD_OBJS=	thunk.o
     52   1.8  jmcneill MD_CFILES=	${USERMODE}/usermode/thunk.c
     53  1.16  jmcneill MD_SFILES=
     54  1.16  jmcneill 
     55  1.16  jmcneill .if !empty(OPT_URKELVISOR)
     56  1.16  jmcneill MD_OBJS+=	urkelvisor.o
     57  1.16  jmcneill MD_CFILES+=	${USERMODE}/usermode/urkelvisor.c
     58  1.16  jmcneill .endif
     59  1.16  jmcneill 
     60  1.14  jmcneill .if !empty(OPT_SDL)
     61  1.14  jmcneill MD_OBJS+=	thunk_sdl.o
     62  1.14  jmcneill MD_CFILES+=	${USERMODE}/usermode/thunk_sdl.c
     63  1.14  jmcneill .endif
     64   1.1  jmcneill 
     65   1.1  jmcneill ##
     66   1.1  jmcneill ## (5) link settings
     67   1.1  jmcneill ##
     68   1.8  jmcneill SYSTEM_LD=	@${_MKSHMSG} "   link  ${.CURDIR:T}/${.TARGET}"; \
     69   1.6  jmcneill 		${_MKSHECHO}\
     70  1.17  jmcneill 		${CC} -static ${COPTS} -Wl,-Map,$@.map -o $@ '$${SYSTEM_OBJ}' '$${EXTRA_OBJ}' vers.o ${USERMODE_LIBS}; \
     71  1.17  jmcneill 		${CC} -static ${COPTS} -Wl,-Map,$@.map -o $@ ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o ${USERMODE_LIBS}
     72   1.7  jmcneill NVFLAGS=	-n
     73   1.1  jmcneill 
     74   1.1  jmcneill ##
     75   1.1  jmcneill ## (6) port specific target dependencies
     76   1.1  jmcneill ##
     77   1.1  jmcneill 
     78   1.9  jmcneill .if !make(obj) && !make(clean) && !make(cleandir)
     79   1.9  jmcneill .BEGIN:
     80   1.9  jmcneill 	@rm -f i386 && \
     81   1.9  jmcneill 		ln -s $S/arch/i386/include i386
     82   1.9  jmcneill .endif
     83   1.9  jmcneill 
     84  1.15  jmcneill thunk.d: ${USERMODE}/usermode/thunk.c
     85  1.15  jmcneill 	${MKDEP} -f ${.TARGET} -- ${MKDEP_CFLAGS} \
     86  1.15  jmcneill 	    ${CPPFLAGS.thunk.c} ${USERMODE}/usermode/thunk.c
     87  1.15  jmcneill 
     88   1.8  jmcneill thunk.o: ${USERMODE}/usermode/thunk.c
     89  1.13  jmcneill 	${CC} ${CPPFLAGS.thunk.c} -c -o $@ ${USERMODE}/usermode/thunk.c
     90   1.8  jmcneill 
     91  1.15  jmcneill thunk_sdl.d: ${USERMODE}/usermode/thunk.c
     92  1.15  jmcneill 	${MKDEP} -f ${.TARGET} -- ${MKDEP_CFLAGS} \
     93  1.15  jmcneill 	    ${CPPFLAGS.thunk_sdl.c} ${USERMODE}/usermode/thunk_sdl.c
     94  1.15  jmcneill 
     95  1.14  jmcneill thunk_sdl.o: ${USERMODE}/usermode/thunk_sdl.c
     96  1.14  jmcneill 	${CC} ${CPPFLAGS.thunk_sdl.c} -c -o $@ ${USERMODE}/usermode/thunk_sdl.c
     97  1.14  jmcneill 
     98  1.16  jmcneill urkelvisor.d: ${USERMODE}/usermode/urkelvisor.c
     99  1.16  jmcneill 	${MKDEP} -f ${.TARGET} -- ${MKDEP_CFLAGS} \
    100  1.16  jmcneill 	    ${CPPFLAGS.urkelvisor.c} ${USERMODE}/usermode/urkelvisor.c
    101  1.16  jmcneill 
    102  1.16  jmcneill urkelvisor.o: ${USERMODE}/usermode/urkelvisor.c
    103  1.16  jmcneill 	${CC} ${CPPFLAGS.urkelvisor.c} -c -o $@ ${USERMODE}/usermode/urkelvisor.c
    104  1.16  jmcneill 
    105   1.1  jmcneill ##
    106   1.1  jmcneill ## (7) misc settings
    107   1.1  jmcneill ##
    108   1.1  jmcneill 
    109   1.1  jmcneill ##
    110   1.1  jmcneill ## (8) config(8) generated machinery
    111   1.1  jmcneill %INCLUDES
    112   1.1  jmcneill 
    113   1.1  jmcneill %OBJS
    114   1.1  jmcneill 
    115   1.1  jmcneill %CFILES
    116   1.1  jmcneill 
    117   1.1  jmcneill %SFILES
    118   1.1  jmcneill 
    119   1.1  jmcneill %LOAD
    120   1.1  jmcneill 
    121   1.1  jmcneill %RULES
    122   1.1  jmcneill 
    123   1.1  jmcneill ##
    124   1.1  jmcneill ## (9) port independent kernel machinery
    125   1.1  jmcneill ##
    126   1.1  jmcneill .include "$S/conf/Makefile.kern.inc"
    127   1.1  jmcneill 
    128   1.1  jmcneill ##
    129   1.1  jmcneill ## (10) appending make options
    130   1.1  jmcneill ##
    131   1.1  jmcneill %MAKEOPTIONSAPPEND
    132