[Bug 213446] Configurable verbose build output

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Feb 18 03:42:40 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213446

--- Comment #28 from lightside <lightside at gmx.com> ---
Created attachment 180096
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=180096&action=edit
The custom.bsd.port.mk file to use for BSDPORTMK variable (v2)

(In reply to comment #25)
Added some (user level) solution for following cases:
MAKE_ARGS+=V=1
https://github.com/freebsd/freebsd-ports/blob/b83b2ba2ca7ca69c7c3a5ccd4dd00ce146bfe9e8/devel/cgit/Makefile#L26
MAKE_ARGS+=VERBOSE=1
https://github.com/freebsd/freebsd-ports/blob/4687be62e6ec86ba48a6447122a6cab409334540/devel/icu/Makefile#L27
MAKE_ARGS+=verbose=yes
https://github.com/freebsd/freebsd-ports/blob/6c1e55158cb18ae1b2213a452b9f1bd861b14944/multimedia/libvpx/Makefile#L42
MAKE_ARGS+=verbose=1
https://github.com/freebsd/freebsd-ports/blob/38843cd6da919e19590c9aa97c12d9cffffdf537/devel/xsd/Makefile#L35
MAKE_ENV+=V=1
https://github.com/freebsd/freebsd-ports/blob/70558fc7a7b0973c0ca323e82e585d11f0df5593/devel/git/Makefile#L31
MAKE_ENV+=VERBOSE=1
https://github.com/freebsd/freebsd-ports/blob/fce8f50432e2ce4ade7801cfaa86793c2b971955/x11-toolkits/girara/Makefile#L20
MAKE_ENV+=verbose=yes
https://github.com/freebsd/freebsd-ports/blob/d7cb557b47478b4047ff701030e9309f957ab6b2/multimedia/xawtv/Makefile#L27

and other V=*, VERBOSE=* (case insensitive) variants:
-8<--
.ifndef ALLOW_CUSTOM_VERBOSE

.if !defined(_MAKE_ARGS_CHECKED) && !defined(_NINJA_MAKE_ARGS_CHANGED) &&
!defined(_WAF_MAKE_ARGS_CHANGED) && defined(MAKE_ARGS)
_MAKE_ARGS_CHECKED=     yes
.if ${MAKE_ARGS:M[vV]=*}
MAKE_ARGS:=     ${MAKE_ARGS:N[vV]=*}
_MAKE_ARGS_CHECKED+=    v
.endif
.if ${MAKE_ARGS:M[vV][eE][rR][bB][oO][sS][eE]=*}
MAKE_ARGS:=     ${MAKE_ARGS:N[vV][eE][rR][bB][oO][sS][eE]=*}
_MAKE_ARGS_CHECKED+=    verbose
.endif
.endif

.if !defined(_MAKE_ENV_CHECKED) && defined(MAKE_ENV)
_MAKE_ENV_CHECKED=      yes
.if ${MAKE_ENV:M[vV]=*}
MAKE_ENV:=      ${MAKE_ENV:N[vV]=*}
_MAKE_ENV_CHECKED+=     v
.endif
.if ${MAKE_ENV:M[vV][eE][rR][bB][oO][sS][eE]=*}
MAKE_ENV:=      ${MAKE_ENV:N[vV][eE][rR][bB][oO][sS][eE]=*}
_MAKE_ENV_CHECKED+=     verbose
.endif
.endif

.endif
-->8-

Possible to disable this with using ALLOW_CUSTOM_VERBOSE or ALLOW_VERBOSE
variable(s):
% make ALLOW_CUSTOM_VERBOSE=1
or (also to disable other checks):
% make ALLOW_VERBOSE=1

To check what cases were used (v and/or verbose):
% make -V _MAKE_ARGS_CHECKED -V _MAKE_ENV_CHECKED

To check what was removed from MAKE_ARGS and/or MAKE_ENV variables (with using
shells/bash):
$ diff <(make ALLOW_VERBOSE=1 -V MAKE_ARGS -V MAKE_ENV) <(make -V MAKE_ARGS -V
MAKE_ENV)

For example:
% cd /usr/ports/devel/icu
% make -V _MAKE_ARGS_CHECKED -V _MAKE_ENV_CHECKED
yes verbose
yes
% bash
$ diff <(make ALLOW_VERBOSE=1 -V MAKE_ARGS -V MAKE_ENV) <(make -V MAKE_ARGS -V
MAKE_ENV)
1c1
< VERBOSE=1 DESTDIR=/usr/ports/devel/icu/work/stage
---
> DESTDIR=/usr/ports/devel/icu/work/stage
$ exit

The mentioned solution provided as is, without warranty (especially, because it
may change variables, which may have different meaning in different context).

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the freebsd-ports-bugs mailing list