003 File Manager
Current Path:
/usr/src/share/mk
usr
/
src
/
share
/
mk
/
📁
..
📄
Makefile
(1.69 KB)
📄
atf.test.mk
(3.21 KB)
📄
auto.obj.mk
(2.43 KB)
📄
bsd.README
(24.31 KB)
📄
bsd.arch.inc.mk
(387 B)
📄
bsd.clang-analyze.mk
(3 KB)
📄
bsd.compat.mk
(4.35 KB)
📄
bsd.compiler.mk
(9.02 KB)
📄
bsd.confs.mk
(3.82 KB)
📄
bsd.cpu.mk
(13.73 KB)
📄
bsd.crunchgen.mk
(5.72 KB)
📄
bsd.dep.mk
(10.71 KB)
📄
bsd.dirs.mk
(1.75 KB)
📄
bsd.doc.mk
(4.55 KB)
📄
bsd.dtb.mk
(94 B)
📄
bsd.endian.mk
(663 B)
📄
bsd.files.mk
(3.94 KB)
📄
bsd.incs.mk
(3.2 KB)
📄
bsd.info.mk
(5.32 KB)
📄
bsd.init.mk
(2.97 KB)
📄
bsd.kmod.mk
(72 B)
📄
bsd.lib.mk
(16.53 KB)
📄
bsd.libnames.mk
(9.23 KB)
📄
bsd.linker.mk
(4.29 KB)
📄
bsd.links.mk
(501 B)
📄
bsd.man.mk
(6.35 KB)
📄
bsd.mkopt.mk
(2.48 KB)
📄
bsd.nls.mk
(1.93 KB)
📄
bsd.obj.mk
(6.5 KB)
📄
bsd.opts.mk
(3.2 KB)
📄
bsd.own.mk
(6.56 KB)
📄
bsd.port.mk
(804 B)
📄
bsd.port.options.mk
(92 B)
📄
bsd.port.post.mk
(74 B)
📄
bsd.port.pre.mk
(76 B)
📄
bsd.port.subdir.mk
(594 B)
📄
bsd.prog.mk
(9.12 KB)
📄
bsd.progs.mk
(4.67 KB)
📄
bsd.snmpmod.mk
(1.23 KB)
📄
bsd.subdir.mk
(6.15 KB)
📄
bsd.suffixes-posix.mk
(1016 B)
📄
bsd.suffixes.mk
(2.37 KB)
📄
bsd.symver.mk
(1.09 KB)
📄
bsd.sys.mk
(13.4 KB)
📄
bsd.sysdir.mk
(528 B)
📄
bsd.test.mk
(3.11 KB)
📄
dirdeps-options.mk
(2.92 KB)
📄
dirdeps-targets.mk
(5.21 KB)
📄
dirdeps.mk
(28.55 KB)
📄
gendirdeps.mk
(12.04 KB)
📄
googletest.test.inc.mk
(807 B)
📄
googletest.test.mk
(1.32 KB)
📄
host-target.mk
(1.29 KB)
📄
install-new.mk
(1.7 KB)
📄
kmod.opts.mk
(77 B)
📄
local.autodep.mk
(624 B)
📄
local.dirdeps-options.mk
(670 B)
📄
local.dirdeps.mk
(6.02 KB)
📄
local.gendirdeps.mk
(1.77 KB)
📄
local.init.mk
(1.11 KB)
📄
local.meta.sys.mk
(7.49 KB)
📄
local.sys.env.mk
(1.53 KB)
📄
local.sys.mk
(2.5 KB)
📄
meta.autodep.mk
(9.42 KB)
📄
meta.stage.mk
(11.02 KB)
📄
meta.subdir.mk
(2.13 KB)
📄
meta.sys.mk
(4.04 KB)
📄
meta2deps.py
(23.87 KB)
📄
meta2deps.sh
(9.44 KB)
📄
netbsd-tests.test.mk
(888 B)
📄
plain.test.mk
(1.95 KB)
📄
src.init.mk
(213 B)
📄
src.libnames.mk
(17.02 KB)
📄
src.lua.mk
(1.35 KB)
📄
src.opts.mk
(11.26 KB)
📄
src.sys.env.mk
(2.63 KB)
📄
src.sys.mk
(1.65 KB)
📄
src.sys.obj.mk
(7.11 KB)
📄
src.tools.mk
(880 B)
📄
stage-install.sh
(2.1 KB)
📄
suite.test.mk
(3.97 KB)
📄
sys.dependfile.mk
(2.1 KB)
📄
sys.mk
(8.45 KB)
📄
tap.test.mk
(2.79 KB)
📄
version_gen.awk
(6.37 KB)
Editing: dirdeps-targets.mk
# $FreeBSD$ # RCSid: # $Id: dirdeps-targets.mk,v 1.22 2020/08/15 18:00:11 sjg Exp $ # # @(#) Copyright (c) 2019-2020 Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. # Permission to copy, redistribute or otherwise # use this file is hereby granted provided that # the above copyright notice and this notice are # left intact. # # Please send copies of changes and bug-fixes to: # sjg@crufty.net # ## # This makefile is used to set initial DIRDEPS for top-level build # targets. # # The basic idea is that we have a list of directories in # DIRDEPS_TARGETS_DIRS which are relative to SRCTOP. # When asked to make 'foo' we look for any directory named 'foo' # under DIRDEPS_TARGETS_DIRS. # We then search those dirs for any Makefile.depend* # Finally we select any that match conditions like REQUESTED_MACHINE # or TARGET_SPEC and initialize DIRDEPS accordingly. # # We will check each of the initial DIRDEPS for Makefile.dirdeps.options # and include any found. # This makes it feasible to tweak options like MK_DIRDEPS_CACHE # for a specific target. # # If MK_STATIC_DIRDEPS_CACHE is defined we will check if the # initial DIRDEPS has a static cache (Makefile.dirdeps.cache). # This only makes sense for seriously expensive targets. # .if ${.MAKE.LEVEL} == 0 # pickup customizations .-include <local.dirdeps-targets.mk> # for DIRDEPS_BUILD this is how we prime the pump DIRDEPS_TARGETS_DIRS ?= targets targets/pseudo # these prefixes can modify how we behave # they need to be stripped when looking for target dirs DIRDEPS_TARGETS_PREFIX_LIST ?= pkg- build- # some .TARGETS need filtering DIRDEPS_TARGETS_FILTER += Nall # matching target dirs if any tdirs := ${.TARGETS:${DIRDEPS_TARGETS_FILTER:ts:}:${DIRDEPS_TARGETS_PREFIX_LIST:@p@S,^$p,,@:ts:}:@t@${DIRDEPS_TARGETS_DIRS:@d@$d/$t@}@:@d@${exists(${SRCTOP}/$d):?$d:}@} .if !empty(DEBUG_DIRDEPS_TARGETS) .info tdirs=${tdirs} .endif .if !empty(tdirs) # some things we know we want to ignore DIRDEPS_TARGETS_SKIP_LIST += \ *~ \ *.bak \ *.inc \ *.old \ *.options \ *.orig \ *.rej \ # the list of MACHINEs we consider DIRDEPS_TARGETS_MACHINE_LIST += \ ${ALL_MACHINE_LIST:U} \ ${PSEUDO_MACHINE_LIST:Ucommon host host32} \ ${TARGET_MACHINE_LIST} DIRDEPS_TARGETS_MACHINE_LIST := ${DIRDEPS_TARGETS_MACHINE_LIST:O:u} # raw Makefile.depend* list tdeps != 'cd' ${SRCTOP} && 'ls' -1 ${tdirs:O:u:@d@$d/${.MAKE.DEPENDFILE_PREFIX}*@} 2> /dev/null; echo .if ${DEBUG_DIRDEPS_TARGETS:U:Mdep*} != "" .info tdeps=${tdeps} .endif # remove things we know we don't want tdeps := ${tdeps:${DIRDEPS_TARGETS_SKIP_LIST:${M_ListToSkip}}} .if ${DEBUG_DIRDEPS_TARGETS:U:Mdep*} != "" .info tdeps=${tdeps} .endif # plain entries (no qualifiers) these apply to any TARGET_SPEC ptdeps := ${tdeps:M*${.MAKE.DEPENDFILE_PREFIX}:S,/${.MAKE.DEPENDFILE_PREFIX},,} # MACHINE qualified entries mqtdeps := ${DIRDEPS_TARGETS_MACHINE_LIST:@m@${tdeps:M*.$m}@:S,/${.MAKE.DEPENDFILE_PREFIX},,} tqtdeps = .if ${TARGET_SPEC_VARS:[#]} > 1 # TARGET_SPEC qualified entries .if !empty(TARGET_SPEC_LIST) # we have a list of valid TARGET_SPECS; use it tqtdeps := ${TARGET_SPEC_LIST:U:O:u:@t@${tdeps:M*.$t}@:S,/${.MAKE.DEPENDFILE_PREFIX},,} .else # do we have a list of valid tuple members for at least # the last tupple element? if so match on that TARGET_SPEC_LAST_LIST ?= ${${TARGET_SPEC_VARS:[-1]}_LIST} .if !empty(TARGET_SPEC_LAST_LIST) tqtdeps := ${TARGET_SPEC_LAST_LIST:U:O:u:@t@${tdeps:M*,$t}@:S,/${.MAKE.DEPENDFILE_PREFIX},,} .else # this is sub-optimal match MACHINE, tqtdeps := ${DIRDEPS_TARGETS_MACHINE_LIST:@m@${tdeps:M*.$m,*}@:S,/${.MAKE.DEPENDFILE_PREFIX},,} .endif .endif .endif # now work out what we want in DIRDEPS .if empty(REQUESTED_MACHINE) # we want them all just as found DIRDEPS = ${ptdeps} ${mqtdeps} ${tqtdeps} .else # we only want those that match REQUESTED_MACHINE/REQUESTED_TARGET_SPEC # or REQUESTED_TARGET_SPEC (TARGET_SPEC) DIRDEPS = \ ${ptdeps:@d@$d.${REQUESTED_TARGET_SPEC:U${TARGET_SPEC:U${REQUESTED_MACHINE}}}@} \ ${mqtdeps:M*.${REQUESTED_MACHINE}} \ ${tqtdeps:M*.${REQUESTED_TARGET_SPEC:U${TARGET_SPEC}}} .endif # clean up DIRDEPS := ${DIRDEPS:O:u} .if !empty(DEBUG_DIRDEPS_TARGETS) .for x in tdeps ptdeps mqtdeps tqtdeps DIRDEPS .info $x=${$x} .endfor .endif .endif # if we got DIRDEPS get to work .if !empty(DIRDEPS) DIRDEPS.dirs := ${DIRDEPS:S,^,${SRCTOP}/,:@d@${exists($d):?$d:${d:R}}@} # some targets what to tweak options we might want to process now .for m in ${DIRDEPS.dirs:S,$,/Makefile.dirdeps.options,} .-include <$m> .endfor .if defined(MK_STATIC_DIRDEPS_CACHE) # some targets are very expensive to compute dirdeps for # so we may have a static cache .for c in ${DIRDEPS.dirs:S,$,/Makefile.dirdeps.cache,} .if exists($c) STATIC_DIRDEPS_CACHE ?= $c .if ${MK_STATIC_DIRDEPS_CACHE} == "yes" DIRDEPS_CACHE ?= $c MK_DIRDEPS_CACHE = yes .endif .endif .endfor .if defined(STATIC_DIRDEPS_CACHE) .export STATIC_DIRDEPS_CACHE .endif .endif # allow a top-level makefile to do other stuff # before including dirdeps.mk .if ${MK_DIRDEPS_TARGETS_INCLUDE_DIRDEPS:Uyes} == "yes" .include <dirdeps.mk> .endif DIRDEPS_TARGETS_SKIP += all clean* destroy* .for t in ${.TARGETS:${DIRDEPS_TARGETS_SKIP:${M_ListToSkip}}} $t: dirdeps .endfor .endif .endif
Upload File
Create Folder