Home | History | Annotate | Line # | Download | only in boot
Makefile revision 1.6
      1 #	$NetBSD: Makefile,v 1.6 2013/01/16 15:15:01 tsutsui Exp $
      2 #	@(#)Makefile	8.2 (Berkeley) 8/15/93
      3 
      4 NOMAN= # defined
      5 
      6 .include <bsd.own.mk>
      7 .include <bsd.sys.mk>
      8 
      9 S= ${.CURDIR}/../../../..
     10 LIBSADIR=	${S}/lib/libsa
     11 
     12 CPPFLAGS+=	-nostdinc -D_STANDALONE
     13 CPPFLAGS+=	-I${.CURDIR} -I${.OBJDIR} -I${S} -I${S}/arch
     14 
     15 CPPFLAGS+=	-DSUPPORT_DISK
     16 #CPPFLAGS+=	-DSUPPORT_TAPE
     17 CPPFLAGS+=	-DSUPPORT_ETHERNET
     18 CPPFLAGS+=	-DSUPPORT_DHCP -DSUPPORT_BOOTP
     19 #CPPFLAGS+=	-DBOOTP_DEBUG -DNETIF_DEBUG -DETHER_DEBUG -DNFS_DEBUG
     20 #CPPFLAGS+=	-DRPC_DEBUG -DRARP_DEBUG -DNET_DEBUG -DDEBUG -DPARANOID
     21 CPPFLAGS+=	-DLIBSA_ENABLE_LS_OP
     22 CPPFLAGS+=	-DLIBSA_PRINTF_WIDTH_SUPPORT
     23 
     24 CFLAGS=		-Os -msoft-float
     25 CFLAGS+=	-ffreestanding
     26 CFLAGS+=	-Wall -Werror
     27 CFLAGS+=	-Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
     28 CFLAGS+=	-Wno-pointer-sign
     29 
     30 LDSCRIPT=	${.CURDIR}/boot.ldscript
     31 LINKFORMAT=	-static -N -T ${LDSCRIPT}
     32 
     33 SRCS=	locore.S
     34 SRCS+=	init_main.c autoconf.c ioconf.c
     35 SRCS+=	trap.c
     36 SRCS+=	devopen.c
     37 SRCS+=	conf.c
     38 SRCS+=	machdep.c
     39 SRCS+=	getline.c parse.c 
     40 SRCS+=	boot.c
     41 SRCS+=	cons.c prf.c
     42 SRCS+=	romcons.c
     43 SRCS+=	sio.c
     44 SRCS+=	bmc.c bmd.c screen.c font.c kbd.c
     45 SRCS+=	scsi.c sc.c sd.c
     46 #SRCS+=	st.c tape.c
     47 SRCS+=	disklabel.c
     48 #SRCS+=	fsdump.c
     49 SRCS+=	ufs_disksubr.c
     50 SRCS+=	ls.c
     51 
     52 # netboot support
     53 SRCS+=	if_le.c lance.c getsecs.c
     54 .PATH: ${LIBSADIR}
     55 SRCS+=	dev_net.c
     56 
     57 PROG=   boot
     58 
     59 NEWVERSWHAT=	"${PROG}"
     60 
     61 SRCS+=          vers.c
     62 CLEANFILES+=    vers.c
     63 
     64 ### find out what to use for libkern
     65 KERN_AS=	library
     66 .include "${S}/lib/libkern/Makefile.inc"
     67 
     68 ### find out what to use for libz
     69 Z_AS=		library
     70 .include "${S}/lib/libz/Makefile.inc"
     71 
     72 ### find out what to use for libsa
     73 SA_AS=		library
     74 SAMISCMAKEFLAGS+=SA_USE_LOADFILE=yes SA_USE_CREAD=yes SA_ENABLE_LS_OP=yes
     75 .include "${S}/lib/libsa/Makefile.inc"
     76 
     77 LIBS=	${SALIB} ${ZLIB} ${KERNLIB}
     78 
     79 .PHONY: vers.c
     80 vers.c: ${.CURDIR}/version
     81 	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
     82 	    ${.CURDIR}/version ${MACHINE} ${NEWVERSWHAT}
     83 
     84 ${PROG}: ${LDSCRIPT} ${OBJS} ${LIBS}
     85 	${LD} ${LINKFORMAT} -x -o ${PROG}.elf ${OBJS} ${LIBS}
     86 	${ELF2AOUT} ${PROG}.elf ${PROG}.aout
     87 	mv ${PROG}.aout ${PROG}
     88 
     89 CLEANFILES+=	${PROG}.aout ${PROG}.elf
     90 
     91 cleandir distclean: .WAIT cleanlibdir
     92 
     93 cleanlibdir:
     94 	-rm -rf lib
     95 
     96 .include <bsd.klinks.mk>
     97 .include <bsd.prog.mk>
     98