Skip to content

Commit 420a36d

Browse files
authored
Merge pull request #89 from boostorg/develop
Merge fixes from develop
2 parents d12ad00 + 213efe6 commit 420a36d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+1678
-1795
lines changed

.github/workflows/ci.yml

+37-189
Original file line numberDiff line numberDiff line change
@@ -17,200 +17,48 @@ jobs:
1717
fail-fast: false
1818
matrix:
1919
include:
20-
- name: "TOOLSET=gcc CXXSTD=03,11 Job 0"
21-
buildtype: "boost"
22-
packages: ""
23-
packages_to_remove: ""
24-
os: "ubuntu-20.04"
25-
container: "ubuntu:16.04"
26-
cxx: "g++"
27-
sources: ""
28-
llvm_os: ""
29-
llvm_ver: ""
30-
toolset: "gcc"
31-
cxxstd: "03,11"
32-
- name: "TOOLSET=clang CXXSTD=03,11,14,1z Job 1"
33-
buildtype: "boost"
34-
packages: "libstdc++-4.9-dev clang"
35-
packages_to_remove: ""
36-
os: "ubuntu-20.04"
37-
container: "ubuntu:16.04"
38-
cxx: "clang++"
39-
sources: ""
40-
llvm_os: ""
41-
llvm_ver: ""
20+
- name: "g++-13"
21+
os: ubuntu-latest
22+
packages: "g++-13"
23+
toolset: "gcc-13"
24+
- name: "clang-15"
25+
os: ubuntu-latest
26+
packages: "clang-15"
27+
toolset: "clang-15"
28+
- name: "xcode"
29+
os: macos-latest
4230
toolset: "clang"
43-
cxxstd: "03,11,14,1z"
44-
45-
runs-on: ${{ matrix.os }}
46-
container: ${{ matrix.container }}
47-
31+
runs-on: ${{matrix.os}}
4832
steps:
49-
- name: Check if running in container
50-
if: matrix.container != ''
51-
run: echo "GHA_CONTAINER=${{ matrix.container }}" >> $GITHUB_ENV
52-
- name: If running in container, upgrade packages
53-
if: matrix.container != ''
33+
- uses: actions/checkout@main
34+
- name: Install
35+
if: matrix.packages
5436
run: |
55-
apt-get -o Acquire::Retries=3 update && DEBIAN_FRONTEND=noninteractive apt-get -y install tzdata && apt-get -o Acquire::Retries=3 install -y sudo software-properties-common wget curl apt-transport-https make apt-file sudo unzip libssl-dev build-essential autotools-dev autoconf automake g++ libc++-helpers python ruby cpio gcc-multilib g++-multilib pkgconf python3 ccache libpython-dev
56-
sudo apt-add-repository ppa:git-core/ppa
57-
sudo apt-get -o Acquire::Retries=3 update && apt-get -o Acquire::Retries=3 -y install git
58-
python_version=$(python3 -c 'import sys; print("{0.major}.{0.minor}".format(sys.version_info))')
59-
sudo wget https://bootstrap.pypa.io/pip/$python_version/get-pip.py
60-
sudo python3 get-pip.py
61-
sudo /usr/local/bin/pip install cmake
62-
63-
- uses: actions/checkout@v2
64-
65-
- name: linux
66-
shell: bash
67-
env:
68-
CXX: ${{ matrix.cxx }}
69-
SOURCES: ${{ matrix.sources }}
70-
LLVM_OS: ${{ matrix.llvm_os }}
71-
LLVM_VER: ${{ matrix.llvm_ver }}
72-
PACKAGES: ${{ matrix.packages }}
73-
PACKAGES_TO_REMOVE: ${{ matrix.packages_to_remove }}
74-
JOB_BUILDTYPE: ${{ matrix.buildtype }}
75-
TOOLSET: ${{ matrix.toolset }}
76-
CXXSTD: ${{ matrix.cxxstd }}
77-
TRAVIS_BRANCH: ${{ github.base_ref }}
78-
TRAVIS_OS_NAME: "linux"
37+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
38+
sudo apt-get -o Acquire::Retries=3 update -y
39+
sudo apt-get -o Acquire::Retries=3 -y install ${{matrix.packages}}
40+
- name: Setup
7941
run: |
80-
echo '==================================> SETUP'
81-
echo '==================================> PACKAGES'
82-
set -e
83-
if [ -n "$PACKAGES_TO_REMOVE" ]; then sudo apt-get purge -y $PACKAGES_TO_REMOVE; fi
84-
echo ">>>>> APT: REPO.."
85-
for i in {1..3}; do sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test" && break || sleep 2; done
86-
87-
if test -n "${LLVM_OS}" ; then
88-
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
89-
if test -n "${LLVM_VER}" ; then
90-
sudo -E apt-add-repository "deb http://apt.llvm.org/${LLVM_OS}/ llvm-toolchain-${LLVM_OS}-${LLVM_VER} main"
91-
else
92-
# Snapshot (i.e. trunk) build of clang
93-
sudo -E apt-add-repository "deb http://apt.llvm.org/${LLVM_OS}/ llvm-toolchain-${LLVM_OS} main"
94-
fi
95-
fi
96-
echo ">>>>> APT: UPDATE.."
97-
sudo -E apt-get -o Acquire::Retries=3 update
98-
if test -n "${SOURCES}" ; then
99-
echo ">>>>> APT: INSTALL SOURCES.."
100-
for SOURCE in $SOURCES; do
101-
sudo -E apt-add-repository ppa:$SOURCE
102-
done
103-
fi
104-
echo ">>>>> APT: INSTALL ${PACKAGES}.."
105-
sudo -E DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 -y --no-install-suggests --no-install-recommends install ${PACKAGES}
106-
107-
echo '==================================> INSTALL AND COMPILE'
108-
set -e
109-
export TRAVIS_BUILD_DIR=$(pwd)
110-
export TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')}
111-
export VCS_COMMIT_ID=$GITHUB_SHA
112-
export GIT_COMMIT=$GITHUB_SHA
113-
export REPO_NAME=$(basename $GITHUB_REPOSITORY)
114-
export USER=$(whoami)
115-
export CC=${CC:-gcc}
116-
export PATH=~/.local/bin:/usr/local/bin:$PATH
117-
118-
if [ "$JOB_BUILDTYPE" == "boost" ]; then
119-
120-
echo '==================================> INSTALL'
121-
122-
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
42+
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
43+
echo GITHUB_REF: $GITHUB_REF
44+
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
45+
REF=${REF#refs/heads/}
46+
echo REF: $REF
47+
BOOST_BRANCH=develop && ( test "${GITHUB_REF_NAME}" == "master" || test "${GITHUB_REF_NAME}" == "modular" ) && BOOST_BRANCH=${GITHUB_REF_NAME} || true
48+
BOOST_GIT=https://github.com/${GITHUB_REPOSITORY/sort/boost}.git
49+
echo BOOST_GIT: ${BOOST_GIT}
50+
echo BOOST_BRANCH: ${BOOST_BRANCH}
12351
cd ..
124-
git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
52+
git clone -b "${BOOST_BRANCH}" --depth 1 "${BOOST_GIT}" boost-root
12553
cd boost-root
126-
git submodule update --init tools/build
127-
git submodule update --init libs/config
128-
git submodule update --init tools/boostdep
129-
cp -r $TRAVIS_BUILD_DIR/* libs/sort
130-
python tools/boostdep/depinst/depinst.py sort
54+
git submodule update --init --jobs 3 tools/boostdep libs/assert libs/config libs/core libs/test libs/sort
55+
python tools/boostdep/depinst/depinst.py -X test -g "--jobs 3" test
56+
python tools/boostdep/depinst/depinst.py -X test -g "--jobs 3" sort
57+
rm -rf libs/sort/*
58+
cp -r $GITHUB_WORKSPACE/* libs/sort
13159
./bootstrap.sh
132-
./b2 headers
133-
134-
echo '==================================> SCRIPT'
135-
136-
./b2 libs/sort/test toolset=$TOOLSET cxxstd=$CXXSTD
137-
138-
fi
139-
osx:
140-
strategy:
141-
fail-fast: false
142-
matrix:
143-
include:
144-
- name: "TOOLSET=clang CXXSTD=03,11,14,1z Job 2"
145-
buildtype: "boost"
146-
packages: ""
147-
os: "macos-12"
148-
cxx: "clang++"
149-
sources: ""
150-
llvm_os: ""
151-
llvm_ver: ""
152-
xcode_version: 14.2
153-
toolset: "clang"
154-
cxxstd: "03,11,14,1z"
155-
156-
runs-on: ${{ matrix.os }}
157-
158-
steps:
159-
- uses: actions/checkout@v2
160-
161-
- name: Set DEVELOPER_DIR
162-
if: matrix.xcode_version != ''
163-
run: echo "DEVELOPER_DIR=/Applications/Xcode_${{ matrix.xcode_version }}.app/Contents/Developer" >> $GITHUB_ENV
164-
- name: Test DEVELOPER_DIR
165-
run: echo $DEVELOPER_DIR
166-
167-
- name: "osx"
168-
shell: bash
169-
env:
170-
CXX: ${{ matrix.cxx }}
171-
SOURCES: ${{ matrix.sources }}
172-
LLVM_OS: ${{ matrix.llvm_os }}
173-
LLVM_VER: ${{ matrix.llvm_ver }}
174-
PACKAGES: ${{ matrix.packages }}
175-
JOB_BUILDTYPE: ${{ matrix.buildtype }}
176-
TOOLSET: ${{ matrix.toolset }}
177-
CXXSTD: ${{ matrix.cxxstd }}
178-
TRAVIS_BRANCH: ${{ github.base_ref }}
179-
TRAVIS_OS_NAME: "osx"
60+
./b2 -d0 headers
61+
- name: Test
18062
run: |
181-
echo '==================================> SETUP'
182-
set -e
183-
sudo mv /Library/Developer/CommandLineTools /Library/Developer/CommandLineTools.bck
184-
echo '==================================> PACKAGES'
185-
echo '==================================> INSTALL AND COMPILE'
186-
set -e
187-
export TRAVIS_BUILD_DIR=$(pwd)
188-
export TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')}
189-
export VCS_COMMIT_ID=$GITHUB_SHA
190-
export GIT_COMMIT=$GITHUB_SHA
191-
export REPO_NAME=$(basename $GITHUB_REPOSITORY)
192-
export USER=$(whoami)
193-
export CC=${CC:-gcc}
194-
export PATH=~/.local/bin:/usr/local/bin:$PATH
195-
196-
if [ "$JOB_BUILDTYPE" == "boost" ]; then
197-
198-
echo '==================================> INSTALL'
199-
200-
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
201-
cd ..
202-
git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
203-
cd boost-root
204-
git submodule update --init tools/build
205-
git submodule update --init libs/config
206-
git submodule update --init tools/boostdep
207-
cp -r $TRAVIS_BUILD_DIR/* libs/sort
208-
python tools/boostdep/depinst/depinst.py sort
209-
./bootstrap.sh
210-
./b2 headers
211-
212-
echo '==================================> SCRIPT'
213-
214-
./b2 libs/sort/test toolset=$TOOLSET cxxstd=$CXXSTD
215-
216-
fi
63+
cd ../boost-root
64+
./b2 -j3 libs/sort/test toolset=${{matrix.toolset}} cxxstd=11,14,17,20

.vscode/settings.json

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"githubPullRequests.ignoredPullRequestBranches": [
3+
"develop"
4+
]
5+
}

0 commit comments

Comments
 (0)