[VOL-5009] - Update release notes
config.mk
makefiles/*
-----------
o Refresh library makefiles from https://github.com/opencord/onf-make.
o More lint targets added with exclusions in config.mk
makefiles/virtualenv.mk
patches/lib/python3.10/site-packages/robot/utils/normalizing.py/patch
patches/lib/python3.10/site-packages/robot/utils/robottypes3.py/patch
patches/python_310_migration.sh
---------------------------------------------------------------------
o Continue normalizing virtualenv install directory.
o Update patches to modify .venv VS vst_venv [, vdoc_venv, vfoo_venv, vbar_venv, ...)
o virtualenv.mk now defines named targets for patching-up-to 3.10 installs.
release_notes/voltha_2.12.rst
-----------------------------
o Update version string info.
o Onos component table condensed and populated with versioned urls.
o voltha components table is a WIP.
howto/release/repositories/
---------------------------
o Begin capturing repo-specific activities for release.
o Silly having to figure this out each release cycle.
o Automation and release helper scripts can be found here:
- https://github.com/joey-onf/voltha-release
sphinx_conf/exclude_patterns.py
-------------------------------
o Roach squashing exercise, external repos pulled in as git-submodules.
o New repository files appear as problems when running 'make reload'
o Exclude files to squelch messages.
Change-Id: I7adf7b84498511f5cde1e43ad304f9e33283241e
diff --git a/makefiles/bootstrap.mk b/makefiles/bootstrap.mk
new file mode 100644
index 0000000..5a9433b
--- /dev/null
+++ b/makefiles/bootstrap.mk
@@ -0,0 +1,61 @@
+# -*- makefile -*-
+# -----------------------------------------------------------------------
+# Intent: Dependency-free macros used to source library makefiles
+# and define the build environment.
+# -----------------------------------------------------------------------
+
+$(if $(DEBUG-bootstrap_mk),$(warning ENTER))
+
+##---------------------##
+##---] CONSTANTS [---##
+##---------------------##
+is-false = $(if $(1),true,$(null))
+is-true = $(if $(1),$(null),true)
+
+##--------------------------##
+##---] LIBRARY MACROS [---##
+##--------------------------##
+is-null = $(if $(1),$(null),$(error $(1)= is undef))
+is-null-var = $(if $$(1),$(null),$(error $(1)= is undef))
+is-null-var-indirect = $(if $(1),$(null),$(error $(1)= is undef))
+
+## variable flavor:
+# origin - undefned
+# default
+# environment
+# environment override
+# automatic
+# null(blah) ? - true
+
+## -----------------------------------------------------------------------
+## Intent: Given an indirect var containing varname of a makefile *_ROOT
+## parent director, derive a *_MKDIR variable and conditionally
+## include the makefile hierarchy.
+## -----------------------------------------------------------------------
+## Given:
+## o var containing OPT_ROOT=path
+## Return:
+## o OPT_MKDIR=$(OPT_ROOT)/makefiles
+## o If exists include $(OPT_MKDIR)/include.mk
+## -----------------------------------------------------------------------
+mk-library-include=$(strip \
+ $(warning mk-library-include: $(1) = $($(1)))\
+ $(call is-null-var,1)\
+ $(foreach var,$$(1),\
+ $(info var=$(var) is-null=$(call is-null-var,var))\
+ $(foreach val,$$(var),\
+ $(info val=$(val))\
+ $(foreach makedir,$(subst _ROOT,_MKDIR,$(var)),\
+$(warning makedir=$(makedir))\
+ $(if $($(makedir)),$(null),\
+ $(eval $(makedir)=$$$$($(var))/makefiles)\
+$(warning $(makedir) = $($($(makedir))))\
+$(info $$(wildcard $(val)/makefiles/include.mk) = $(wildcard $(val)/makefiles/include.mk))\
+ $(foreach mf,$(wildcard $(wildcard $(val)/makefiles/include.mk)),\
+$(warning $$(eval include $(mf)))\
+ $(eval include $(mf)))\
+)
+
+$(if $(DEBUG-bootstrap_mk),$(warning LEAVE))
+
+# [EOF]