diff options
Diffstat (limited to 'share/mk')
-rw-r--r-- | share/mk/bsd.confs.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.dirs.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.doc.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.files.mk | 6 | ||||
-rw-r--r-- | share/mk/bsd.incs.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.lib.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.links.mk | 2 | ||||
-rw-r--r-- | share/mk/bsd.man.mk | 34 | ||||
-rw-r--r-- | share/mk/bsd.mkopt.mk | 68 | ||||
-rw-r--r-- | share/mk/bsd.prog.mk | 2 | ||||
-rw-r--r-- | share/mk/src.init.mk | 2 | ||||
-rw-r--r-- | share/mk/src.libnames.mk | 8 | ||||
-rw-r--r-- | share/mk/src.opts.mk | 10 |
13 files changed, 107 insertions, 35 deletions
diff --git a/share/mk/bsd.confs.mk b/share/mk/bsd.confs.mk index ea702cece28d..77b573c7e42c 100644 --- a/share/mk/bsd.confs.mk +++ b/share/mk/bsd.confs.mk @@ -49,7 +49,7 @@ ${group}TAGS+= package=${PACKAGE:Uutilities} . endif . endif ${group}TAGS+= config -${group}TAG_ARGS= -T ${${group}TAGS:[*]:S/ /,/g} +${group}TAG_ARGS= -T ${${group}TAGS:ts,:[*]} . endif diff --git a/share/mk/bsd.dirs.mk b/share/mk/bsd.dirs.mk index 317ff61cd604..1f81bda80eab 100644 --- a/share/mk/bsd.dirs.mk +++ b/share/mk/bsd.dirs.mk @@ -22,7 +22,7 @@ ${dir}_FLAG= -f ${${dir}_FLAGS} . if !defined(${dir}TAGS) || ! ${${dir}TAGS:Mpackage=*} ${dir}TAGS+= package=${${dir}PACKAGE:Uutilities} . endif -${dir}TAG_ARGS= -T ${${dir}TAGS:[*]:S/ /,/g} +${dir}TAG_ARGS= -T ${${dir}TAGS:ts,:[*]} . endif installdirs: installdirs-${dir} diff --git a/share/mk/bsd.doc.mk b/share/mk/bsd.doc.mk index ea8c68e87d50..675639db7611 100644 --- a/share/mk/bsd.doc.mk +++ b/share/mk/bsd.doc.mk @@ -82,7 +82,7 @@ TRFLAGS+= -t .if !defined(TAGS) || ! ${TAGS:Mpackage=*} TAGS+= package=${PACKAGE:Uutilities} .endif -TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} +TAG_ARGS= -T ${TAGS:ts,:[*]} .endif DCOMPRESS_EXT?= ${COMPRESS_EXT} diff --git a/share/mk/bsd.files.mk b/share/mk/bsd.files.mk index aedc414d6a28..3ec4da010577 100644 --- a/share/mk/bsd.files.mk +++ b/share/mk/bsd.files.mk @@ -39,14 +39,14 @@ STAGE_SETS+= ${group:C,[/*],_,g} .if ${group} == "FILES" FILESPACKAGE?= ${PACKAGE:Uutilities} -FILESTAGS+= ${TAGS} +FILESTAGS+= ${TAGS:Npackage=*} .endif .if defined(NO_ROOT) .if !defined(${group}TAGS) || ! ${${group}TAGS:Mpackage=*} -${group}TAGS+= package=${${group}PACKAGE:Uutilities} +${group}TAGS+= package=${${group}PACKAGE:U${PACKAGE:Uutilities}} .endif -${group}TAG_ARGS= -T ${${group}TAGS:[*]:S/ /,/g} +${group}TAG_ARGS= -T ${${group}TAGS:ts,:[*]} .endif diff --git a/share/mk/bsd.incs.mk b/share/mk/bsd.incs.mk index df4cf4641141..848ee0aa2ea9 100644 --- a/share/mk/bsd.incs.mk +++ b/share/mk/bsd.incs.mk @@ -37,7 +37,7 @@ ${group}TAGS+= package=${${group}PACKAGE:Uutilities},dev ${group}TAGS+= package=${PACKAGE:Uutilities},dev .endif .endif -${group}TAG_ARGS= -T ${${group}TAGS:[*]:S/ /,/g} +${group}TAG_ARGS= -T ${${group}TAGS:ts,:[*]} .endif _${group}INCS= diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 01dd979af155..3013f32c2b36 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -72,7 +72,7 @@ TAGS+= lib${_libcompat} .if !defined(TAGS) || ! ${TAGS:Mpackage=*} TAGS+= package=${PACKAGE:Uutilities} .endif -TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} +TAG_ARGS= -T ${TAGS:ts,:[*]} .endif # ELF hardening knobs diff --git a/share/mk/bsd.links.mk b/share/mk/bsd.links.mk index 437ffd0d3b34..509520a24a3a 100644 --- a/share/mk/bsd.links.mk +++ b/share/mk/bsd.links.mk @@ -7,7 +7,7 @@ .if !defined(TAGS) || ! ${TAGS:Mpackage=*} TAGS+= package=${PACKAGE} .endif -TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} +TAG_ARGS= -T ${TAGS:ts,:[*]} .endif afterinstall: _installlinks diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk index a5a4fd528268..66155d1b4cd9 100644 --- a/share/mk/bsd.man.mk +++ b/share/mk/bsd.man.mk @@ -114,7 +114,7 @@ ${__group}TAGS+= package=${${__group}PACKAGE:U${PACKAGE:Uutilities}}-man .endif .endif -${__group}TAG_ARGS= -T ${${__group}TAGS:[*]:S/ /,/g} +${__group}TAG_ARGS= -T ${${__group}TAGS:ts,:[*]} .endif # defined(NO_ROOT) ${__group}INSTALL?= ${INSTALL} ${${__group}TAG_ARGS} \ @@ -137,13 +137,15 @@ ZEXT= CLEANFILES+= ${${__group}:T:S/$/${FILTEXTENSION}/g} CLEANFILES+= ${${__group}:T:S/$/${CATEXT}${FILTEXTENSION}/g} .for __page in ${${__group}} -.for __target in ${__page:T:S/$/${FILTEXTENSION}/g} +# Escape colons in target names to support manual pages whose +# filenames contain colons. +.for __target in ${__page:T:S/:/\:/g:S/$/${FILTEXTENSION}/g} all-man: ${__target} ${__target}: ${__page} ${MANFILTER} < ${.ALLSRC} > ${.TARGET} .endfor .if defined(MANBUILDCAT) && !empty(MANBUILDCAT) -.for __target in ${__page:T:S/$/${CATEXT}${FILTEXTENSION}/g} +.for __target in ${__page:T:S/:/\:/g:S/$/${CATEXT}${FILTEXTENSION}/g} all-man: ${__target} ${__target}: ${__page} ${MANFILTER} < ${.ALLSRC} | ${MANDOC_CMD} > ${.TARGET} @@ -156,7 +158,7 @@ ${__target}: ${__page} CLEANFILES+= ${${__group}:T:S/$/${CATEXT}/g} .if defined(MANBUILDCAT) && !empty(MANBUILDCAT) .for __page in ${${__group}} -.for __target in ${__page:T:S/$/${CATEXT}/g} +.for __target in ${__page:T:S/:/\:/g:S/$/${CATEXT}/g} all-man: ${__target} ${__target}: ${__page} ${MANDOC_CMD} ${.ALLSRC} > ${.TARGET} @@ -176,7 +178,7 @@ ZEXT= ${MCOMPRESS_EXT} CLEANFILES+= ${${__group}:T:S/$/${MCOMPRESS_EXT}/g} CLEANFILES+= ${${__group}:T:S/$/${CATEXT}${MCOMPRESS_EXT}/g} .for __page in ${${__group}} -.for __target in ${__page:T:S/$/${MCOMPRESS_EXT}/} +.for __target in ${__page:T:S/:/\:/g:S/$/${MCOMPRESS_EXT}/} all-man: ${__target} ${__target}: ${__page} .if defined(MANFILTER) @@ -186,7 +188,7 @@ ${__target}: ${__page} .endif .endfor .if defined(MANBUILDCAT) && !empty(MANBUILDCAT) -.for __target in ${__page:T:S/$/${CATEXT}${MCOMPRESS_EXT}/} +.for __target in ${__page:T:S/:/\:/g:S/$/${CATEXT}${MCOMPRESS_EXT}/} all-man: ${__target} ${__target}: ${__page} .if defined(MANFILTER) @@ -286,11 +288,11 @@ manlinksinstall-${__group}: .endif .endfor -manlint: +manlint: .PHONY checkmanlinks .if defined(${__group}) && !empty(${__group}) .for __page in ${${__group}} -manlint: ${__page}lint -${__page}lint: ${__page} +manlint: ${__page:S/:/\:/g}lint +${__page:S/:/\:/g}lint: .PHONY ${__page} .if defined(MANFILTER) ${MANFILTER} < ${.ALLSRC} | ${MANDOC_CMD} -Tlint .else @@ -299,4 +301,18 @@ ${__page}lint: ${__page} .endfor .endif +checkmanlinks: .PHONY +.if defined(${__group}LINKS) +checkmanlinks: checkmanlinks-${__group} +checkmanlinks-${__group}: .PHONY +.for __page __link in ${${__group}LINKS} +checkmanlinks-${__group}: checkmanlinks-${__group}-${__link} +checkmanlinks-${__group}-${__link}: .PHONY ${__page} + @if ! egrep -q "^(\.\\\\\" )?\.Nm ${__link:R}( ,)?$$" ${.ALLSRC}; then \ + echo "${__group}LINKS: '.Nm ${__link:R}' not found in ${__page}"; \ + exit 1; \ + fi >&2 +.endfor # __page __link in ${${__group}LINKS} +.endif # defined(${__group}LINKS) + .endfor # __group in ${MANGROUPS} diff --git a/share/mk/bsd.mkopt.mk b/share/mk/bsd.mkopt.mk index f93101544bf7..4d67ba04294d 100644 --- a/share/mk/bsd.mkopt.mk +++ b/share/mk/bsd.mkopt.mk @@ -19,14 +19,6 @@ # If both WITH_FOO and WITHOUT_FOO are defined, WITHOUT_FOO wins and # MK_FOO is set to "no" regardless of which list it was in. # -# All of __DEFAULT_YES_OPTIONS, __DEFAULT_NO_OPTIONS and -# __DEFAULT_DEPENDENT_OPTIONS are undef'd after all this processing, -# allowing this file to be included multiple times with different lists. -# -# Other parts of the build system will set BROKEN_OPTIONS to a list -# of options that are broken on this platform. This will not be unset -# before returning. Clients are expected to always += this variable. -# # Users should generally define WITH_FOO or WITHOUT_FOO, but the build # system should use MK_FOO={yes,no} when it needs to override the # user's desires or default behavior. @@ -35,6 +27,19 @@ # defined and __FOO_DEFAULT if not. Valid values for FOO are specified # by __FOO_OPTIONS. # +# All of __REQUIRED_OPTIONS, __DEFAULT_DEPENDENT_OPTIONS, +# __DEFAULT_YES_OPTIONS, __DEFAULT_NO_OPTIONS, and __SINGLE_OPTIONS +# are undef'd after all this processing, allowing this file to be +# included multiple times with different lists. However, we keep +# deduplicated lists of these options in similarly-named variables +# without the leading underscores (i.e. FOO_OPTIONS is the complete +# deduplicated list of all values of __FOO_OPTIONS across all +# invokations of this file). +# +# Other parts of the build system will set BROKEN_OPTIONS to a list +# of options that are broken on this platform. This will not be unset +# before returning. Clients are expected to always += this variable. +# # Other parts of the build system will set BROKEN_SINGLE_OPTIONS to a # list of 3-tuples of the form: "OPTION broken_value replacment_value". # This will not be unset before returning. Clients are expected to @@ -42,6 +47,33 @@ # # +# These variables accumulate all the options from our possibly +# multiple callers so they're available to build tools such as +# tools/build/options/makeman. +# +DEFAULT_NO_OPTIONS+=${__DEFAULT_NO_OPTIONS} +DEFAULT_NO_OPTIONS:=${DEFAULT_NO_OPTIONS:O:u} +DEFAULT_YES_OPTIONS+=${__DEFAULT_YES_OPTIONS} +DEFAULT_YES_OPTIONS:=${DEFAULT_YES_OPTIONS:O:u} +DEFAULT_DEPENDENT_OPTIONS+=${__DEFAULT_DEPENDENT_OPTIONS} +DEFAULT_DEPENDENT_OPTIONS:=${DEFAULT_DEPENDENT_OPTIONS:O:u} +REQUIRED_OPTIONS+=${__REQUIRED_OPTIONS} +REQUIRED_OPTIONS:=${REQUIRED_OPTIONS:O:u} +SINGLE_OPTIONS+=${__SINGLE_OPTIONS} +SINGLE_OPTIONS:=${SINGLE_OPTIONS:O:u} + +# +# All options defined by our caller; we will undef this before +# returning. +# +__ALL_OPTIONS:= \ + ${__DEFAULT_NO_OPTIONS} \ + ${__DEFAULT_YES_OPTIONS} \ + ${__REQUIRED_OPTIONS} \ + ${__DEFAULT_DEPENDENT_OPTIONS:H} \ + ${__SINGLE_OPTIONS} + +# # MK_* options which default to "yes". # .for var in ${__DEFAULT_YES_OPTIONS} @@ -72,6 +104,7 @@ MK_${var}:= yes .endif MK_${var}:= yes .endfor +.undef __REQUIRED_OPTIONS # # MK_* options which default to "no". @@ -142,3 +175,22 @@ MK_${vv:H}?= ${MK_${vv:T}} MK_${vv:H}:= ${MK_${vv:H}} .endfor .undef __DEFAULT_DEPENDENT_OPTIONS + +# +# Define SRC_OPT_DEFS and SRC_OPT_LIST +# +SRC_OPT_DEFS?=-D__${MACHINE_ARCH}__ +SRC_OPT_LIST?=TARGET=${MACHINE} TARGET_ARCH=${MACHINE_ARCH} +.for option in ${__ALL_OPTIONS:O:u} +.if defined(OPT_${option}) +SRC_OPT_DEFS+=-D${option}=${OPT_${option}:Q} +SRC_OPT_LIST+=${option}=${OPT_${option}:Q} +.elif ${MK_${option}} == yes +SRC_OPT_DEFS+=-D${option} +SRC_OPT_LIST+=WITH_${option}=1 +.elif ${MK_${option}} == no +SRC_OPT_DEFS+=-U${option} +SRC_OPT_LIST+=WITHOUT_${option}=1 +.endif +.endfor +.undef __ALL_OPTIONS diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk index f44556ef9b75..9350d4786cec 100644 --- a/share/mk/bsd.prog.mk +++ b/share/mk/bsd.prog.mk @@ -129,7 +129,7 @@ STRIP?= -s .if !defined(TAGS) || ! ${TAGS:Mpackage=*} TAGS+= package=${PACKAGE:Uutilities} .endif -TAG_ARGS= -T ${TAGS:[*]:S/ /,/g} +TAG_ARGS= -T ${TAGS:ts,:[*]} .endif .if defined(NO_SHARED) && ${NO_SHARED:tl} != "no" diff --git a/share/mk/src.init.mk b/share/mk/src.init.mk index 01ea5437e5a7..fd3f3501f609 100644 --- a/share/mk/src.init.mk +++ b/share/mk/src.init.mk @@ -3,7 +3,7 @@ __<src.init.mk>__: .NOTMAIN .if !target(buildenv) -buildenv: .PHONY +buildenv: .PHONY .NOTMAIN ${_+_}@env BUILDENV_DIR=${.CURDIR} ${MAKE} -C ${SRCTOP} buildenv .endif diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index 0fe352dffaf4..9ca043e7733c 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -78,6 +78,7 @@ _INTERNALLIBS= \ smdb \ smutil \ telnet \ + util++ \ vers \ wpaap \ wpacommon \ @@ -471,7 +472,11 @@ _DP_ncursesw= tinfow _DP_formw= ncursesw _DP_nvpair= spl _DP_panelw= ncursesw +.if ${MK_MITKRB5} == "no" _DP_rpcsec_gss= gssapi +.else +_DP_rpcsec_gss= gssapi_krb5 +.endif _DP_smb= kiconv _DP_ulog= md _DP_fifolog= z @@ -694,6 +699,9 @@ LIBPKGECC?= ${LIBPKGECCDIR}/libpkgecc${PIE_SUFFIX}.a LIBPMCSTATDIR= ${_LIB_OBJTOP}/lib/libpmcstat LIBPMCSTAT?= ${LIBPMCSTATDIR}/libpmcstat${PIE_SUFFIX}.a +LIBUTIL++DIR= ${_LIB_OBJTOP}/lib/libutil++ +LIBUTIL++?= ${LIBUTIL++DIR}/libutil++${PIE_SUFFIX}.a + LIBWPAAPDIR= ${_LIB_OBJTOP}/usr.sbin/wpa/src/ap LIBWPAAP?= ${LIBWPAAPDIR}/libwpaap${PIE_SUFFIX}.a diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index ef43d3c939b2..f146a4b24424 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -80,6 +80,7 @@ __DEFAULT_YES_OPTIONS = \ CDDL \ CLANG \ CLANG_BOOTSTRAP \ + CLEAN \ CPP \ CROSS_COMPILER \ CRYPT \ @@ -200,7 +201,6 @@ __DEFAULT_NO_OPTIONS = \ BHYVE_SNAPSHOT \ CLANG_EXTRAS \ CLANG_FORMAT \ - CLEAN \ DIALOG \ DETECT_TZ_CHANGES \ DISK_IMAGE_TOOLS_BOOTSTRAP \ @@ -296,9 +296,9 @@ __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF LLVM_TARGET_MIPS .include <bsd.compiler.mk> .if ${__T} == "i386" || ${__T} == "amd64" -__DEFAULT_NO_OPTIONS += FDT +__DEFAULT_NO_OPTIONS+=FDT .else -__DEFAULT_YES_OPTIONS += FDT +__DEFAULT_YES_OPTIONS+=FDT .endif .if ${__T:Marm*} == "" && ${__T:Mriscv64*} == "" @@ -519,8 +519,4 @@ MK_${vv:H}:= ${MK_${vv:T}} .endif .endfor -# -# Set defaults for the MK_*_SUPPORT variables. -# - .endif # !target(__<src.opts.mk>__) |