History log of /freebsd-current/share/mk/meta.sys.mk
Revision Date Author Comments
# f974ced3 13-Mar-2024 Simon J. Gerraty <sjg@FreeBSD.org>

Update dirdeps.mk et al

bmake-20240309 includes updates to dirdeps and meta mode makefiles


# bee3d4bf 11-May-2023 Simon J. Gerraty <sjg@FreeBSD.org>

Move DIRDEPS_BUILD settings to sys.dirdeps.mk

When originally implemented, there was no distinction between
DIRDEPS_BUILD and META_MODE, they were one and the same.

META_MODE however is useful by itself, but since meta.sys.mk
had lots of settings related to DIRDEPS_BUILD its use was limited
to DIRDEPS_BUILD.

Move (most) DIRDEPS_BUILD related items to sys.dirdeps.mk
so that meta.sys.mk can be used for just META_MODE.
There is of course some bluring of the lines, so settings remain
in meta.sys.mk

Add MK_META_ERROR_TARGET to enable the META_MODE .ERROR target
independent of DIRDEPS_BUILD, it copies failed .meta files to ${SB}/error
to make it easier to identify the cause of build failures.

Since sys.dirdeps.mk should be included first, most of
local.meta.sys.mk becomes local.sys.dirdeps.mk
and some other bits need to move to local.sys.dirdeps.env.mk

Also fix dirdeps.mk to not add CURDIR to DIRDEPS when it is SRCTOP.

Reviewed by: bdrewery
Differential Revision: https://reviews.freebsd.org/D40053


# 42d08829 04-May-2023 Simon J. Gerraty <sjg@FreeBSD.org>

Update meta.sys.mk ensure DEP_* set at level 1+


# 390c31c4 23-Apr-2023 Ed Maste <emaste@FreeBSD.org>

meta.sys.mk: downgrade missing Filemon error to warning

Cirrus-CI was red because `make makeman` failed with a spurious "filemon
is not loaded" error. For now just make it a warning.


# f957a32d 20-Apr-2023 Simon J. Gerraty <sjg@FreeBSD.org>

Update meta.sys.mk and related local*mk

Move the setting of TARGET_SPEC_VARS to local.sys.env.mk
so meta.sys.mk can do the processing, and include local.meta.sys.mk
later.

Move the setting of GENDIRDEPS_FILTER*_VARS from local.gendirdeps.mk
to local.meta.sys.mk so we can automatically set DEP_* at level 1+
to avoid syntax errors when DEP_* variables are used in conditionals
in Makefile.depend files.

Update gendirdeps.mk just to get the documentation about the above.
No functional change.

local.dirdeps.mk be more careful about adding to DIRDEPS to avoid
unnecessary overhead, and introducing cycles in the graph.
Also set DEP_MACHINE_CPUARCH.

Reviewed by: stevek
Sponsored by: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D39737


# 3b26e5a4 18-Dec-2021 Simon J. Gerraty <sjg@FreeBSD.org>

Update dirdeps.mk et al to 20211212 versions

dirdeps.mk: simplify computation of qualified vs unqualified dirdeps.
Note the importance of avoiding unresolved variables in DIRDEPS
Fix DIRDEP_LOADAVG_REPORT - expr(1) fails if expression evaluates to 0
Trim ${SRCTOP}/ from debug etc messages to make comparison easier.
Include number of DIRDEPS in debug output.
Trim ${SRCTOP}/ when exporting to env while building DIRDEPS_CACHE
to help avoid env exhaustion.
Use DIRDEPS_ALL_MACHINES_FILTER to better handle ALL_MACHINES
in complex build environments.

dirdeps-options.mk: use separate .undef for each variable

dirdeps-targets.mk: allow for '.' in DIRDEPS_TARGETS_DIRS

meta.autodep.mk: leverage ${.SUFFIXES} if we can.

meta.sys.mk: allow use in META_MODE vs DIRDEPS_BUILD

meta2deps.py: compute a list of dirdep extensions that map to current
TARGET_SPEC to avoid confusion.

Reviewed by: stevek


# 960b77be 24-Nov-2020 Simon J. Gerraty <sjg@FreeBSD.org>

Update dirdeps.mk et al to latest

Move some local tweaks to local.*.mk

Reviewed by: bdrewery
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D27300


# 312809fe 11-Dec-2019 Simon J. Gerraty <sjg@FreeBSD.org>

Update dirdeps.mk and gendirdeps.mk

The env space consumed by exporting all libc's .meta files
left little room for command line,
so unexport when done.

Update dirdeps.mk to latest and add
dirdeps-targets.mk to simplify/update targets/Makefile

Makefile changes to go with Makefile.depend changes in D22494

Reviewed by: bdrewery
MFC after: 1 week
Sponsored by: Juniper Networks
Differential Revision: https://reviews.freebsd.org/D22495


# a6589ab7 02-Aug-2018 Simon J. Gerraty <sjg@FreeBSD.org>

Update dirdeps.mk et al to latest

dirdeps.mk and meta.autodep.mk will now look for
Makefile.depend.options
to handle optional dependencies, the work is all done by
dirdeps-options.mk

Also update to latest meta.stage.mk and gendirdeps.mk

Reviewed by: bdrewery
Differential Revision: https://reviews.freebsd.org/D15701


# f324fafc 27-Jul-2018 Eitan Adler <eadler@FreeBSD.org>

Feex a cuple of small typos


# 462b35ac 13-Sep-2016 Simon J. Gerraty <sjg@FreeBSD.org>

Avoid clobbering existing value of META_COOKIE_TOUCH


# c9012a51 08-Sep-2016 Simon J. Gerraty <sjg@FreeBSD.org>

Missed part of patch


# 0806d0ef 08-Sep-2016 Simon J. Gerraty <sjg@FreeBSD.org>

Update to latest dirdeps.mk

Take advantage of new bmake feature to only consider Makefile.depend
as invalidating DIRDEPS_CACHE.

When bootstrapping allow more filtering via .MAKE.DEPENDFILE_BOOTSTRAP_SED

Move some comments back to where they make sense.

meta.sys.mk: add META_COOKIE_TOUCH and META_NOPHONY to better handle some
targets in meta mode vs non-meta mode.
Also use .MAKE.META.IGNORE_PATHS to ignore mtime of makefiles - which do
not matter in meta mode.


# 6d5e42ed 26-May-2015 Simon J. Gerraty <sjg@FreeBSD.org>

include local.meta.sys.mk


# 7750ad47 22-Aug-2012 Marcel Moolenaar <marcel@FreeBSD.org>

Sync FreeBSD's bmake branch with Juniper's internal bmake branch.

Requested by: Simon Gerraty <sjg@juniper.net>