| 12345678910111213141516171819202122232425262728 |
- FROM monkeyx/retro_builder:arm64
- WORKDIR /usr/local/app
- ENV DEBIAN_FRONTEND=noninteractive
- # from VCMI build docs
- RUN apt-get update && apt-get install -y cmake g++ clang libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-dev zlib1g-dev libavformat-dev libswscale-dev libboost-dev libboost-filesystem-dev libboost-system-dev libboost-thread-dev libboost-program-options-dev libboost-locale-dev libboost-iostreams-dev qtbase5-dev libtbb-dev libluajit-5.1-dev liblzma-dev libsqlite3-dev qttools5-dev ninja-build ccache
- # newer cmake version to support presets
- RUN apt-get remove -y cmake
- RUN apt-get install -y libssl-dev
- RUN wget https://github.com/Kitware/CMake/releases/download/v3.31.5/cmake-3.31.5.tar.gz ; tar zxvf cmake-3.31.5.tar.gz ; cd cmake-3.31.5 ; ./bootstrap ; make ; make install ; cd .. ; rm -rf cmake-3.31.5
- CMD ["sh", "-c", " \
- # switch to mounted dir
- cd /vcmi ; \
- # fix for wrong path of base image
- ln -s /usr/lib/libSDL2.so /usr/lib/aarch64-linux-gnu/libSDL2.so ; \
- # build
- cmake --preset portmaster-release ; \
- cmake --build --preset portmaster-release ; \
- # export missing libraries
- ldd /vcmi/out/build/portmaster-release/bin/vcmiclient | grep -e libboost -e libtbb -e libicu | awk 'NF == 4 { system(\"cp \" $3 \" /vcmi/out/build/portmaster-release/bin/\") }' \
- "]
- # Build on ARM64 processor or ARM64 chroot with:
- # docker build -f docker/BuildPortmaster-aarch64.dockerfile -t vcmi-portmaster-build .
- # docker run -it --rm -v $PWD/:/vcmi vcmi-portmaster-build
|