Home | History | Annotate | Line # | Download | only in conf
Makefile.mips revision 1.37
      1  1.37   sekiya #	$NetBSD: Makefile.mips,v 1.37 2004/10/01 06:46:40 sekiya Exp $
      2   1.1     matt 
      3   1.1     matt # Makefile for NetBSD
      4   1.1     matt #
      5   1.1     matt # This makefile is constructed from a machine description:
      6   1.1     matt #	config machineid
      7   1.1     matt # Most changes should be made in the machine description
      8   1.1     matt #	/sys/arch/<machine>/conf/``machineid''
      9   1.1     matt # after which you should do
     10   1.1     matt #	config machineid
     11   1.1     matt # Machine generic makefile changes should be made in
     12   1.1     matt #	/sys/arch/mips/conf/Makefile.mips
     13   1.1     matt # after which config should be rerun for all machines of that type.
     14  1.25   atatat #
     15  1.25   atatat # To specify debugging, add the config line: makeoptions DEBUG="-g"
     16  1.25   atatat # A better way is to specify -g only for a few files.
     17  1.25   atatat #
     18  1.25   atatat #	makeoptions DEBUGLIST="uvm* trap if_*"
     19  1.23      jmc 
     20  1.23      jmc USETOOLS?=	no
     21  1.25   atatat NEED_OWN_INSTALL_TARGET?=no
     22  1.13  hubertf .include <bsd.own.mk>
     23  1.34  tsutsui 
     24  1.34  tsutsui ##
     25  1.34  tsutsui ## (0) toolchain settings for things that aren't part of the standard
     26  1.34  tsutsui ## toolchain
     27  1.34  tsutsui ##
     28  1.34  tsutsui ELF2ECOFF?=	elf2ecoff
     29   1.1     matt 
     30  1.25   atatat ##
     31  1.25   atatat ## (1) port identification
     32  1.25   atatat ##
     33   1.1     matt .ifndef S
     34  1.25   atatat S=		../../../..
     35   1.1     matt .endif
     36  1.21  thorpej THISMIPS=	$S/arch/${MACHINE}
     37   1.1     matt MIPS=		$S/arch/mips
     38  1.25   atatat GENASSYM=	${MIPS}/mips/genassym.cf
     39  1.25   atatat .-include "${THISMIPS}/conf/Makefile.${MACHINE}.inc"
     40   1.1     matt 
     41  1.25   atatat ##
     42  1.25   atatat ## (2) compile settings
     43  1.25   atatat ##
     44  1.25   atatat CPPFLAGS+=	-D${MACHINE}
     45  1.25   atatat DEFGP?=		-G 0
     46   1.8     matt GP?=		${DEFGP}
     47  1.32   simonb CFLAGS+=	${GP} -mno-abicalls -msoft-float
     48  1.36   sekiya AFLAGS+=	-mno-abicalls -x assembler-with-cpp -traditional-cpp ${AOPTS}
     49   1.1     matt 
     50  1.37   sekiya .if ${LP64} == "yes"
     51  1.37   sekiya # 64-bit kernels
     52  1.37   sekiya CPPFLAGS+=	-D_LP64 -mabi=64
     53  1.37   sekiya AFLAGS+=	-mabi=64
     54  1.37   sekiya RANLIB=		true
     55  1.37   sekiya LD+=		-m elf64bmip
     56  1.37   sekiya .endif
     57  1.37   sekiya 
     58  1.25   atatat ##
     59  1.25   atatat ## (3) libkern and compat
     60  1.25   atatat ##
     61  1.25   atatat 
     62  1.25   atatat ##
     63  1.25   atatat ## (4) local objects, compile rules, and dependencies
     64  1.25   atatat ##
     65  1.25   atatat MD_OBJS=	locore.o locore_machdep.o
     66  1.25   atatat MD_CFILES=
     67  1.25   atatat MD_SFILES=	${MIPS}/mips/locore.S ${THISMIPS}/${MACHINE}/locore_machdep.S	
     68   1.1     matt 
     69  1.25   atatat locore.o: ${MIPS}/mips/locore.S assym.h
     70  1.25   atatat 	${NORMAL_S}
     71   1.1     matt 
     72  1.25   atatat locore_machdep.o: ${THISMIPS}/${MACHINE}/locore_machdep.S assym.h
     73  1.25   atatat 	${NORMAL_S}
     74   1.1     matt 
     75  1.25   atatat ##
     76  1.25   atatat ## (5) link settings
     77  1.25   atatat ##
     78  1.32   simonb TEXTADDR?=		${DEFTEXTADDR}
     79  1.32   simonb KERNLDSCRIPT?=		${MIPS}/conf/kern.ldscript
     80  1.25   atatat # some mips ports specify a "magic" format
     81  1.32   simonb LINKFORMAT+=		-T ${KERNLDSCRIPT}
     82  1.36   sekiya EXTRA_LINKFLAGS=	${GP} ${LDOPTS}
     83  1.25   atatat LINKFLAGS_NORMAL=	-x
     84  1.32   simonb STRIPFLAGS=		-g -X -x
     85   1.1     matt 
     86  1.25   atatat ##
     87  1.25   atatat ## (6) port specific target dependencies
     88  1.25   atatat ##
     89   1.1     matt 
     90   1.1     matt # depend on CPU configuration
     91   1.1     matt machdep.o mainbus.o trap.o: Makefile
     92   1.1     matt 
     93   1.1     matt # depend on System V IPC/shmem options
     94   1.1     matt mips_machdep.o pmap.o: Makefile
     95  1.33   simonb 
     96  1.33   simonb # various assembly files that depend on assym.h
     97  1.33   simonb copy.o fp.o locore.o locore_mips1.o locore_mips3.o sigcode.o: assym.h
     98  1.33   simonb mips32_subr.o mips3_subr.o mips5900_subr.o mips64_subr.o mipsX_subr.o: assym.h
     99  1.33   simonb 
    100   1.1     matt 
    101  1.25   atatat ##
    102  1.25   atatat ## (7) misc settings
    103  1.25   atatat ##
    104  1.25   atatat 
    105  1.25   atatat ##
    106  1.25   atatat ## (8) config(8) generated machinery
    107  1.25   atatat ##
    108  1.25   atatat %INCLUDES
    109   1.1     matt 
    110  1.25   atatat %OBJS
    111   1.1     matt 
    112  1.25   atatat %CFILES
    113  1.20      uch 
    114  1.25   atatat %SFILES
    115  1.20      uch 
    116  1.25   atatat %LOAD
    117   1.1     matt 
    118  1.25   atatat %RULES
    119   1.1     matt 
    120  1.25   atatat ##
    121  1.25   atatat ## (9) port independent kernel machinery
    122  1.25   atatat ##
    123  1.25   atatat .include "$S/conf/Makefile.kern.inc"
    124  1.35  thorpej 
    125  1.35  thorpej ##
    126  1.35  thorpej ## (10) Appending make options.
    127  1.35  thorpej ##
    128  1.35  thorpej %MAKEOPTIONSAPPEND
    129