Skip to content

Commit

Permalink
B2 4.6.0 release.
Browse files Browse the repository at this point in the history
  • Loading branch information
grafikrobot committed Jun 1, 2021
2 parents f3fc6c9 + b785543 commit 172da13
Show file tree
Hide file tree
Showing 37 changed files with 713 additions and 465 deletions.
10 changes: 6 additions & 4 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# subject to the Boost Software License, Version 1.0. (See accompanying
# file LICENSE.txt)
#
# Copyright René Ferdinand Rivera Morell 2020.
# Copyright René Ferdinand Rivera Morell 2020-2021.

freebsd_task:
# All the GCC's and Clang's currently supported by FreeBSD ports.
Expand All @@ -12,17 +12,19 @@ freebsd_task:
- { name: 'FreeBSD, GCC 9', env: { TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: 'g++9', PACKAGE: 'gcc9-devel' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, GCC 8', env: { TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: 'g++8', PACKAGE: 'gcc8-devel' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, GCC 7', env: { TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: 'g++7', PACKAGE: 'gcc7' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 12', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++12', PACKAGE: 'llvm12' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 11', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++11', PACKAGE: 'llvm11' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 10', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++10', PACKAGE: 'llvm10' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 9', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++90', PACKAGE: 'llvm90' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 8', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++80', PACKAGE: 'llvm80' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 7', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++70', PACKAGE: 'llvm70' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 6', env: { TOOLSET: clang, TEST_TOOLSET: clang, CXX: 'clang++60', PACKAGE: 'llvm60' }, freebsd_instance: { image_family: 'freebsd-12-2' } }
# To install with ports we need to initialize the package manager. To avoid
# confirmation prompts we need to set an env var.
install_script: [
"uname -a",
"env ASSUME_ALWAYS_YES=YES pkg bootstrap",
"env ASSUME_ALWAYS_YES=YES pkg install ${PACKAGE}"
"env ASSUME_ALWAYS_YES=YES pkg install ${PACKAGE}",
"env ASSUME_ALWAYS_YES=YES pkg install python3"
]
# Build the engine.
build_script: [
Expand All @@ -38,6 +40,6 @@ freebsd_task:
"CXX_PATH=`which ${CXX}`",
"cd test",
"echo \"using ${TEST_TOOLSET} : : ${CXX_PATH} ;\" > ${HOME}/user-config.jam",
"python2 test_all.py ${TEST_TOOLSET}",
"python3 test_all.py ${TEST_TOOLSET}",
"cd ..",
]
9 changes: 8 additions & 1 deletion Jamroot.jam
Original file line number Diff line number Diff line change
Expand Up @@ -142,11 +142,18 @@ else
alias python ;
}

obj jamgram.obj
: jamgram.cpp
: <toolset>gcc:<cxxflags>-Wno-free-nonheap-object
;
explicit jamgram.obj ;

local b2_src =
[ glob src/engine/*.cpp src/engine/modules/*.cpp :
src/engine/*nt.cpp src/engine/*unix.cpp src/engine/*vms.cpp
src/engine/yyacc.cpp src/engine/mkjambase.cpp
src/engine/check_cxx11.cpp
src/engine/jamgram.cpp
] ;
local b2_src_nt = [ glob src/engine/*nt.cpp ] ;
local b2_src_unix = [ glob src/engine/*unix.cpp ] ;
Expand All @@ -155,11 +162,11 @@ local unix_os = [ set.difference [ feature.values <target-os> ] : windows vms ]

exe b2
: $(b2_src)
jamgram.obj
python
: <target-os>windows:<source>$(b2_src_nt)
<target-os>vms:<source>$(b2_src_vms)
<target-os>$(unix_os):<source>$(b2_src_unix)
<dependency>jamgram.cpp
<toolset>msvc:<find-static-library>kernel32
<toolset>msvc:<find-static-library>advapi32
<toolset>msvc:<find-static-library>user32
Expand Down
6 changes: 3 additions & 3 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ Continuously tested on:

* FreeBSD Clang 6, 7, 8, 9
* FreeBSD GCC 6, 7, 8, 9, 10, 11
* Linux Clang 3.5, 3.6, 3.7, 3.8, 3.9, 4, 5, 6, 7, 8, 9, 10, 11
* Linux GCC 4.7, 4.8, 4.9, 5, 6, 7, 8, 9, 10
* macOS Xcode 10.0, 10.1, 10.2, 10.2.1, 11.2.1, 11.3, 11.3.1, 11.4.1, 11.5, 11.6, 11.7, 12.0.1, 12.1.1, 12.2
* Linux Clang 3.5, 3.6, 3.7, 3.8, 3.9, 4, 5, 6, 7, 8, 9, 10, 11, 12
* Linux GCC 4.7, 4.8, 4.9, 5, 6, 7, 8, 9, 10, 11
* macOS Xcode 10.0, 10.1, 10.2, 10.2.1, 11.2.1, 11.3, 11.3.1, 11.4.1, 11.5, 11.6, 11.7, 12.0.1, 12.1.1, 12.2, 12.3, 12.4
* Windows MinGW 8.1.0
* Windows VS 2013, 2015, 2017, 2019

Expand Down
68 changes: 37 additions & 31 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ stages:
- job: 'Linux_Default_Build'
strategy:
matrix:
Clang 11: {PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11, VM_IMAGE: 'ubuntu-latest'}
Clang 12: {PACKAGES: clang-12, LLVM_OS: focal, LLVM_VER: 12, VM_IMAGE: 'ubuntu-latest'}
pool:
vmImage: $(VM_IMAGE)
steps:
Expand All @@ -47,7 +47,7 @@ stages:
- job: 'Linux_Clang_Only_Build'
strategy:
matrix:
Clang 11: {PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11, VM_IMAGE: 'ubuntu-latest'}
Clang 12: {PACKAGES: clang-12, LLVM_OS: focal, LLVM_VER: 12, VM_IMAGE: 'ubuntu-latest'}
pool:
vmImage: $(VM_IMAGE)
steps:
Expand All @@ -65,8 +65,8 @@ stages:
- job: 'Linux_Latest'
strategy:
matrix:
GCC 10: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10, VM_IMAGE: 'ubuntu-latest'}
Clang 11: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-11, PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11, VM_IMAGE: 'ubuntu-latest'}
GCC 11: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11, VM_IMAGE: 'ubuntu-latest'}
Clang 12: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-12, PACKAGES: clang-12, LLVM_OS: focal, LLVM_VER: 12, VM_IMAGE: 'ubuntu-latest'}
pool:
vmImage: $(VM_IMAGE)
steps:
Expand All @@ -84,7 +84,7 @@ stages:
- job: 'macOS'
strategy:
matrix:
Xcode 12.3: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app, VM_IMAGE: 'macOS-latest'}
Xcode 12.4: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app, VM_IMAGE: 'macOS-latest'}
pool:
vmImage: $(VM_IMAGE)
steps:
Expand All @@ -97,6 +97,7 @@ stages:
- job: 'Linux'
strategy:
matrix:
GCC 10: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10, VM_IMAGE: 'ubuntu-latest'}
GCC 9: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-9, PACKAGES: g++-9, VM_IMAGE: 'ubuntu-18.04'}
GCC 8: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-8, PACKAGES: g++-8, VM_IMAGE: 'ubuntu-18.04'}
GCC 7: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-7, PACKAGES: g++-7, VM_IMAGE: 'ubuntu-18.04'}
Expand All @@ -105,6 +106,7 @@ stages:
GCC 4.9: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-4.9, PACKAGES: g++-4.9, VM_IMAGE: 'ubuntu-16.04'}
GCC 4.8: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-4.8, PACKAGES: g++-4.8, VM_IMAGE: 'ubuntu-16.04'}
GCC 4.7: {TOOLSET: gcc, TEST_TOOLSET: gcc, CXX: g++-4.7, PACKAGES: g++-4.7, VM_IMAGE: 'ubuntu-16.04'}
Clang 11: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-11, PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11, VM_IMAGE: 'ubuntu-latest'}
Clang 10: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-10, PACKAGES: clang-10, LLVM_OS: bionic, LLVM_VER: 10, VM_IMAGE: 'ubuntu-18.04'}
Clang 9: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-9, PACKAGES: clang-9, LLVM_OS: bionic, LLVM_VER: 9, VM_IMAGE: 'ubuntu-18.04'}
Clang 8: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++-8, PACKAGES: clang-8, LLVM_OS: bionic, LLVM_VER: 8, VM_IMAGE: 'ubuntu-18.04'}
Expand Down Expand Up @@ -135,6 +137,7 @@ stages:
- job: 'macOS'
strategy:
matrix:
Xcode 12.3: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app, VM_IMAGE: 'macOS-latest'}
Xcode 12.2: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.2.app, VM_IMAGE: 'macOS-10.15'}
Xcode 12.1.1: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.1.1.app, VM_IMAGE: 'macOS-10.15'}
Xcode 12.0.1: {TOOLSET: clang, TEST_TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.0.1.app, VM_IMAGE: 'macOS-10.15'}
Expand Down Expand Up @@ -164,10 +167,10 @@ stages:
vmImage: 'ubuntu-latest'
strategy:
matrix:
Master .. GCC 10: {BOOST_BRANCH: master, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
Master .. Clang 11: {BOOST_BRANCH: master, TOOLSET: clang, CXX: clang++-11, PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11}
Develop .. GCC 10: {BOOST_BRANCH: develop, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
Develop .. Clang 11: {BOOST_BRANCH: develop, TOOLSET: clang, CXX: clang++-11, PACKAGES: clang-11, LLVM_OS: focal, LLVM_VER: 11}
Master .. GCC 11: {BOOST_BRANCH: master, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
Master .. Clang 12: {BOOST_BRANCH: master, TOOLSET: clang, CXX: clang++-12, PACKAGES: clang-12, LLVM_OS: focal, LLVM_VER: 12}
Develop .. GCC 11: {BOOST_BRANCH: develop, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-11}
Develop .. Clang 12: {BOOST_BRANCH: develop, TOOLSET: clang, CXX: clang++-12, PACKAGES: clang-12, LLVM_OS: focal, LLVM_VER: 12}
steps:
- bash: |
set -e
Expand Down Expand Up @@ -198,8 +201,8 @@ stages:
vmImage: 'macOS-latest'
strategy:
matrix:
Master .. Xcode 12.3: {BOOST_BRANCH: master, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
Develop .. Xcode 12.3: {BOOST_BRANCH: develop, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
Master .. Xcode 12.4: {BOOST_BRANCH: master, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
Develop .. Xcode 12.4: {BOOST_BRANCH: develop, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
steps:
- bash: |
set -e
Expand Down Expand Up @@ -264,16 +267,17 @@ stages:
vmImage: 'ubuntu-latest'
strategy:
matrix:
1.75.0 .. GCC 10: {BOOST_VERSION: 1.75.0, BOOST_VERSION_U: 1_75_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.74.0 .. GCC 10: {BOOST_VERSION: 1.74.0, BOOST_VERSION_U: 1_74_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.73.0 .. GCC 10: {BOOST_VERSION: 1.73.0, BOOST_VERSION_U: 1_73_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.72.0 .. GCC 10: {BOOST_VERSION: 1.72.0, BOOST_VERSION_U: 1_72_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.71.0 .. GCC 10: {BOOST_VERSION: 1.71.0, BOOST_VERSION_U: 1_71_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.70.0 .. GCC 10: {BOOST_VERSION: 1.70.0, BOOST_VERSION_U: 1_70_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.69.0 .. GCC 10: {BOOST_VERSION: 1.69.0, BOOST_VERSION_U: 1_69_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.68.0 .. GCC 10: {BOOST_VERSION: 1.68.0, BOOST_VERSION_U: 1_68_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.67.0 .. GCC 10: {BOOST_VERSION: 1.67.0, BOOST_VERSION_U: 1_67_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.66.0 .. GCC 10: {BOOST_VERSION: 1.66.0, BOOST_VERSION_U: 1_66_0, TOOLSET: gcc, CXX: g++-10, PACKAGES: g++-10}
1.76.0 .. GCC 11: {BOOST_VERSION: 1.76.0, BOOST_VERSION_U: 1_76_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.75.0 .. GCC 11: {BOOST_VERSION: 1.75.0, BOOST_VERSION_U: 1_75_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.74.0 .. GCC 11: {BOOST_VERSION: 1.74.0, BOOST_VERSION_U: 1_74_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.73.0 .. GCC 11: {BOOST_VERSION: 1.73.0, BOOST_VERSION_U: 1_73_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.72.0 .. GCC 11: {BOOST_VERSION: 1.72.0, BOOST_VERSION_U: 1_72_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.71.0 .. GCC 11: {BOOST_VERSION: 1.71.0, BOOST_VERSION_U: 1_71_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.70.0 .. GCC 11: {BOOST_VERSION: 1.70.0, BOOST_VERSION_U: 1_70_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.69.0 .. GCC 11: {BOOST_VERSION: 1.69.0, BOOST_VERSION_U: 1_69_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.68.0 .. GCC 11: {BOOST_VERSION: 1.68.0, BOOST_VERSION_U: 1_68_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.67.0 .. GCC 11: {BOOST_VERSION: 1.67.0, BOOST_VERSION_U: 1_67_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
1.66.0 .. GCC 11: {BOOST_VERSION: 1.66.0, BOOST_VERSION_U: 1_66_0, TOOLSET: gcc, CXX: g++-11, PACKAGES: g++-11}
steps:
- bash: |
set -e
Expand Down Expand Up @@ -303,16 +307,17 @@ stages:
vmImage: 'macOS-latest'
strategy:
matrix:
1.75.0 .. Xcode 12.3: {BOOST_VERSION: 1.75.0, BOOST_VERSION_U: 1_75_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.74.0 .. Xcode 12.3: {BOOST_VERSION: 1.74.0, BOOST_VERSION_U: 1_74_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.73.0 .. Xcode 12.3: {BOOST_VERSION: 1.73.0, BOOST_VERSION_U: 1_73_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.72.0 .. Xcode 12.3: {BOOST_VERSION: 1.72.0, BOOST_VERSION_U: 1_72_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.71.0 .. Xcode 12.3: {BOOST_VERSION: 1.71.0, BOOST_VERSION_U: 1_71_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.70.0 .. Xcode 12.3: {BOOST_VERSION: 1.70.0, BOOST_VERSION_U: 1_70_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.69.0 .. Xcode 12.3: {BOOST_VERSION: 1.69.0, BOOST_VERSION_U: 1_69_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.68.0 .. Xcode 12.3: {BOOST_VERSION: 1.68.0, BOOST_VERSION_U: 1_68_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.67.0 .. Xcode 12.3: {BOOST_VERSION: 1.67.0, BOOST_VERSION_U: 1_67_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.66.0 .. Xcode 12.3: {BOOST_VERSION: 1.66.0, BOOST_VERSION_U: 1_66_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.3.app}
1.76.0 .. Xcode 12.4: {BOOST_VERSION: 1.76.0, BOOST_VERSION_U: 1_76_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.75.0 .. Xcode 12.4: {BOOST_VERSION: 1.75.0, BOOST_VERSION_U: 1_75_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.74.0 .. Xcode 12.4: {BOOST_VERSION: 1.74.0, BOOST_VERSION_U: 1_74_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.73.0 .. Xcode 12.4: {BOOST_VERSION: 1.73.0, BOOST_VERSION_U: 1_73_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.72.0 .. Xcode 12.4: {BOOST_VERSION: 1.72.0, BOOST_VERSION_U: 1_72_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.71.0 .. Xcode 12.4: {BOOST_VERSION: 1.71.0, BOOST_VERSION_U: 1_71_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.70.0 .. Xcode 12.4: {BOOST_VERSION: 1.70.0, BOOST_VERSION_U: 1_70_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.69.0 .. Xcode 12.4: {BOOST_VERSION: 1.69.0, BOOST_VERSION_U: 1_69_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.68.0 .. Xcode 12.4: {BOOST_VERSION: 1.68.0, BOOST_VERSION_U: 1_68_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.67.0 .. Xcode 12.4: {BOOST_VERSION: 1.67.0, BOOST_VERSION_U: 1_67_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
1.66.0 .. Xcode 12.4: {BOOST_VERSION: 1.66.0, BOOST_VERSION_U: 1_66_0, TOOLSET: clang, CXX: clang++, XCODE_APP: /Applications/Xcode_12.4.app}
steps:
- bash: |
set -e
Expand Down Expand Up @@ -343,6 +348,7 @@ stages:
vmImage: 'windows-latest'
strategy:
matrix:
1.76.0 .. VS 2019: {BOOST_VERSION: 1.76.0, BOOST_VERSION_U: 1_76_0, TOOLSET: vc142}
1.75.0 .. VS 2019: {BOOST_VERSION: 1.75.0, BOOST_VERSION_U: 1_75_0, TOOLSET: vc142}
1.74.0 .. VS 2019: {BOOST_VERSION: 1.74.0, BOOST_VERSION_U: 1_74_0, TOOLSET: vc142}
1.73.0 .. VS 2019: {BOOST_VERSION: 1.73.0, BOOST_VERSION_U: 1_73_0, TOOLSET: vc142}
Expand Down
2 changes: 1 addition & 1 deletion bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# Build b2
echo "Building the B2 engine.."
pwd=`pwd`
"${pwd}/src/engine/build.sh" "$*"
"${pwd}/src/engine/build.sh" "$@"
if [ $? -ne 0 ]; then
echo
echo "Failed to build the B2 engine." 1>&2
Expand Down
45 changes: 45 additions & 0 deletions doc/src/history.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,51 @@
[[b2.history]]
= History

== Version 4.6.0

This release wraps up a few new features that make using some toolsets easier
(thanks to Nikita). It's now also possible to specify empty flags features on
the command line, like `cxxfalgs=`, and have those be ignored. This helps to
make CI scripts shorter as they don't need to handle those cases specially.
And as usual there are many bug fixes and adjustments. Thanks to everyone who
contributed to this release.

* *New:* Allow clang toolset to be auto-configured to a specific version by using
`toolset=clang-xx` on the command line.
-- _Nikita Kniazev_
* *New:* Include pch header automatically and on-demand on gcc and msvc toolset to
mirror clang functionality.
-- _Nikita Kniazev_
* *New:* Features that are narked as 'free' and 'optional' will now be ignored when
the value specified on the command line is empty. Hence once can specify
`cxxflags=` on the command line without errors.
-- _René Ferdinand Rivera Morell_
* Preserve `bootstrap.sh` invoke arguments to forward to the `build.sh` script.
-- _tkoecker_
* Remove use of `local` in `buils.sh` to be compatible with some, not fully
capable, shells.
-- _Tanzinul Islam_
* Workaround shell array ref error in `build.sh` on busybox shells.
-- _tkoecker_
* Check for needing `-pthread` to build engine with gcc on some platforms.
-- _tkoecker_
* Default to using clang on MacOS.
-- _Stéphan Kochen_
* Add `/python//numpy` target to use as a dependency to communicate version
specific properties.
-- _Peter Dimov_
* Add default value for cxx and cxxflags from env vars `CXX` and `CXXFLAGS`
when using the custom `cxx` toolset to build the engine.
-- _Samuel Debionne_ and _René Ferdinand Rivera Morell_
* Fix detection of `intel-linux` toolset installation when only the compiler
executable is in the `PATH`.
-- _René Ferdinand Rivera Morell_
* Fix `b2` executable path determination for platforms that don't have a
native method of getting the path to executables, like OpenBSD.
-- _René Ferdinand Rivera Morell_
* Fix `property.find` error message.
-- _Thomas Brown_

== Version 4.5.0

Some minor fixes to improve some old issues.
Expand Down
9 changes: 4 additions & 5 deletions doc/src/tasks.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -556,9 +556,7 @@ To use precompiled headers, follow the following steps:
1. Create a header that includes headers used by your project that you
want precompiled. It is better to include only headers that are
sufficiently stable -- like headers from the compiler and external
libraries. Please wrap the header in `#ifdef BOOST_BUILD_PCH_ENABLED`, so
that the potentially expensive inclusion of headers is not done when PCH is
not enabled. Include the new header at the top of your source files.
libraries. B2 will include the header automatically and on-demand.

2. Declare a new B2 target for the precompiled header and add
that precompiled header to the sources of the target whose compilation
Expand All @@ -577,8 +575,6 @@ The `pch` example in B2 distribution can be used as reference.

Please note the following:

* The inclusion of the precompiled header must be the first thing in a
source file, before any code or preprocessor directives.
* The build properties used to compile the source files and the
precompiled header must be the same. Consider using project requirements
to assure this.
Expand All @@ -592,6 +588,9 @@ headers are not supported.
namespaces in precompiled headers, which limits their utility. See the
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29085[bug report] for
details.
* Previosuly B2 had not been automatically inluding the header, a user
was required to include the header at the top of every source file
the precompiled header will be used with.

[[bbv2.reference.generated_headers]]
== Generated headers
Expand Down
Loading

0 comments on commit 172da13

Please sign in to comment.