[BACK]Return to Makefile.minirootkmod CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / distrib / common

File: [cvs.NetBSD.org] / src / distrib / common / Makefile.minirootkmod (download)

Revision 1.1, Tue Oct 16 08:19:36 2012 UTC (9 years, 7 months ago) by apb
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: yamt-pagecache, tls-maxphys

Add distrib/common/Makefile.minirootkmod.  Apart from comments and the
conversion of some constants to variables, this is identical to the code
that was previously present in both distrib/amd64/kmod/Makefile and

Change distrib/amd64/kmod/Makefile and distrib/i386/kmod/Makefile to just
set some variables and .include "../../common/Makefile.minirootkmod".

#	$NetBSD: Makefile.minirootkmod,v 1.1 2012/10/16 08:19:36 apb Exp $
# Makefile snippet to build a miniroot kernel module (e.g. miniroot.kmod)
# Required variables:
#	NETBSDSRCDIR	top level of src tree (set by <bsd.own.mk>)
# Optional variables:
#	MINIROOT	Basename of the kernel module to be created.
#			".kmod" will be appended to get the file name.
#			[default: miniroot]
#	RAMDISK		Basename of the ramdisk to be embedded in the
#			kernel module.  This is used as both a directory
#			name (${.CURDIR}/../ramdisks/${RAMDISK}) and
#			as a file name within the .OBJDIR of that
#			directory (${RAMDISK}.fs).  [default: ramdisk]

MINIROOT?=	miniroot
RAMDISK?=	ramdisk

.include <bsd.own.mk>
.include "${.PARSEDIR}/Makefile.distrib"

MKMAN=		no

# SRCMOD is a skeleton version of miniroot.kmod, without an embedded ramdisk.
# It should already have been created by "make install" in
# .../sys/modules/miniroot, and its name includes literal "miniroot",
# not variable ${MINIROOT}.
# DSTMOD is a copy of SRCMOD that is modified to include an embedded ramdisk.
# It will be created by rules in this Makefile.
# RAMDISKFS is the ramdisk image to be included inside DSTMOD.  It should
# already have been created by the Makefile in RAMDISKSRCDIR.
SRCMOD=		${DESTDIR}/stand/${MACHINE}/${MODULEVER}/modules/miniroot/miniroot.kmod

		${OBJCOPY} --add-section miniroot=${RAMDISKFS} \
		    --set-section-flags miniroot=alloc,contents,load,data \
		    ${SRCMOD} ${DSTMOD}.tmp
		gzip -9nc < ${DSTMOD}.tmp > ${DSTMOD}
		rm -f ${DSTMOD}.tmp

.include <bsd.prog.mk>

release:	${PROG}