mirror of
https://github.com/simon987/sist2-build-arm64.git
synced 2025-04-21 03:26:42 +00:00
47 lines
1.8 KiB
Docker
47 lines
1.8 KiB
Docker
FROM --platform="linux/arm64/v8" ubuntu:20.04
|
|
|
|
MAINTAINER simon987 <me@simon987.net>
|
|
|
|
RUN apt update
|
|
|
|
RUN DEBIAN_FRONTEND="noninteractive" apt install -y pkg-config python3 python3-pip \
|
|
yasm ragel automake autotools-dev wget libtool libssl-dev \
|
|
curl zip unzip tar xorg-dev libglu1-mesa-dev libxcursor-dev \
|
|
libxml2-dev libxinerama-dev libcurl4-openssl-dev gettext \
|
|
gcc g++ git make bison \
|
|
&& apt clean
|
|
|
|
# cmake
|
|
RUN curl -L https://github.com/Kitware/CMake/releases/download/v3.21.4/cmake-3.21.4-linux-aarch64.tar.gz | tar -xzf - --strip-components=1 -C /usr/
|
|
|
|
# Ninja
|
|
RUN git clone git://github.com/ninja-build/ninja.git && \
|
|
cd ninja && git checkout release && \
|
|
cmake -Bbuild-cmake -H. && cmake --build build-cmake && \
|
|
mv build-cmake/ninja /usr/bin/ && rm -rf /ninja/
|
|
|
|
# Meson
|
|
RUN python3 -m pip install meson
|
|
|
|
# vcpkg
|
|
RUN git clone --depth 1 https://github.com/microsoft/vcpkg.git
|
|
RUN cd vcpkg && ./bootstrap-vcpkg.sh
|
|
|
|
ADD patches/* /
|
|
RUN patch -p0 < mupdf-curl-dep.patch
|
|
RUN patch -p0 < mongoose-master.patch
|
|
RUN cd /vcpkg/ && patch -p1 < ../glib-meson-fix.patch
|
|
|
|
RUN VCPKG_FORCE_SYSTEM_BINARIES=true ./vcpkg/vcpkg install \
|
|
curl[core,openssl] \
|
|
&& rm -rf /root/.cache/vcpkg /vcpkg/downloads /vcpkg/buildtrees /vcpkg/downloads
|
|
|
|
RUN mkdir /vcpkg/downloads; VCPKG_FORCE_SYSTEM_BINARIES=true ./vcpkg/vcpkg install \
|
|
lmdb cjson glib brotli libarchive[core,bzip2,libxml2,lz4,lzma,lzo] pthread tesseract libxml2 libmupdf gtest mongoose libuuid libmagic libraw jasper lcms gumbo \
|
|
&& rm -rf /root/.cache/vcpkg /vcpkg/downloads /vcpkg/buildtrees /vcpkg/downloads
|
|
|
|
RUN mkdir -p /debug/lib/ && mkdir -p /include && \
|
|
cp -r /vcpkg/installed/arm64-linux/include/cjson/ /include/ && \
|
|
cp /vcpkg/installed/arm64-linux/debug/lib/libcjson.a /debug/lib/ && \
|
|
cp /vcpkg/installed/arm64-linux/lib/libcjson.a /lib/
|