SHELL:=/bin/bash allegro5: git clone https://github.com/liballeg/allegro5.git pushd allegro5 && git checkout 5.2.5.0 bash ../ubuntu1804.sh make impl make package impl: apt-get update apt-get install -y freeglut3-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev \ libxcursor-dev libavfilter-dev \ libpng-dev libjpeg-dev libfreetype6-dev \ libxrandr-dev libxinerama-dev libxi-dev \ libgtk2.0-dev 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 # static build pushd allegro5 && \ cmake -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=$$PWD/allegro5_static -DSHARED=off -DSTATIC=on -DWANT_FFMPEG=off -DWANT_TTF=on . && \ make -j $$(nproc) && \ make install && \ cp -prv lib/pkgconfig/allegro* /usr/share/pkgconfig/ ## shared build #pushd allegro5 && \ #cmake -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=$$PWD/allegro5_shared -DSHARED=on -DSTATIC=on -DWANT_FFMPEG=off -DWANT_TTF=on . && \ #make -j $$(nproc) && \ #sudo make install && \ #sudo cp -prv lib/pkgconfig/allegro* /usr/share/pkgconfig/ package: rm -rf out mkdir -p out/opt/cppse/build/allegro5/ cp -prv allegro5/allegro5_static/* out/opt/cppse/build/allegro5/ # with one exception I'm relying on internals of allegro5 for one file.. cp -prv allegro5/include/allegro5/internal/aintern_bitmap.h out/opt/cppse/build/allegro5/include/allegro5/internal/aintern_bitmap.h # since above file also includes others, let's just sync the entire internal dir cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5/include/allegro5/internal/ # somewhere also platform became needed, let's pull those in as well cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5/include/allegro5/platform/ rm -rf allegro5_*_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre " --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out clean: rm -rf allegro5 rm -rf out shell: FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash