Home | History | Annotate | Line # | Download | only in conf
Makefile.xen revision 1.9.2.3
      1  1.9.2.3     yamt #	$NetBSD: Makefile.xen,v 1.9.2.3 2007/12/07 17:27:03 yamt 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.9.2.1     yamt I386=		$S/arch/i386
     31  1.9.2.3     yamt AMD64=          $S/arch/amd64
     32  1.9.2.3     yamt .if ${XEN_BUILD} == "i386"
     33  1.9.2.3     yamt GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
     34  1.9.2.3     yamt .else
     35  1.9.2.3     yamt GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
     36  1.9.2.3     yamt .endif
     37  1.9.2.3     yamt 
     38  1.9.2.3     yamt .if ${XEN_BUILD} == "amd64"
     39  1.9.2.3     yamt ARCH_INC=	$S/arch/xen/include/amd64
     40  1.9.2.3     yamt .elif ${XEN_BUILD} == "i386"
     41  1.9.2.3     yamt ARCH_INC=	$S/arch/xen/include
     42  1.9.2.3     yamt .endif
     43      1.1       cl 
     44      1.1       cl ##
     45      1.1       cl ## (2) compile settings
     46      1.1       cl ##
     47  1.9.2.3     yamt DEFCOPTS=	-O2
     48      1.2       cl CPPFLAGS+=	-D${XEN_BUILD}
     49  1.9.2.2     yamt AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG} -D__XEN__
     50      1.1       cl EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma
     51      1.1       cl 
     52  1.9.2.3     yamt .if ${XEN_BUILD} == "amd64"
     53  1.9.2.3     yamt CPPFLAGS+=	-Dx86_64
     54  1.9.2.3     yamt CFLAGS+=	-mcmodel=kernel
     55  1.9.2.3     yamt CFLAGS+=	-mno-red-zone
     56  1.9.2.3     yamt .endif
     57  1.9.2.3     yamt 
     58  1.9.2.3     yamt 
     59      1.1       cl ##
     60      1.1       cl ## (3) libkern and compat
     61      1.1       cl ##
     62      1.1       cl KERN_AS=	obj
     63      1.1       cl 
     64      1.1       cl ##
     65      1.1       cl ## (4) local objects, compile rules, and dependencies
     66      1.1       cl ##
     67  1.9.2.3     yamt MD_OBJS=	locore.o spl.o copy.o vector.o
     68      1.1       cl MD_CFILES=
     69  1.9.2.3     yamt 
     70  1.9.2.3     yamt .if ${XEN_BUILD} == i386
     71  1.9.2.1     yamt MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S \
     72  1.9.2.1     yamt 		${XEN}/${XEN_BUILD}/spl.S \
     73  1.9.2.3     yamt 		${XEN}/${XEN_BUILD}/vector.S \
     74  1.9.2.3     yamt 		${I386}/i386/copy.S
     75  1.9.2.1     yamt 
     76  1.9.2.1     yamt copy.o: ${I386}/i386/copy.S assym.h
     77  1.9.2.1     yamt 	${NORMAL_S}
     78  1.9.2.1     yamt 
     79      1.2       cl locore.o: ${XEN}/${XEN_BUILD}/locore.S assym.h
     80      1.1       cl 	${NORMAL_S}
     81      1.1       cl 
     82      1.2       cl spl.o: ${XEN}/${XEN_BUILD}/spl.S assym.h
     83      1.1       cl 	${NORMAL_S}
     84      1.1       cl 
     85      1.2       cl vector.o: ${XEN}/${XEN_BUILD}/vector.S assym.h
     86      1.1       cl 	${NORMAL_S}
     87  1.9.2.3     yamt .elif ${XEN_BUILD} == amd64
     88  1.9.2.3     yamt MD_SFILES=	${AMD64}/amd64/locore.S \
     89  1.9.2.3     yamt 		${AMD64}/amd64/spl.S \
     90  1.9.2.3     yamt 		${AMD64}/amd64/copy.S \
     91  1.9.2.3     yamt 		${AMD64}/amd64/vector.S
     92  1.9.2.3     yamt 
     93  1.9.2.3     yamt locore.o: ${AMD64}/amd64/locore.S assym.h
     94  1.9.2.3     yamt 	${NORMAL_S}
     95  1.9.2.3     yamt 
     96  1.9.2.3     yamt spl.o: ${AMD64}/amd64/spl.S assym.h
     97  1.9.2.3     yamt 	${NORMAL_S}
     98  1.9.2.3     yamt 
     99  1.9.2.3     yamt copy.o: ${AMD64}/amd64/copy.S assym.h
    100  1.9.2.3     yamt 	${NORMAL_S}
    101  1.9.2.3     yamt 
    102  1.9.2.3     yamt vector.o: ${AMD64}/amd64/vector.S assym.h
    103  1.9.2.3     yamt 	${NORMAL_S}
    104  1.9.2.3     yamt .endif
    105      1.1       cl 
    106      1.7      sjg .ifndef noBEGIN
    107      1.1       cl .if !make(obj) && !make(clean) && !make(cleandir)
    108      1.1       cl .BEGIN:
    109      1.2       cl .for A in ${XEN_MACHINE_ARCHS}
    110      1.2       cl 	rm -f ${A}
    111      1.2       cl 	ln -s $S/arch/${A}/include ${A}
    112      1.2       cl .endfor
    113      1.5      jmc 	-rm -rf xen-ma
    114      1.1       cl 	mkdir xen-ma
    115      1.3       cl 	ln -s ../${XEN_BUILD} xen-ma/machine
    116  1.9.2.3     yamt 	rm -f machine
    117  1.9.2.3     yamt 	ln -s ${ARCH_INC} machine
    118      1.1       cl .endif
    119      1.7      sjg .endif
    120      1.1       cl 
    121      1.1       cl ##
    122      1.1       cl ## (5) link settings
    123      1.1       cl ##
    124  1.9.2.3     yamt .if ${XEN_BUILD} == i386
    125  1.9.2.3     yamt TEXTADDR?=	0xc0100000
    126  1.9.2.3     yamt .elif ${XEN_BUILD} == amd64
    127  1.9.2.3     yamt TEXTADDR?=	0xffffffff80100000
    128  1.9.2.3     yamt .endif
    129      1.1       cl LINKFLAGS_NORMAL=	-X
    130      1.1       cl .if (${OBJECT_FMT} == "ELF")
    131  1.9.2.1     yamt KERN_LDSCRIPT?=	kern.ldscript.Xen
    132      1.2       cl LINKFORMAT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
    133      1.1       cl .else
    134      1.1       cl LINKFORMAT=	-z
    135      1.1       cl .endif
    136      1.1       cl 
    137      1.1       cl ##
    138      1.1       cl ## (6) port specific target dependencies
    139      1.1       cl ##
    140      1.1       cl 
    141  1.9.2.3     yamt .if ${XEN_BUILD} == i386
    142      1.1       cl freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o: assym.h
    143      1.1       cl svr4_sigcode.o mach_sigcode.o: assym.h
    144      1.1       cl apmcall.o in_cksum.o pnpbioscall.o bioscall.o: assym.h
    145      1.1       cl mptramp.o: assym.h
    146  1.9.2.3     yamt .elif  ${XEN_BUILD} == amd64
    147  1.9.2.3     yamt locore.o machdep.o: Makefile
    148  1.9.2.3     yamt busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
    149  1.9.2.3     yamt .endif
    150      1.1       cl clock.o: config_time.h
    151      1.1       cl 
    152      1.1       cl ##
    153      1.1       cl ## (7) misc settings
    154      1.1       cl ##
    155      1.1       cl 
    156      1.1       cl ##
    157      1.1       cl ## (8) config(8) generated machinery
    158      1.1       cl ##
    159      1.1       cl %INCLUDES
    160      1.1       cl 
    161      1.1       cl %OBJS
    162      1.1       cl 
    163      1.1       cl %CFILES
    164      1.1       cl 
    165      1.1       cl %SFILES
    166      1.1       cl 
    167      1.1       cl %LOAD
    168      1.1       cl 
    169      1.1       cl %RULES
    170      1.1       cl 
    171  1.9.2.1     yamt ## Include rules for Atheros WLAN
    172  1.9.2.1     yamt .include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
    173      1.8      chs 
    174      1.1       cl ##
    175      1.1       cl ## (9) port independent kernel machinery
    176      1.1       cl ##
    177      1.1       cl .include "$S/conf/Makefile.kern.inc"
    178      1.4  thorpej 
    179      1.4  thorpej ##
    180      1.4  thorpej ## (10) Appending make options.
    181      1.4  thorpej ##
    182      1.4  thorpej %MAKEOPTIONSAPPEND
    183