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

Annotation of src/distrib/common/Makefile.makedev, Revision 1.18

1.18    ! matt        1: #      $NetBSD: Makefile.makedev,v 1.17 2012/07/20 11:19:03 matt Exp $
1.1       lukem       2: #
                      3: # Makefile snippet to add ${MAKEDEVTARGETS} devices to the mtree list
1.14      tsutsui     4: # (if set), otherwise copy .OBJDIR-of-etc/MAKEDEV to ./dev
1.4       lukem       5: #
                      6: # If this is to be used with Makefile.image, then this file should be
                      7: # .include-d first.
1.1       lukem       8: #
                      9: # Required variables:
1.2       lukem      10: #      NETBSDSRCDIR    top level of src tree (set by <bsd.own.mk>)
1.1       lukem      11: #      MACHINE         machine name (set externally by build framework)
                     12: #
                     13: # Optional variables:
1.7       lukem      14: #      MAKEDEVTARGETS  targets to create with .OBJDIR-of-etc/MAKEDEV
1.1       lukem      15: #
                     16: # Variables modified by this:
1.7       lukem      17: #      MAKEDEVSCRIPT   path to .OBJDIR-of-etc/MAKEDEV
                     18: #      MTREECONF       may get "devices.spec" added
                     19: #      LISTS           may get "list.makedev" added
1.13      apb        20: #      IMAGEDEPENDS    may get ${MAKEDEVSCRIPT} added
                     21: #      PARSELISTENV    may get MAKEDEVSCRIPT=... added
1.1       lukem      22: #
                     23:
1.5       lukem      24: .if !defined(_MAKEFILE_MAKEDEV_)
                     25: _MAKEFILE_MAKEDEV_=1
                     26:
                     27:
1.1       lukem      28: MAKEDEVSPEC?=  devices.spec
                     29:
1.7       lukem      30: _MAKEDEVOBJDIR!=cd ${NETBSDSRCDIR}/etc && ${PRINTOBJDIR}
                     31: MAKEDEVSCRIPT= ${_MAKEDEVOBJDIR}/MAKEDEV
                     32:
1.1       lukem      33: CLEANFILES+=   ${MAKEDEVSPEC} ${MAKEDEVSPEC}.tmp
                     34:
                     35:
                     36: .if defined(MAKEDEVTARGETS)
                     37:
                     38: #
                     39: #      MAKEDEVTARGETS is set; add those devices to the mtree spec that's
                     40: #      used to build the file system
                     41: #
                     42: MTREECONF+=    ${MAKEDEVSPEC}
                     43:
1.18    ! matt       44: ${MAKEDEVSPEC}:        ${MAKEDEVSCRIPT} Makefile \
        !            45:                ${NETBSDSRCDIR}/etc/etc.${MACHINE}/MAKEDEV.conf
        !            46:
1.10      lukem      47:        ${_MKTARGET_CREATE}
1.16      njoly      48:        rm -f ${.TARGET} ${.TARGET}.tmp
1.8       lukem      49:        MACHINE=${MACHINE:Q} MACHINE_ARCH=${MACHINE_ARCH:Q} \
1.9       lukem      50:            ${HOST_SH} ${MAKEDEVSCRIPT} -s ${MAKEDEVTARGETS} \
1.16      njoly      51:            > ${.TARGET}.tmp
                     52:        ${TOOL_SED} -e '/^\. type=dir/d' -e 's,^\.,./dev,' ${.TARGET}.tmp \
                     53:            | sort -o ${.TARGET}
1.1       lukem      54:
                     55: .else  # ! MAKEDEVTARGETS
                     56:
                     57: #
                     58: #      MAKEDEVTARGETS isn't set; copy in /dev/MAKEDEV and rely upon
1.3       lukem      59: #      init(8) to mount an mfs /dev and recreate the devices by
                     60: #      (effectively) running "cd /dev ; ./MAKEDEV all"
1.1       lukem      61: #
                     62: LISTS+=                ${DISTRIBDIR}/common/list.makedev
1.13      apb        63: IMAGEDEPENDS+= ${MAKEDEVSCRIPT}
1.7       lukem      64: PARSELISTENV+= MAKEDEVSCRIPT=${MAKEDEVSCRIPT:Q}
1.1       lukem      65:
                     66: ${MAKEDEVSPEC}:        .PHONY
                     67:
                     68: .endif # ! MAKEDEVTARGETS
1.5       lukem      69:
                     70:
                     71: .endif # _MAKEFILE_MAKEDEV_

CVSweb <webmaster@jp.NetBSD.org>