new_build_system (#18)
All checks were successful
BlockStorage/repertory/pipeline/head This commit looks good
All checks were successful
BlockStorage/repertory/pipeline/head This commit looks good
Reviewed-on: #18
This commit is contained in:
@ -10,6 +10,7 @@ RUN apk add \
|
||||
bash \
|
||||
binutils \
|
||||
binutils-dev \
|
||||
bison \
|
||||
boost-dev \
|
||||
bzip2-static \
|
||||
cmake \
|
||||
|
@ -1,4 +1,4 @@
|
||||
# comment
|
||||
#comment
|
||||
FROM alpine:3.20.2
|
||||
|
||||
RUN apk update
|
||||
@ -60,6 +60,9 @@ ENV MY_MINGW_PREFIX=${MINGW_PREFIX}
|
||||
ARG NUM_JOBS=2
|
||||
ENV MY_NUM_JOBS=${NUM_JOBS}
|
||||
|
||||
ARG CXX_STANDARD=20
|
||||
ENV MY_CXX_STANDARD=${CXX_STANDARD}
|
||||
|
||||
ARG TOOLCHAIN_FILE_CMAKE=/cmake_toolchain.cmake
|
||||
ENV MY_TOOLCHAIN_FILE_CMAKE=${TOOLCHAIN_FILE_CMAKE}
|
||||
RUN echo -e \
|
||||
@ -89,8 +92,8 @@ RUN echo -e \
|
||||
"windres = '${MY_MINGW_PREFIX}-windres'\n"\
|
||||
"exe_wrapper = 'wine64'\n"\
|
||||
"[properties]\n"\
|
||||
"c_args = []\n"\
|
||||
"c_link_args = []\n"\
|
||||
"c_args = ['-I${MY_MINGW_DIR}/include']\n"\
|
||||
"c_link_args = ['-L${MY_MINGW_DIR}/lib', '-L${MY_MINGW_DIR}/lib64']\n"\
|
||||
"[host_machine]\n"\
|
||||
"cpu = 'x86_64'\n"\
|
||||
"cpu_family = 'x86_64'\n"\
|
||||
@ -106,15 +109,12 @@ RUN mkdir -p \
|
||||
${MY_MINGW_DIR}/lib/pkgconfig \
|
||||
${MY_MINGW_DIR}/lib64/pkgconfig
|
||||
|
||||
ENV LDFLAGS="-L${MY_MINGW_DIR}/lib -L${MY_MINGW_DIR}/lib64"
|
||||
ENV PATH="${MY_MINGW_DIR}/bin:/usr/local/bin:${PATH}"
|
||||
ENV PKG_CONFIG_PATH="${MY_MINGW_DIR}/lib/pkgconfig:${MY_MINGW_DIR}/lib64/pkgconfig"
|
||||
|
||||
ADD ./3rd_party /3rd_party
|
||||
|
||||
ARG BINUTILS_VERSION
|
||||
ENV MY_BINUTILS_VERSION=${BINUTILS_VERSION}
|
||||
RUN tar xvJf /3rd_party/mingw64/binutils-${MY_BINUTILS_VERSION}.tar.xz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./binutils-${MY_BINUTILS_VERSION}.tar.xz.sha256 && cd - \
|
||||
&& tar xvJf /3rd_party/mingw64/binutils-${MY_BINUTILS_VERSION}.tar.xz \
|
||||
&& cd binutils-${MY_BINUTILS_VERSION} \
|
||||
&& ./configure \
|
||||
--disable-lto \
|
||||
@ -134,10 +134,11 @@ RUN tar xvJf /3rd_party/mingw64/binutils-${MY_BINUTILS_VERSION}.tar.xz \
|
||||
|
||||
ARG MINGW_VERSION
|
||||
ENV MY_MINGW_VERSION=${MINGW_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/mingw-w64-${MY_MINGW_VERSION}.tar.gz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./mingw-w64-v${MY_MINGW_VERSION}.tar.bz2.sha256 && cd - \
|
||||
&& tar xvjf /3rd_party/mingw64/mingw-w64-v${MY_MINGW_VERSION}.tar.bz2 \
|
||||
&& mkdir mingw-w64 \
|
||||
&& cd mingw-w64 \
|
||||
&& ../mingw-w64-${MY_MINGW_VERSION}/mingw-w64-headers/configure \
|
||||
&& ../mingw-w64-v${MY_MINGW_VERSION}/mingw-w64-headers/configure \
|
||||
--enable-sdk=all \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
--prefix=/usr/local/${MY_MINGW_PREFIX} \
|
||||
@ -145,7 +146,8 @@ RUN tar xvzf /3rd_party/mingw64/mingw-w64-${MY_MINGW_VERSION}.tar.gz \
|
||||
|
||||
ARG GCC_VERSION
|
||||
ENV MY_GCC_VERSION=${GCC_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/gcc-${MY_GCC_VERSION}.tar.gz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./gcc-${MY_GCC_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/mingw64/gcc-${MY_GCC_VERSION}.tar.gz \
|
||||
&& (mv gcc-releases-gcc-${MY_GCC_VERSION} gcc-${MY_GCC_VERSION} || echo "") \
|
||||
&& mkdir gcc \
|
||||
&& cd gcc \
|
||||
@ -188,7 +190,7 @@ RUN tar xvzf /3rd_party/mingw64/gcc-${MY_GCC_VERSION}.tar.gz \
|
||||
&& make install-gcc
|
||||
|
||||
RUN cd mingw-w64 \
|
||||
&& ../mingw-w64-${MY_MINGW_VERSION}/mingw-w64-crt/configure \
|
||||
&& ../mingw-w64-v${MY_MINGW_VERSION}/mingw-w64-crt/configure \
|
||||
--disable-lib32 \
|
||||
--enable-lib64 \
|
||||
--enable-wildcard \
|
||||
@ -198,7 +200,7 @@ RUN cd mingw-w64 \
|
||||
&& make install
|
||||
|
||||
RUN cd mingw-w64 \
|
||||
&& ../mingw-w64-${MY_MINGW_VERSION}/mingw-w64-libraries/winpthreads/configure \
|
||||
&& ../mingw-w64-v${MY_MINGW_VERSION}/mingw-w64-libraries/winpthreads/configure \
|
||||
--enable-shared \
|
||||
--enable-static \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
@ -213,11 +215,12 @@ RUN cd gcc \
|
||||
RUN cp /usr/local/${MY_MINGW_PREFIX}/lib/*.dll ${MY_MINGW_DIR}/bin \
|
||||
&& cp /usr/local/${MY_MINGW_PREFIX}/bin/*.dll ${MY_MINGW_DIR}/bin \
|
||||
&& rm -r gcc gcc-${MY_GCC_VERSION} \
|
||||
&& rm -r mingw-w64 mingw-w64-${MY_MINGW_VERSION}
|
||||
&& rm -r mingw-w64 mingw-w64-v${MY_MINGW_VERSION}
|
||||
|
||||
ARG PKG_CONFIG_VERSION
|
||||
ENV MY_PKG_CONFIG_VERSION=${PKG_CONFIG_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/pkg-config-${MY_PKG_CONFIG_VERSION}.tar.gz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./pkg-config-${MY_PKG_CONFIG_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/mingw64/pkg-config-${MY_PKG_CONFIG_VERSION}.tar.gz \
|
||||
&& cd pkg-config-${MY_PKG_CONFIG_VERSION} \
|
||||
&& ./configure \
|
||||
--disable-nls \
|
||||
@ -234,16 +237,24 @@ RUN python3 -m pip install --break-system-packages -U mako
|
||||
RUN python3 -m pip install --break-system-packages -U meson
|
||||
RUN python3 -m pip install --break-system-packages -U packaging
|
||||
|
||||
ENV CXXFLAGS="-std=gnu++20"
|
||||
ENV LDFLAGS="-L${MY_MINGW_DIR}/lib -L${MY_MINGW_DIR}/lib64"
|
||||
ENV PATH="${MY_MINGW_DIR}/bin:/usr/local/bin:${PATH}"
|
||||
ENV PKG_CONFIG_PATH="${MY_MINGW_DIR}/lib/pkgconfig:${MY_MINGW_DIR}/lib64/pkgconfig"
|
||||
|
||||
ARG ZLIB_VERSION
|
||||
ENV MY_ZLIB_VERSION=${ZLIB_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/zlib-${MY_ZLIB_VERSION}.tar.gz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./zlib-${MY_ZLIB_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/mingw64/zlib-${MY_ZLIB_VERSION}.tar.gz \
|
||||
&& cd zlib-${MY_ZLIB_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -252,18 +263,21 @@ RUN tar xvzf /3rd_party/mingw64/zlib-${MY_ZLIB_VERSION}.tar.gz \
|
||||
ARG LIBJPEG_TURBO_VERSION
|
||||
ENV MY_LIBJPEG_TURBO_VERSION=${LIBJPEG_TURBO_VERSION}
|
||||
RUN if [ -f "/3rd_party/libjpeg_turbo-${MY_LIBJPEG_TURBO_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/libjpeg_turbo-${MY_LIBJPEG_TURBO_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./libjpeg_turbo-${MY_LIBJPEG_TURBO_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libjpeg_turbo-${MY_LIBJPEG_TURBO_VERSION}.tar.gz \
|
||||
&& cd libjpeg-turbo-${MY_LIBJPEG_TURBO_VERSION} \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=AMD64 \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=AMD64 \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DENABLE_SHARED=ON \
|
||||
-DENABLE_STATIC=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -271,17 +285,20 @@ RUN if [ -f "/3rd_party/libjpeg_turbo-${MY_LIBJPEG_TURBO_VERSION}.tar.gz" ]; the
|
||||
; fi
|
||||
|
||||
ARG LIBPNG_VERSION
|
||||
ENV MY_LIBPNG_VERSION=${LIBPNG_VERSION}
|
||||
ENV MY_LIBPNG_VERSION=${LIBPNG_VERSION}
|
||||
RUN if [ -f "/3rd_party/libpng-v${MY_LIBPNG_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/libpng-v${MY_LIBPNG_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./libpng-v${MY_LIBPNG_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libpng-v${MY_LIBPNG_VERSION}.tar.gz \
|
||||
&& cd libpng-${MY_LIBPNG_VERSION} \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DPNG_SHARED=ON \
|
||||
-DPNG_STATIC=ON \
|
||||
-DPNG_TESTS=OFF \
|
||||
@ -295,7 +312,8 @@ RUN if [ -f "/3rd_party/libpng-v${MY_LIBPNG_VERSION}.tar.gz" ]; then \
|
||||
ARG FREETYPE2_VERSION
|
||||
ENV MY_FREETYPE2_VERSION=${FREETYPE2_VERSION}
|
||||
RUN if [ -f "/3rd_party/freetype-${MY_FREETYPE2_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/freetype-${MY_FREETYPE2_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./freetype-${MY_FREETYPE2_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/freetype-${MY_FREETYPE2_VERSION}.tar.gz \
|
||||
&& cd freetype-${MY_FREETYPE2_VERSION} \
|
||||
&& meson setup \
|
||||
--cross-file ${MY_TOOLCHAIN_FILE_MESON} \
|
||||
@ -311,26 +329,30 @@ RUN if [ -f "/3rd_party/freetype-${MY_FREETYPE2_VERSION}.tar.gz" ]; then \
|
||||
|
||||
ARG EXPAT_VERSION
|
||||
ENV MY_EXPAT_VERSION=${EXPAT_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/expat-${MY_EXPAT_VERSION}.tar.gz \
|
||||
&& cd expat-${MY_EXPAT_VERSION} \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./expat-${MY_EXPAT_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/mingw64/expat-${MY_EXPAT_VERSION}.tar.gz \
|
||||
&& cd libexpat-*/expat \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DEXPAT_BUILD_DOCS=OFF \
|
||||
-DEXPAT_BUILD_EXAMPLES=OFF \
|
||||
-DEXPAT_BUILD_TESTS=OFF \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r expat-${MY_EXPAT_VERSION}
|
||||
&& rm -r libexpat-*
|
||||
|
||||
ARG FONTCONFIG_VERSION
|
||||
ENV MY_FONTCONFIG_VERSION=${FONTCONFIG_VERSION}
|
||||
RUN if [ -f "/3rd_party/fontconfig-${MY_FONTCONFIG_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/fontconfig-${MY_FONTCONFIG_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./fontconfig-${MY_FONTCONFIG_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/fontconfig-${MY_FONTCONFIG_VERSION}.tar.gz \
|
||||
&& cd fontconfig-${MY_FONTCONFIG_VERSION} \
|
||||
&& meson setup \
|
||||
--cross-file ${MY_TOOLCHAIN_FILE_MESON} \
|
||||
@ -350,12 +372,15 @@ RUN if [ -f "/3rd_party/fontconfig-${MY_FONTCONFIG_VERSION}.tar.gz" ]; then \
|
||||
ARG OPENAL_VERSION
|
||||
ENV MY_OPENAL_VERSION=${OPENAL_VERSION}
|
||||
RUN if [ -f "/3rd_party/openal-${MY_OPENAL_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/openal-${MY_OPENAL_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./openal-${MY_OPENAL_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/openal-${MY_OPENAL_VERSION}.tar.gz \
|
||||
&& cd openal-soft-${MY_OPENAL_VERSION} \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& mv ${MY_MINGW_DIR}/bin/OpenAL32.dll ${MY_MINGW_DIR}/bin/openal32.dll \
|
||||
@ -365,10 +390,11 @@ RUN if [ -f "/3rd_party/openal-${MY_OPENAL_VERSION}.tar.gz" ]; then \
|
||||
|
||||
ARG ICU_VERSION
|
||||
ENV MY_ICU_VERSION=${ICU_VERSION}
|
||||
RUN tar xvzf /3rd_party/mingw64/icu-release-${MY_ICU_VERSION}.tar.gz \
|
||||
RUN cd /3rd_party/mingw64 && sha256sum -c ./icu-release-${MY_ICU_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/mingw64/icu-release-${MY_ICU_VERSION}.tar.gz \
|
||||
&& cp -r icu-release-${MY_ICU_VERSION} icu-release-${MY_ICU_VERSION}-cross \
|
||||
&& cd icu-release-${MY_ICU_VERSION}-cross/icu4c/source \
|
||||
&& ./configure \
|
||||
&& CXXFLAGS="-std=gnu++17" ./configure \
|
||||
--disable-samples \
|
||||
--disable-tests \
|
||||
--enable-shared \
|
||||
@ -379,7 +405,7 @@ RUN tar xvzf /3rd_party/mingw64/icu-release-${MY_ICU_VERSION}.tar.gz \
|
||||
|
||||
RUN cd ${MY_WORKDIR} \
|
||||
&& cd icu-release-${MY_ICU_VERSION}/icu4c/source \
|
||||
&& ./configure \
|
||||
&& CXXFLAGS="-std=gnu++17" ./configure \
|
||||
--build=x86_64-alpine-linux-musl \
|
||||
--disable-samples \
|
||||
--disable-tests \
|
||||
@ -398,7 +424,8 @@ RUN cd ${MY_WORKDIR} \
|
||||
ARG OPENSSL_VERSION
|
||||
ENV MY_OPENSSL_VERSION=${OPENSSL_VERSION}
|
||||
RUN if [ -f "/3rd_party/openssl-${MY_OPENSSL_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/openssl-${MY_OPENSSL_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./openssl-${MY_OPENSSL_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/openssl-${MY_OPENSSL_VERSION}.tar.gz \
|
||||
&& cd openssl-${MY_OPENSSL_VERSION} \
|
||||
&& ./Configure \
|
||||
--cross-compile-prefix=${MY_MINGW_PREFIX}- \
|
||||
@ -421,11 +448,14 @@ ARG BOOST2_PATCH_VERSION
|
||||
ENV MY_BOOST2_PATCH_VERSION=${BOOST2_PATCH_VERSION}
|
||||
ENV MY_BOOST2_VERSION=${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSION}_${MY_BOOST2_PATCH_VERSION}
|
||||
RUN if [ -f "/3rd_party/boost_${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSION}_${MY_BOOST2_PATCH_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/boost_${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSION}_${MY_BOOST2_PATCH_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./boost_${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSION}_${MY_BOOST2_PATCH_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/boost_${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSION}_${MY_BOOST2_PATCH_VERSION}.tar.gz \
|
||||
&& cd boost_${MY_BOOST2_VERSION} \
|
||||
&& ./bootstrap.sh \
|
||||
--with-libraries=atomic,chrono,date_time,filesystem,iostreams,locale,log,program_options,random,regex,serialization,system,test,thread \
|
||||
address-model=64 \
|
||||
cxxstd=${MY_CXX_STANDARD} \
|
||||
cxxstd-dialect=gnu \
|
||||
architecture=x86 \
|
||||
link=static,shared \
|
||||
target-os=windows \
|
||||
@ -438,6 +468,8 @@ RUN if [ -f "/3rd_party/boost_${MY_BOOST2_MAJOR_VERSION}_${MY_BOOST2_MINOR_VERSI
|
||||
--prefix=${MY_MINGW_DIR} \
|
||||
-j${MY_NUM_JOBS} \
|
||||
address-model=64 \
|
||||
cxxstd=${MY_CXX_STANDARD} \
|
||||
cxxstd-dialect=gnu \
|
||||
architecture=x86 \
|
||||
link=static,shared \
|
||||
target-os=windows \
|
||||
@ -457,7 +489,8 @@ ARG BOOST_PATCH_VERSION
|
||||
ENV MY_BOOST_PATCH_VERSION=${BOOST_PATCH_VERSION}
|
||||
ENV MY_BOOST_VERSION=${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION}_${MY_BOOST_PATCH_VERSION}
|
||||
RUN if [ -f "/3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION}_${MY_BOOST_PATCH_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION}_${MY_BOOST_PATCH_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION}_${MY_BOOST_PATCH_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION}_${MY_BOOST_PATCH_VERSION}.tar.gz \
|
||||
&& cd boost_${MY_BOOST_VERSION} \
|
||||
&& echo "using gcc : gcc : ${MY_MINGW_PREFIX}-g++ ;" \
|
||||
>./user-config.jam \
|
||||
@ -465,6 +498,8 @@ RUN if [ -f "/3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION
|
||||
--with-libraries=atomic,chrono,date_time,filesystem,iostreams,locale,log,program_options,random,regex,serialization,system,test,thread \
|
||||
address-model=64 \
|
||||
architecture=x86 \
|
||||
cxxstd=${MY_CXX_STANDARD} \
|
||||
cxxstd-dialect=gnu \
|
||||
link=static,shared \
|
||||
target-os=windows \
|
||||
threading=multi \
|
||||
@ -476,6 +511,8 @@ RUN if [ -f "/3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION
|
||||
-j${MY_NUM_JOBS} \
|
||||
address-model=64 \
|
||||
architecture=x86 \
|
||||
cxxstd=${MY_CXX_STANDARD} \
|
||||
cxxstd-dialect=gnu \
|
||||
link=static,shared \
|
||||
target-os=windows \
|
||||
threading=multi \
|
||||
@ -488,30 +525,37 @@ RUN if [ -f "/3rd_party/boost_${MY_BOOST_MAJOR_VERSION}_${MY_BOOST_MINOR_VERSION
|
||||
ARG OGG_VERSION
|
||||
ENV MY_OGG_VERSION=${OGG_VERSION}
|
||||
RUN if [ -f "/3rd_party/ogg-v${MY_OGG_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/ogg-v${MY_OGG_VERSION}.tar.gz \
|
||||
&& cd ogg-${MY_OGG_VERSION} \
|
||||
cd /3rd_party && sha256sum -c ./ogg-v${MY_OGG_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/ogg-v${MY_OGG_VERSION}.tar.gz \
|
||||
&& cd libogg-${MY_OGG_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r ogg-${MY_OGG_VERSION} \
|
||||
&& rm -r libogg-${MY_OGG_VERSION} \
|
||||
; fi
|
||||
|
||||
ARG VORBIS_VERSION
|
||||
ENV MY_VORBIS_VERSION=${VORBIS_VERSION}
|
||||
RUN if [ -f "/3rd_party/vorbis-v${MY_VORBIS_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/vorbis-v${MY_VORBIS_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./vorbis-v${MY_VORBIS_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/vorbis-v${MY_VORBIS_VERSION}.tar.gz \
|
||||
&& cd vorbis-${MY_VORBIS_VERSION} \
|
||||
&& /3rd_party/vorbis_patch.sh /3rd_party . \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -521,18 +565,21 @@ RUN if [ -f "/3rd_party/vorbis-v${MY_VORBIS_VERSION}.tar.gz" ]; then \
|
||||
ARG FLAC_VERSION
|
||||
ENV MY_FLAC_VERSION=${FLAC_VERSION}
|
||||
RUN if [ -f "/3rd_party/flac-${MY_FLAC_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/flac-${MY_FLAC_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./flac-${MY_FLAC_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/flac-${MY_FLAC_VERSION}.tar.gz \
|
||||
&& cd flac-${MY_FLAC_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
&& cmake .. \
|
||||
-DBUILD_DOCS=OFF \
|
||||
-DBUILD_EXAMPLES=ON \
|
||||
-DBUILD_PROGRAMS=ON \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DBUILD_DOCS=OFF \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DINSTALL_MANPAGES=OFF \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
@ -543,7 +590,8 @@ RUN if [ -f "/3rd_party/flac-${MY_FLAC_VERSION}.tar.gz" ]; then \
|
||||
ARG SFML_VERSION
|
||||
ENV MY_SFML_VERSION=${SFML_VERSION}
|
||||
RUN if [ -f "/3rd_party/SFML-${MY_SFML_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/SFML-${MY_SFML_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./SFML-${MY_SFML_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/SFML-${MY_SFML_VERSION}.tar.gz \
|
||||
&& cd SFML-${MY_SFML_VERSION} \
|
||||
&& sed -i s/set_target_properties\(\$\{target\}\ PROPERTIES\ PREFIX\ \"\"\)// \
|
||||
cmake/Macros.cmake \
|
||||
@ -551,10 +599,12 @@ RUN if [ -f "/3rd_party/SFML-${MY_SFML_VERSION}.tar.gz" ]; then \
|
||||
cmake/Macros.cmake \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -564,14 +614,16 @@ RUN if [ -f "/3rd_party/SFML-${MY_SFML_VERSION}.tar.gz" ]; then \
|
||||
ARG SPDLOG_VERSION
|
||||
ENV MY_SPDLOG_VERSION=${SPDLOG_VERSION}
|
||||
RUN if [ -f "/3rd_party/spdlog-${MY_SPDLOG_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/spdlog-${MY_SPDLOG_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./spdlog-${MY_SPDLOG_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/spdlog-${MY_SPDLOG_VERSION}.tar.gz \
|
||||
&& cd spdlog-${MY_SPDLOG_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DSPDLOG_BUILD_SHARED=ON \
|
||||
-DSPDLOG_BUILD_STATIC=ON \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DSPDLOG_BUILD_EXAMPLE=OFF \
|
||||
-DSPDLOG_FMT_EXTERNAL=OFF \
|
||||
-DSPDLOG_FMT_EXTERNAL_HO=OFF \
|
||||
@ -584,19 +636,22 @@ RUN if [ -f "/3rd_party/spdlog-${MY_SPDLOG_VERSION}.tar.gz" ]; then \
|
||||
ARG CLI11_VERSION
|
||||
ENV MY_CLI11_VERSION=${CLI11_VERSION}
|
||||
RUN if [ -f "/3rd_party/CLI11-${MY_CLI11_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/CLI11-${MY_CLI11_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./CLI11-${MY_CLI11_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/CLI11-${MY_CLI11_VERSION}.tar.gz \
|
||||
&& cd CLI11-${MY_CLI11_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCLI11_WARNINGS_AS_ERRORS=OFF \
|
||||
-DCLI11_SINGLE_FILE=ON \
|
||||
&& cmake .. \
|
||||
-DCLI11_BUILD_DOCS=OFF \
|
||||
-DCLI11_BUILD_TESTS=OFF \
|
||||
-DCLI11_BUILD_EXAMPLES=OFF \
|
||||
-DCLI11_BUILD_TESTS=OFF \
|
||||
-DCLI11_INSTALL=ON \
|
||||
-DCLI11_SINGLE_FILE=ON \
|
||||
-DCLI11_WARNINGS_AS_ERRORS=OFF \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -605,17 +660,22 @@ RUN if [ -f "/3rd_party/CLI11-${MY_CLI11_VERSION}.tar.gz" ]; then \
|
||||
|
||||
ARG CURL_VERSION
|
||||
ENV MY_CURL_VERSION=${CURL_VERSION}
|
||||
ARG CURL2_VERSION
|
||||
ENV MY_CURL2_VERSION=${CURL2_VERSION}
|
||||
RUN if [ -f "/3rd_party/curl-${MY_CURL_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/curl-${MY_CURL_VERSION}.tar.gz \
|
||||
&& cd curl-${MY_CURL_VERSION} \
|
||||
cd /3rd_party && sha256sum -c ./curl-${MY_CURL_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/curl-${MY_CURL_VERSION}.tar.gz \
|
||||
&& cd curl-curl-${MY_CURL2_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_CURL_EXE=ON \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCURL_CA_BUNDLE=./cacert.pem \
|
||||
-DCURL_CA_FALLBACK=ON \
|
||||
-DCURL_DISABLE_LDAP=ON \
|
||||
@ -630,22 +690,25 @@ RUN if [ -f "/3rd_party/curl-${MY_CURL_VERSION}.tar.gz" ]; then \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r curl-${MY_CURL_VERSION} \
|
||||
&& rm -r curl-curl-${MY_CURL2_VERSION} \
|
||||
; fi
|
||||
|
||||
ARG CPP_HTTPLIB_VERSION
|
||||
ENV MY_CPP_HTTPLIB_VERSION=${CPP_HTTPLIB_VERSION}
|
||||
RUN if [ -f "/3rd_party/cpp-httplib-${MY_CPP_HTTPLIB_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/cpp-httplib-${MY_CPP_HTTPLIB_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./cpp-httplib-${MY_CPP_HTTPLIB_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/cpp-httplib-${MY_CPP_HTTPLIB_VERSION}.tar.gz \
|
||||
&& cd cpp-httplib-${MY_CPP_HTTPLIB_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DHTTPLIB_REQUIRE_BROTLI=OFF \
|
||||
-DHTTPLIB_REQUIRE_OPENSSL=ON \
|
||||
-DHTTPLIB_REQUIRE_ZLIB=ON \
|
||||
-DHTTPLIB_REQUIRE_BROTLI=OFF \
|
||||
-DHTTPLIB_TEST=OFF \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
@ -656,14 +719,17 @@ RUN if [ -f "/3rd_party/cpp-httplib-${MY_CPP_HTTPLIB_VERSION}.tar.gz" ]; then \
|
||||
ARG FMT_VERSION
|
||||
ENV MY_FMT_VERSION=${FMT_VERSION}
|
||||
RUN if [ -f "/3rd_party/fmt-${MY_FMT_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/fmt-${MY_FMT_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./fmt-${MY_FMT_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/fmt-${MY_FMT_VERSION}.tar.gz \
|
||||
&& cd fmt-${MY_FMT_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DFMT_DOC=OFF \
|
||||
-DFMT_TEST=OFF \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
@ -675,13 +741,16 @@ RUN if [ -f "/3rd_party/fmt-${MY_FMT_VERSION}.tar.gz" ]; then \
|
||||
ARG GTEST_VERSION
|
||||
ENV MY_GTEST_VERSION=${GTEST_VERSION}
|
||||
RUN if [ -f "/3rd_party/googletest-${MY_GTEST_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/googletest-${MY_GTEST_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./googletest-${MY_GTEST_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/googletest-${MY_GTEST_VERSION}.tar.gz \
|
||||
&& cd googletest-${MY_GTEST_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -691,13 +760,16 @@ RUN if [ -f "/3rd_party/googletest-${MY_GTEST_VERSION}.tar.gz" ]; then \
|
||||
ARG JSON_VERSION
|
||||
ENV MY_JSON_VERSION=${JSON_VERSION}
|
||||
RUN if [ -f "/3rd_party/json-${MY_JSON_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/json-${MY_JSON_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./json-${MY_JSON_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/json-${MY_JSON_VERSION}.tar.gz \
|
||||
&& cd json-${MY_JSON_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DJSON_BuildTests=OFF \
|
||||
-DJSON_Install=ON \
|
||||
-DJSON_MultipleHeaders=OFF \
|
||||
@ -710,13 +782,16 @@ RUN if [ -f "/3rd_party/json-${MY_JSON_VERSION}.tar.gz" ]; then \
|
||||
ARG LIBEVENT_VERSION
|
||||
ENV MY_LIBEVENT_VERSION=${LIBEVENT_VERSION}
|
||||
RUN if [ -f "/3rd_party/libevent-${MY_LIBEVENT_VERSION}-stable.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/libevent-${MY_LIBEVENT_VERSION}-stable.tar.gz \
|
||||
&& cd libevent-${MY_LIBEVENT_VERSION}-stable \
|
||||
cd /3rd_party && sha256sum -c ./libevent-${MY_LIBEVENT_VERSION}-stable.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libevent-${MY_LIBEVENT_VERSION}-stable.tar.gz \
|
||||
&& cd libevent-release-${MY_LIBEVENT_VERSION}-stable \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DEVENT__DISABLE_OPENSSL=ON \
|
||||
-DEVENT__DISABLE_SAMPLES=ON \
|
||||
-DEVENT__DISABLE_TESTS=ON \
|
||||
@ -724,14 +799,15 @@ RUN if [ -f "/3rd_party/libevent-${MY_LIBEVENT_VERSION}-stable.tar.gz" ]; then \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r libevent-${MY_LIBEVENT_VERSION}-stable \
|
||||
&& rm -r libevent-release-${MY_LIBEVENT_VERSION}-stable \
|
||||
; fi
|
||||
|
||||
ARG LIBSODIUM_VERSION
|
||||
ENV MY_LIBSODIUM_VERSION=${LIBSODIUM_VERSION}
|
||||
RUN if [ -f "/3rd_party/libsodium-${MY_LIBSODIUM_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/libsodium-${MY_LIBSODIUM_VERSION}.tar.gz \
|
||||
&& cd libsodium-${MY_LIBSODIUM_VERSION} \
|
||||
cd /3rd_party && sha256sum -c ./libsodium-${MY_LIBSODIUM_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libsodium-${MY_LIBSODIUM_VERSION}.tar.gz \
|
||||
&& cd libsodium-${MY_LIBSODIUM_VERSION}-RELEASE \
|
||||
&& CFLAGS="-O3 -fomit-frame-pointer -m64 -mtune=generic" ./configure \
|
||||
--enable-shared=yes \
|
||||
--enable-static=yes \
|
||||
@ -740,21 +816,25 @@ RUN if [ -f "/3rd_party/libsodium-${MY_LIBSODIUM_VERSION}.tar.gz" ]; then \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r libsodium-${MY_LIBSODIUM_VERSION} \
|
||||
&& rm -r libsodium-${MY_LIBSODIUM_VERSION}-RELEASE \
|
||||
; fi
|
||||
|
||||
ARG NUSPELL_VERSION
|
||||
ENV MY_NUSPELL_VERSION=${NUSPELL_VERSION}
|
||||
RUN if [ -f "/3rd_party/nuspell-v${MY_NUSPELL_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/nuspell-v${MY_NUSPELL_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./nuspell-v${MY_NUSPELL_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/nuspell-v${MY_NUSPELL_VERSION}.tar.gz \
|
||||
&& cd nuspell-${MY_NUSPELL_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
&& cmake .. \
|
||||
-DBUILD_DOCS=OFF \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DBUILD_TOOLS=OFF \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -764,13 +844,16 @@ RUN if [ -f "/3rd_party/nuspell-v${MY_NUSPELL_VERSION}.tar.gz" ]; then \
|
||||
ARG PUGIXML_VERSION
|
||||
ENV MY_PUGIXML_VERSION=${PUGIXML_VERSION}
|
||||
RUN if [ -f "/3rd_party/pugixml-${MY_PUGIXML_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/pugixml-${MY_PUGIXML_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./pugixml-${MY_PUGIXML_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/pugixml-${MY_PUGIXML_VERSION}.tar.gz \
|
||||
&& cd pugixml-${MY_PUGIXML_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -780,14 +863,17 @@ RUN if [ -f "/3rd_party/pugixml-${MY_PUGIXML_VERSION}.tar.gz" ]; then \
|
||||
ARG ROCKSDB_VERSION
|
||||
ENV MY_ROCKSDB_VERSION=${ROCKSDB_VERSION}
|
||||
RUN if [ -f "/3rd_party/rocksdb-${MY_ROCKSDB_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/rocksdb-${MY_ROCKSDB_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./rocksdb-${MY_ROCKSDB_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/rocksdb-${MY_ROCKSDB_VERSION}.tar.gz \
|
||||
&& cd rocksdb-${MY_ROCKSDB_VERSION} \
|
||||
&& echo -e "add_definitions(-include cstdint)">>CMakeLists.txt \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DFAIL_ON_WARNINGS=OFF \
|
||||
-DPORTABLE=1 \
|
||||
-DROCKSDB_INSTALL_ON_WINDOWS=ON \
|
||||
@ -811,7 +897,8 @@ RUN if [ -f "/3rd_party/rocksdb-${MY_ROCKSDB_VERSION}.tar.gz" ]; then \
|
||||
ARG SECP256K1_VERSION
|
||||
ENV MY_SECP256K1_VERSION=${SECP256K1_VERSION}
|
||||
RUN if [ -f "/3rd_party/secp256k1-${MY_SECP256K1_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/secp256k1-${MY_SECP256K1_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./secp256k1-${MY_SECP256K1_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/secp256k1-${MY_SECP256K1_VERSION}.tar.gz \
|
||||
&& cd secp256k1-${MY_SECP256K1_VERSION} \
|
||||
&& ./autogen.sh && ./configure \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
@ -829,13 +916,16 @@ RUN if [ -f "/3rd_party/secp256k1-${MY_SECP256K1_VERSION}.tar.gz" ]; then \
|
||||
ARG STDUUID_VERSION
|
||||
ENV MY_STDUUID_VERSION=${STDUUID_VERSION}
|
||||
RUN if [ -f "/3rd_party/stduuid-${MY_STDUUID_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/stduuid-${MY_STDUUID_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./stduuid-${MY_STDUUID_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/stduuid-${MY_STDUUID_VERSION}.tar.gz \
|
||||
&& cd stduuid-${MY_STDUUID_VERSION} \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DUUID_BUILD_TESTS=OFF \
|
||||
-DUUID_ENABLE_INSTALL=ON \
|
||||
-DUUID_USING_CXX20_SPAN=ON \
|
||||
@ -846,16 +936,19 @@ RUN if [ -f "/3rd_party/stduuid-${MY_STDUUID_VERSION}.tar.gz" ]; then \
|
||||
; fi
|
||||
|
||||
RUN if [ -f "/3rd_party/tiny-process-library.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/tiny-process-library.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./tiny-process-library.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/tiny-process-library.tar.gz \
|
||||
&& cd tiny-process-library-master \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
@ -865,15 +958,18 @@ RUN if [ -f "/3rd_party/tiny-process-library.tar.gz" ]; then \
|
||||
ARG WXWIDGETS_VERSION
|
||||
ENV MY_WXWIDGETS_VERSION=${WXWIDGETS_VERSION}
|
||||
RUN if [ -f "/3rd_party/wxWidgets-${MY_WXWIDGETS_VERSION}.tar.bz2" ]; then \
|
||||
tar xvjf /3rd_party/wxWidgets-${MY_WXWIDGETS_VERSION}.tar.bz2 \
|
||||
cd /3rd_party && sha256sum -c ./wxWidgets-${MY_WXWIDGETS_VERSION}.tar.bz2.sha256 && cd - \
|
||||
&& tar xvjf /3rd_party/wxWidgets-${MY_WXWIDGETS_VERSION}.tar.bz2 \
|
||||
&& cd wxWidgets-${MY_WXWIDGETS_VERSION} \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DwxBUILD_MONOLITHIC=OFF \
|
||||
-DwxBUILD_SHARED=ON \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
@ -885,15 +981,18 @@ RUN if [ -f "/3rd_party/wxWidgets-${MY_WXWIDGETS_VERSION}.tar.bz2" ]; then \
|
||||
ARG CXXOPTS_VERSION
|
||||
ENV MY_CXXOPTS_VERSION=${CXXOPTS_VERSION}
|
||||
RUN if [ -f "/3rd_party/cxxopts-v${MY_CXXOPTS_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/cxxopts-v${MY_CXXOPTS_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./cxxopts-v${MY_CXXOPTS_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/cxxopts-v${MY_CXXOPTS_VERSION}.tar.gz \
|
||||
&& cd cxxopts-${MY_CXXOPTS_VERSION} \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DCXXOPTS_BUILD_EXAMPLES=OFF \
|
||||
-DCXXOPTS_BUILD_TESTS=OFF \
|
||||
-DCXXOPTS_ENABLE_INSTALL=ON \
|
||||
@ -908,15 +1007,19 @@ RUN if [ -f "/3rd_party/cxxopts-v${MY_CXXOPTS_VERSION}.tar.gz" ]; then \
|
||||
ARG NANA_VERSION
|
||||
ENV MY_NANA_VERSION=${NANA_VERSION}
|
||||
RUN if [ -f "/3rd_party/nana-v${MY_NANA_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/nana-v${MY_NANA_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./nana-v${MY_NANA_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/nana-v${MY_NANA_VERSION}.tar.gz \
|
||||
&& cd nana-${MY_NANA_VERSION} \
|
||||
&& /3rd_party/nana_patch.sh /3rd_party . \
|
||||
&& mkdir _build \
|
||||
&& cd _build \
|
||||
&& cmake .. -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
&& cmake .. \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBUILD_STATIC_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_CXX_STANDARD=${MY_CXX_STANDARD} \
|
||||
-DCMAKE_INSTALL_PREFIX=${MY_MINGW_DIR} \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE_CMAKE} \
|
||||
-DNANA_CMAKE_ENABLE_AUDIO=OFF \
|
||||
-DNANA_CMAKE_ENABLE_JPEG=ON \
|
||||
-DNANA_CMAKE_ENABLE_PNG=ON \
|
||||
@ -930,7 +1033,8 @@ RUN if [ -f "/3rd_party/nana-v${MY_NANA_VERSION}.tar.gz" ]; then \
|
||||
ARG SDL_VERSION
|
||||
ENV MY_SDL_VERSION=${SDL_VERSION}
|
||||
RUN if [ -f "/3rd_party/sdl-${MY_SDL_VERSION}.tar.gz" ]; then \
|
||||
tar xvzf /3rd_party/sdl-${MY_SDL_VERSION}.tar.gz \
|
||||
cd /3rd_party && sha256sum -c ./sdl-${MY_SDL_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/sdl-${MY_SDL_VERSION}.tar.gz \
|
||||
&& cd SDL-release-${MY_SDL_VERSION} \
|
||||
&& ./configure \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
@ -943,6 +1047,69 @@ RUN if [ -f "/3rd_party/sdl-${MY_SDL_VERSION}.tar.gz" ]; then \
|
||||
&& rm -r SDL-release-${MY_SDL_VERSION} \
|
||||
; fi
|
||||
|
||||
ARG LIBTASN_VERSION
|
||||
ENV MY_LIBTASN_VERSION=${LIBTASN_VERSION}
|
||||
RUN if [ -f "/3rd_party/libtasn1-${MY_LIBTASN_VERSION}.tar.gz" ]; then \
|
||||
cd /3rd_party && sha256sum -c ./libtasn1-${MY_LIBTASN_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libtasn1-${MY_LIBTASN_VERSION}.tar.gz \
|
||||
&& cd libtasn1-${MY_LIBTASN_VERSION} \
|
||||
&& ./configure \
|
||||
--disable-doc \
|
||||
--enable-static=yes \
|
||||
--enable-shared=no \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
--prefix=${MY_MINGW_DIR} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r libtasn1-${MY_LIBTASN_VERSION} \
|
||||
&& echo -e \
|
||||
"#!/bin/bash\n"\
|
||||
"\n"\
|
||||
"wine ${MY_MINGW_DIR}/bin/asn1Parser.exe \$@\n"\
|
||||
> ${MY_MINGW_DIR}/bin/asn1Parser \
|
||||
&& chmod +x ${MY_MINGW_DIR}/bin/asn1Parser \
|
||||
; fi
|
||||
|
||||
ARG LIBICONV_VERSION
|
||||
ENV MY_LIBICONV_VERSION=${LIBICONV_VERSION}
|
||||
RUN if [ -f "/3rd_party/libiconv-${MY_LIBICONV_VERSION}.tar.gz" ]; then \
|
||||
cd /3rd_party && sha256sum -c ./libiconv-${MY_LIBICONV_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libiconv-${MY_LIBICONV_VERSION}.tar.gz \
|
||||
&& cd libiconv-${MY_LIBICONV_VERSION} \
|
||||
&& ./configure \
|
||||
--enable-static=yes \
|
||||
--enable-shared=no \
|
||||
--host=${MY_MINGW_PREFIX} \
|
||||
--prefix=${MY_MINGW_DIR} \
|
||||
&& make -j${MY_NUM_JOBS} \
|
||||
&& make install \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r libiconv-${MY_LIBICONV_VERSION} \
|
||||
; fi
|
||||
|
||||
ARG LIBDSM_VERSION
|
||||
ENV MY_LIBDSM_VERSION=${LIBDSM_VERSION}
|
||||
RUN if [ -f "/3rd_party/libdsm-${MY_LIBDSM_VERSION}.tar.gz" ]; then \
|
||||
cd /3rd_party && sha256sum -c ./libdsm-${MY_LIBDSM_VERSION}.tar.gz.sha256 && cd - \
|
||||
&& tar xvzf /3rd_party/libdsm-${MY_LIBDSM_VERSION}.tar.gz \
|
||||
&& cd libdsm-${MY_LIBDSM_VERSION} \
|
||||
&& /3rd_party/libdsm_patch.sh /3rd_party . \
|
||||
&& meson setup \
|
||||
--bindir=${MY_MINGW_DIR}/bin \
|
||||
--cross-file ${MY_TOOLCHAIN_FILE_MESON} \
|
||||
--prefix=${MY_MINGW_DIR} \
|
||||
-Dbinaries=false \
|
||||
-Ddefault_library=static \
|
||||
_build \
|
||||
&& meson compile \
|
||||
-C _build \
|
||||
&& meson install \
|
||||
-C _build \
|
||||
&& cd ${MY_WORKDIR} \
|
||||
&& rm -r libdsm-${MY_LIBDSM_VERSION} \
|
||||
; fi
|
||||
|
||||
RUN (mv ${MY_MINGW_DIR}/lib/*.dll ${MY_MINGW_DIR}/bin || echo "no dll's found") \
|
||||
&& chmod 0777 -R ${MY_MINGW_DIR} \
|
||||
&& rm -rf /3rd_party
|
||||
|
Reference in New Issue
Block a user