Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# $NetBSD: Makefile.bootxx,v 1.2 2021/03/14 22:58:10 christos Exp $

SRCS = start.S bootxx.c booted_dev.c blkdev.c cfe.c cfe_api.c \
       putstr.c panic_putstr.c 

BOOT_RELOC = ${PRIMARY_LOAD_ADDRESS}

CPPFLAGS += ${PRIMARY_CPPFLAGS} \
		-DLIBSA_FS_SINGLECOMPONENT -DLIBSA_NO_FS_WRITE \
		-DLIBSA_NO_FS_CLOSE -DLIBSA_NO_FS_SEEK \
		-DLIBSA_SINGLE_DEVICE=blkdev \
		  -D"blkdevioctl(x,y,z)=EINVAL" -D"blkdevclose(f)=0" \
		-DLIBSA_NO_TWIDDLE \
		-DLIBSA_NO_FD_CHECKING \
		-DLIBSA_NO_RAW_ACCESS \
		-DLIBSA_NO_DISKLABEL_MSGS

CLEANFILES+= ${PROG}.sym

${PROG}: ${PROG}.sym
	@echo creating ${PROG} from ${PROG}.sym...
	@${OBJCOPY} --output-target=binary -R .reginfo -R .MIPS.abiflags \
	    ${PROG}.sym ${PROG}
	@chmod 644 ${PROG}
	@ls -l ${PROG}
	@${CHECKSIZE_CMD} ${PROG}.sym ${PROG} ${PRIMARY_MAX_LOAD} \
	    ${PRIMARY_MAX_TOTAL} || (rm -f ${PROG} ; false)

SAMISCMAKEFLAGS= SA_INCLUDE_NET=no SA_USE_CREAD=no
.include "../Makefile.bootprogs"

${PROG}.sym: ${OBJS} ${LIBSA} ${LIBKERN}
	${_MKTARGET_LINK}
	${LD} ${LDABI} -Ttext ${BOOT_RELOC} -N -e start -o ${PROG}.sym \
	    ${OBJS} ${LIBSA} ${LIBKERN}
	@chmod 644 ${PROG}.sym
	@${SIZE} ${PROG}.sym