Home | History | Annotate | Line # | Download | only in ofwboot
Makefile revision 1.9
      1  1.9     lukem #	$NetBSD: Makefile,v 1.9 2003/10/26 07:25:37 lukem Exp $
      2  1.1       mrg 
      3  1.1       mrg CURDIR=	${.CURDIR}
      4  1.1       mrg S=	${CURDIR}/../../../..
      5  1.1       mrg 
      6  1.1       mrg #
      7  1.1       mrg # Override normal settings
      8  1.1       mrg #
      9  1.1       mrg 
     10  1.1       mrg WARNS=		0
     11  1.1       mrg 
     12  1.1       mrg PROG?=		ofwboot
     13  1.1       mrg SRCS=		srt0.s Locore.c boot.c ofdev.c alloc.c net.c netif_of.c vers.c
     14  1.1       mrg .PATH:		${S}/arch/sparc64/sparc64
     15  1.1       mrg 
     16  1.8   thorpej COPTS+=		-ffreestanding
     17  1.1       mrg CWARNFLAGS+=	-Wno-main
     18  1.2       mrg CFLAGS+=	${COPTS} ${CEXTRAFLAGS}
     19  1.2       mrg CPPFLAGS+=	-D_STANDALONE -DSUN4U
     20  1.4   thorpej CPPFLAGS+=	-DBOOT_ELF32 -DBOOT_ELF64
     21  1.1       mrg #CPPFLAGS+=	-DNETIF_DEBUG 
     22  1.1       mrg 
     23  1.5        tv NOMAN=		# defined
     24  1.1       mrg STRIPFLAG=
     25  1.1       mrg BINMODE=	444
     26  1.1       mrg 
     27  1.1       mrg NEWVERSWHAT=	"OpenFirmware Boot"
     28  1.1       mrg 
     29  1.1       mrg #
     30  1.1       mrg # Elf64 defaults to 1MB
     31  1.1       mrg #
     32  1.1       mrg # We may get address conflicts with other bootloaders, say
     33  1.1       mrg # Sun's ufsboot, so we'll pick a reasonably empty address.
     34  1.1       mrg #
     35  1.1       mrg RELOC=		800000
     36  1.1       mrg 
     37  1.1       mrg ENTRY=		_start
     38  1.1       mrg 
     39  1.6  nakayama CLEANFILES+=	vers.c sparc64 machine
     40  1.1       mrg 
     41  1.1       mrg CPPFLAGS+=	-I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I.
     42  1.1       mrg CPPFLAGS+=	-DRELOC=0x${RELOC}
     43  1.1       mrg 
     44  1.1       mrg #
     45  1.1       mrg # XXXXX FIXME
     46  1.1       mrg #
     47  1.1       mrg CPPFLAGS+=	-DSPARC_BOOT_AOUT
     48  1.1       mrg CPPFLAGS+=	-DSPARC_BOOT_ELF
     49  1.1       mrg CPPFLAGS+=	-DSPARC_BOOT_UFS
     50  1.1       mrg CPPFLAGS+=	-DSPARC_BOOT_NFS
     51  1.1       mrg #CPPFLAGS+=	-DSPARC_BOOT_HSFS
     52  1.1       mrg 
     53  1.1       mrg ### find out what to use for libkern
     54  1.1       mrg KERN_AS=	library
     55  1.1       mrg .include "${S}/lib/libkern/Makefile.inc"
     56  1.1       mrg LIBKERN=	${KERNLIB}
     57  1.1       mrg 
     58  1.1       mrg ### find out what to use for libz
     59  1.1       mrg Z_AS=		library
     60  1.1       mrg .include "${S}/lib/libz/Makefile.inc"
     61  1.1       mrg LIBZ=		${ZLIB}
     62  1.1       mrg 
     63  1.1       mrg ### find out what to use for libsa
     64  1.1       mrg SA_AS=		library
     65  1.1       mrg SAMISCMAKEFLAGS= SA_USE_CREAD=yes
     66  1.1       mrg .include "${S}/lib/libsa/Makefile.inc"
     67  1.1       mrg LIBSA=		${SALIB}
     68  1.1       mrg 
     69  1.2       mrg .NOPATH: machine sparc64
     70  1.2       mrg ${SRCS}: machine sparc64
     71  1.1       mrg 
     72  1.1       mrg machine:
     73  1.1       mrg 	rm -f machine
     74  1.2       mrg 	ln -s sparc64 machine
     75  1.1       mrg 
     76  1.2       mrg sparc64:
     77  1.2       mrg 	rm -f sparc64
     78  1.2       mrg 	ln -s ${.CURDIR}/../../../sparc64/include sparc64
     79  1.7  nakayama 
     80  1.7  nakayama cleandir distclean: cleanlibdir
     81  1.7  nakayama 
     82  1.7  nakayama cleanlibdir:
     83  1.7  nakayama 	rm -rf lib
     84  1.1       mrg 
     85  1.1       mrg vers.c: version
     86  1.9     lukem 	${HOST_SH} ${S}/conf/newvers_stand.sh ${CURDIR}/version "sparc64" ${NEWVERSWHAT}
     87  1.1       mrg 
     88  1.1       mrg .if CROSS
     89  1.1       mrg ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
     90  1.1       mrg 	${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \
     91  1.1       mrg 	    ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker
     92  1.1       mrg .else
     93  1.1       mrg ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
     94  1.1       mrg 	${LD} -X -N -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \
     95  1.1       mrg 	    ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}	# native linker
     96  1.1       mrg .endif
     97  1.1       mrg 
     98  1.1       mrg .include <bsd.prog.mk>
     99  1.1       mrg 
    100  1.2       mrg .if ${MACHINE_ARCH} == "sparc64"
    101  1.2       mrg AFLAGS+=		-Wa,-Av9a
    102  1.2       mrg CEXTRAFLAGS?=		-D_LP64
    103  1.2       mrg .else
    104  1.2       mrg AFLAGS+=		-Wa,-Av8plusa
    105  1.2       mrg .endif
    106  1.2       mrg 
    107  1.1       mrg .if CROSS
    108  1.2       mrg AFLAGS+=		-x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__
    109  1.2       mrg CEXTRAFLAGS?=		-D_LP64
    110  1.1       mrg .else
    111  1.2       mrg AFLAGS+=		-x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ ${CEXTRAFLAGS}
    112  1.1       mrg .endif
    113  1.2       mrg 
    114  1.1       mrg NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
    115  1.1       mrg srt0.o: srt0.s
    116  1.1       mrg 	${NORMAL_S}
    117  1.1       mrg 
    118  1.1       mrg # Explicit dependency for this.
    119  1.1       mrg boot.o: boot.c elfXX_exec.c
    120