1 1.69 thorpej # $NetBSD: Makefile.mvme68k,v 1.69 2024/01/18 05:12:29 thorpej Exp $ 2 1.1 chuck 3 1.1 chuck # Makefile for NetBSD 4 1.1 chuck # 5 1.1 chuck # This makefile is constructed from a machine description: 6 1.1 chuck # config machineid 7 1.1 chuck # Most changes should be made in the machine description 8 1.1 chuck # /sys/arch/mvme68k/conf/``machineid'' 9 1.1 chuck # after which you should do 10 1.6 mycroft # config machineid 11 1.1 chuck # Machine generic makefile changes should be made in 12 1.1 chuck # /sys/arch/mvme68k/conf/Makefile.mvme68k 13 1.1 chuck # after which config should be rerun for all machines of that type. 14 1.55 atatat # 15 1.55 atatat # To specify debugging, add the config line: makeoptions DEBUG="-g" 16 1.55 atatat # A better way is to specify -g only for a few files. 17 1.55 atatat # 18 1.55 atatat # makeoptions DEBUGLIST="uvm* trap if_*" 19 1.52 thorpej 20 1.52 thorpej MACHINE_ARCH=m68k 21 1.53 jmc USETOOLS?= no 22 1.55 atatat NEED_OWN_INSTALL_TARGET?=no 23 1.53 jmc .include <bsd.own.mk> 24 1.1 chuck 25 1.55 atatat ## 26 1.55 atatat ## (1) port identification 27 1.55 atatat ## 28 1.55 atatat MVME68K= $S/arch/mvme68k 29 1.59 christos GENASSYM_CONF= ${MVME68K}/mvme68k/genassym.cf 30 1.55 atatat 31 1.55 atatat ## 32 1.55 atatat ## (2) compile settings 33 1.55 atatat ## 34 1.55 atatat CPPFLAGS+= -Dmvme68k 35 1.69 thorpej .if empty(KERNEL_OPT_M68060) 36 1.69 thorpej .if empty(KERNEL_OPT_M68030) 37 1.49 scw CMACHFLAGS= -m68040 38 1.49 scw .else 39 1.49 scw CMACHFLAGS= -m68030 40 1.49 scw .endif 41 1.69 thorpej .else # M68060 42 1.69 thorpej .if empty(KERNEL_OPT_M68030) && empty(KERNEL_OPT_M68040) 43 1.67 mrg CMACHFLAGS= -m68060 -Wa,-march=68030 -Wa,-m68030 -Wa,-mcpu=68030 -Wa,-m68851 44 1.49 scw .else 45 1.67 mrg CMACHFLAGS= -m68020-60 -Wa,-m68030 -Wa,-mcpu=68030 -Wa,-m68851 46 1.49 scw .endif 47 1.69 thorpej .endif # M68060 48 1.55 atatat CFLAGS+= ${CMACHFLAGS} -msoft-float 49 1.62 joerg AFLAGS+= -x assembler-with-cpp 50 1.25 thorpej 51 1.55 atatat ## 52 1.55 atatat ## (3) libkern and compat 53 1.55 atatat ## 54 1.68 rin OPT_MODULAR= %MODULAR% 55 1.1 chuck 56 1.55 atatat ## 57 1.55 atatat ## (4) local objects, compile rules, and dependencies 58 1.55 atatat ## 59 1.55 atatat # for the Motorola 68040 Floating Point Software Product 60 1.1 chuck .include "$S/arch/m68k/fpsp/Makefile.inc" 61 1.49 scw 62 1.55 atatat # for the Motorola 68060 Software Support Package 63 1.49 scw .include "$S/arch/m68k/060sp/Makefile.inc" 64 1.1 chuck 65 1.66 uebayasi MD_OBJS= locore.o 66 1.66 uebayasi MD_LIBS= ${FPSP} 67 1.55 atatat MD_CFILES= 68 1.55 atatat MD_SFILES= ${MVME68K}/mvme68k/locore.s 69 1.1 chuck 70 1.1 chuck 71 1.55 atatat locore.o: ${MVME68K}/mvme68k/locore.s assym.h 72 1.55 atatat ${NORMAL_S} 73 1.55 atatat ## 74 1.55 atatat ## (5) link settings 75 1.55 atatat ## 76 1.55 atatat LINKFORMAT= -n 77 1.55 atatat TEXTADDR?= 8000 78 1.55 atatat 79 1.55 atatat ## 80 1.55 atatat ## (6) port specific target dependencies 81 1.55 atatat ## 82 1.55 atatat 83 1.55 atatat # depend on CPU configuration 84 1.55 atatat locore.o pmap.o sys_machdep.o trap.o: Makefile 85 1.55 atatat 86 1.61 joerg copy.o copypage.o lock_stubs.o: assym.h 87 1.61 joerg 88 1.55 atatat ## 89 1.55 atatat ## (7) misc settings 90 1.55 atatat ## 91 1.55 atatat 92 1.55 atatat ## 93 1.55 atatat ## (8) config(8) generated machinery 94 1.55 atatat ## 95 1.55 atatat %INCLUDES 96 1.13 mycroft 97 1.1 chuck %OBJS 98 1.1 chuck 99 1.1 chuck %CFILES 100 1.1 chuck 101 1.6 mycroft %SFILES 102 1.6 mycroft 103 1.1 chuck %LOAD 104 1.1 chuck 105 1.55 atatat %RULES 106 1.1 chuck 107 1.55 atatat ## 108 1.55 atatat ## (9) port independent kernel machinery 109 1.55 atatat ## 110 1.55 atatat .include "$S/conf/Makefile.kern.inc" 111 1.58 thorpej 112 1.58 thorpej ## 113 1.58 thorpej ## (10) Appending make options. 114 1.58 thorpej ## 115 1.58 thorpej %MAKEOPTIONSAPPEND 116