############################################################################## # GitHub Actions Workflow for Boost.Geometry to build documentation # # Copyright (c) 2020 Mateusz Loskot # Copyright (c) 2020 Adam Wulkiewicz, Lodz, Poland # # This file was modified by Oracle on 2024. # Modifications copyright (c) 2024 Oracle and/or its affiliates. # Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle # # Use, modification and distribution is subject to the Boost Software License, # Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) ############################################################################## name: documentation on: push: branches: - develop - master pull_request: paths: - '.github/workflows/documentation.yml' - 'doc/**' - 'index.html' - 'Jamfile*' - 'meta/libraries.json' jobs: build: name: Build documentation runs-on: ubuntu-latest steps: - name: Set up environment id: setenv run: | if [[ "$GITHUB_REF" == *master ]]; then echo "BOOST_BRANCH=master" >> $GITHUB_ENV else echo "BOOST_BRANCH=develop" >> $GITHUB_ENV fi echo "BOOST_SELF=$(basename $GITHUB_WORKSPACE)" >> $GITHUB_ENV echo "BOOST_ROOT=$GITHUB_WORKSPACE/boost-root" >> $GITHUB_ENV echo "boost_self=$(basename $GITHUB_WORKSPACE)" >> "$GITHUB_OUTPUT" echo "boost_root=$GITHUB_WORKSPACE/boost-root" >> "$GITHUB_OUTPUT" - name: Clone boostorg/boost run: | git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git $BOOST_ROOT cd $BOOST_ROOT git submodule update -q --init libs/headers git submodule update -q --init tools/boost_install git submodule update -q --init tools/boostbook git submodule update -q --init tools/boostdep git submodule update -q --init tools/build git submodule update -q --init tools/quickbook mkdir -p libs/$BOOST_SELF - uses: actions/checkout@v2 with: path: ${{ steps.setenv.outputs.boost_root }}/libs/${{ steps.setenv.outputs.boost_self }} - name: Run tools/boostdep/depinst/depinst.py run: | cd $BOOST_ROOT python tools/boostdep/depinst/depinst.py ../tools/quickbook python tools/boostdep/depinst/depinst.py --include benchmark --include example --include examples --include tools $BOOST_SELF - name: Bootstrap boostorg/boost run: | gcc --version cd $BOOST_ROOT ./bootstrap.sh --with-toolset=gcc ./b2 headers test -f /usr/local/bin/b2 && rm -rf /usr/local/bin/b2 test -f /usr/local/bin/bjam && rm -rf /usr/local/bin/bjam sudo cp $BOOST_ROOT/b2 /usr/local/bin/ ls -l /usr/local/bin/b2 b2 -v - name: Install tools/quickbook run: | sudo apt-get -q -y --no-install-suggests --no-install-recommends install docbook-xml docbook-xsl doxygen xsltproc echo "# $HOME/user-config.jam" > $HOME/user-config.jam echo "using doxygen ;" >> $HOME/user-config.jam echo -e "using boostbook\n : /usr/share/xml/docbook/stylesheet/nwalsh\n : /usr/share/xml/docbook/schema/dtd/4.2\n ;" >> $HOME/user-config.jam echo "using xsltproc ;" >> $HOME/user-config.jam test -f $HOME/user-config.jam && cat $HOME/user-config.jam - name: Build examples run: | cd $BOOST_ROOT $BOOST_ROOT/b2 libs/geometry/doc/src/examples - name: Build documentation run: | cd $BOOST_ROOT cd libs/geometry/doc $BOOST_ROOT/b2