Home | History | Annotate | Line # | Download | only in conf
Makefile.xen revision 1.19.24.2
      1  1.19.24.2     matt #	Makefile.xen,v 1.19.24.1 2008/01/09 01:50:01 matt Exp
      2        1.1       cl #	NetBSD: Makefile.i386,v 1.132 2003/07/05 16:56:10 simonb Exp 
      3        1.1       cl 
      4        1.1       cl # Makefile for NetBSD
      5        1.1       cl #
      6        1.1       cl # This makefile is constructed from a machine description:
      7        1.1       cl #	config machineid
      8        1.1       cl # Most changes should be made in the machine description
      9        1.1       cl #	/sys/arch/xen/conf/``machineid''
     10        1.1       cl # after which you should do
     11        1.1       cl #	config machineid
     12        1.1       cl # Machine generic makefile changes should be made in
     13        1.1       cl #	/sys/arch/xen/conf/Makefile.xen
     14        1.1       cl # after which config should be rerun for all machines of that type.
     15        1.1       cl #
     16        1.1       cl # To specify debugging, add the config line: makeoptions DEBUG="-g"
     17        1.1       cl # A better way is to specify -g only for a few files.
     18        1.1       cl #
     19        1.1       cl #	makeoptions DEBUGLIST="uvm* trap if_*"
     20        1.1       cl 
     21        1.2       cl .include "$S/arch/xen/conf/Makefile.arch.inc"
     22        1.1       cl USETOOLS?=	no
     23        1.1       cl NEED_OWN_INSTALL_TARGET?=no
     24        1.1       cl .include <bsd.own.mk>
     25        1.1       cl 
     26        1.1       cl ##
     27        1.1       cl ## (1) port identification
     28        1.1       cl ##
     29        1.1       cl XEN=		$S/arch/xen
     30       1.10     yamt I386=		$S/arch/i386
     31  1.19.24.1     matt AMD64=          $S/arch/amd64
     32  1.19.24.1     matt GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
     33  1.19.24.1     matt 
     34  1.19.24.2     matt ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}
     35        1.1       cl 
     36        1.1       cl ##
     37        1.1       cl ## (2) compile settings
     38        1.1       cl ##
     39  1.19.24.1     matt DEFCOPTS=	-O2
     40        1.2       cl CPPFLAGS+=	-D${XEN_BUILD}
     41       1.19       ad AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG} -D__XEN__
     42        1.1       cl EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma
     43        1.1       cl 
     44  1.19.24.1     matt .if ${XEN_BUILD} == "amd64"
     45  1.19.24.1     matt CPPFLAGS+=	-Dx86_64
     46  1.19.24.1     matt CFLAGS+=	-mcmodel=kernel
     47  1.19.24.1     matt CFLAGS+=	-mno-red-zone
     48  1.19.24.1     matt .endif
     49  1.19.24.1     matt 
     50  1.19.24.1     matt 
     51        1.1       cl ##
     52        1.1       cl ## (3) libkern and compat
     53        1.1       cl ##
     54        1.1       cl KERN_AS=	obj
     55        1.1       cl 
     56        1.1       cl ##
     57        1.1       cl ## (4) local objects, compile rules, and dependencies
     58        1.1       cl ##
     59  1.19.24.1     matt MD_OBJS=	locore.o spl.o copy.o vector.o
     60        1.1       cl MD_CFILES=
     61  1.19.24.1     matt 
     62  1.19.24.2     matt MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
     63  1.19.24.2     matt 		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
     64  1.19.24.2     matt 		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
     65  1.19.24.2     matt 		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
     66  1.19.24.1     matt 
     67  1.19.24.2     matt copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
     68  1.19.24.1     matt 	${NORMAL_S}
     69  1.19.24.1     matt 
     70  1.19.24.2     matt locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
     71  1.19.24.1     matt 	${NORMAL_S}
     72  1.19.24.1     matt 
     73  1.19.24.2     matt spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
     74  1.19.24.1     matt 	${NORMAL_S}
     75  1.19.24.1     matt 
     76  1.19.24.2     matt vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
     77  1.19.24.1     matt 	${NORMAL_S}
     78        1.7      sjg .ifndef noBEGIN
     79        1.1       cl .if !make(obj) && !make(clean) && !make(cleandir)
     80        1.1       cl .BEGIN:
     81        1.2       cl .for A in ${XEN_MACHINE_ARCHS}
     82        1.2       cl 	rm -f ${A}
     83        1.2       cl 	ln -s $S/arch/${A}/include ${A}
     84        1.2       cl .endfor
     85        1.5      jmc 	-rm -rf xen-ma
     86        1.1       cl 	mkdir xen-ma
     87        1.3       cl 	ln -s ../${XEN_BUILD} xen-ma/machine
     88  1.19.24.1     matt 	rm -f machine
     89  1.19.24.1     matt 	ln -s ${ARCH_INC} machine
     90        1.1       cl .endif
     91        1.7      sjg .endif
     92        1.1       cl 
     93        1.1       cl ##
     94        1.1       cl ## (5) link settings
     95        1.1       cl ##
     96  1.19.24.1     matt .if ${XEN_BUILD} == i386
     97  1.19.24.1     matt TEXTADDR?=	0xc0100000
     98  1.19.24.1     matt .elif ${XEN_BUILD} == amd64
     99  1.19.24.1     matt TEXTADDR?=	0xffffffff80100000
    100  1.19.24.1     matt .endif
    101        1.1       cl LINKFLAGS_NORMAL=	-X
    102        1.1       cl .if (${OBJECT_FMT} == "ELF")
    103       1.18    pavel KERN_LDSCRIPT?=	kern.ldscript.Xen
    104        1.2       cl LINKFORMAT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
    105        1.1       cl .else
    106        1.1       cl LINKFORMAT=	-z
    107        1.1       cl .endif
    108        1.1       cl 
    109        1.1       cl ##
    110        1.1       cl ## (6) port specific target dependencies
    111        1.1       cl ##
    112        1.1       cl 
    113  1.19.24.1     matt .if ${XEN_BUILD} == i386
    114        1.1       cl freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o: assym.h
    115  1.19.24.2     matt svr4_sigcode.o mach_sigcode.o: assym.h
    116  1.19.24.2     matt apmcall.o pnpbioscall.o bioscall.o: assym.h
    117        1.1       cl mptramp.o: assym.h
    118  1.19.24.1     matt .elif  ${XEN_BUILD} == amd64
    119  1.19.24.1     matt locore.o machdep.o: Makefile
    120  1.19.24.2     matt linux32_sigcode.o netbsd32_sigcode.o: assym.h
    121  1.19.24.1     matt .endif
    122  1.19.24.2     matt busfunc.o cpu_in_cksum.o cpufunc.o lock_stubs.o: assym.h
    123        1.1       cl 
    124        1.1       cl ##
    125        1.1       cl ## (7) misc settings
    126        1.1       cl ##
    127        1.1       cl 
    128        1.1       cl ##
    129        1.1       cl ## (8) config(8) generated machinery
    130        1.1       cl ##
    131        1.1       cl %INCLUDES
    132        1.1       cl 
    133        1.1       cl %OBJS
    134        1.1       cl 
    135        1.1       cl %CFILES
    136        1.1       cl 
    137        1.1       cl %SFILES
    138        1.1       cl 
    139        1.1       cl %LOAD
    140        1.1       cl 
    141        1.1       cl %RULES
    142        1.1       cl 
    143       1.16  gdamore ## Include rules for Atheros WLAN
    144       1.16  gdamore .include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
    145        1.8      chs 
    146        1.1       cl ##
    147        1.1       cl ## (9) port independent kernel machinery
    148        1.1       cl ##
    149        1.1       cl .include "$S/conf/Makefile.kern.inc"
    150        1.4  thorpej 
    151        1.4  thorpej ##
    152        1.4  thorpej ## (10) Appending make options.
    153        1.4  thorpej ##
    154        1.4  thorpej %MAKEOPTIONSAPPEND
    155