From f4fee4d6c062b6ab4aa46bf2d942a4bff3481e05 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 15 Apr 2021 23:08:05 +0300 Subject: Make build scripts to create hermetic configurations --- BOOTSTRAP-WINDOWS-MSVC.cli | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'BOOTSTRAP-WINDOWS-MSVC.cli') diff --git a/BOOTSTRAP-WINDOWS-MSVC.cli b/BOOTSTRAP-WINDOWS-MSVC.cli index 6ac26f0..2a066f8 100644 --- a/BOOTSTRAP-WINDOWS-MSVC.cli +++ b/BOOTSTRAP-WINDOWS-MSVC.cli @@ -128,11 +128,12 @@ pass the \c{--local} option.| To perform a local installation you will need to change the \c{configure} and \c{install} command lines above along these lines (see also a note on the -following step about only building shared libraries and toolchain executables -prefix/suffix): +following step about only building shared libraries, toolchain executables +prefix/suffix, etc): \ > build2\build2\b-boot configure ^ + config.config.hermetic=true ^ config.cxx=cl ^ config.cc.coptions=/O2 ^ config.bin.lib=shared ^ @@ -178,6 +179,7 @@ previous step and you may want/need to make similar adjustments. > bpkg-stage create ^ cc ^ + config.config.hermetic=true ^ config.cxx=cl ^ config.cc.coptions=/O2 ^ config.bin.lib=shared ^ @@ -190,6 +192,13 @@ to build both shared and static, remove \c{config.bin.lib=shared}.| \N|To add a custom prefix/suffix to the toolchain executables names, add \c{config.bin.exe.prefix=...} and/or \c{config.bin.exe.suffix=...}.| +\N|The \c{config.config.hermetic=true} configuration variable in the above +command makes sure the embedded \c{~host} and \c{~build2} configurations +include the current environment. This is especially important for \c{~build2} +which is used to dynamically build and load ad hoc recipes and build system +modules and must therefore match the environment that was used to build the +build system itself.| + Next, we add the package repository, build, and install: \ -- cgit v1.1