1 1.19 tsutsui # $NetBSD: Makefile.booters,v 1.19 2009/12/06 13:28:04 tsutsui Exp $ 2 1.1 jdolecek 3 1.1 jdolecek S?= ${.CURDIR}/../../../.. 4 1.1 jdolecek MDEC_DIR?= /usr/mdec 5 1.1 jdolecek RELOC?= 0x3F0000 6 1.18 scw COPTS?= -Os -Wall -Wno-main -Wmissing-prototypes -Wstrict-prototypes \ 7 1.18 scw -ffreestanding -fomit-frame-pointer 8 1.1 jdolecek DEFS?= 9 1.1 jdolecek STRIPFLAG?= 10 1.1 jdolecek 11 1.8 tv NOMAN= # defined 12 1.8 tv NOMAN= # defined 13 1.8 tv NOLINT= # defined 14 1.8 tv NOLINT= # defined 15 1.8 tv NOPIC= # defined 16 1.8 tv NOPROFILE=# defined 17 1.8 tv NOLINT=# defined 18 1.1 jdolecek 19 1.1 jdolecek INCPATH=-I${.OBJDIR} -I${.CURDIR} -I${.CURDIR}/../libsa -I${.CURDIR}/../libbug \ 20 1.1 jdolecek -I${.CURDIR}/../../include -I${S} -I${S}/lib/libsa 21 1.14 tsutsui CFLAGS= -nostdinc -m68020-60 -Wa,-m68030 22 1.14 tsutsui CPPFLAGS+= -D__daddr_t=int32_t 23 1.17 tsutsui CPPFLAGS+= -D_STANDALONE 24 1.14 tsutsui CPPFLAGS+= ${INCPATH} ${DEFS} 25 1.1 jdolecek BINDIR= ${MDEC_DIR} 26 1.1 jdolecek 27 1.15 tsutsui # XXX SHOULD NOT NEED TO DEFINE THESE! 28 1.15 tsutsui LIBCRT0= 29 1.15 tsutsui LIBC= 30 1.15 tsutsui LIBCRTBEGIN= 31 1.15 tsutsui LIBCRTEND= 32 1.15 tsutsui 33 1.1 jdolecek .if exists(${.CURDIR}/version) 34 1.1 jdolecek SRCS+= vers.c 35 1.1 jdolecek CLEANFILES+= vers.c 36 1.1 jdolecek 37 1.1 jdolecek vers.c: version 38 1.12 lukem ${HOST_SH} ${S}/conf/newvers_stand.sh -DM ${.CURDIR}/version "mvme68k" 39 1.1 jdolecek .endif 40 1.1 jdolecek 41 1.1 jdolecek CLEANFILES+= machine m68k 42 1.1 jdolecek 43 1.16 tsutsui .if !make(obj) && !make(clean) && !make(cleandir) 44 1.19 tsutsui .BEGIN: 45 1.19 tsutsui @rm -f machine && \ 46 1.19 tsutsui ln -s $S/arch/${MACHINE}/include machine 47 1.19 tsutsui @rm -f ${MACHINE_CPU} && \ 48 1.19 tsutsui ln -s $S/arch/${MACHINE_CPU}/include ${MACHINE_CPU} 49 1.16 tsutsui .endif 50 1.1 jdolecek 51 1.1 jdolecek .if defined(LIB) 52 1.1 jdolecek 53 1.19 tsutsui lib${LIB}.a:: ${OBJS} 54 1.1 jdolecek 55 1.1 jdolecek .else 56 1.1 jdolecek 57 1.5 scw PROGDEPENDS?= ${SRTOBJ} ${BUGCRT} ${OBJS} ${LIBS} 58 1.5 scw PROGLINKOBJS?= ${PROGDEPENDS} 59 1.5 scw 60 1.5 scw ${PROG}: machine m68k ${PROGDEPENDS} 61 1.5 scw ${LD} -N -Ttext ${RELOC} -o $@ ${PROGLINKOBJS} 62 1.1 jdolecek 63 1.9 bjh21 .include <bsd.own.mk> 64 1.9 bjh21 65 1.1 jdolecek LIB_SA_DIR= ${.CURDIR}/../libsa 66 1.9 bjh21 LIBSA_DIR!= cd ${LIB_SA_DIR} && ${PRINTOBJDIR} 67 1.1 jdolecek LIBSA=${LIBSA_DIR}/libsa.a 68 1.1 jdolecek 69 1.1 jdolecek .PHONY: ${LIBSA} 70 1.1 jdolecek ${LIBSA}: 71 1.1 jdolecek @echo making sure the libsa is up to date... 72 1.1 jdolecek @cd ${LIB_SA_DIR} && ${MAKE} 73 1.1 jdolecek 74 1.1 jdolecek SRTOBJ?= ${LIBSA_DIR}/SRT0.o 75 1.1 jdolecek .PHONY: ${SRTOBJ} 76 1.1 jdolecek ${SRTOBJ}: 77 1.1 jdolecek @echo making sure the libsa is up to date... 78 1.1 jdolecek @cd ${LIB_SA_DIR} && ${MAKE} SRT0.o 79 1.1 jdolecek 80 1.1 jdolecek LIB_BUG_DIR= ${.CURDIR}/../libbug 81 1.9 bjh21 LIBBUG_DIR!= cd ${LIB_BUG_DIR} && ${PRINTOBJDIR} 82 1.1 jdolecek LIBBUG=${LIBBUG_DIR}/libbug.a 83 1.1 jdolecek 84 1.1 jdolecek .PHONY: ${LIBBUG} 85 1.1 jdolecek ${LIBBUG}: 86 1.1 jdolecek @echo making sure the libbug is up to date... 87 1.1 jdolecek @(cd ${LIB_BUG_DIR}; ${MAKE}) 88 1.1 jdolecek 89 1.6 scw BUGCRT=${LIBBUG_DIR}/bugstart.o 90 1.1 jdolecek 91 1.1 jdolecek .PHONY: ${BUGCRT} 92 1.1 jdolecek $(BUGCRT): 93 1.1 jdolecek @echo making sure the bugcrt is up to date... 94 1.6 scw @(cd ${LIB_BUG_DIR}; ${MAKE} bugstart.o) 95 1.1 jdolecek 96 1.1 jdolecek WRTVID_BOOT_DIR= ${.CURDIR}/../wrtvid 97 1.9 bjh21 WRTVID_DIR!= cd ${WRTVID_BOOT_DIR} && ${PRINTOBJDIR} 98 1.1 jdolecek WRTVID=${WRTVID_DIR}/wrtvid 99 1.1 jdolecek 100 1.1 jdolecek .PHONY: ${WRTVID} 101 1.1 jdolecek ${WRTVID}: 102 1.1 jdolecek @echo making sure the wrtvid is up to date... 103 1.7 scw @(cd ${WRTVID_BOOT_DIR}; ${MAKE} dependall) 104 1.1 jdolecek 105 1.1 jdolecek .endif 106