SHELL:=/bin/bash boost: wget "https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.bz2" tar -xf boost_1_72_0.tar.bz2 bash ../ubuntu1804.sh make impl make package impl: update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-9 40 update-alternatives --install /usr/bin/cc cc /usr/bin/clang-9 40 update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-9 40 update-alternatives --install /usr/bin/clang clang /usr/bin/clang-9 40 update-alternatives --install /usr/bin/ld ld /usr/bin/ld.lld-9 40 pushd boost_1_72_0 && \ mkdir -p target && \ CXX=$$(which c++) ./bootstrap.sh --prefix=$$PWD/target/ --with-toolset=clang && \ ./b2 clean && \ ./b2 --prefix=$$PWD/target/ toolset=clang cxxflags="-D_GLIBCXX_USE_CXX11_ABI=0 -stdlib=libc++ -std=c++17" linkflags="-stdlib=libc++" || true #./b2 --prefix=$$PWD/target/ toolset=clang || true # ^ ||true because with clang I saw a few libraries not compile correctly, we can ignore those. #./b2 --with-program_options --prefix=$$PWD/target/ toolset=clang cxxflags="-stdlib=libc++ -std=c++17" linkflags="-stdlib=libc++" package: rm -rf out mkdir -p out/opt/cppse/build/boost/include/ cp -prv boost_1_72_0/stage/lib out/opt/cppse/build/boost/ cp -prv boost_1_72_0/boost out/opt/cppse/build/boost/include/ rm -rf boost_1.0_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre " --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out clean: rm -rf boost_1_72_0 rm -rf out shell: FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash