#!/bin/bash MINGW_REPO="https://github.com/mirror/mingw-w64.git" MINGW_COMMIT="6b62cf66832bd158c67662cd5566413baf35f20e" ffbuild_enabled() { [[ $TARGET == win* ]] || return -1 return 0 } ffbuild_dockerstage() { to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/mingw,dst=/patches run_stage /stage.sh" } ffbuild_dockerlayer() { to_df "COPY --from=${SELFLAYER} /opt/mingw/. /" to_df "COPY --from=${SELFLAYER} /opt/mingw/. /opt/mingw" } ffbuild_dockerfinal() { to_df "COPY --from=${PREVLAYER} /opt/mingw/. /" } ffbuild_dockerbuild() { git-mini-clone "$MINGW_REPO" "$MINGW_COMMIT" mingw cd mingw # for patch in /patches/*.patch; do # echo "Applying $patch" # git am < "$patch" # done cd mingw-w64-headers unset CFLAGS unset CXXFLAGS unset LDFLAGS unset PKG_CONFIG_LIBDIR local myconf=( --prefix="/usr/$FFBUILD_TOOLCHAIN" --host="$FFBUILD_TOOLCHAIN" --with-default-win32-winnt="0x601" --enable-idl ) ./configure "${myconf[@]}" make -j$(nproc) make install DESTDIR="/opt/mingw" cd ../mingw-w64-libraries/winpthreads local myconf=( --prefix="/usr/$FFBUILD_TOOLCHAIN" --host="$FFBUILD_TOOLCHAIN" --with-pic --disable-shared --enable-static ) ./configure "${myconf[@]}" make -j$(nproc) make install DESTDIR="/opt/mingw" } ffbuild_configure() { echo --disable-w32threads --enable-pthreads }