:/
This commit is contained in:
50
Dockerfile.x86_64
Normal file
50
Dockerfile.x86_64
Normal file
@ -0,0 +1,50 @@
|
||||
FROM dockcross/linux-x86_64-full
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE=gitea.jde.nz/public/jcross-linux-x86_64-full
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
ccache \
|
||||
mold \
|
||||
libcpp-httplib-dev
|
||||
|
||||
|
||||
########################################
|
||||
# nlohmann/json (compiled static .a) #
|
||||
########################################
|
||||
ARG JSON_VERSION=3.11.3
|
||||
RUN git clone --depth 1 --branch v${JSON_VERSION} https://github.com/nlohmann/json.git /tmp/json && \
|
||||
cmake -S /tmp/json -B /tmp/json/build \
|
||||
-DJSON_BuildTests=OFF \
|
||||
-DJSON_MultipleHeaders=OFF \
|
||||
-DBUILD_SHARED_LIBS=OFF && \
|
||||
cmake --build /tmp/json/build --config Release && \
|
||||
cmake --install /tmp/json/build
|
||||
|
||||
##################################
|
||||
# libassert (build static .a) #
|
||||
##################################
|
||||
ARG LIBASSERT_VERSION=v2.1.5
|
||||
RUN git clone --depth 1 --branch ${LIBASSERT_VERSION} https://github.com/jeremy-rifkin/libassert.git /tmp/libassert && \
|
||||
cmake -S /tmp/libassert -B /tmp/libassert/build \
|
||||
-DLIBASSERT_BUILD_TESTS=OFF \
|
||||
-DLIBASSERT_BUILD_EXAMPLES=OFF \
|
||||
-DLIBASSERT_BUILD_STATIC=ON && \
|
||||
cmake --build /tmp/libassert/build --config Release && \
|
||||
cmake --install /tmp/libassert/build
|
||||
|
||||
#####################
|
||||
# zlib (static .a) #
|
||||
#####################
|
||||
ARG ZLIB_VERSION=1.3.1
|
||||
RUN wget -q https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz && \
|
||||
tar xzf zlib-${ZLIB_VERSION}.tar.gz && \
|
||||
cd zlib-${ZLIB_VERSION} && \
|
||||
./configure --static && \
|
||||
make -j$(nproc) && \
|
||||
make install && \
|
||||
cd .. && rm -rf zlib-${ZLIB_VERSION}*
|
||||
|
||||
##############################
|
||||
# Reduce size of .a archives #
|
||||
##############################
|
||||
RUN strip --strip-unneeded /usr/local/lib/*.a
|
Reference in New Issue
Block a user