Makefile.makedev revision 1.5
11.5Slukem# $NetBSD: Makefile.makedev,v 1.5 2003/03/11 07:18:38 lukem Exp $ 21.1Slukem# 31.1Slukem# Makefile snippet to add ${MAKEDEVTARGETS} devices to the mtree list 41.1Slukem# (if set), otherwise copy etc.${MACHINE}/MAKEDEV to ./dev 51.4Slukem# 61.4Slukem# If this is to be used with Makefile.image, then this file should be 71.4Slukem# .include-d first. 81.1Slukem# 91.1Slukem# Required variables: 101.2Slukem# NETBSDSRCDIR top level of src tree (set by <bsd.own.mk>) 111.1Slukem# MACHINE machine name (set externally by build framework) 121.1Slukem# 131.1Slukem# Optional variables: 141.1Slukem# MAKEDEVTARGETS targets to create with etc/etc.${MACHINE}/MAKEDEV 151.1Slukem# 161.1Slukem# Variables modified by this: 171.1Slukem# MTREECONF may get "devices.spec" added to it 181.1Slukem# 191.1Slukem 201.5Slukem.if !defined(_MAKEFILE_MAKEDEV_) 211.5Slukem_MAKEFILE_MAKEDEV_=1 221.5Slukem 231.5Slukem 241.1SlukemMAKEDEVSPEC?= devices.spec 251.1Slukem 261.1SlukemCLEANFILES+= ${MAKEDEVSPEC} ${MAKEDEVSPEC}.tmp 271.1Slukem 281.1Slukem 291.1Slukem.if defined(MAKEDEVTARGETS) 301.1Slukem 311.1Slukem# 321.1Slukem# MAKEDEVTARGETS is set; add those devices to the mtree spec that's 331.1Slukem# used to build the file system 341.1Slukem# 351.2Slukem_MAKEDEVSCRIPT= ${NETBSDSRCDIR}/etc/etc.${MACHINE}/MAKEDEV 361.1Slukem_MAKEDEVWRAP= ${DISTRIBDIR}/common/MAKEDEV.wrapper 371.1Slukem_MAKEDEV2SPEC= ${DISTRIBDIR}/common/makedev2spec.awk 381.1Slukem 391.1SlukemMTREECONF+= ${MAKEDEVSPEC} 401.1Slukem 411.1Slukem${MAKEDEVSPEC}: ${_MAKEDEVSCRIPT} ${_MAKEDEVWRAP} ${_MAKEDEV2SPEC} 421.1Slukem -rm -f ${.TARGET} ${.TARGET}.tmp 431.1Slukem MAKEDEVSCRIPT=${_MAKEDEVSCRIPT:Q} \ 441.1Slukem sh ${_MAKEDEVWRAP} ${MAKEDEVTARGETS} | \ 451.1Slukem awk -f ${_MAKEDEV2SPEC} > ${.TARGET}.tmp \ 461.1Slukem && sort -o ${.TARGET} ${.TARGET}.tmp 471.1Slukem 481.1Slukem.else # ! MAKEDEVTARGETS 491.1Slukem 501.1Slukem# 511.1Slukem# MAKEDEVTARGETS isn't set; copy in /dev/MAKEDEV and rely upon 521.3Slukem# init(8) to mount an mfs /dev and recreate the devices by 531.3Slukem# (effectively) running "cd /dev ; ./MAKEDEV all" 541.1Slukem# 551.1SlukemLISTS+= ${DISTRIBDIR}/common/list.makedev 561.2SlukemIMAGEDEPENDS+= ${NETBSDSRCDIR}/etc/etc.${MACHINE}/MAKEDEV 571.1Slukem 581.1Slukem${MAKEDEVSPEC}: .PHONY 591.1Slukem 601.1Slukem.endif # ! MAKEDEVTARGETS 611.5Slukem 621.5Slukem 631.5Slukem.endif # _MAKEFILE_MAKEDEV_ 64