Home | History | Annotate | Line # | Download | only in conf
Makefile.sparc64 revision 1.62.12.1.4.1
      1  1.62.12.1.4.1    bouyer # 	$NetBSD: Makefile.sparc64,v 1.62.12.1.4.1 2012/03/17 19:39:32 bouyer Exp $
      2           1.45       eeh 
      3           1.45       eeh #=========================================================================
      4           1.45       eeh #
      5           1.45       eeh #			***** WARNING ******
      6           1.45       eeh #
      7           1.45       eeh # ANYONE WHO CHANGES THIS MAKEFILE AND DOES NOT TEST BOTH A 32-BIT
      8           1.45       eeh # AND 64-BIT KERNEL WILL BE SHOT.
      9           1.45       eeh #
     10           1.45       eeh #=========================================================================
     11           1.45       eeh 
     12            1.1       eeh 
     13            1.1       eeh # Makefile for NetBSD
     14            1.1       eeh #
     15            1.1       eeh # This makefile is constructed from a machine description:
     16            1.1       eeh #	config machineid
     17            1.1       eeh # Most changes should be made in the machine description
     18            1.1       eeh #	/sys/arch/sparc64/conf/``machineid''
     19            1.1       eeh # after which you should do
     20            1.1       eeh #	config machineid
     21            1.1       eeh # Machine generic makefile changes should be made in
     22            1.1       eeh #	/sys/arch/sparc64/conf/Makefile.sparc64
     23            1.1       eeh # after which config should be rerun for all machines of that type.
     24           1.44    atatat #
     25           1.44    atatat # To specify debugging, add the config line: makeoptions DEBUG="-g"
     26           1.44    atatat # A better way is to specify -g only for a few files.
     27           1.44    atatat #
     28           1.44    atatat #	makeoptions DEBUGLIST="uvm* trap if_*"
     29            1.1       eeh 
     30           1.45       eeh # Default to 32-bit.  Set the MACHINE_ARCH accordingly.
     31           1.45       eeh #
     32           1.45       eeh # You must also be using the correct toolchain or the kernel build
     33           1.45       eeh # will fail.
     34           1.45       eeh #
     35           1.41   thorpej LP64?=	no
     36           1.41   thorpej .if ${LP64} == "yes"
     37           1.40   thorpej MACHINE_ARCH=sparc64
     38           1.41   thorpej .else
     39           1.41   thorpej MACHINE_ARCH=sparc
     40           1.41   thorpej .endif
     41           1.42       jmc 
     42           1.42       jmc USETOOLS?=	no
     43           1.44    atatat NEED_OWN_INSTALL_TARGET?=no
     44           1.39   thorpej .include <bsd.own.mk>
     45           1.39   thorpej 
     46           1.44    atatat ##
     47           1.44    atatat ## (1) port identification
     48           1.44    atatat ##
     49            1.1       eeh SPARC64=	$S/arch/sparc64
     50           1.56  christos GENASSYM_CONF=	${SPARC64}/sparc64/genassym.cf
     51            1.1       eeh 
     52           1.44    atatat ##
     53           1.44    atatat ## (2) compile settings
     54           1.44    atatat ##
     55           1.45       eeh CPPFLAGS+=	-Dsparc64 -D__sparc64__
     56           1.40   thorpej .if ${LP64} == "yes"
     57           1.45       eeh # 64-bit kernels
     58           1.45       eeh CPPFLAGS+=	-D_LP64 -Wa,-Av9a
     59           1.45       eeh AFLAGS+=	-Wa,-Av9a
     60           1.30       eeh .if defined(PROF)
     61           1.45       eeh # Profiling is only supported in the medium low memory model.
     62           1.45       eeh CFLAGS+=	-mcmodel=medlow
     63           1.45       eeh .else
     64           1.45       eeh # Since the kernel resides in the lower 32 bits, use medium low for now anyway.
     65           1.40   thorpej CFLAGS+=	-mcmodel=medlow
     66           1.30       eeh .endif
     67           1.45       eeh .else
     68           1.45       eeh # 32-bit kernels
     69           1.45       eeh CPPFLAGS+=	-m32 -Wa,-Av8plusa -mcpu=ultrasparc
     70           1.45       eeh AFLAGS+=	-Wa,-Av8plusa
     71           1.45       eeh .endif
     72           1.45       eeh CFLAGS+=	-mno-fpu
     73           1.45       eeh AFLAGS+=	-x assembler-with-cpp -traditional-cpp
     74           1.44    atatat 
     75           1.44    atatat ##
     76           1.44    atatat ## (3) libkern and compat
     77           1.44    atatat ##
     78           1.52    martin # KERN_AS=	obj	# memcpy, memset, etc. are in locore.s
     79           1.44    atatat 
     80           1.44    atatat ##
     81           1.44    atatat ## (4) local objects, compile rules, and dependencies
     82           1.44    atatat ##
     83           1.44    atatat MD_OBJS=	locore.o
     84           1.44    atatat MD_CFILES=
     85           1.44    atatat MD_SFILES=	${SPARC64}/sparc64/locore.s
     86           1.31       eeh 
     87           1.44    atatat locore.o: ${SPARC64}/sparc64/locore.s assym.h
     88           1.44    atatat 	${NORMAL_S}
     89           1.51  christos 
     90           1.51  christos in_cksum.o: assym.h
     91           1.34       mrg 
     92           1.44    atatat ##
     93           1.44    atatat ## (5) link settings
     94           1.44    atatat ##
     95           1.44    atatat TEXTADDR?=	01000000
     96           1.44    atatat LINKFORMAT=	-n -T ${SPARC64}/conf/${KERN_LDSCRIPT}
     97           1.40   thorpej .if ${LP64} == "yes"
     98           1.34       mrg KERN_LDSCRIPT?= kern.ldscript
     99           1.35       mrg .else
    100           1.35       mrg KERN_LDSCRIPT?= kern32.ldscript
    101           1.35       mrg .endif
    102           1.31       eeh 
    103           1.44    atatat ##
    104           1.44    atatat ## (6) port specific target dependencies
    105           1.44    atatat ##
    106           1.10       mrg 
    107           1.44    atatat # depend on CPU configuration
    108           1.44    atatat bwtwo.o cgsix.o cgthree.o cgtwo.o cons.o dma.o esp.o fb.o if_ie.o: Makefile
    109           1.44    atatat ms.c obio.o zs.c autoconf.o clock.o cpu.o disksubr.o locore.o: Makefile
    110           1.44    atatat machdep.o mem.o openprom.o pmap.o vm_machdep.o: Makefile
    111           1.44    atatat 
    112           1.44    atatat ##
    113           1.44    atatat ## (7) misc settings
    114           1.44    atatat ##
    115           1.48  jdolecek 
    116           1.48  jdolecek # define .MAIN _before_ the make() check, so that implicit target
    117           1.48  jdolecek # would be defined
    118           1.48  jdolecek .MAIN: all
    119           1.47       mrg 
    120           1.47       mrg .if make(depend) || make(all) || make(dependall)
    121           1.47       mrg .BEGIN:
    122           1.47       mrg 	@rm -f sparc && \
    123           1.47       mrg 		ln -s $S/arch/sparc/include sparc
    124           1.47       mrg .endif
    125           1.44    atatat 
    126           1.44    atatat ##
    127           1.44    atatat ## (8) config(8) generated machinery
    128           1.44    atatat ##
    129           1.10       mrg %INCLUDES
    130            1.1       eeh 
    131            1.1       eeh %OBJS
    132            1.1       eeh 
    133            1.1       eeh %CFILES
    134            1.1       eeh 
    135            1.1       eeh %SFILES
    136            1.1       eeh 
    137            1.1       eeh %LOAD
    138            1.2       mrg 
    139           1.44    atatat %RULES
    140            1.1       eeh 
    141           1.62   gdamore ## Include rules for Atheros WLAN
    142           1.62   gdamore .include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
    143           1.58    martin 
    144           1.44    atatat ##
    145           1.44    atatat ## (9) port independent kernel machinery
    146           1.44    atatat ##
    147           1.44    atatat .include "$S/conf/Makefile.kern.inc"
    148           1.55   thorpej 
    149           1.55   thorpej ##
    150           1.55   thorpej ## (10) Appending make options.
    151           1.55   thorpej ##
    152           1.55   thorpej %MAKEOPTIONSAPPEND
    153