From a197b3f9ca8e3f03d36e6843fd125e4b0e303aeb Mon Sep 17 00:00:00 2001 From: BtbN Date: Fri, 2 Jun 2023 17:42:44 +0200 Subject: [PATCH 01/27] Do full clone for mingw SF's git server seems to be incapable of bandwidth saving single-commit clones. --- scripts.d/10-mingw.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index dfa9a1c..294ea9a 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -18,8 +18,9 @@ ffbuild_dockerfinal() { } ffbuild_dockerbuild() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mingw + retry-tool sh -c "rm -rf mingw && git clone '$SCRIPT_REPO' mingw" cd mingw + git checkout "$SCRIPT_COMMIT" cd mingw-w64-headers From 1ae971430e86df8ebdf925bc74a552c21d676178 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 4 Jun 2023 00:44:53 +0200 Subject: [PATCH 02/27] Update ct-ng configs --- images/base-linux64/ct-ng-config | 30 +++++++++++++++++++---------- images/base-linuxarm64/ct-ng-config | 30 +++++++++++++++++++---------- images/base-win32/ct-ng-config | 26 +++++++++++++++++-------- images/base-win64/ct-ng-config | 25 ++++++++++++++++-------- scripts.d/10-mingw.sh | 1 + 5 files changed, 76 insertions(+), 36 deletions(-) diff --git a/images/base-linux64/ct-ng-config b/images/base-linux64/ct-ng-config index df45b9a..dc1039b 100644 --- a/images/base-linux64/ct-ng-config +++ b/images/base-linux64/ct-ng-config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0.152_89671bf Configuration +# crosstool-NG 1.25.0.196_227d99d Configuration # CT_CONFIGURE_has_static_link=y CT_CONFIGURE_has_cxx11=y @@ -28,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y CT_CONFIGURE_has_sha256sum=y CT_CONFIGURE_has_sha512sum=y CT_CONFIGURE_has_install_with_strip_program=y -CT_VERSION="1.25.0.152_89671bf" +CT_VERSION="1.25.0.196_227d99d" CT_VCHECK="" CT_CONFIG_VERSION_ENV="4" CT_CONFIG_VERSION_CURRENT="4" @@ -269,6 +269,8 @@ CT_LINUX_PATCH_GLOBAL=y # CT_LINUX_PATCH_LOCAL_BUNDLED is not set # CT_LINUX_PATCH_NONE is not set CT_LINUX_PATCH_ORDER="global" +# CT_LINUX_V_6_3 is not set +# CT_LINUX_V_6_2 is not set # CT_LINUX_V_6_1 is not set # CT_LINUX_V_6_0 is not set # CT_LINUX_V_5_19 is not set @@ -475,6 +477,8 @@ CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" CT_GLIBC_SIGNATURE_FORMAT="packed/.sig" +CT_GLIBC_2_37_or_older=y +CT_GLIBC_older_than_2_37=y CT_GLIBC_2_36_or_older=y CT_GLIBC_older_than_2_36=y CT_GLIBC_2_34_or_older=y @@ -579,7 +583,8 @@ CT_GCC_PATCH_GLOBAL=y # CT_GCC_PATCH_LOCAL_BUNDLED is not set # CT_GCC_PATCH_NONE is not set CT_GCC_PATCH_ORDER="global" -CT_GCC_V_12=y +CT_GCC_V_13=y +# CT_GCC_V_12 is not set # CT_GCC_V_11 is not set # CT_GCC_V_10 is not set # CT_GCC_V_9 is not set @@ -588,12 +593,14 @@ CT_GCC_V_12=y # CT_GCC_V_6 is not set # CT_GCC_V_5 is not set # CT_GCC_V_4_9 is not set -CT_GCC_VERSION="12.2.0" +CT_GCC_VERSION="13.1.0" CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GCC_SIGNATURE_FORMAT="" +CT_GCC_later_than_13=y +CT_GCC_13_or_later=y CT_GCC_later_than_12=y CT_GCC_12_or_later=y CT_GCC_later_than_11=y @@ -766,7 +773,8 @@ CT_ISL_PATCH_GLOBAL=y # CT_ISL_PATCH_LOCAL_BUNDLED is not set # CT_ISL_PATCH_NONE is not set CT_ISL_PATCH_ORDER="global" -CT_ISL_V_0_25=y +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set # CT_ISL_V_0_24 is not set # CT_ISL_V_0_23 is not set # CT_ISL_V_0_22 is not set @@ -778,7 +786,7 @@ CT_ISL_V_0_25=y # CT_ISL_V_0_16 is not set # CT_ISL_V_0_15 is not set # CT_ISL_V_0_11 is not set -CT_ISL_VERSION="0.25" +CT_ISL_VERSION="0.26" CT_ISL_MIRRORS="https://libisl.sourceforge.io" CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -875,10 +883,11 @@ CT_NCURSES_PATCH_GLOBAL=y # CT_NCURSES_PATCH_LOCAL_BUNDLED is not set # CT_NCURSES_PATCH_NONE is not set CT_NCURSES_PATCH_ORDER="global" -CT_NCURSES_V_6_2=y +CT_NCURSES_V_6_4=y +# CT_NCURSES_V_6_2 is not set # CT_NCURSES_V_6_1 is not set # CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" +CT_NCURSES_VERSION="6.4" CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)" CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -927,8 +936,9 @@ CT_ZSTD_PATCH_GLOBAL=y # CT_ZSTD_PATCH_LOCAL_BUNDLED is not set # CT_ZSTD_PATCH_NONE is not set CT_ZSTD_PATCH_ORDER="global" -CT_ZSTD_V_1_5_2=y -CT_ZSTD_VERSION="1.5.2" +CT_ZSTD_V_1_5_5=y +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.5" CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" diff --git a/images/base-linuxarm64/ct-ng-config b/images/base-linuxarm64/ct-ng-config index a070e17..1ab09e8 100644 --- a/images/base-linuxarm64/ct-ng-config +++ b/images/base-linuxarm64/ct-ng-config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0.152_89671bf Configuration +# crosstool-NG 1.25.0.196_227d99d Configuration # CT_CONFIGURE_has_static_link=y CT_CONFIGURE_has_cxx11=y @@ -28,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y CT_CONFIGURE_has_sha256sum=y CT_CONFIGURE_has_sha512sum=y CT_CONFIGURE_has_install_with_strip_program=y -CT_VERSION="1.25.0.152_89671bf" +CT_VERSION="1.25.0.196_227d99d" CT_VCHECK="" CT_CONFIG_VERSION_ENV="4" CT_CONFIG_VERSION_CURRENT="4" @@ -276,6 +276,8 @@ CT_LINUX_PATCH_GLOBAL=y # CT_LINUX_PATCH_LOCAL_BUNDLED is not set # CT_LINUX_PATCH_NONE is not set CT_LINUX_PATCH_ORDER="global" +# CT_LINUX_V_6_3 is not set +# CT_LINUX_V_6_2 is not set # CT_LINUX_V_6_1 is not set # CT_LINUX_V_6_0 is not set # CT_LINUX_V_5_19 is not set @@ -481,6 +483,8 @@ CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" CT_GLIBC_SIGNATURE_FORMAT="packed/.sig" +CT_GLIBC_2_37_or_older=y +CT_GLIBC_older_than_2_37=y CT_GLIBC_2_36_or_older=y CT_GLIBC_older_than_2_36=y CT_GLIBC_2_34_or_older=y @@ -591,7 +595,8 @@ CT_GCC_PATCH_GLOBAL=y # CT_GCC_PATCH_LOCAL_BUNDLED is not set # CT_GCC_PATCH_NONE is not set CT_GCC_PATCH_ORDER="global" -CT_GCC_V_12=y +CT_GCC_V_13=y +# CT_GCC_V_12 is not set # CT_GCC_V_11 is not set # CT_GCC_V_10 is not set # CT_GCC_V_9 is not set @@ -600,12 +605,14 @@ CT_GCC_V_12=y # CT_GCC_V_6 is not set # CT_GCC_V_5 is not set # CT_GCC_V_4_9 is not set -CT_GCC_VERSION="12.2.0" +CT_GCC_VERSION="13.1.0" CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GCC_SIGNATURE_FORMAT="" +CT_GCC_later_than_13=y +CT_GCC_13_or_later=y CT_GCC_later_than_12=y CT_GCC_12_or_later=y CT_GCC_later_than_11=y @@ -778,7 +785,8 @@ CT_ISL_PATCH_GLOBAL=y # CT_ISL_PATCH_LOCAL_BUNDLED is not set # CT_ISL_PATCH_NONE is not set CT_ISL_PATCH_ORDER="global" -CT_ISL_V_0_25=y +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set # CT_ISL_V_0_24 is not set # CT_ISL_V_0_23 is not set # CT_ISL_V_0_22 is not set @@ -790,7 +798,7 @@ CT_ISL_V_0_25=y # CT_ISL_V_0_16 is not set # CT_ISL_V_0_15 is not set # CT_ISL_V_0_11 is not set -CT_ISL_VERSION="0.25" +CT_ISL_VERSION="0.26" CT_ISL_MIRRORS="https://libisl.sourceforge.io" CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -887,10 +895,11 @@ CT_NCURSES_PATCH_GLOBAL=y # CT_NCURSES_PATCH_LOCAL_BUNDLED is not set # CT_NCURSES_PATCH_NONE is not set CT_NCURSES_PATCH_ORDER="global" -CT_NCURSES_V_6_2=y +CT_NCURSES_V_6_4=y +# CT_NCURSES_V_6_2 is not set # CT_NCURSES_V_6_1 is not set # CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" +CT_NCURSES_VERSION="6.4" CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)" CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -939,8 +948,9 @@ CT_ZSTD_PATCH_GLOBAL=y # CT_ZSTD_PATCH_LOCAL_BUNDLED is not set # CT_ZSTD_PATCH_NONE is not set CT_ZSTD_PATCH_ORDER="global" -CT_ZSTD_V_1_5_2=y -CT_ZSTD_VERSION="1.5.2" +CT_ZSTD_V_1_5_5=y +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.5" CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" diff --git a/images/base-win32/ct-ng-config b/images/base-win32/ct-ng-config index 97bdafd..96759e1 100644 --- a/images/base-win32/ct-ng-config +++ b/images/base-win32/ct-ng-config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0.152_89671bf Configuration +# crosstool-NG 1.25.0.196_227d99d Configuration # CT_CONFIGURE_has_static_link=y CT_CONFIGURE_has_cxx11=y @@ -28,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y CT_CONFIGURE_has_sha256sum=y CT_CONFIGURE_has_sha512sum=y CT_CONFIGURE_has_install_with_strip_program=y -CT_VERSION="1.25.0.152_89671bf" +CT_VERSION="1.25.0.196_227d99d" CT_VCHECK="" CT_CONFIG_VERSION_ENV="4" CT_CONFIG_VERSION_CURRENT="4" @@ -175,6 +175,7 @@ CT_ARCH_SUFFIX="" # CT_MULTILIB is not set CT_DEMULTILIB=y CT_ARCH_USE_MMU=y +CT_ARCH_SUPPORTS_LIBSANITIZER=y CT_ARCH_SUPPORTS_32=y CT_ARCH_SUPPORTS_64=y CT_ARCH_DEFAULT_32=y @@ -381,6 +382,10 @@ CT_MINGW_W64_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_MINGW_W64_ARCHIVE_FORMATS=".tar.bz2 .zip" CT_MINGW_W64_SIGNATURE_FORMAT="packed/.sig" CT_MINGW_SECURE_API=y +# CT_MINGW_DEFAULT_MSVCRT_DEFAULT is not set +# CT_MINGW_DEFAULT_MSVCRT_MSVCRT is not set +CT_MINGW_DEFAULT_MSVCRT_UCRT=y +# CT_MINGW_DEFAULT_MSVCRT_CUSTOM is not set CT_MINGW_DIRECTX=y CT_MINGW_DDK=y CT_MINGW_TOOLS=y @@ -436,7 +441,8 @@ CT_GCC_PATCH_GLOBAL=y # CT_GCC_PATCH_LOCAL_BUNDLED is not set # CT_GCC_PATCH_NONE is not set CT_GCC_PATCH_ORDER="global" -CT_GCC_V_12=y +CT_GCC_V_13=y +# CT_GCC_V_12 is not set # CT_GCC_V_11 is not set # CT_GCC_V_10 is not set # CT_GCC_V_9 is not set @@ -445,12 +451,14 @@ CT_GCC_V_12=y # CT_GCC_V_6 is not set # CT_GCC_V_5 is not set # CT_GCC_V_4_9 is not set -CT_GCC_VERSION="12.2.0" +CT_GCC_VERSION="13.1.0" CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GCC_SIGNATURE_FORMAT="" +CT_GCC_later_than_13=y +CT_GCC_13_or_later=y CT_GCC_later_than_12=y CT_GCC_12_or_later=y CT_GCC_later_than_11=y @@ -620,7 +628,8 @@ CT_ISL_PATCH_GLOBAL=y # CT_ISL_PATCH_LOCAL_BUNDLED is not set # CT_ISL_PATCH_NONE is not set CT_ISL_PATCH_ORDER="global" -CT_ISL_V_0_25=y +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set # CT_ISL_V_0_24 is not set # CT_ISL_V_0_23 is not set # CT_ISL_V_0_22 is not set @@ -631,7 +640,7 @@ CT_ISL_V_0_25=y # CT_ISL_V_0_17 is not set # CT_ISL_V_0_16 is not set # CT_ISL_V_0_15 is not set -CT_ISL_VERSION="0.25" +CT_ISL_VERSION="0.26" CT_ISL_MIRRORS="https://libisl.sourceforge.io" CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -729,8 +738,9 @@ CT_ZSTD_PATCH_GLOBAL=y # CT_ZSTD_PATCH_LOCAL_BUNDLED is not set # CT_ZSTD_PATCH_NONE is not set CT_ZSTD_PATCH_ORDER="global" -CT_ZSTD_V_1_5_2=y -CT_ZSTD_VERSION="1.5.2" +CT_ZSTD_V_1_5_5=y +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.5" CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" diff --git a/images/base-win64/ct-ng-config b/images/base-win64/ct-ng-config index 90c00bf..340cccd 100644 --- a/images/base-win64/ct-ng-config +++ b/images/base-win64/ct-ng-config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0.152_89671bf Configuration +# crosstool-NG 1.25.0.196_227d99d Configuration # CT_CONFIGURE_has_static_link=y CT_CONFIGURE_has_cxx11=y @@ -28,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y CT_CONFIGURE_has_sha256sum=y CT_CONFIGURE_has_sha512sum=y CT_CONFIGURE_has_install_with_strip_program=y -CT_VERSION="1.25.0.152_89671bf" +CT_VERSION="1.25.0.196_227d99d" CT_VCHECK="" CT_CONFIG_VERSION_ENV="4" CT_CONFIG_VERSION_CURRENT="4" @@ -382,6 +382,10 @@ CT_MINGW_W64_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_MINGW_W64_ARCHIVE_FORMATS=".tar.bz2 .zip" CT_MINGW_W64_SIGNATURE_FORMAT="packed/.sig" CT_MINGW_SECURE_API=y +# CT_MINGW_DEFAULT_MSVCRT_DEFAULT is not set +# CT_MINGW_DEFAULT_MSVCRT_MSVCRT is not set +CT_MINGW_DEFAULT_MSVCRT_UCRT=y +# CT_MINGW_DEFAULT_MSVCRT_CUSTOM is not set CT_MINGW_DIRECTX=y CT_MINGW_DDK=y CT_MINGW_TOOLS=y @@ -437,7 +441,8 @@ CT_GCC_PATCH_GLOBAL=y # CT_GCC_PATCH_LOCAL_BUNDLED is not set # CT_GCC_PATCH_NONE is not set CT_GCC_PATCH_ORDER="global" -CT_GCC_V_12=y +CT_GCC_V_13=y +# CT_GCC_V_12 is not set # CT_GCC_V_11 is not set # CT_GCC_V_10 is not set # CT_GCC_V_9 is not set @@ -446,12 +451,14 @@ CT_GCC_V_12=y # CT_GCC_V_6 is not set # CT_GCC_V_5 is not set # CT_GCC_V_4_9 is not set -CT_GCC_VERSION="12.2.0" +CT_GCC_VERSION="13.1.0" CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GCC_SIGNATURE_FORMAT="" +CT_GCC_later_than_13=y +CT_GCC_13_or_later=y CT_GCC_later_than_12=y CT_GCC_12_or_later=y CT_GCC_later_than_11=y @@ -621,7 +628,8 @@ CT_ISL_PATCH_GLOBAL=y # CT_ISL_PATCH_LOCAL_BUNDLED is not set # CT_ISL_PATCH_NONE is not set CT_ISL_PATCH_ORDER="global" -CT_ISL_V_0_25=y +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set # CT_ISL_V_0_24 is not set # CT_ISL_V_0_23 is not set # CT_ISL_V_0_22 is not set @@ -632,7 +640,7 @@ CT_ISL_V_0_25=y # CT_ISL_V_0_17 is not set # CT_ISL_V_0_16 is not set # CT_ISL_V_0_15 is not set -CT_ISL_VERSION="0.25" +CT_ISL_VERSION="0.26" CT_ISL_MIRRORS="https://libisl.sourceforge.io" CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -730,8 +738,9 @@ CT_ZSTD_PATCH_GLOBAL=y # CT_ZSTD_PATCH_LOCAL_BUNDLED is not set # CT_ZSTD_PATCH_NONE is not set CT_ZSTD_PATCH_ORDER="global" -CT_ZSTD_V_1_5_2=y -CT_ZSTD_VERSION="1.5.2" +CT_ZSTD_V_1_5_5=y +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.5" CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index 294ea9a..3ce017f 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -35,6 +35,7 @@ ffbuild_dockerbuild() { --prefix="$GCC_SYSROOT/usr/$FFBUILD_TOOLCHAIN" --host="$FFBUILD_TOOLCHAIN" --with-default-win32-winnt="0x601" + --with-default-msvcrt=ucrt --enable-idl ) From d75466340a9a5985e546fff9756b976727c4ab98 Mon Sep 17 00:00:00 2001 From: BtbN Date: Fri, 16 Jun 2023 20:36:29 +0200 Subject: [PATCH 03/27] Use old release version of gmp again Their hg server is way too flakey to rely on, download a release tarball from GNU mirror instead. I hope no important fixes are missed due to the loss of update automation this causes. --- scripts.d/25-gmp.sh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts.d/25-gmp.sh b/scripts.d/25-gmp.sh index 926f715..23bbeb4 100755 --- a/scripts.d/25-gmp.sh +++ b/scripts.d/25-gmp.sh @@ -1,17 +1,18 @@ #!/bin/bash -SCRIPT_REPO="https://gmplib.org/repo/gmp/" -SCRIPT_HGREV="614a1cd8bb1d" +SCRIPT_VERSION="6.2.1" +SCRIPT_SHA512="c99be0950a1d05a0297d65641dd35b75b74466f7bf03c9e8a99895a3b2f9a0856cd17887738fa51cf7499781b65c049769271cbcb77d057d2e9f1ec52e07dd84" +SCRIPT_URL="https://ftp.gnu.org/gnu/gmp/gmp-${SCRIPT_VERSION}.tar.xz" ffbuild_enabled() { return 0 } ffbuild_dockerbuild() { - retry-tool sh -c "rm -rf gmp && hg clone -r '$SCRIPT_HGREV' -u '$SCRIPT_HGREV' '$SCRIPT_REPO' gmp" - cd gmp + retry-tool check-wget "gmp.tar.xz" "$SCRIPT_URL" "$SCRIPT_SHA512" - ./.bootstrap + tar xaf "gmp.tar.xz" + cd "gmp-$SCRIPT_VERSION" local myconf=( --prefix="$FFBUILD_PREFIX" From 78191a73a6a1959d13a62a4d6adb9ddeffa18522 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 18 Jun 2023 12:18:47 +0200 Subject: [PATCH 04/27] Add fork-guard into workflow --- .github/workflows/build.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b2bae58..4c18efe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,9 +25,24 @@ env: HAVE_CLEANUP_PAT: ${{ secrets.CLEANUP_PAT != '' }} jobs: + pre_check: + name: Pre Checks + if: ${{ github.event.inputs.buildOnly != 'true' }} + runs-on: ubuntu-latest + steps: + - name: Repo Check + run: | + if [[ "$GITHUB_REPOSITORY" != "BtbN/FFmpeg-Builds" ]]; then + echo "When forking this repository to make your own builds, you have to adjust this check." + echo "When doing so make sure to randomize the scheduled cron time above, in order to spread out the various build times as much as possible." + echo "This has been put in place due to the enormous amounts of traffic hundreds/thousands of parallel builds can cause on external infrastructure." + exit 1 + fi + exit 0 build_base: name: Build base image if: ${{ github.event.inputs.buildOnly != 'true' }} + needs: pre_check runs-on: ubuntu-latest steps: - name: Checkout From c3fec1bd501bbfbbe046ee52e2e6dabc19a6b807 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 18 Jun 2023 16:44:57 +0200 Subject: [PATCH 05/27] Add infrastructure for caching downloads in separate image --- .gitignore | 2 +- generate.sh | 66 ++++++++++++++++++++++++--- images/base/Dockerfile | 3 ++ images/base/run_stage.sh | 9 +++- makeimage.sh | 21 ++++++--- scripts.d/10-mingw-std-threads.sh | 7 ++- scripts.d/10-mingw.sh | 6 ++- scripts.d/10-xorg-macros.sh | 7 ++- scripts.d/20-libiconv.sh | 7 ++- scripts.d/20-libxml2.sh | 7 ++- scripts.d/20-zlib.sh | 7 ++- scripts.d/25-fftw3.sh | 7 ++- scripts.d/25-freetype.sh | 7 ++- scripts.d/25-fribidi.sh | 7 ++- scripts.d/25-gmp.sh | 6 ++- scripts.d/25-libogg.sh | 7 ++- scripts.d/25-openssl.sh | 6 ++- scripts.d/25-xz.sh | 7 ++- scripts.d/35-fontconfig.sh | 7 ++- scripts.d/45-harfbuzz.sh | 7 ++- scripts.d/45-libsamplerate.sh | 7 ++- scripts.d/45-libudfread.sh | 7 ++- scripts.d/45-libvorbis.sh | 7 ++- scripts.d/45-opencl.sh | 11 +++-- scripts.d/45-pulseaudio.sh | 6 ++- scripts.d/45-vmaf.sh | 7 ++- scripts.d/45-x11/10-xcbproto.sh | 7 ++- scripts.d/45-x11/10-xproto.sh | 7 ++- scripts.d/45-x11/10-xtrans.sh | 7 ++- scripts.d/45-x11/20-libxau.sh | 7 ++- scripts.d/45-x11/30-libxcb.sh | 7 ++- scripts.d/45-x11/40-libx11.sh | 7 ++- scripts.d/45-x11/50-libxext.sh | 7 ++- scripts.d/45-x11/50-libxfixes.sh | 7 ++- scripts.d/45-x11/50-libxi.sh | 7 ++- scripts.d/45-x11/50-libxinerama.sh | 7 ++- scripts.d/45-x11/50-libxrender.sh | 7 ++- scripts.d/45-x11/50-libxscrnsaver.sh | 7 ++- scripts.d/45-x11/50-libxxf86vm.sh | 7 ++- scripts.d/45-x11/60-libglvnd.sh | 7 ++- scripts.d/45-x11/60-libxcursor.sh | 7 ++- scripts.d/45-x11/60-libxrandr.sh | 7 ++- scripts.d/45-x11/60-libxv.sh | 7 ++- scripts.d/45-x11/99-finalize.sh | 4 ++ scripts.d/50-amf.sh | 7 ++- scripts.d/50-aom.sh | 9 ++-- scripts.d/50-aribb24/25-libpng.sh | 7 ++- scripts.d/50-aribb24/50-libaribb24.sh | 9 ++-- scripts.d/50-avisynth.sh | 7 ++- scripts.d/50-chromaprint.sh | 7 ++- scripts.d/50-dav1d.sh | 7 ++- scripts.d/50-davs2.sh | 6 ++- scripts.d/50-fdk-aac.sh | 7 ++- scripts.d/50-ffnvcodec.sh | 12 +++-- scripts.d/50-frei0r.sh | 7 ++- scripts.d/50-gme.sh | 6 ++- scripts.d/50-kvazaar.sh | 7 ++- scripts.d/50-libass.sh | 7 ++- scripts.d/50-libbluray.sh | 7 ++- scripts.d/50-libjxl/45-brotli.sh | 7 ++- scripts.d/50-libjxl/50-libjxl.sh | 6 ++- scripts.d/50-libmp3lame.sh | 7 ++- scripts.d/50-libopus.sh | 7 ++- scripts.d/50-librist/40-mbedtls.sh | 7 ++- scripts.d/50-librist/50-librist.sh | 7 ++- scripts.d/50-libssh.sh | 7 ++- scripts.d/50-libtheora.sh | 7 ++- scripts.d/50-libvpx.sh | 7 ++- scripts.d/50-libwebp.sh | 7 ++- scripts.d/50-lilv/96-lv2.sh | 7 ++- scripts.d/50-lilv/96-serd.sh | 7 ++- scripts.d/50-lilv/96-zix.sh | 7 ++- scripts.d/50-lilv/97-sord.sh | 7 ++- scripts.d/50-lilv/98-sratom.sh | 7 ++- scripts.d/50-lilv/99-lilv.sh | 7 ++- scripts.d/50-onevpl.sh | 7 ++- scripts.d/50-openal.sh | 7 ++- scripts.d/50-opencore-amr.sh | 7 ++- scripts.d/50-openh264.sh | 7 ++- scripts.d/50-openjpeg.sh | 7 ++- scripts.d/50-openmpt.sh | 7 ++- scripts.d/50-rav1e.sh | 7 ++- scripts.d/50-rubberband.sh | 7 ++- scripts.d/50-schannel.sh | 12 +++++ scripts.d/50-sdl.sh | 7 ++- scripts.d/50-soxr.sh | 7 ++- scripts.d/50-srt.sh | 7 ++- scripts.d/50-svtav1.sh | 6 ++- scripts.d/50-twolame.sh | 7 ++- scripts.d/50-uavs3d.sh | 6 ++- scripts.d/50-vaapi/30-libpciaccess.sh | 7 ++- scripts.d/50-vaapi/40-libdrm.sh | 7 ++- scripts.d/50-vaapi/50-libva.sh | 7 ++- scripts.d/50-vaapi/99-finalize.sh | 4 ++ scripts.d/50-vidstab.sh | 7 ++- scripts.d/50-vulkan/45-vulkan.sh | 7 ++- scripts.d/50-vulkan/50-shaderc.sh | 7 ++- scripts.d/50-vulkan/55-spirv-cross.sh | 7 ++- scripts.d/50-vulkan/60-libplacebo.sh | 6 ++- scripts.d/50-vulkan/99-enable.sh | 4 ++ scripts.d/50-x264.sh | 7 ++- scripts.d/50-x265.sh | 6 ++- scripts.d/50-xavs2.sh | 6 ++- scripts.d/50-xvid.sh | 7 ++- scripts.d/50-zimg.sh | 6 ++- scripts.d/50-zvbi.sh | 9 ++-- scripts.d/99-rpath.sh | 12 +++++ util/vars.sh | 16 ++++++- variants/dl-only.sh | 1 + 109 files changed, 631 insertions(+), 204 deletions(-) create mode 100644 variants/dl-only.sh diff --git a/.gitignore b/.gitignore index 1c27a7e..107f214 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -/Dockerfile +/Dockerfile* /ffbuild/ /artifacts/ /.cache/ diff --git a/generate.sh b/generate.sh index 29d505d..c56a4c1 100755 --- a/generate.sh +++ b/generate.sh @@ -3,13 +3,71 @@ set -e cd "$(dirname "$0")" source util/vars.sh -rm -f Dockerfile +rm -f Dockerfile Dockerfile.{dl,final,dl.final} layername() { printf "layer-" basename "$1" | sed 's/.sh$//' } +to_df() { + _of="${TODF:-Dockerfile}" + printf "$@" >> "$_of" + echo >> "$_of" +} + +### +### Generate download Dockerfile +### + +exec_dockerstage_dl() { + SCRIPT="$1" + ( + SELF="$SCRIPT" + SELFLAYER="$(layername "$STAGE")" + source "$SCRIPT" + ffbuild_dockerstage_dl || exit $? + TODF="Dockerfile.dl.final" ffbuild_dockerlayer_dl || exit $? + ) +} + +export TODF="Dockerfile.dl" + +to_df "FROM ${REGISTRY}/${REPO}/base:latest AS base" +to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR" + +PREVLAYER="base" +for ID in $(ls -1d scripts.d/??-* | sed -s 's|^.*/\(..\).*|\1|' | sort -u); do + LAYER="layer-$ID" + + for STAGE in scripts.d/$ID-*; do + if [[ -f "$STAGE" ]]; then + to_df "FROM $PREVLAYER AS $(layername "$STAGE")" + exec_dockerstage_dl "$STAGE" + else + for STAGE in "${STAGE}"/??-*; do + to_df "FROM $PREVLAYER AS $(layername "$STAGE")" + exec_dockerstage_dl "$STAGE" + done + fi + done +done + +to_df "FROM base AS intermediate" +cat Dockerfile.dl.final >> "$TODF" +rm Dockerfile.dl.final + +to_df "FROM base" +to_df "COPY --from=intermediate \$FFBUILD_DLDIR/. \$FFBUILD_DLDIR" + +if [[ "$TARGET" == "dl" && "$VARIANT" == "only" ]]; then + exit 0 +fi + +### +### Generate main Dockerfile +### + exec_dockerstage() { SCRIPT="$1" ( @@ -20,11 +78,7 @@ exec_dockerstage() { ) } -to_df() { - _of="${TODF:-Dockerfile}" - printf "$@" >> "$_of" - echo >> "$_of" -} +export TODF="Dockerfile" to_df "FROM ${REGISTRY}/${REPO}/base-${TARGET}:latest AS base" to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR" diff --git a/images/base/Dockerfile b/images/base/Dockerfile index 17dead2..4d191e8 100644 --- a/images/base/Dockerfile +++ b/images/base/Dockerfile @@ -1,7 +1,10 @@ FROM ubuntu:23.04 +ENV FFBUILD_DLDIR="/opt/ffdl" + ENV DEBIAN_FRONTEND noninteractive RUN \ + mkdir -p "$FFBUILD_DLDIR" && \ apt-get -y update && \ apt-get -y dist-upgrade && \ apt-get -y install build-essential yasm nasm \ diff --git a/images/base/run_stage.sh b/images/base/run_stage.sh index 6db0e8d..baf52b1 100755 --- a/images/base/run_stage.sh +++ b/images/base/run_stage.sh @@ -11,5 +11,12 @@ export RAW_LDFLAGS="$LDFLAGS" mkdir -p /stage source "$1" cd /stage -ffbuild_dockerbuild +if [[ -n "$3" ]]; then + cd "$3" +fi +if [[ -z "$2" ]]; then + ffbuild_dockerbuild +else + "$2" +fi rm -rf /stage "$FFBUILD_PREFIX"/bin diff --git a/makeimage.sh b/makeimage.sh index bbbd4cd..39a1fa2 100755 --- a/makeimage.sh +++ b/makeimage.sh @@ -18,13 +18,14 @@ docker buildx inspect ffbuilder &>/dev/null || docker buildx create \ --driver-opt env.BUILDKIT_STEP_LOG_MAX_SIZE=-1 \ --driver-opt env.BUILDKIT_STEP_LOG_MAX_SPEED=-1 -if [[ -z "$QUICKBUILD" ]]; then - docker container inspect ffbuildreg &>/dev/null || \ - docker run --rm -d -p 127.0.0.1:0:5000 --name ffbuildreg registry:2 - LOCAL_REG_PORT="$(docker container inspect --format='{{range $p, $conf := .NetworkSettings.Ports}}{{(index $conf 0).HostPort}}{{end}}' ffbuildreg)" - LOCAL_ROOT="127.0.0.1:${LOCAL_REG_PORT}/local" - trap "rm -f '$TMPCFG'; docker container stop ffbuildreg" EXIT +docker container inspect ffbuildreg &>/dev/null || \ + docker run --rm -d -p 127.0.0.1:64647:5000 --name ffbuildreg registry:2 +LOCAL_REG_PORT="$(docker container inspect --format='{{range $p, $conf := .NetworkSettings.Ports}}{{(index $conf 0).HostPort}}{{end}}' ffbuildreg)" +LOCAL_ROOT="127.0.0.1:${LOCAL_REG_PORT}/local" +export REGISTRY_OVERRIDE_DL="127.0.0.1:${LOCAL_REG_PORT}" GITHUB_REPOSITORY_DL="local" + +if [[ -z "$QUICKBUILD" ]]; then if grep "FROM.*base.*" "images/base-${TARGET}/Dockerfile" >/dev/null 2>&1; then docker buildx --builder ffbuilder build \ --cache-from=type=local,src=.cache/"${BASE_IMAGE/:/_}" \ @@ -38,14 +39,20 @@ if [[ -z "$QUICKBUILD" ]]; then --push --tag "${LOCAL_ROOT}/base-${TARGET}:latest" \ --build-arg GH_REPO="$LOCAL_ROOT" "images/base-${TARGET}" - export REGISTRY_OVERRIDE="127.0.0.1:${LOCAL_REG_PORT}" GITHUB_REPOSITORY="local" + export REGISTRY_OVERRIDE="$REGISTRY_OVERRIDE_DL" GITHUB_REPOSITORY="$GITHUB_REPOSITORY_DL" fi ./generate.sh "$TARGET" "$VARIANT" "${ADDINS[@]}" +docker buildx --builder ffbuilder build -f Dockerfile.dl \ + --cache-from=type=local,src=.cache/"${DL_IMAGE/:/_}" \ + --cache-to=type=local,mode=max,dest=.cache/"${DL_IMAGE/:/_}" \ + --push --tag "${LOCAL_ROOT}/dl_cache:latest" . + docker buildx --builder ffbuilder build \ --cache-from=type=local,src=.cache/"${IMAGE/:/_}" \ --cache-to=type=local,mode=max,dest=.cache/"${IMAGE/:/_}" \ --load --tag "$IMAGE" . +docker container stop ffbuildreg docker buildx rm -f ffbuilder diff --git a/scripts.d/10-mingw-std-threads.sh b/scripts.d/10-mingw-std-threads.sh index ad55011..f9be4ad 100755 --- a/scripts.d/10-mingw-std-threads.sh +++ b/scripts.d/10-mingw-std-threads.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mingw-std-threads - cd mingw-std-threads +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/mingw-std-threads mkdir -p "$FFBUILD_PREFIX"/include cp *.h "$FFBUILD_PREFIX"/include diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index 3ce017f..078e4c7 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -17,10 +17,14 @@ ffbuild_dockerfinal() { to_df "COPY --from=${PREVLAYER} /opt/mingw/. /" } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool sh -c "rm -rf mingw && git clone '$SCRIPT_REPO' mingw" cd mingw git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR/mingw" cd mingw-w64-headers diff --git a/scripts.d/10-xorg-macros.sh b/scripts.d/10-xorg-macros.sh index 6cb4611..e9cf447 100755 --- a/scripts.d/10-xorg-macros.sh +++ b/scripts.d/10-xorg-macros.sh @@ -13,9 +13,12 @@ ffbuild_dockerlayer() { to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/share/aclocal/. /usr/share/aclocal" } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xorg-macros - cd xorg-macros +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xorg-macros autoreconf -i ./configure --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/20-libiconv.sh b/scripts.d/20-libiconv.sh index 789be57..8cf0bfb 100755 --- a/scripts.d/20-libiconv.sh +++ b/scripts.d/20-libiconv.sh @@ -7,10 +7,15 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool sh -c "rm -rf iconv && git clone '$SCRIPT_REPO' iconv" cd iconv git checkout "$SCRIPT_COMMIT" + retry-tool ./autopull.sh --one-time +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/iconv retry-tool ./autopull.sh --one-time (unset CC CFLAGS GMAKE && ./autogen.sh) diff --git a/scripts.d/20-libxml2.sh b/scripts.d/20-libxml2.sh index b811727..2689fa1 100755 --- a/scripts.d/20-libxml2.sh +++ b/scripts.d/20-libxml2.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxml2 - cd libxml2 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxml2 local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/20-zlib.sh b/scripts.d/20-zlib.sh index c400b17..98b6182 100755 --- a/scripts.d/20-zlib.sh +++ b/scripts.d/20-zlib.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zlib - cd zlib +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/zlib local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/25-fftw3.sh b/scripts.d/25-fftw3.sh index 0a5eba0..0fd6e51 100755 --- a/scripts.d/25-fftw3.sh +++ b/scripts.d/25-fftw3.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fftw3 - cd fftw3 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/fftw3 local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/25-freetype.sh b/scripts.d/25-freetype.sh index 1f54520..7bf5340 100755 --- a/scripts.d/25-freetype.sh +++ b/scripts.d/25-freetype.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" freetype - cd freetype +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/freetype ./autogen.sh diff --git a/scripts.d/25-fribidi.sh b/scripts.d/25-fribidi.sh index 92a1d5d..9febfa6 100755 --- a/scripts.d/25-fribidi.sh +++ b/scripts.d/25-fribidi.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fribidi - cd fribidi +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/fribidi mkdir build && cd build diff --git a/scripts.d/25-gmp.sh b/scripts.d/25-gmp.sh index 23bbeb4..cd3a76b 100755 --- a/scripts.d/25-gmp.sh +++ b/scripts.d/25-gmp.sh @@ -8,10 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool check-wget "gmp.tar.xz" "$SCRIPT_URL" "$SCRIPT_SHA512" +} - tar xaf "gmp.tar.xz" +ffbuild_dockerbuild() { + tar xaf "$FFBUILD_DLDIR"/gmp.tar.xz cd "gmp-$SCRIPT_VERSION" local myconf=( diff --git a/scripts.d/25-libogg.sh b/scripts.d/25-libogg.sh index 5b48232..9ba3b7b 100755 --- a/scripts.d/25-libogg.sh +++ b/scripts.d/25-libogg.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ogg - cd ogg +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/ogg ./autogen.sh diff --git a/scripts.d/25-openssl.sh b/scripts.d/25-openssl.sh index 100e60f..761cd0a 100755 --- a/scripts.d/25-openssl.sh +++ b/scripts.d/25-openssl.sh @@ -8,10 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openssl cd openssl git submodule update --init --recursive --depth=1 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/openssl local myconf=( threads diff --git a/scripts.d/25-xz.sh b/scripts.d/25-xz.sh index 4f02f98..3602596 100755 --- a/scripts.d/25-xz.sh +++ b/scripts.d/25-xz.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xz - cd xz +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xz ./autogen.sh --no-po4a diff --git a/scripts.d/35-fontconfig.sh b/scripts.d/35-fontconfig.sh index 5ab0100..464a8e7 100755 --- a/scripts.d/35-fontconfig.sh +++ b/scripts.d/35-fontconfig.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fc - cd fc +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/fc ./autogen.sh --noconf diff --git a/scripts.d/45-harfbuzz.sh b/scripts.d/45-harfbuzz.sh index e81ff6f..ef56d57 100755 --- a/scripts.d/45-harfbuzz.sh +++ b/scripts.d/45-harfbuzz.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" harfbuzz - cd harfbuzz +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/harfbuzz local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/45-libsamplerate.sh b/scripts.d/45-libsamplerate.sh index cff6e1b..693bfe8 100755 --- a/scripts.d/45-libsamplerate.sh +++ b/scripts.d/45-libsamplerate.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libsr - cd libsr +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libsr mkdir build cd build diff --git a/scripts.d/45-libudfread.sh b/scripts.d/45-libudfread.sh index e46ea84..2e3e491 100755 --- a/scripts.d/45-libudfread.sh +++ b/scripts.d/45-libudfread.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libudfread - cd libudfread +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libudfread ./bootstrap diff --git a/scripts.d/45-libvorbis.sh b/scripts.d/45-libvorbis.sh index 1499431..79425ed 100755 --- a/scripts.d/45-libvorbis.sh +++ b/scripts.d/45-libvorbis.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vorbis - cd vorbis +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/vorbis ./autogen.sh diff --git a/scripts.d/45-opencl.sh b/scripts.d/45-opencl.sh index 4ae38fb..c8db699 100755 --- a/scripts.d/45-opencl.sh +++ b/scripts.d/45-opencl.sh @@ -10,16 +10,19 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { mkdir opencl && cd opencl - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" headers + git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" loader +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/opencl + mkdir -p "$FFBUILD_PREFIX"/include/CL cp -r headers/CL/* "$FFBUILD_PREFIX"/include/CL/. - git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" loader cd loader - mkdir build && cd build cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" \ diff --git a/scripts.d/45-pulseaudio.sh b/scripts.d/45-pulseaudio.sh index d14cf2f..5d7adef 100755 --- a/scripts.d/45-pulseaudio.sh +++ b/scripts.d/45-pulseaudio.sh @@ -8,10 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone --filter=blob:none "$SCRIPT_REPO" pa cd pa git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/pa # Kill build of utils and their sndfile dep echo > src/utils/meson.build diff --git a/scripts.d/45-vmaf.sh b/scripts.d/45-vmaf.sh index c16f5f5..242e63d 100755 --- a/scripts.d/45-vmaf.sh +++ b/scripts.d/45-vmaf.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vmaf - cd vmaf +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/vmaf # Kill build of unused and broken tools echo > libvmaf/tools/meson.build diff --git a/scripts.d/45-x11/10-xcbproto.sh b/scripts.d/45-x11/10-xcbproto.sh index 894477d..d785ee9 100755 --- a/scripts.d/45-x11/10-xcbproto.sh +++ b/scripts.d/45-x11/10-xcbproto.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xcbproto - cd xcbproto +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xcbproto autoreconf -i diff --git a/scripts.d/45-x11/10-xproto.sh b/scripts.d/45-x11/10-xproto.sh index bd0ce74..33da41e 100755 --- a/scripts.d/45-x11/10-xproto.sh +++ b/scripts.d/45-x11/10-xproto.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xproto - cd xproto +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xproto autoreconf -i diff --git a/scripts.d/45-x11/10-xtrans.sh b/scripts.d/45-x11/10-xtrans.sh index 775472b..22e701d 100755 --- a/scripts.d/45-x11/10-xtrans.sh +++ b/scripts.d/45-x11/10-xtrans.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxtrans - cd libxtrans +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxtrans autoreconf -i diff --git a/scripts.d/45-x11/20-libxau.sh b/scripts.d/45-x11/20-libxau.sh index 4c2e8be..79d6f34 100755 --- a/scripts.d/45-x11/20-libxau.sh +++ b/scripts.d/45-x11/20-libxau.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxau - cd libxau +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxau autoreconf -i diff --git a/scripts.d/45-x11/30-libxcb.sh b/scripts.d/45-x11/30-libxcb.sh index ea21d78..678f4d2 100755 --- a/scripts.d/45-x11/30-libxcb.sh +++ b/scripts.d/45-x11/30-libxcb.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcb - cd libxcb +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxcb autoreconf -i diff --git a/scripts.d/45-x11/40-libx11.sh b/scripts.d/45-x11/40-libx11.sh index 3fb1bf8..ae22436 100755 --- a/scripts.d/45-x11/40-libx11.sh +++ b/scripts.d/45-x11/40-libx11.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libx11 - cd libx11 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libx11 autoreconf -i diff --git a/scripts.d/45-x11/50-libxext.sh b/scripts.d/45-x11/50-libxext.sh index c482aa3..a61384b 100755 --- a/scripts.d/45-x11/50-libxext.sh +++ b/scripts.d/45-x11/50-libxext.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxext - cd libxext +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxext autoreconf -i diff --git a/scripts.d/45-x11/50-libxfixes.sh b/scripts.d/45-x11/50-libxfixes.sh index c60693b..c1830ff 100755 --- a/scripts.d/45-x11/50-libxfixes.sh +++ b/scripts.d/45-x11/50-libxfixes.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxfixes - cd libxfixes +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxfixes autoreconf -i diff --git a/scripts.d/45-x11/50-libxi.sh b/scripts.d/45-x11/50-libxi.sh index aa7a8da..4a26ac4 100755 --- a/scripts.d/45-x11/50-libxi.sh +++ b/scripts.d/45-x11/50-libxi.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxi - cd libxi +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxi autoreconf -i diff --git a/scripts.d/45-x11/50-libxinerama.sh b/scripts.d/45-x11/50-libxinerama.sh index 72d96ac..285483d 100755 --- a/scripts.d/45-x11/50-libxinerama.sh +++ b/scripts.d/45-x11/50-libxinerama.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxinerama - cd libxinerama +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxinerama autoreconf -i diff --git a/scripts.d/45-x11/50-libxrender.sh b/scripts.d/45-x11/50-libxrender.sh index 826ba7d..df174f1 100755 --- a/scripts.d/45-x11/50-libxrender.sh +++ b/scripts.d/45-x11/50-libxrender.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrender - cd libxrender +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxrender autoreconf -i diff --git a/scripts.d/45-x11/50-libxscrnsaver.sh b/scripts.d/45-x11/50-libxscrnsaver.sh index 10a606b..7cd8e94 100755 --- a/scripts.d/45-x11/50-libxscrnsaver.sh +++ b/scripts.d/45-x11/50-libxscrnsaver.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxscrnsaver - cd libxscrnsaver +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxscrnsaver autoreconf -i diff --git a/scripts.d/45-x11/50-libxxf86vm.sh b/scripts.d/45-x11/50-libxxf86vm.sh index e18c26d..208ad23 100755 --- a/scripts.d/45-x11/50-libxxf86vm.sh +++ b/scripts.d/45-x11/50-libxxf86vm.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxxf86vm - cd libxxf86vm +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxxf86vm autoreconf -i diff --git a/scripts.d/45-x11/60-libglvnd.sh b/scripts.d/45-x11/60-libglvnd.sh index 94efdff..b0de160 100755 --- a/scripts.d/45-x11/60-libglvnd.sh +++ b/scripts.d/45-x11/60-libglvnd.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" glvnd - cd glvnd +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/glvnd mkdir build && cd build diff --git a/scripts.d/45-x11/60-libxcursor.sh b/scripts.d/45-x11/60-libxcursor.sh index 18e4057..2b4a2c8 100755 --- a/scripts.d/45-x11/60-libxcursor.sh +++ b/scripts.d/45-x11/60-libxcursor.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcursor - cd libxcursor +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxcursor autoreconf -i diff --git a/scripts.d/45-x11/60-libxrandr.sh b/scripts.d/45-x11/60-libxrandr.sh index 42273fd..a2bb8aa 100755 --- a/scripts.d/45-x11/60-libxrandr.sh +++ b/scripts.d/45-x11/60-libxrandr.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrandr - cd libxrandr +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxrandr autoreconf -i diff --git a/scripts.d/45-x11/60-libxv.sh b/scripts.d/45-x11/60-libxv.sh index 19531b7..b603b1c 100755 --- a/scripts.d/45-x11/60-libxv.sh +++ b/scripts.d/45-x11/60-libxv.sh @@ -9,9 +9,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxv - cd libxv +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libxv autoreconf -i diff --git a/scripts.d/45-x11/99-finalize.sh b/scripts.d/45-x11/99-finalize.sh index 1714e39..c63652b 100755 --- a/scripts.d/45-x11/99-finalize.sh +++ b/scripts.d/45-x11/99-finalize.sh @@ -12,6 +12,10 @@ ffbuild_dockerlayer() { to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/share/aclocal/. /usr/share/aclocal" } +ffbuild_dockerdl() { + return 0 +} + ffbuild_dockerbuild() { rm "$FFBUILD_PREFIX"/lib/lib*.so* || true rm "$FFBUILD_PREFIX"/lib/*.la || true diff --git a/scripts.d/50-amf.sh b/scripts.d/50-amf.sh index 2bb533b..822ac9c 100755 --- a/scripts.d/50-amf.sh +++ b/scripts.d/50-amf.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" amf - cd amf +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/amf mkdir -p "$FFBUILD_PREFIX"/include mv amf/public/include "$FFBUILD_PREFIX"/include/AMF diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index 8f7afc2..10524e8 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -8,12 +8,15 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/aom,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches run_stage /stage.sh" +} + +ffbuild_dockerdl() { + git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aom } ffbuild_dockerbuild() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aom - cd aom + cd "$FFBUILD_DLDIR"/aom for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/50-aribb24/25-libpng.sh b/scripts.d/50-aribb24/25-libpng.sh index e48ada5..f71f404 100755 --- a/scripts.d/50-aribb24/25-libpng.sh +++ b/scripts.d/50-aribb24/25-libpng.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libpng - cd libpng +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libpng autoreconf -i diff --git a/scripts.d/50-aribb24/50-libaribb24.sh b/scripts.d/50-aribb24/50-libaribb24.sh index 30a7c05..618da9a 100755 --- a/scripts.d/50-aribb24/50-libaribb24.sh +++ b/scripts.d/50-aribb24/50-libaribb24.sh @@ -8,12 +8,15 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" +} + +ffbuild_dockerdl() { + git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aribb24 } ffbuild_dockerbuild() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aribb24 - cd aribb24 + cd "$FFBUILD_DLDIR"/aribb24 for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/50-avisynth.sh b/scripts.d/50-avisynth.sh index 058eabf..50b85db 100755 --- a/scripts.d/50-avisynth.sh +++ b/scripts.d/50-avisynth.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" avisynth - cd avisynth +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/avisynth mkdir build && cd build diff --git a/scripts.d/50-chromaprint.sh b/scripts.d/50-chromaprint.sh index 85c7149..2e32319 100755 --- a/scripts.d/50-chromaprint.sh +++ b/scripts.d/50-chromaprint.sh @@ -11,9 +11,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" chromaprint - cd chromaprint +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/chromaprint mkdir build && cd build diff --git a/scripts.d/50-dav1d.sh b/scripts.d/50-dav1d.sh index e35e769..01bc4c7 100755 --- a/scripts.d/50-dav1d.sh +++ b/scripts.d/50-dav1d.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" dav1d - cd dav1d +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/dav1d mkdir build && cd build diff --git a/scripts.d/50-davs2.sh b/scripts.d/50-davs2.sh index fb5dcbb..5b80d71 100755 --- a/scripts.d/50-davs2.sh +++ b/scripts.d/50-davs2.sh @@ -11,10 +11,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" davs2 cd davs2 git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/davs2 cd build/linux local myconf=( diff --git a/scripts.d/50-fdk-aac.sh b/scripts.d/50-fdk-aac.sh index 9e6c9c3..c34dae1 100755 --- a/scripts.d/50-fdk-aac.sh +++ b/scripts.d/50-fdk-aac.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fdk - cd fdk +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/fdk ./autogen.sh diff --git a/scripts.d/50-ffnvcodec.sh b/scripts.d/50-ffnvcodec.sh index 02986f8..d20b416 100755 --- a/scripts.d/50-ffnvcodec.sh +++ b/scripts.d/50-ffnvcodec.sh @@ -11,14 +11,18 @@ ffbuild_enabled() { return 0 } +ffbuild_dockerdl() { + git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ffnvcodec + git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" ffnvcodec2 +} + ffbuild_dockerbuild() { if [[ $ADDINS_STR == *4.4* || $ADDINS_STR == *5.0* || $ADDINS_STR == *5.1* ]]; then - SCRIPT_COMMIT="$SCRIPT_COMMIT2" + cd "$FFBUILD_DLDIR"/ffnvcodec2 + else + cd "$FFBUILD_DLDIR"/ffnvcodec fi - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ffnvcodec - cd ffnvcodec - make PREFIX="$FFBUILD_PREFIX" install } diff --git a/scripts.d/50-frei0r.sh b/scripts.d/50-frei0r.sh index 5b32d91..4e3ee13 100755 --- a/scripts.d/50-frei0r.sh +++ b/scripts.d/50-frei0r.sh @@ -9,9 +9,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" frei0r - cd frei0r +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/frei0r mkdir build && cd build diff --git a/scripts.d/50-gme.sh b/scripts.d/50-gme.sh index 8411df2..dda45ba 100755 --- a/scripts.d/50-gme.sh +++ b/scripts.d/50-gme.sh @@ -7,10 +7,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" gme cd gme git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/gme mkdir build && cd build diff --git a/scripts.d/50-kvazaar.sh b/scripts.d/50-kvazaar.sh index d864353..dea6fea 100755 --- a/scripts.d/50-kvazaar.sh +++ b/scripts.d/50-kvazaar.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" kvazaar - cd kvazaar +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/kvazaar ./autogen.sh diff --git a/scripts.d/50-libass.sh b/scripts.d/50-libass.sh index 07b278b..5c92d18 100755 --- a/scripts.d/50-libass.sh +++ b/scripts.d/50-libass.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ass - cd ass +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/ass ./autogen.sh diff --git a/scripts.d/50-libbluray.sh b/scripts.d/50-libbluray.sh index 1e71eac..16ff944 100755 --- a/scripts.d/50-libbluray.sh +++ b/scripts.d/50-libbluray.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libbluray - cd libbluray +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libbluray ./bootstrap diff --git a/scripts.d/50-libjxl/45-brotli.sh b/scripts.d/50-libjxl/45-brotli.sh index 33cd082..8bc85cb 100755 --- a/scripts.d/50-libjxl/45-brotli.sh +++ b/scripts.d/50-libjxl/45-brotli.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" brotli - cd brotli +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/brotli mkdir build && cd build diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 81d7949..8128486 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -9,10 +9,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" jxl cd jxl git submodule update --init --recursive --depth 1 --recommend-shallow third_party/{highway,skcms} +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/jxl mkdir build && cd build diff --git a/scripts.d/50-libmp3lame.sh b/scripts.d/50-libmp3lame.sh index e5418f2..740eadf 100755 --- a/scripts.d/50-libmp3lame.sh +++ b/scripts.d/50-libmp3lame.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool sh -c "rm -rf lame && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' lame" - cd lame +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/lame autoreconf -i diff --git a/scripts.d/50-libopus.sh b/scripts.d/50-libopus.sh index 5b6ab88..448ae10 100755 --- a/scripts.d/50-libopus.sh +++ b/scripts.d/50-libopus.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" opus - cd opus +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/opus ./autogen.sh diff --git a/scripts.d/50-librist/40-mbedtls.sh b/scripts.d/50-librist/40-mbedtls.sh index 40bf430..0211f8b 100755 --- a/scripts.d/50-librist/40-mbedtls.sh +++ b/scripts.d/50-librist/40-mbedtls.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mbedtls - cd mbedtls +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/mbedtls mkdir build && cd build diff --git a/scripts.d/50-librist/50-librist.sh b/scripts.d/50-librist/50-librist.sh index 94569eb..4aff562 100755 --- a/scripts.d/50-librist/50-librist.sh +++ b/scripts.d/50-librist/50-librist.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" librist - cd librist +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/librist mkdir build && cd build diff --git a/scripts.d/50-libssh.sh b/scripts.d/50-libssh.sh index 1bf0948..6f9784e 100755 --- a/scripts.d/50-libssh.sh +++ b/scripts.d/50-libssh.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libssh - cd libssh +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libssh mkdir build && cd build diff --git a/scripts.d/50-libtheora.sh b/scripts.d/50-libtheora.sh index 11f5ac1..efc3645 100755 --- a/scripts.d/50-libtheora.sh +++ b/scripts.d/50-libtheora.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" theora - cd theora +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/theora ./autogen.sh diff --git a/scripts.d/50-libvpx.sh b/scripts.d/50-libvpx.sh index d93ae4f..203e8f9 100755 --- a/scripts.d/50-libvpx.sh +++ b/scripts.d/50-libvpx.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libvpx - cd libvpx +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libvpx local myconf=( --disable-shared diff --git a/scripts.d/50-libwebp.sh b/scripts.d/50-libwebp.sh index ac44dd6..99b4bf6 100755 --- a/scripts.d/50-libwebp.sh +++ b/scripts.d/50-libwebp.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" webp - cd webp +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/webp ./autogen.sh diff --git a/scripts.d/50-lilv/96-lv2.sh b/scripts.d/50-lilv/96-lv2.sh index 157f3d3..498b51a 100755 --- a/scripts.d/50-lilv/96-lv2.sh +++ b/scripts.d/50-lilv/96-lv2.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" lv2 - cd lv2 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/lv2 mkdir build && cd build diff --git a/scripts.d/50-lilv/96-serd.sh b/scripts.d/50-lilv/96-serd.sh index 8df2e77..17acce1 100755 --- a/scripts.d/50-lilv/96-serd.sh +++ b/scripts.d/50-lilv/96-serd.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" serd - cd serd +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/serd mkdir build && cd build diff --git a/scripts.d/50-lilv/96-zix.sh b/scripts.d/50-lilv/96-zix.sh index 0a300aa..51ae119 100755 --- a/scripts.d/50-lilv/96-zix.sh +++ b/scripts.d/50-lilv/96-zix.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zix - cd zix +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/zix mkdir build && cd build diff --git a/scripts.d/50-lilv/97-sord.sh b/scripts.d/50-lilv/97-sord.sh index 819e3f2..72fe959 100755 --- a/scripts.d/50-lilv/97-sord.sh +++ b/scripts.d/50-lilv/97-sord.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sord - cd sord +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/sord mkdir build && cd build diff --git a/scripts.d/50-lilv/98-sratom.sh b/scripts.d/50-lilv/98-sratom.sh index 150d70f..2e5ce9e 100755 --- a/scripts.d/50-lilv/98-sratom.sh +++ b/scripts.d/50-lilv/98-sratom.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sratom - cd sratom +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/sratom mkdir build && cd build diff --git a/scripts.d/50-lilv/99-lilv.sh b/scripts.d/50-lilv/99-lilv.sh index a352455..ec20306 100755 --- a/scripts.d/50-lilv/99-lilv.sh +++ b/scripts.d/50-lilv/99-lilv.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" lilv - cd lilv +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/lilv mkdir build && cd build diff --git a/scripts.d/50-onevpl.sh b/scripts.d/50-onevpl.sh index 19a6dc4..ae2822f 100755 --- a/scripts.d/50-onevpl.sh +++ b/scripts.d/50-onevpl.sh @@ -11,9 +11,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" onevpl - cd onevpl +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/onevpl mkdir build && cd build diff --git a/scripts.d/50-openal.sh b/scripts.d/50-openal.sh index f7ed3f3..fe93ae6 100755 --- a/scripts.d/50-openal.sh +++ b/scripts.d/50-openal.sh @@ -10,9 +10,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openal - cd openal +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/openal mkdir cm_build && cd cm_build diff --git a/scripts.d/50-opencore-amr.sh b/scripts.d/50-opencore-amr.sh index b72d70d..090cd90 100755 --- a/scripts.d/50-opencore-amr.sh +++ b/scripts.d/50-opencore-amr.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" opencore - cd opencore +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/opencore autoreconf -i diff --git a/scripts.d/50-openh264.sh b/scripts.d/50-openh264.sh index 7a90d22..0fb425c 100755 --- a/scripts.d/50-openh264.sh +++ b/scripts.d/50-openh264.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openh264 - cd openh264 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/openh264 local myconf=( PREFIX="$FFBUILD_PREFIX" diff --git a/scripts.d/50-openjpeg.sh b/scripts.d/50-openjpeg.sh index 76bb967..dd8461d 100755 --- a/scripts.d/50-openjpeg.sh +++ b/scripts.d/50-openjpeg.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openjpeg - cd openjpeg +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/openjpeg mkdir build && cd build diff --git a/scripts.d/50-openmpt.sh b/scripts.d/50-openmpt.sh index 9b72c7b..0769e2c 100755 --- a/scripts.d/50-openmpt.sh +++ b/scripts.d/50-openmpt.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool sh -c "rm -rf openmpt && svn checkout '${SCRIPT_REPO}@${SCRIPT}' openmpt" - cd openmpt +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/openmpt local myconf=( PREFIX="$FFBUILD_PREFIX" diff --git a/scripts.d/50-rav1e.sh b/scripts.d/50-rav1e.sh index 2044052..dba5f5a 100755 --- a/scripts.d/50-rav1e.sh +++ b/scripts.d/50-rav1e.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" rav1e - cd rav1e +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/rav1e local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/50-rubberband.sh b/scripts.d/50-rubberband.sh index 3dc4081..135c95d 100755 --- a/scripts.d/50-rubberband.sh +++ b/scripts.d/50-rubberband.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" rubberband - cd rubberband +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/rubberband mkdir build && cd build diff --git a/scripts.d/50-schannel.sh b/scripts.d/50-schannel.sh index 4546e2b..27ac5c8 100755 --- a/scripts.d/50-schannel.sh +++ b/scripts.d/50-schannel.sh @@ -6,6 +6,10 @@ ffbuild_enabled() { [[ $TARGET == win* ]] } +ffbuild_dockerdl() { + return 0 +} + ffbuild_dockerstage() { return 0 } @@ -14,6 +18,14 @@ ffbuild_dockerbuild() { return 0 } +ffbuild_dockerstage_dl() { + return 0 +} + +ffbuild_dockerlayer_dl() { + return 0 +} + ffbuild_configure() { echo --enable-schannel } diff --git a/scripts.d/50-sdl.sh b/scripts.d/50-sdl.sh index 90df797..850c824 100755 --- a/scripts.d/50-sdl.sh +++ b/scripts.d/50-sdl.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sdl - cd sdl +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/sdl mkdir build && cd build diff --git a/scripts.d/50-soxr.sh b/scripts.d/50-soxr.sh index f351fa6..76ab55e 100755 --- a/scripts.d/50-soxr.sh +++ b/scripts.d/50-soxr.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" soxr - cd soxr +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/soxr mkdir build && cd build diff --git a/scripts.d/50-srt.sh b/scripts.d/50-srt.sh index 7807899..b1f8c2e 100755 --- a/scripts.d/50-srt.sh +++ b/scripts.d/50-srt.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" srt - cd srt +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/srt mkdir build && cd build diff --git a/scripts.d/50-svtav1.sh b/scripts.d/50-svtav1.sh index 043b85c..7a7a9b2 100755 --- a/scripts.d/50-svtav1.sh +++ b/scripts.d/50-svtav1.sh @@ -8,10 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" svtav1 cd svtav1 git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/svtav1 mkdir build && cd build diff --git a/scripts.d/50-twolame.sh b/scripts.d/50-twolame.sh index 2dac91d..b56ab85 100755 --- a/scripts.d/50-twolame.sh +++ b/scripts.d/50-twolame.sh @@ -7,9 +7,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" twolame - cd twolame +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/twolame NOCONFIGURE=1 ./autogen.sh touch doc/twolame.1 diff --git a/scripts.d/50-uavs3d.sh b/scripts.d/50-uavs3d.sh index 02ca0e5..22b979a 100755 --- a/scripts.d/50-uavs3d.sh +++ b/scripts.d/50-uavs3d.sh @@ -8,10 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" uavs3d cd uavs3d git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/uavs3d mkdir build/linux cd build/linux diff --git a/scripts.d/50-vaapi/30-libpciaccess.sh b/scripts.d/50-vaapi/30-libpciaccess.sh index ff55e48..cbf3516 100755 --- a/scripts.d/50-vaapi/30-libpciaccess.sh +++ b/scripts.d/50-vaapi/30-libpciaccess.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libpciaccess - cd libpciaccess +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libpciaccess autoreconf -fi diff --git a/scripts.d/50-vaapi/40-libdrm.sh b/scripts.d/50-vaapi/40-libdrm.sh index 3a556a0..e65cecd 100755 --- a/scripts.d/50-vaapi/40-libdrm.sh +++ b/scripts.d/50-vaapi/40-libdrm.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libdrm - cd libdrm +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libdrm mkdir build && cd build diff --git a/scripts.d/50-vaapi/50-libva.sh b/scripts.d/50-vaapi/50-libva.sh index 0c2e38e..217781f 100755 --- a/scripts.d/50-vaapi/50-libva.sh +++ b/scripts.d/50-vaapi/50-libva.sh @@ -9,9 +9,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libva - cd libva +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/libva autoreconf -i diff --git a/scripts.d/50-vaapi/99-finalize.sh b/scripts.d/50-vaapi/99-finalize.sh index 5435582..ee8a518 100755 --- a/scripts.d/50-vaapi/99-finalize.sh +++ b/scripts.d/50-vaapi/99-finalize.sh @@ -7,6 +7,10 @@ ffbuild_enabled() { return 0 } +ffbuild_dockerdl() { + return 0 +} + ffbuild_dockerbuild() { rm "$FFBUILD_PREFIX"/lib/lib*.so* || true rm "$FFBUILD_PREFIX"/lib/*.la || true diff --git a/scripts.d/50-vidstab.sh b/scripts.d/50-vidstab.sh index 89c8820..0151898 100755 --- a/scripts.d/50-vidstab.sh +++ b/scripts.d/50-vidstab.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vidstab - cd vidstab +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/vidstab mkdir build && cd build diff --git a/scripts.d/50-vulkan/45-vulkan.sh b/scripts.d/50-vulkan/45-vulkan.sh index 2dda908..cf787a8 100755 --- a/scripts.d/50-vulkan/45-vulkan.sh +++ b/scripts.d/50-vulkan/45-vulkan.sh @@ -9,9 +9,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vkheaders - cd vkheaders +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/vkheaders mkdir build && cd build diff --git a/scripts.d/50-vulkan/50-shaderc.sh b/scripts.d/50-vulkan/50-shaderc.sh index bf890b5..3c589d7 100755 --- a/scripts.d/50-vulkan/50-shaderc.sh +++ b/scripts.d/50-vulkan/50-shaderc.sh @@ -8,11 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" shaderc cd shaderc - ./utils/git-sync-deps +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/shaderc mkdir build && cd build diff --git a/scripts.d/50-vulkan/55-spirv-cross.sh b/scripts.d/50-vulkan/55-spirv-cross.sh index 61317a4..80ce449 100755 --- a/scripts.d/50-vulkan/55-spirv-cross.sh +++ b/scripts.d/50-vulkan/55-spirv-cross.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" spirv-cross - cd spirv-cross +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/spirv-cross VER_MAJ="$(grep 'set(spirv-cross-abi-major' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')" VER_MIN="$(grep 'set(spirv-cross-abi-minor' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')" diff --git a/scripts.d/50-vulkan/60-libplacebo.sh b/scripts.d/50-vulkan/60-libplacebo.sh index 723647a..8a4b7ed 100755 --- a/scripts.d/50-vulkan/60-libplacebo.sh +++ b/scripts.d/50-vulkan/60-libplacebo.sh @@ -11,10 +11,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" placebo cd placebo git submodule update --init --recursive +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/placebo mkdir build && cd build diff --git a/scripts.d/50-vulkan/99-enable.sh b/scripts.d/50-vulkan/99-enable.sh index f9f8977..d83e3cb 100755 --- a/scripts.d/50-vulkan/99-enable.sh +++ b/scripts.d/50-vulkan/99-enable.sh @@ -7,6 +7,10 @@ ffbuild_enabled() { return 0 } +ffbuild_dockerdl() { + return 0 +} + ffbuild_dockerbuild() { return 0 } diff --git a/scripts.d/50-x264.sh b/scripts.d/50-x264.sh index 38997cb..cafaa96 100755 --- a/scripts.d/50-x264.sh +++ b/scripts.d/50-x264.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" x264 - cd x264 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/x264 local myconf=( --disable-cli diff --git a/scripts.d/50-x265.sh b/scripts.d/50-x265.sh index a5e4b2e..ad252e0 100755 --- a/scripts.d/50-x265.sh +++ b/scripts.d/50-x265.sh @@ -8,10 +8,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" x265 cd x265 git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/x265 local common_config=( -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" diff --git a/scripts.d/50-xavs2.sh b/scripts.d/50-xavs2.sh index bd128b3..d11230d 100755 --- a/scripts.d/50-xavs2.sh +++ b/scripts.d/50-xavs2.sh @@ -11,10 +11,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git clone "$SCRIPT_REPO" xavs2 cd xavs2 git checkout "$SCRIPT_COMMIT" +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xavs2 cd build/linux local myconf=( diff --git a/scripts.d/50-xvid.sh b/scripts.d/50-xvid.sh index 0db384d..1325a9e 100755 --- a/scripts.d/50-xvid.sh +++ b/scripts.d/50-xvid.sh @@ -8,9 +8,12 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { retry-tool sh -c "rm -rf xvid && svn checkout --username 'anonymous' --password '' '${SCRIPT_REPO}@${SCRIPT_REV}' xvid" - cd xvid +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/xvid cd build/generic diff --git a/scripts.d/50-zimg.sh b/scripts.d/50-zimg.sh index 70087bd..e9c54d4 100755 --- a/scripts.d/50-zimg.sh +++ b/scripts.d/50-zimg.sh @@ -7,10 +7,14 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerbuild() { +ffbuild_dockerdl() { git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zimg cd zimg git submodule update --init --recursive --depth=1 +} + +ffbuild_dockerbuild() { + cd "$FFBUILD_DLDIR"/zimg ./autogen.sh diff --git a/scripts.d/50-zvbi.sh b/scripts.d/50-zvbi.sh index d0c8031..e5fbe35 100755 --- a/scripts.d/50-zvbi.sh +++ b/scripts.d/50-zvbi.sh @@ -8,12 +8,15 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" +} + +ffbuild_dockerdl() { + retry-tool sh -c "rm -rf zvbi && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' zvbi" } ffbuild_dockerbuild() { - retry-tool sh -c "rm -rf zvbi && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' zvbi" - cd zvbi + cd "$FFBUILD_DLDIR"/zvbi for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/99-rpath.sh b/scripts.d/99-rpath.sh index c5d3256..7a7daf4 100755 --- a/scripts.d/99-rpath.sh +++ b/scripts.d/99-rpath.sh @@ -10,6 +10,10 @@ ffbuild_dockerfinal() { return 0 } +ffbuild_dockerdl() { + return 0 +} + ffbuild_dockerlayer() { return 0 } @@ -18,6 +22,14 @@ ffbuild_dockerstage() { return 0 } +ffbuild_dockerstage_dl() { + return 0 +} + +ffbuild_dockerlayer_dl() { + return 0 +} + ffbuild_dockerbuild() { return 0 } diff --git a/util/vars.sh b/util/vars.sh index 656ac06..a0a8697 100644 --- a/util/vars.sh +++ b/util/vars.sh @@ -36,9 +36,23 @@ REGISTRY="${REGISTRY_OVERRIDE:-ghcr.io}" BASE_IMAGE="${REGISTRY}/${REPO}/base:latest" TARGET_IMAGE="${REGISTRY}/${REPO}/base-${TARGET}:latest" IMAGE="${REGISTRY}/${REPO}/${TARGET}-${VARIANT}${ADDINS_STR:+-}${ADDINS_STR}:latest" +DL_IMAGE="${REGISTRY}/${REPO}/dl_cache:latest" + +if [[ -n "$REGISTRY_OVERRIDE_DL" && -n "$GITHUB_REPOSITORY_DL" ]]; then + DL_IMAGE="${REGISTRY_OVERRIDE_DL}/${GITHUB_REPOSITORY_DL}/dl_cache:latest" + DL_IMAGE="${DL_IMAGE,,}" +fi + +ffbuild_dockerstage_dl() { + to_df "RUN --mount=src=${SELF},dst=/stage.sh run_stage /stage.sh ffbuild_dockerdl \$FFBUILD_DLDIR" +} + +ffbuild_dockerlayer_dl() { + to_df "COPY --from=${SELFLAYER} \$FFBUILD_DLDIR/. \$FFBUILD_DLDIR" +} ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh" } ffbuild_dockerlayer() { diff --git a/variants/dl-only.sh b/variants/dl-only.sh new file mode 100644 index 0000000..a9bf588 --- /dev/null +++ b/variants/dl-only.sh @@ -0,0 +1 @@ +#!/bin/bash From 61debb00e507b3a5056f20572c9139eadafaaa24 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 18 Jun 2023 21:25:50 +0200 Subject: [PATCH 06/27] Switch to a more direct Dockerfile.dl generation Otherwise the entire build cache effectively invalidates the moment one script changes.. --- generate.sh | 7 ++++++- scripts.d/10-mingw-std-threads.sh | 6 +----- scripts.d/10-mingw.sh | 4 +--- scripts.d/10-xorg-macros.sh | 6 +----- scripts.d/20-libiconv.sh | 8 +++----- scripts.d/20-libxml2.sh | 6 +----- scripts.d/20-zlib.sh | 6 +----- scripts.d/25-fftw3.sh | 6 +----- scripts.d/25-freetype.sh | 6 +----- scripts.d/25-fribidi.sh | 6 +----- scripts.d/25-gmp.sh | 2 +- scripts.d/25-libogg.sh | 6 +----- scripts.d/25-openssl.sh | 7 +++---- scripts.d/25-xz.sh | 6 +----- scripts.d/35-fontconfig.sh | 6 +----- scripts.d/45-harfbuzz.sh | 6 +----- scripts.d/45-libsamplerate.sh | 6 +----- scripts.d/45-libudfread.sh | 6 +----- scripts.d/45-libvorbis.sh | 6 +----- scripts.d/45-opencl.sh | 5 ++--- scripts.d/45-pulseaudio.sh | 7 +++---- scripts.d/45-vmaf.sh | 6 +----- scripts.d/45-x11/10-xcbproto.sh | 6 +----- scripts.d/45-x11/10-xproto.sh | 6 +----- scripts.d/45-x11/10-xtrans.sh | 6 +----- scripts.d/45-x11/20-libxau.sh | 6 +----- scripts.d/45-x11/30-libxcb.sh | 6 +----- scripts.d/45-x11/40-libx11.sh | 6 +----- scripts.d/45-x11/50-libxext.sh | 6 +----- scripts.d/45-x11/50-libxfixes.sh | 6 +----- scripts.d/45-x11/50-libxi.sh | 6 +----- scripts.d/45-x11/50-libxinerama.sh | 6 +----- scripts.d/45-x11/50-libxrender.sh | 6 +----- scripts.d/45-x11/50-libxscrnsaver.sh | 6 +----- scripts.d/45-x11/50-libxxf86vm.sh | 6 +----- scripts.d/45-x11/60-libglvnd.sh | 6 +----- scripts.d/45-x11/60-libxcursor.sh | 6 +----- scripts.d/45-x11/60-libxrandr.sh | 6 +----- scripts.d/45-x11/60-libxv.sh | 6 +----- scripts.d/50-amf.sh | 6 +----- scripts.d/50-aom.sh | 8 ++------ scripts.d/50-aribb24/25-libpng.sh | 6 +----- scripts.d/50-aribb24/50-libaribb24.sh | 8 ++------ scripts.d/50-avisynth.sh | 6 +----- scripts.d/50-chromaprint.sh | 6 +----- scripts.d/50-dav1d.sh | 6 +----- scripts.d/50-davs2.sh | 7 +++---- scripts.d/50-fdk-aac.sh | 6 +----- scripts.d/50-ffnvcodec.sh | 4 ++-- scripts.d/50-frei0r.sh | 6 +----- scripts.d/50-gme.sh | 7 +++---- scripts.d/50-kvazaar.sh | 6 +----- scripts.d/50-libass.sh | 6 +----- scripts.d/50-libbluray.sh | 6 +----- scripts.d/50-libjxl/45-brotli.sh | 6 +----- scripts.d/50-libjxl/50-libjxl.sh | 7 +++---- scripts.d/50-libmp3lame.sh | 2 +- scripts.d/50-libopus.sh | 6 +----- scripts.d/50-librist/40-mbedtls.sh | 6 +----- scripts.d/50-librist/50-librist.sh | 6 +----- scripts.d/50-libssh.sh | 6 +----- scripts.d/50-libtheora.sh | 6 +----- scripts.d/50-libvpx.sh | 6 +----- scripts.d/50-libwebp.sh | 6 +----- scripts.d/50-lilv/96-lv2.sh | 6 +----- scripts.d/50-lilv/96-serd.sh | 6 +----- scripts.d/50-lilv/96-zix.sh | 6 +----- scripts.d/50-lilv/97-sord.sh | 6 +----- scripts.d/50-lilv/98-sratom.sh | 6 +----- scripts.d/50-lilv/99-lilv.sh | 6 +----- scripts.d/50-onevpl.sh | 6 +----- scripts.d/50-openal.sh | 6 +----- scripts.d/50-opencore-amr.sh | 6 +----- scripts.d/50-openh264.sh | 6 +----- scripts.d/50-openjpeg.sh | 6 +----- scripts.d/50-openmpt.sh | 2 +- scripts.d/50-rav1e.sh | 6 +----- scripts.d/50-rubberband.sh | 6 +----- scripts.d/50-schannel.sh | 4 ---- scripts.d/50-sdl.sh | 6 +----- scripts.d/50-soxr.sh | 6 +----- scripts.d/50-srt.sh | 6 +----- scripts.d/50-svtav1.sh | 7 +++---- scripts.d/50-twolame.sh | 6 +----- scripts.d/50-uavs3d.sh | 7 +++---- scripts.d/50-vaapi/30-libpciaccess.sh | 6 +----- scripts.d/50-vaapi/40-libdrm.sh | 6 +----- scripts.d/50-vaapi/50-libva.sh | 6 +----- scripts.d/50-vidstab.sh | 6 +----- scripts.d/50-vulkan/45-vulkan.sh | 6 +----- scripts.d/50-vulkan/50-shaderc.sh | 7 +++---- scripts.d/50-vulkan/55-spirv-cross.sh | 6 +----- scripts.d/50-vulkan/60-libplacebo.sh | 7 +++---- scripts.d/50-x264.sh | 6 +----- scripts.d/50-x265.sh | 7 +++---- scripts.d/50-xavs2.sh | 7 +++---- scripts.d/50-xvid.sh | 2 +- scripts.d/50-zimg.sh | 7 +++---- scripts.d/50-zvbi.sh | 6 +++--- scripts.d/99-rpath.sh | 4 ---- util/vars.sh | 6 +++--- 101 files changed, 138 insertions(+), 462 deletions(-) diff --git a/generate.sh b/generate.sh index c56a4c1..87c0dbb 100755 --- a/generate.sh +++ b/generate.sh @@ -16,6 +16,10 @@ to_df() { echo >> "$_of" } +default_dl() { + to_df "RUN git-mini-clone \"$SCRIPT_REPO\" \"$SCRIPT_COMMIT\" \"$1\"" +} + ### ### Generate download Dockerfile ### @@ -26,7 +30,7 @@ exec_dockerstage_dl() { SELF="$SCRIPT" SELFLAYER="$(layername "$STAGE")" source "$SCRIPT" - ffbuild_dockerstage_dl || exit $? + ffbuild_dockerdl || exit $? TODF="Dockerfile.dl.final" ffbuild_dockerlayer_dl || exit $? ) } @@ -35,6 +39,7 @@ export TODF="Dockerfile.dl" to_df "FROM ${REGISTRY}/${REPO}/base:latest AS base" to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR" +to_df "WORKDIR \$FFBUILD_DLDIR" PREVLAYER="base" for ID in $(ls -1d scripts.d/??-* | sed -s 's|^.*/\(..\).*|\1|' | sort -u); do diff --git a/scripts.d/10-mingw-std-threads.sh b/scripts.d/10-mingw-std-threads.sh index f9be4ad..d1ced26 100755 --- a/scripts.d/10-mingw-std-threads.sh +++ b/scripts.d/10-mingw-std-threads.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mingw-std-threads -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/mingw-std-threads + cd "$FFBUILD_DLDIR/$SELF" mkdir -p "$FFBUILD_PREFIX"/include cp *.h "$FFBUILD_PREFIX"/include diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index 078e4c7..0b47612 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -18,9 +18,7 @@ ffbuild_dockerfinal() { } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf mingw && git clone '$SCRIPT_REPO' mingw" - cd mingw - git checkout "$SCRIPT_COMMIT" + to_df "RUN retry-tool sh -c \"rm -rf mingw && git clone '$SCRIPT_REPO' mingw\" && cd mingw && git checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/10-xorg-macros.sh b/scripts.d/10-xorg-macros.sh index e9cf447..d336ff1 100755 --- a/scripts.d/10-xorg-macros.sh +++ b/scripts.d/10-xorg-macros.sh @@ -13,12 +13,8 @@ ffbuild_dockerlayer() { to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/share/aclocal/. /usr/share/aclocal" } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xorg-macros -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/xorg-macros + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i ./configure --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/20-libiconv.sh b/scripts.d/20-libiconv.sh index 8cf0bfb..993ad79 100755 --- a/scripts.d/20-libiconv.sh +++ b/scripts.d/20-libiconv.sh @@ -8,14 +8,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf iconv && git clone '$SCRIPT_REPO' iconv" - cd iconv - git checkout "$SCRIPT_COMMIT" - retry-tool ./autopull.sh --one-time + to_df "RUN retry-tool sh -c \"rm -rf $SELF && git clone '$SCRIPT_REPO' $SELF\"" + to_df "RUN git -C $SELF checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/iconv + cd "$FFBUILD_DLDIR/$SELF" retry-tool ./autopull.sh --one-time (unset CC CFLAGS GMAKE && ./autogen.sh) diff --git a/scripts.d/20-libxml2.sh b/scripts.d/20-libxml2.sh index 2689fa1..14ff564 100755 --- a/scripts.d/20-libxml2.sh +++ b/scripts.d/20-libxml2.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxml2 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxml2 + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/20-zlib.sh b/scripts.d/20-zlib.sh index 98b6182..b9f4d5c 100755 --- a/scripts.d/20-zlib.sh +++ b/scripts.d/20-zlib.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zlib -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/zlib + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/25-fftw3.sh b/scripts.d/25-fftw3.sh index 0fd6e51..ebe8357 100755 --- a/scripts.d/25-fftw3.sh +++ b/scripts.d/25-fftw3.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fftw3 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/fftw3 + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/25-freetype.sh b/scripts.d/25-freetype.sh index 7bf5340..4ffbf52 100755 --- a/scripts.d/25-freetype.sh +++ b/scripts.d/25-freetype.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" freetype -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/freetype + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/25-fribidi.sh b/scripts.d/25-fribidi.sh index 9febfa6..b9d824a 100755 --- a/scripts.d/25-fribidi.sh +++ b/scripts.d/25-fribidi.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fribidi -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/fribidi + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/25-gmp.sh b/scripts.d/25-gmp.sh index cd3a76b..8f7b1c9 100755 --- a/scripts.d/25-gmp.sh +++ b/scripts.d/25-gmp.sh @@ -9,7 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - retry-tool check-wget "gmp.tar.xz" "$SCRIPT_URL" "$SCRIPT_SHA512" + to_df "RUN retry-tool check-wget gmp.tar.xz \"$SCRIPT_URL\" \"$SCRIPT_SHA512\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/25-libogg.sh b/scripts.d/25-libogg.sh index 9ba3b7b..066f8fa 100755 --- a/scripts.d/25-libogg.sh +++ b/scripts.d/25-libogg.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ogg -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/ogg + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/25-openssl.sh b/scripts.d/25-openssl.sh index 761cd0a..49ef1cc 100755 --- a/scripts.d/25-openssl.sh +++ b/scripts.d/25-openssl.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openssl - cd openssl - git submodule update --init --recursive --depth=1 + default_dl "$SELF" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth=1" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/openssl + cd "$FFBUILD_DLDIR/$SELF" local myconf=( threads diff --git a/scripts.d/25-xz.sh b/scripts.d/25-xz.sh index 3602596..8b04f91 100755 --- a/scripts.d/25-xz.sh +++ b/scripts.d/25-xz.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xz -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/xz + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh --no-po4a diff --git a/scripts.d/35-fontconfig.sh b/scripts.d/35-fontconfig.sh index 464a8e7..cad9f83 100755 --- a/scripts.d/35-fontconfig.sh +++ b/scripts.d/35-fontconfig.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fc -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/fc + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh --noconf diff --git a/scripts.d/45-harfbuzz.sh b/scripts.d/45-harfbuzz.sh index ef56d57..a34cdb3 100755 --- a/scripts.d/45-harfbuzz.sh +++ b/scripts.d/45-harfbuzz.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" harfbuzz -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/harfbuzz + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/45-libsamplerate.sh b/scripts.d/45-libsamplerate.sh index 693bfe8..701f294 100755 --- a/scripts.d/45-libsamplerate.sh +++ b/scripts.d/45-libsamplerate.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libsr -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libsr + cd "$FFBUILD_DLDIR/$SELF" mkdir build cd build diff --git a/scripts.d/45-libudfread.sh b/scripts.d/45-libudfread.sh index 2e3e491..58b5780 100755 --- a/scripts.d/45-libudfread.sh +++ b/scripts.d/45-libudfread.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libudfread -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libudfread + cd "$FFBUILD_DLDIR/$SELF" ./bootstrap diff --git a/scripts.d/45-libvorbis.sh b/scripts.d/45-libvorbis.sh index 79425ed..4b5cde8 100755 --- a/scripts.d/45-libvorbis.sh +++ b/scripts.d/45-libvorbis.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vorbis -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/vorbis + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/45-opencl.sh b/scripts.d/45-opencl.sh index c8db699..afe9e83 100755 --- a/scripts.d/45-opencl.sh +++ b/scripts.d/45-opencl.sh @@ -11,9 +11,8 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - mkdir opencl && cd opencl - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" headers - git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" loader + default_dl opencl/headers + to_df "RUN git-mini-clone \"$SCRIPT_REPO2\" \"$SCRIPT_COMMIT2\" opencl/loader" } ffbuild_dockerbuild() { diff --git a/scripts.d/45-pulseaudio.sh b/scripts.d/45-pulseaudio.sh index 5d7adef..e4d5761 100755 --- a/scripts.d/45-pulseaudio.sh +++ b/scripts.d/45-pulseaudio.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone --filter=blob:none "$SCRIPT_REPO" pa - cd pa - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone --filter=blob:none \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/pa + cd "$FFBUILD_DLDIR/$SELF" # Kill build of utils and their sndfile dep echo > src/utils/meson.build diff --git a/scripts.d/45-vmaf.sh b/scripts.d/45-vmaf.sh index 242e63d..10ea30a 100755 --- a/scripts.d/45-vmaf.sh +++ b/scripts.d/45-vmaf.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vmaf -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/vmaf + cd "$FFBUILD_DLDIR/$SELF" # Kill build of unused and broken tools echo > libvmaf/tools/meson.build diff --git a/scripts.d/45-x11/10-xcbproto.sh b/scripts.d/45-x11/10-xcbproto.sh index d785ee9..ef95b9b 100755 --- a/scripts.d/45-x11/10-xcbproto.sh +++ b/scripts.d/45-x11/10-xcbproto.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xcbproto -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/xcbproto + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/10-xproto.sh b/scripts.d/45-x11/10-xproto.sh index 33da41e..f0e6192 100755 --- a/scripts.d/45-x11/10-xproto.sh +++ b/scripts.d/45-x11/10-xproto.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xproto -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/xproto + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/10-xtrans.sh b/scripts.d/45-x11/10-xtrans.sh index 22e701d..e997e2a 100755 --- a/scripts.d/45-x11/10-xtrans.sh +++ b/scripts.d/45-x11/10-xtrans.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxtrans -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxtrans + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/20-libxau.sh b/scripts.d/45-x11/20-libxau.sh index 79d6f34..19d9fde 100755 --- a/scripts.d/45-x11/20-libxau.sh +++ b/scripts.d/45-x11/20-libxau.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxau -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxau + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/30-libxcb.sh b/scripts.d/45-x11/30-libxcb.sh index 678f4d2..588568d 100755 --- a/scripts.d/45-x11/30-libxcb.sh +++ b/scripts.d/45-x11/30-libxcb.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcb -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxcb + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/40-libx11.sh b/scripts.d/45-x11/40-libx11.sh index ae22436..836fe2d 100755 --- a/scripts.d/45-x11/40-libx11.sh +++ b/scripts.d/45-x11/40-libx11.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libx11 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libx11 + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxext.sh b/scripts.d/45-x11/50-libxext.sh index a61384b..2e73d25 100755 --- a/scripts.d/45-x11/50-libxext.sh +++ b/scripts.d/45-x11/50-libxext.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxext -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxext + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxfixes.sh b/scripts.d/45-x11/50-libxfixes.sh index c1830ff..80fa4dd 100755 --- a/scripts.d/45-x11/50-libxfixes.sh +++ b/scripts.d/45-x11/50-libxfixes.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxfixes -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxfixes + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxi.sh b/scripts.d/45-x11/50-libxi.sh index 4a26ac4..f979476 100755 --- a/scripts.d/45-x11/50-libxi.sh +++ b/scripts.d/45-x11/50-libxi.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxi -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxi + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxinerama.sh b/scripts.d/45-x11/50-libxinerama.sh index 285483d..6f24a94 100755 --- a/scripts.d/45-x11/50-libxinerama.sh +++ b/scripts.d/45-x11/50-libxinerama.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxinerama -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxinerama + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxrender.sh b/scripts.d/45-x11/50-libxrender.sh index df174f1..4f5566f 100755 --- a/scripts.d/45-x11/50-libxrender.sh +++ b/scripts.d/45-x11/50-libxrender.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrender -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxrender + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxscrnsaver.sh b/scripts.d/45-x11/50-libxscrnsaver.sh index 7cd8e94..fec2cab 100755 --- a/scripts.d/45-x11/50-libxscrnsaver.sh +++ b/scripts.d/45-x11/50-libxscrnsaver.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxscrnsaver -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxscrnsaver + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/50-libxxf86vm.sh b/scripts.d/45-x11/50-libxxf86vm.sh index 208ad23..72dd8fa 100755 --- a/scripts.d/45-x11/50-libxxf86vm.sh +++ b/scripts.d/45-x11/50-libxxf86vm.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxxf86vm -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxxf86vm + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/60-libglvnd.sh b/scripts.d/45-x11/60-libglvnd.sh index b0de160..15c439f 100755 --- a/scripts.d/45-x11/60-libglvnd.sh +++ b/scripts.d/45-x11/60-libglvnd.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" glvnd -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/glvnd + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/45-x11/60-libxcursor.sh b/scripts.d/45-x11/60-libxcursor.sh index 2b4a2c8..eaa36f8 100755 --- a/scripts.d/45-x11/60-libxcursor.sh +++ b/scripts.d/45-x11/60-libxcursor.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcursor -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxcursor + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/60-libxrandr.sh b/scripts.d/45-x11/60-libxrandr.sh index a2bb8aa..ab1cdbc 100755 --- a/scripts.d/45-x11/60-libxrandr.sh +++ b/scripts.d/45-x11/60-libxrandr.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrandr -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxrandr + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/45-x11/60-libxv.sh b/scripts.d/45-x11/60-libxv.sh index b603b1c..980490e 100755 --- a/scripts.d/45-x11/60-libxv.sh +++ b/scripts.d/45-x11/60-libxv.sh @@ -9,12 +9,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxv -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libxv + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/50-amf.sh b/scripts.d/50-amf.sh index 822ac9c..6f43a86 100755 --- a/scripts.d/50-amf.sh +++ b/scripts.d/50-amf.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" amf -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/amf + cd "$FFBUILD_DLDIR/$SELF" mkdir -p "$FFBUILD_PREFIX"/include mv amf/public/include "$FFBUILD_PREFIX"/include/AMF diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index 10524e8..bc26159 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -8,15 +8,11 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches run_stage /stage.sh" -} - -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aom + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/aom + cd "$FFBUILD_DLDIR/$SELF" for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/50-aribb24/25-libpng.sh b/scripts.d/50-aribb24/25-libpng.sh index f71f404..8ae9f16 100755 --- a/scripts.d/50-aribb24/25-libpng.sh +++ b/scripts.d/50-aribb24/25-libpng.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libpng -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libpng + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/50-aribb24/50-libaribb24.sh b/scripts.d/50-aribb24/50-libaribb24.sh index 618da9a..3ebb968 100755 --- a/scripts.d/50-aribb24/50-libaribb24.sh +++ b/scripts.d/50-aribb24/50-libaribb24.sh @@ -8,15 +8,11 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" -} - -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" aribb24 + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/aribb24 + cd "$FFBUILD_DLDIR/$SELF" for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/50-avisynth.sh b/scripts.d/50-avisynth.sh index 50b85db..9011dfc 100755 --- a/scripts.d/50-avisynth.sh +++ b/scripts.d/50-avisynth.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" avisynth -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/avisynth + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-chromaprint.sh b/scripts.d/50-chromaprint.sh index 2e32319..cdec6d4 100755 --- a/scripts.d/50-chromaprint.sh +++ b/scripts.d/50-chromaprint.sh @@ -11,12 +11,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" chromaprint -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/chromaprint + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-dav1d.sh b/scripts.d/50-dav1d.sh index 01bc4c7..7ea56b1 100755 --- a/scripts.d/50-dav1d.sh +++ b/scripts.d/50-dav1d.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" dav1d -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/dav1d + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-davs2.sh b/scripts.d/50-davs2.sh index 5b80d71..8a3e778 100755 --- a/scripts.d/50-davs2.sh +++ b/scripts.d/50-davs2.sh @@ -12,13 +12,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" davs2 - cd davs2 - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/davs2 + cd "$FFBUILD_DLDIR/$SELF" cd build/linux local myconf=( diff --git a/scripts.d/50-fdk-aac.sh b/scripts.d/50-fdk-aac.sh index c34dae1..e5f69b6 100755 --- a/scripts.d/50-fdk-aac.sh +++ b/scripts.d/50-fdk-aac.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fdk -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/fdk + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-ffnvcodec.sh b/scripts.d/50-ffnvcodec.sh index d20b416..3bb3f00 100755 --- a/scripts.d/50-ffnvcodec.sh +++ b/scripts.d/50-ffnvcodec.sh @@ -12,8 +12,8 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ffnvcodec - git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" ffnvcodec2 + default_dl ffnvcodec + to_df "RUN git-mini-clone \"$SCRIPT_REPO2\" \"$SCRIPT_COMMIT2\" ffnvcodec2" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-frei0r.sh b/scripts.d/50-frei0r.sh index 4e3ee13..f685a4a 100755 --- a/scripts.d/50-frei0r.sh +++ b/scripts.d/50-frei0r.sh @@ -9,12 +9,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" frei0r -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/frei0r + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-gme.sh b/scripts.d/50-gme.sh index dda45ba..015cfae 100755 --- a/scripts.d/50-gme.sh +++ b/scripts.d/50-gme.sh @@ -8,13 +8,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" gme - cd gme - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/gme + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-kvazaar.sh b/scripts.d/50-kvazaar.sh index dea6fea..7a34e28 100755 --- a/scripts.d/50-kvazaar.sh +++ b/scripts.d/50-kvazaar.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" kvazaar -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/kvazaar + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-libass.sh b/scripts.d/50-libass.sh index 5c92d18..e418f67 100755 --- a/scripts.d/50-libass.sh +++ b/scripts.d/50-libass.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ass -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/ass + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-libbluray.sh b/scripts.d/50-libbluray.sh index 16ff944..8d23987 100755 --- a/scripts.d/50-libbluray.sh +++ b/scripts.d/50-libbluray.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libbluray -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libbluray + cd "$FFBUILD_DLDIR/$SELF" ./bootstrap diff --git a/scripts.d/50-libjxl/45-brotli.sh b/scripts.d/50-libjxl/45-brotli.sh index 8bc85cb..2dc01c1 100755 --- a/scripts.d/50-libjxl/45-brotli.sh +++ b/scripts.d/50-libjxl/45-brotli.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" brotli -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/brotli + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 8128486..dc489c0 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -10,13 +10,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" jxl - cd jxl - git submodule update --init --recursive --depth 1 --recommend-shallow third_party/{highway,skcms} + default_dl "$SELF" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth 1 --recommend-shallow third_party/highway third_party/skcms" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/jxl + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-libmp3lame.sh b/scripts.d/50-libmp3lame.sh index 740eadf..352e3f2 100755 --- a/scripts.d/50-libmp3lame.sh +++ b/scripts.d/50-libmp3lame.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf lame && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' lame" + to_df "RUN retry-tool sh -c \"rm -rf lame && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' lame\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-libopus.sh b/scripts.d/50-libopus.sh index 448ae10..7a69d3f 100755 --- a/scripts.d/50-libopus.sh +++ b/scripts.d/50-libopus.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" opus -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/opus + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-librist/40-mbedtls.sh b/scripts.d/50-librist/40-mbedtls.sh index 0211f8b..404abda 100755 --- a/scripts.d/50-librist/40-mbedtls.sh +++ b/scripts.d/50-librist/40-mbedtls.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mbedtls -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/mbedtls + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-librist/50-librist.sh b/scripts.d/50-librist/50-librist.sh index 4aff562..ac6b99e 100755 --- a/scripts.d/50-librist/50-librist.sh +++ b/scripts.d/50-librist/50-librist.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" librist -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/librist + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-libssh.sh b/scripts.d/50-libssh.sh index 6f9784e..4e17f30 100755 --- a/scripts.d/50-libssh.sh +++ b/scripts.d/50-libssh.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libssh -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libssh + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-libtheora.sh b/scripts.d/50-libtheora.sh index efc3645..79b7603 100755 --- a/scripts.d/50-libtheora.sh +++ b/scripts.d/50-libtheora.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" theora -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/theora + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-libvpx.sh b/scripts.d/50-libvpx.sh index 203e8f9..05d9a63 100755 --- a/scripts.d/50-libvpx.sh +++ b/scripts.d/50-libvpx.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libvpx -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libvpx + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --disable-shared diff --git a/scripts.d/50-libwebp.sh b/scripts.d/50-libwebp.sh index 99b4bf6..9cdfcb5 100755 --- a/scripts.d/50-libwebp.sh +++ b/scripts.d/50-libwebp.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" webp -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/webp + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-lilv/96-lv2.sh b/scripts.d/50-lilv/96-lv2.sh index 498b51a..498c0e6 100755 --- a/scripts.d/50-lilv/96-lv2.sh +++ b/scripts.d/50-lilv/96-lv2.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" lv2 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/lv2 + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-lilv/96-serd.sh b/scripts.d/50-lilv/96-serd.sh index 17acce1..3a5cbcb 100755 --- a/scripts.d/50-lilv/96-serd.sh +++ b/scripts.d/50-lilv/96-serd.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" serd -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/serd + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-lilv/96-zix.sh b/scripts.d/50-lilv/96-zix.sh index 51ae119..c6d56cc 100755 --- a/scripts.d/50-lilv/96-zix.sh +++ b/scripts.d/50-lilv/96-zix.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zix -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/zix + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-lilv/97-sord.sh b/scripts.d/50-lilv/97-sord.sh index 72fe959..cce7dda 100755 --- a/scripts.d/50-lilv/97-sord.sh +++ b/scripts.d/50-lilv/97-sord.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sord -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/sord + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-lilv/98-sratom.sh b/scripts.d/50-lilv/98-sratom.sh index 2e5ce9e..2bc170a 100755 --- a/scripts.d/50-lilv/98-sratom.sh +++ b/scripts.d/50-lilv/98-sratom.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sratom -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/sratom + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-lilv/99-lilv.sh b/scripts.d/50-lilv/99-lilv.sh index ec20306..0e791e6 100755 --- a/scripts.d/50-lilv/99-lilv.sh +++ b/scripts.d/50-lilv/99-lilv.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" lilv -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/lilv + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-onevpl.sh b/scripts.d/50-onevpl.sh index ae2822f..e5a9487 100755 --- a/scripts.d/50-onevpl.sh +++ b/scripts.d/50-onevpl.sh @@ -11,12 +11,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" onevpl -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/onevpl + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-openal.sh b/scripts.d/50-openal.sh index fe93ae6..126815f 100755 --- a/scripts.d/50-openal.sh +++ b/scripts.d/50-openal.sh @@ -10,12 +10,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openal -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/openal + cd "$FFBUILD_DLDIR/$SELF" mkdir cm_build && cd cm_build diff --git a/scripts.d/50-opencore-amr.sh b/scripts.d/50-opencore-amr.sh index 090cd90..02309a4 100755 --- a/scripts.d/50-opencore-amr.sh +++ b/scripts.d/50-opencore-amr.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" opencore -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/opencore + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/50-openh264.sh b/scripts.d/50-openh264.sh index 0fb425c..476489c 100755 --- a/scripts.d/50-openh264.sh +++ b/scripts.d/50-openh264.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openh264 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/openh264 + cd "$FFBUILD_DLDIR/$SELF" local myconf=( PREFIX="$FFBUILD_PREFIX" diff --git a/scripts.d/50-openjpeg.sh b/scripts.d/50-openjpeg.sh index dd8461d..1a8fd49 100755 --- a/scripts.d/50-openjpeg.sh +++ b/scripts.d/50-openjpeg.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openjpeg -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/openjpeg + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-openmpt.sh b/scripts.d/50-openmpt.sh index 0769e2c..f5e5477 100755 --- a/scripts.d/50-openmpt.sh +++ b/scripts.d/50-openmpt.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf openmpt && svn checkout '${SCRIPT_REPO}@${SCRIPT}' openmpt" + to_df "RUN retry-tool sh -c \"rm -rf openmpt && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' openmpt\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-rav1e.sh b/scripts.d/50-rav1e.sh index dba5f5a..75004a0 100755 --- a/scripts.d/50-rav1e.sh +++ b/scripts.d/50-rav1e.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" rav1e -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/rav1e + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --prefix="$FFBUILD_PREFIX" diff --git a/scripts.d/50-rubberband.sh b/scripts.d/50-rubberband.sh index 135c95d..83585aa 100755 --- a/scripts.d/50-rubberband.sh +++ b/scripts.d/50-rubberband.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" rubberband -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/rubberband + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-schannel.sh b/scripts.d/50-schannel.sh index 27ac5c8..2ea5efa 100755 --- a/scripts.d/50-schannel.sh +++ b/scripts.d/50-schannel.sh @@ -18,10 +18,6 @@ ffbuild_dockerbuild() { return 0 } -ffbuild_dockerstage_dl() { - return 0 -} - ffbuild_dockerlayer_dl() { return 0 } diff --git a/scripts.d/50-sdl.sh b/scripts.d/50-sdl.sh index 850c824..34225a3 100755 --- a/scripts.d/50-sdl.sh +++ b/scripts.d/50-sdl.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" sdl -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/sdl + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-soxr.sh b/scripts.d/50-soxr.sh index 76ab55e..f3651aa 100755 --- a/scripts.d/50-soxr.sh +++ b/scripts.d/50-soxr.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" soxr -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/soxr + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-srt.sh b/scripts.d/50-srt.sh index b1f8c2e..e0eb8a8 100755 --- a/scripts.d/50-srt.sh +++ b/scripts.d/50-srt.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" srt -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/srt + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-svtav1.sh b/scripts.d/50-svtav1.sh index 7a7a9b2..d5256d9 100755 --- a/scripts.d/50-svtav1.sh +++ b/scripts.d/50-svtav1.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" svtav1 - cd svtav1 - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/svtav1 + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-twolame.sh b/scripts.d/50-twolame.sh index b56ab85..8e8a60b 100755 --- a/scripts.d/50-twolame.sh +++ b/scripts.d/50-twolame.sh @@ -7,12 +7,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" twolame -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/twolame + cd "$FFBUILD_DLDIR/$SELF" NOCONFIGURE=1 ./autogen.sh touch doc/twolame.1 diff --git a/scripts.d/50-uavs3d.sh b/scripts.d/50-uavs3d.sh index 22b979a..c6d4573 100755 --- a/scripts.d/50-uavs3d.sh +++ b/scripts.d/50-uavs3d.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" uavs3d - cd uavs3d - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/uavs3d + cd "$FFBUILD_DLDIR/$SELF" mkdir build/linux cd build/linux diff --git a/scripts.d/50-vaapi/30-libpciaccess.sh b/scripts.d/50-vaapi/30-libpciaccess.sh index cbf3516..83dfbc2 100755 --- a/scripts.d/50-vaapi/30-libpciaccess.sh +++ b/scripts.d/50-vaapi/30-libpciaccess.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libpciaccess -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libpciaccess + cd "$FFBUILD_DLDIR/$SELF" autoreconf -fi diff --git a/scripts.d/50-vaapi/40-libdrm.sh b/scripts.d/50-vaapi/40-libdrm.sh index e65cecd..bbc9873 100755 --- a/scripts.d/50-vaapi/40-libdrm.sh +++ b/scripts.d/50-vaapi/40-libdrm.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libdrm -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libdrm + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-vaapi/50-libva.sh b/scripts.d/50-vaapi/50-libva.sh index 217781f..e88aa0e 100755 --- a/scripts.d/50-vaapi/50-libva.sh +++ b/scripts.d/50-vaapi/50-libva.sh @@ -9,12 +9,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libva -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/libva + cd "$FFBUILD_DLDIR/$SELF" autoreconf -i diff --git a/scripts.d/50-vidstab.sh b/scripts.d/50-vidstab.sh index 0151898..a0404df 100755 --- a/scripts.d/50-vidstab.sh +++ b/scripts.d/50-vidstab.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vidstab -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/vidstab + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-vulkan/45-vulkan.sh b/scripts.d/50-vulkan/45-vulkan.sh index cf787a8..c6bd864 100755 --- a/scripts.d/50-vulkan/45-vulkan.sh +++ b/scripts.d/50-vulkan/45-vulkan.sh @@ -9,12 +9,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vkheaders -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/vkheaders + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-vulkan/50-shaderc.sh b/scripts.d/50-vulkan/50-shaderc.sh index 3c589d7..26164f1 100755 --- a/scripts.d/50-vulkan/50-shaderc.sh +++ b/scripts.d/50-vulkan/50-shaderc.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" shaderc - cd shaderc - ./utils/git-sync-deps + default_dl "$SELF" + to_df "RUN cd \"$SELF\" && ./utils/git-sync-deps" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/shaderc + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-vulkan/55-spirv-cross.sh b/scripts.d/50-vulkan/55-spirv-cross.sh index 80ce449..5013387 100755 --- a/scripts.d/50-vulkan/55-spirv-cross.sh +++ b/scripts.d/50-vulkan/55-spirv-cross.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" spirv-cross -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/spirv-cross + cd "$FFBUILD_DLDIR/$SELF" VER_MAJ="$(grep 'set(spirv-cross-abi-major' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')" VER_MIN="$(grep 'set(spirv-cross-abi-minor' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')" diff --git a/scripts.d/50-vulkan/60-libplacebo.sh b/scripts.d/50-vulkan/60-libplacebo.sh index 8a4b7ed..d863d8e 100755 --- a/scripts.d/50-vulkan/60-libplacebo.sh +++ b/scripts.d/50-vulkan/60-libplacebo.sh @@ -12,13 +12,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" placebo - cd placebo - git submodule update --init --recursive + default_dl "$SELF" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/placebo + cd "$FFBUILD_DLDIR/$SELF" mkdir build && cd build diff --git a/scripts.d/50-x264.sh b/scripts.d/50-x264.sh index cafaa96..0060cf3 100755 --- a/scripts.d/50-x264.sh +++ b/scripts.d/50-x264.sh @@ -8,12 +8,8 @@ ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" x264 -} - ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/x264 + cd "$FFBUILD_DLDIR/$SELF" local myconf=( --disable-cli diff --git a/scripts.d/50-x265.sh b/scripts.d/50-x265.sh index ad252e0..c7ad259 100755 --- a/scripts.d/50-x265.sh +++ b/scripts.d/50-x265.sh @@ -9,13 +9,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" x265 - cd x265 - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/x265 + cd "$FFBUILD_DLDIR/$SELF" local common_config=( -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" diff --git a/scripts.d/50-xavs2.sh b/scripts.d/50-xavs2.sh index d11230d..ffcde84 100755 --- a/scripts.d/50-xavs2.sh +++ b/scripts.d/50-xavs2.sh @@ -12,13 +12,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git clone "$SCRIPT_REPO" xavs2 - cd xavs2 - git checkout "$SCRIPT_COMMIT" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" + to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/xavs2 + cd "$FFBUILD_DLDIR/$SELF" cd build/linux local myconf=( diff --git a/scripts.d/50-xvid.sh b/scripts.d/50-xvid.sh index 1325a9e..484d2fa 100755 --- a/scripts.d/50-xvid.sh +++ b/scripts.d/50-xvid.sh @@ -9,7 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf xvid && svn checkout --username 'anonymous' --password '' '${SCRIPT_REPO}@${SCRIPT_REV}' xvid" + to_df "RUN retry-tool sh -c \"rm -rf xvid && svn checkout --username 'anonymous' --password '' '${SCRIPT_REPO}@${SCRIPT_REV}' xvid\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-zimg.sh b/scripts.d/50-zimg.sh index e9c54d4..13a7551 100755 --- a/scripts.d/50-zimg.sh +++ b/scripts.d/50-zimg.sh @@ -8,13 +8,12 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zimg - cd zimg - git submodule update --init --recursive --depth=1 + default_dl "$SELF" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth=1" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/zimg + cd "$FFBUILD_DLDIR/$SELF" ./autogen.sh diff --git a/scripts.d/50-zvbi.sh b/scripts.d/50-zvbi.sh index e5fbe35..8025c8a 100755 --- a/scripts.d/50-zvbi.sh +++ b/scripts.d/50-zvbi.sh @@ -8,15 +8,15 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" } ffbuild_dockerdl() { - retry-tool sh -c "rm -rf zvbi && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' zvbi" + to_df "RUN retry-tool sh -c \"rm -rf $SELF && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' $SELF\"" } ffbuild_dockerbuild() { - cd "$FFBUILD_DLDIR"/zvbi + cd "$FFBUILD_DLDIR/$SELF" for patch in /patches/*.patch; do echo "Applying $patch" diff --git a/scripts.d/99-rpath.sh b/scripts.d/99-rpath.sh index 7a7daf4..be7bc33 100755 --- a/scripts.d/99-rpath.sh +++ b/scripts.d/99-rpath.sh @@ -22,10 +22,6 @@ ffbuild_dockerstage() { return 0 } -ffbuild_dockerstage_dl() { - return 0 -} - ffbuild_dockerlayer_dl() { return 0 } diff --git a/util/vars.sh b/util/vars.sh index a0a8697..312f5f0 100644 --- a/util/vars.sh +++ b/util/vars.sh @@ -43,8 +43,8 @@ if [[ -n "$REGISTRY_OVERRIDE_DL" && -n "$GITHUB_REPOSITORY_DL" ]]; then DL_IMAGE="${DL_IMAGE,,}" fi -ffbuild_dockerstage_dl() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh run_stage /stage.sh ffbuild_dockerdl \$FFBUILD_DLDIR" +ffbuild_dockerdl() { + default_dl "$SELF" } ffbuild_dockerlayer_dl() { @@ -52,7 +52,7 @@ ffbuild_dockerlayer_dl() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw SELF=\"$SELF\" run_stage /stage.sh" } ffbuild_dockerlayer() { From 3e75fcc0e4547358b2da21b08e718c5769226809 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 18 Jun 2023 21:26:29 +0200 Subject: [PATCH 07/27] Enable new DL-Cache in Workflow --- .github/workflows/build.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4c18efe..282904e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -61,8 +61,11 @@ jobs: id: imagename run: | IMG="${GITHUB_REPOSITORY,,}/base" + DLIMG="${GITHUB_REPOSITORY,,}/dl_cache" echo "name=ghcr.io/${IMG/ /-}" >> $GITHUB_OUTPUT echo "rawname=${IMG/ /-}" >> $GITHUB_OUTPUT + echo "dlname=ghcr.io/${DLIMG/ /-}" >> $GITHUB_OUTPUT + echo "dlrawname=${DLIMG/ /-}" >> $GITHUB_OUTPUT - name: Stop Commands run: T="$(echo -n ${{ github.token }} | sha256sum | head -c 64)" && echo -e "::add-mask::${T}\n::stop-commands::${T}" - name: Build target base image @@ -74,6 +77,18 @@ jobs: tags: ${{ steps.imagename.outputs.name }}:latest cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.name }}:cache cache-from: type=registry,ref=${{ steps.imagename.outputs.name }}:cache + - name: Generate download cache Dockerfile + run: ./generate.sh dl only + - name: Build download cache image + uses: docker/build-push-action@v3 + with: + context: . + file: Dockerfile.dl + pull: true + push: true + tags: ${{ steps.imagename.outputs.dlname }}:latest + cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.dlname }}:cache + cache-from: type=registry,ref=${{ steps.imagename.outputs.dlname }}:cache - name: Cleanup if: ${{ env.HAVE_CLEANUP_PAT == 'true' }} continue-on-error: true @@ -85,6 +100,17 @@ jobs: repository: ${{ github.repository }} owner_type: user untagged_only: true + - name: Cleanup Download Cache + if: ${{ env.HAVE_CLEANUP_PAT == 'true' }} + continue-on-error: true + uses: BtbN/delete-untagged-ghcr-action@main + with: + token: ${{ secrets.CLEANUP_PAT }} + package_name: ${{ steps.imagename.outputs.dlrawname }} + repository_owner: ${{ github.repository_owner }} + repository: ${{ github.repository }} + owner_type: user + untagged_only: true build_target_bases: name: Build target base image if: ${{ github.event.inputs.buildOnly != 'true' }} From 8c336b4dec1d77e66904046eb64b89eed9bb54e5 Mon Sep 17 00:00:00 2001 From: BtbN Date: Tue, 20 Jun 2023 23:26:40 +0200 Subject: [PATCH 08/27] Add more explicit cache image name --- .github/workflows/build.yml | 11 ++++++++--- generate.sh | 5 +++++ makeimage.sh | 17 +++++++++++++---- scripts.d/50-aom.sh | 2 +- scripts.d/50-aribb24/50-libaribb24.sh | 2 +- scripts.d/50-zvbi.sh | 2 +- util/get_dl_cache_tag.sh | 4 ++++ util/vars.sh | 9 +++++---- 8 files changed, 38 insertions(+), 14 deletions(-) create mode 100755 util/get_dl_cache_tag.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 282904e..54631ed 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -78,7 +78,11 @@ jobs: cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.name }}:cache cache-from: type=registry,ref=${{ steps.imagename.outputs.name }}:cache - name: Generate download cache Dockerfile - run: ./generate.sh dl only + id: dl_cache + run: | + ./generate.sh dl only + echo "dltagname=$(./util/get_dl_cache_tag.sh)" >> $GITHUB_OUTPUT + cat Dockerfile.dl - name: Build download cache image uses: docker/build-push-action@v3 with: @@ -86,7 +90,7 @@ jobs: file: Dockerfile.dl pull: true push: true - tags: ${{ steps.imagename.outputs.dlname }}:latest + tags: ${{ steps.imagename.outputs.dlname }}:${{ steps.dl_cache.outputs.dltagname }} cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.dlname }}:cache cache-from: type=registry,ref=${{ steps.imagename.outputs.dlname }}:cache - name: Cleanup @@ -110,7 +114,8 @@ jobs: repository_owner: ${{ github.repository_owner }} repository: ${{ github.repository }} owner_type: user - untagged_only: true + untagged_only: false + keep_latest: 3 build_target_bases: name: Build target base image if: ${{ github.event.inputs.buildOnly != 'true' }} diff --git a/generate.sh b/generate.sh index 87c0dbb..091ade1 100755 --- a/generate.sh +++ b/generate.sh @@ -69,6 +69,8 @@ if [[ "$TARGET" == "dl" && "$VARIANT" == "only" ]]; then exit 0 fi +DL_IMAGE="${DL_IMAGE_RAW}:$(./util/get_dl_cache_tag.sh)" + ### ### Generate main Dockerfile ### @@ -78,7 +80,10 @@ exec_dockerstage() { ( SELF="$SCRIPT" source "$SCRIPT" + ffbuild_enabled || exit 0 + + to_df "ENV SELF=\"$SELF\"" ffbuild_dockerstage || exit $? ) } diff --git a/makeimage.sh b/makeimage.sh index 39a1fa2..2e63a43 100755 --- a/makeimage.sh +++ b/makeimage.sh @@ -43,11 +43,20 @@ if [[ -z "$QUICKBUILD" ]]; then fi ./generate.sh "$TARGET" "$VARIANT" "${ADDINS[@]}" +DL_CACHE_TAG="$(./util/get_dl_cache_tag.sh)" +DL_IMAGE="${DL_IMAGE_RAW}:${DL_CACHE_TAG}" -docker buildx --builder ffbuilder build -f Dockerfile.dl \ - --cache-from=type=local,src=.cache/"${DL_IMAGE/:/_}" \ - --cache-to=type=local,mode=max,dest=.cache/"${DL_IMAGE/:/_}" \ - --push --tag "${LOCAL_ROOT}/dl_cache:latest" . +if docker pull "${DL_IMAGE}"; then + export REGISTRY_OVERRIDE_DL="$REGISTRY" GITHUB_REPOSITORY_DL="$REPO" + ./generate.sh "$TARGET" "$VARIANT" "${ADDINS[@]}" +else + DL_IMAGE="${LOCAL_ROOT}/dl_cache:${DL_CACHE_TAG}" + docker manifest inspect --insecure "${DL_IMAGE}" >/dev/null || + docker buildx --builder ffbuilder build -f Dockerfile.dl \ + --cache-from=type=local,src=.cache/dl_image_cache \ + --cache-to=type=local,mode=max,dest=.cache/dl_image_cache \ + --push --tag "${DL_IMAGE}" . +fi docker buildx --builder ffbuilder build \ --cache-from=type=local,src=.cache/"${IMAGE/:/_}" \ diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index bc26159..95458f2 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches run_stage /stage.sh" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-aribb24/50-libaribb24.sh b/scripts.d/50-aribb24/50-libaribb24.sh index 3ebb968..4232541 100755 --- a/scripts.d/50-aribb24/50-libaribb24.sh +++ b/scripts.d/50-aribb24/50-libaribb24.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-zvbi.sh b/scripts.d/50-zvbi.sh index 8025c8a..6eaa22e 100755 --- a/scripts.d/50-zvbi.sh +++ b/scripts.d/50-zvbi.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches SELF=\"$SELF\" run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" } ffbuild_dockerdl() { diff --git a/util/get_dl_cache_tag.sh b/util/get_dl_cache_tag.sh new file mode 100755 index 0000000..4ca3a36 --- /dev/null +++ b/util/get_dl_cache_tag.sh @@ -0,0 +1,4 @@ +#!/bin/bash +set -eo pipefail +printf dlcache_ +tail -n+3 Dockerfile.dl | sha256sum | cut -d' ' -f1 diff --git a/util/vars.sh b/util/vars.sh index 312f5f0..030ac15 100644 --- a/util/vars.sh +++ b/util/vars.sh @@ -36,12 +36,13 @@ REGISTRY="${REGISTRY_OVERRIDE:-ghcr.io}" BASE_IMAGE="${REGISTRY}/${REPO}/base:latest" TARGET_IMAGE="${REGISTRY}/${REPO}/base-${TARGET}:latest" IMAGE="${REGISTRY}/${REPO}/${TARGET}-${VARIANT}${ADDINS_STR:+-}${ADDINS_STR}:latest" -DL_IMAGE="${REGISTRY}/${REPO}/dl_cache:latest" +DL_IMAGE_RAW="${REGISTRY}/${REPO}/dl_cache" if [[ -n "$REGISTRY_OVERRIDE_DL" && -n "$GITHUB_REPOSITORY_DL" ]]; then - DL_IMAGE="${REGISTRY_OVERRIDE_DL}/${GITHUB_REPOSITORY_DL}/dl_cache:latest" - DL_IMAGE="${DL_IMAGE,,}" + DL_IMAGE_RAW="${REGISTRY_OVERRIDE_DL}/${GITHUB_REPOSITORY_DL}/dl_cache" + DL_IMAGE_RAW="${DL_IMAGE_RAW,,}" fi +DL_IMAGE="${DL_IMAGE_RAW}:unset" ffbuild_dockerdl() { default_dl "$SELF" @@ -52,7 +53,7 @@ ffbuild_dockerlayer_dl() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw SELF=\"$SELF\" run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh" } ffbuild_dockerlayer() { From 91b977f84d106822cdbfb861769318811b5bdf7c Mon Sep 17 00:00:00 2001 From: BtbN Date: Tue, 20 Jun 2023 23:58:06 +0200 Subject: [PATCH 09/27] Simplify download Dockerfile generation --- generate.sh | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/generate.sh b/generate.sh index 091ade1..a0687da 100755 --- a/generate.sh +++ b/generate.sh @@ -41,21 +41,9 @@ to_df "FROM ${REGISTRY}/${REPO}/base:latest AS base" to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR" to_df "WORKDIR \$FFBUILD_DLDIR" -PREVLAYER="base" -for ID in $(ls -1d scripts.d/??-* | sed -s 's|^.*/\(..\).*|\1|' | sort -u); do - LAYER="layer-$ID" - - for STAGE in scripts.d/$ID-*; do - if [[ -f "$STAGE" ]]; then - to_df "FROM $PREVLAYER AS $(layername "$STAGE")" - exec_dockerstage_dl "$STAGE" - else - for STAGE in "${STAGE}"/??-*; do - to_df "FROM $PREVLAYER AS $(layername "$STAGE")" - exec_dockerstage_dl "$STAGE" - done - fi - done +for STAGE in scripts.d/*.sh scripts.d/*/*.sh; do + to_df "FROM base AS $(layername "$STAGE")" + exec_dockerstage_dl "$STAGE" done to_df "FROM base AS intermediate" From 73f17b72130507f50d5557cf7def42fba1624dcb Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 00:06:33 +0200 Subject: [PATCH 10/27] Force C locale in Dockerfile generation Turns out bash sorting behaviour differs between locales, causing cache mismatches... --- generate.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/generate.sh b/generate.sh index a0687da..530aed4 100755 --- a/generate.sh +++ b/generate.sh @@ -3,6 +3,8 @@ set -e cd "$(dirname "$0")" source util/vars.sh +export LC_ALL=C.UTF-8 + rm -f Dockerfile Dockerfile.{dl,final,dl.final} layername() { From 0598fb3dba147d62922881e67c4992fb671f560f Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 00:38:32 +0200 Subject: [PATCH 11/27] Make final dl cache image FROM scratch --- generate.sh | 4 ++-- scripts.d/50-aom.sh | 2 +- scripts.d/50-aribb24/50-libaribb24.sh | 2 +- scripts.d/50-zvbi.sh | 2 +- util/vars.sh | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/generate.sh b/generate.sh index 530aed4..c9fda9b 100755 --- a/generate.sh +++ b/generate.sh @@ -52,8 +52,8 @@ to_df "FROM base AS intermediate" cat Dockerfile.dl.final >> "$TODF" rm Dockerfile.dl.final -to_df "FROM base" -to_df "COPY --from=intermediate \$FFBUILD_DLDIR/. \$FFBUILD_DLDIR" +to_df "FROM scratch" +to_df "COPY --from=intermediate /opt/ffdl/. /" if [[ "$TARGET" == "dl" && "$VARIANT" == "only" ]]; then exit 0 diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index 95458f2..7c8cdb0 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=/,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aom,dst=/patches run_stage /stage.sh" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-aribb24/50-libaribb24.sh b/scripts.d/50-aribb24/50-libaribb24.sh index 4232541..c032178 100755 --- a/scripts.d/50-aribb24/50-libaribb24.sh +++ b/scripts.d/50-aribb24/50-libaribb24.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=/,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/aribb24,dst=/patches run_stage /stage.sh" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-zvbi.sh b/scripts.d/50-zvbi.sh index 6eaa22e..5f7cb97 100755 --- a/scripts.d/50-zvbi.sh +++ b/scripts.d/50-zvbi.sh @@ -8,7 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=/,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh" } ffbuild_dockerdl() { diff --git a/util/vars.sh b/util/vars.sh index 030ac15..0fd91ef 100644 --- a/util/vars.sh +++ b/util/vars.sh @@ -53,7 +53,7 @@ ffbuild_dockerlayer_dl() { } ffbuild_dockerstage() { - to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=\$FFBUILD_DLDIR,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh" + to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=/,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh" } ffbuild_dockerlayer() { From be992fa253f2fc6a4c763ac5f1227f98de16f843 Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 00:55:45 +0200 Subject: [PATCH 12/27] Be more generous with cache image retention Avoid pointless rebuilds on revert or other situations. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 54631ed..dec190d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -115,7 +115,7 @@ jobs: repository: ${{ github.repository }} owner_type: user untagged_only: false - keep_latest: 3 + keep_latest: 20 build_target_bases: name: Build target base image if: ${{ github.event.inputs.buildOnly != 'true' }} From 547eee9db45612096732f04f0ccbd172fb4ef51f Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 13:43:28 +0200 Subject: [PATCH 13/27] Update dependencies --- scripts.d/10-mingw.sh | 2 +- scripts.d/20-libxml2.sh | 2 +- scripts.d/25-freetype.sh | 2 +- scripts.d/25-openssl.sh | 2 +- scripts.d/25-xz.sh | 2 +- scripts.d/35-fontconfig.sh | 2 +- scripts.d/45-harfbuzz.sh | 2 +- scripts.d/45-opencl.sh | 2 +- scripts.d/45-x11/10-xproto.sh | 2 +- scripts.d/45-x11/10-xtrans.sh | 2 +- scripts.d/45-x11/40-libx11.sh | 2 +- scripts.d/50-aom.sh | 2 +- scripts.d/50-aribb24/25-libpng.sh | 2 +- scripts.d/50-avisynth.sh | 2 +- scripts.d/50-dav1d.sh | 2 +- scripts.d/50-ffnvcodec.sh | 4 ++-- scripts.d/50-frei0r.sh | 2 +- scripts.d/50-kvazaar.sh | 2 +- scripts.d/50-libjxl/45-brotli.sh | 2 +- scripts.d/50-libjxl/50-libjxl.sh | 2 +- scripts.d/50-libopus.sh | 2 +- scripts.d/50-librist/50-librist.sh | 2 +- scripts.d/50-libssh.sh | 2 +- scripts.d/50-libvpx.sh | 2 +- scripts.d/50-libwebp.sh | 2 +- scripts.d/50-lilv/96-lv2.sh | 2 +- scripts.d/50-lilv/99-lilv.sh | 2 +- scripts.d/50-onevpl.sh | 2 +- scripts.d/50-openal.sh | 2 +- scripts.d/50-openmpt.sh | 2 +- scripts.d/50-rav1e.sh | 2 +- scripts.d/50-rubberband.sh | 2 +- scripts.d/50-sdl.sh | 2 +- scripts.d/50-srt.sh | 2 +- scripts.d/50-svtav1.sh | 2 +- scripts.d/50-vaapi/50-libva.sh | 2 +- scripts.d/50-vidstab.sh | 2 +- scripts.d/50-vulkan/45-vulkan.sh | 2 +- scripts.d/50-vulkan/50-shaderc.sh | 2 +- scripts.d/50-vulkan/55-spirv-cross.sh | 2 +- scripts.d/50-vulkan/60-libplacebo.sh | 2 +- scripts.d/50-zimg.sh | 2 +- 42 files changed, 43 insertions(+), 43 deletions(-) diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index 0b47612..e518753 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://git.code.sf.net/p/mingw-w64/mingw-w64.git" -SCRIPT_COMMIT="9df2e604ddf16765410724716a8d1887ffc61fa9" +SCRIPT_COMMIT="b38a7d3e8016d920f02aad09187e4a5f6ae46246" ffbuild_enabled() { [[ $TARGET == win* ]] || return -1 diff --git a/scripts.d/20-libxml2.sh b/scripts.d/20-libxml2.sh index 14ff564..8f9c0a8 100755 --- a/scripts.d/20-libxml2.sh +++ b/scripts.d/20-libxml2.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.gnome.org/GNOME/libxml2.git" -SCRIPT_COMMIT="1e8ab6977d8a990906867514f37528274efebe44" +SCRIPT_COMMIT="5f54bac9ebfc1486c9180b581e32588ee74c59e4" ffbuild_enabled() { return 0 diff --git a/scripts.d/25-freetype.sh b/scripts.d/25-freetype.sh index 4ffbf52..9cf3ae2 100755 --- a/scripts.d/25-freetype.sh +++ b/scripts.d/25-freetype.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/freetype/freetype.git" -SCRIPT_COMMIT="80a507a6b8e3d2906ad2c8ba69329bd2fb2a85ef" +SCRIPT_COMMIT="5c00a46805d6423fc45b4ba2c0f2e22dd0450d73" ffbuild_enabled() { return 0 diff --git a/scripts.d/25-openssl.sh b/scripts.d/25-openssl.sh index 49ef1cc..63131eb 100755 --- a/scripts.d/25-openssl.sh +++ b/scripts.d/25-openssl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/openssl/openssl.git" -SCRIPT_COMMIT="openssl-3.0.8" +SCRIPT_COMMIT="openssl-3.0.9" SCRIPT_TAGFILTER="openssl-3.0.*" ffbuild_enabled() { diff --git a/scripts.d/25-xz.sh b/scripts.d/25-xz.sh index 8b04f91..f9b5ee4 100755 --- a/scripts.d/25-xz.sh +++ b/scripts.d/25-xz.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/xz-mirror/xz.git" -SCRIPT_COMMIT="1dbe12b90cff79bb51923733ac0840747b4b4131" +SCRIPT_COMMIT="dbb3a536ed9873ffa0870321f6873e564c6a9da8" ffbuild_enabled() { return 0 diff --git a/scripts.d/35-fontconfig.sh b/scripts.d/35-fontconfig.sh index cad9f83..aba3f20 100755 --- a/scripts.d/35-fontconfig.sh +++ b/scripts.d/35-fontconfig.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/fontconfig/fontconfig.git" -SCRIPT_COMMIT="f0612537cb55ef97835914b0c64497034c60b8c9" +SCRIPT_COMMIT="7e2a1b2577e8d90ea5be3f14091e809ac7742438" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-harfbuzz.sh b/scripts.d/45-harfbuzz.sh index a34cdb3..2314d34 100755 --- a/scripts.d/45-harfbuzz.sh +++ b/scripts.d/45-harfbuzz.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/harfbuzz/harfbuzz.git" -SCRIPT_COMMIT="4a93576bca0f56e82a1d8ad67733df9c5ddb8dcd" +SCRIPT_COMMIT="a77f28286569b1d187aa7470a4721222a3fc44e7" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-opencl.sh b/scripts.d/45-opencl.sh index afe9e83..dfbda16 100755 --- a/scripts.d/45-opencl.sh +++ b/scripts.d/45-opencl.sh @@ -4,7 +4,7 @@ SCRIPT_REPO="https://github.com/KhronosGroup/OpenCL-Headers.git" SCRIPT_COMMIT="e049b16b5f157e2f28e7b5c301e71e1ccb3fe288" SCRIPT_REPO2="https://github.com/KhronosGroup/OpenCL-ICD-Loader.git" -SCRIPT_COMMIT2="0b8be9fd5fae61bfd85378ef346f508e4f5cfe61" +SCRIPT_COMMIT2="229410f86a8c8c9e0f86f195409e5481a2bae067" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-x11/10-xproto.sh b/scripts.d/45-x11/10-xproto.sh index f0e6192..e0e1428 100755 --- a/scripts.d/45-x11/10-xproto.sh +++ b/scripts.d/45-x11/10-xproto.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/proto/xorgproto.git" -SCRIPT_COMMIT="5a3d5d624e08cd8fcbe7f4da594dd458f45127d0" +SCRIPT_COMMIT="766967322209f2dcb72e6a8edea0c651f586201d" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/45-x11/10-xtrans.sh b/scripts.d/45-x11/10-xtrans.sh index e997e2a..3f582b9 100755 --- a/scripts.d/45-x11/10-xtrans.sh +++ b/scripts.d/45-x11/10-xtrans.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxtrans.git" -SCRIPT_COMMIT="232a11a947564762689e63c3a6603d3f956f696d" +SCRIPT_COMMIT="3b3a3bd75d86aec78f6ef893b198c3efc378bc64" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/45-x11/40-libx11.sh b/scripts.d/45-x11/40-libx11.sh index 836fe2d..fb0c61b 100755 --- a/scripts.d/45-x11/40-libx11.sh +++ b/scripts.d/45-x11/40-libx11.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libx11.git" -SCRIPT_COMMIT="03ba0140940cc76524d83096a47309f5c398541f" +SCRIPT_COMMIT="178c4fefd3b0b4be5e69274108b86a51f08ec3a6" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index 7c8cdb0..cb79cc0 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://aomedia.googlesource.com/aom" -SCRIPT_COMMIT="d954a78fdae80b49229cb7c4b7032f5c0e67b0e8" +SCRIPT_COMMIT="7d637e1ccd859f9018ebff88911411685d3a3a2b" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-aribb24/25-libpng.sh b/scripts.d/50-aribb24/25-libpng.sh index 8ae9f16..4c596a4 100755 --- a/scripts.d/50-aribb24/25-libpng.sh +++ b/scripts.d/50-aribb24/25-libpng.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/glennrp/libpng.git" -SCRIPT_COMMIT="e519af8b49f52c4ac400f50f23b48ebe36a5f4df" +SCRIPT_COMMIT="8be5c147d567bf90553088305208e612abb16768" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-avisynth.sh b/scripts.d/50-avisynth.sh index 9011dfc..6c5af1c 100755 --- a/scripts.d/50-avisynth.sh +++ b/scripts.d/50-avisynth.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/AviSynth/AviSynthPlus.git" -SCRIPT_COMMIT="237c4505c944937b411bfc56ab044323e327a2fd" +SCRIPT_COMMIT="ad0d546cd2fd5eadf3b4d29df24bf3f6713d9707" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-dav1d.sh b/scripts.d/50-dav1d.sh index 7ea56b1..7aaebe8 100755 --- a/scripts.d/50-dav1d.sh +++ b/scripts.d/50-dav1d.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/videolan/dav1d.git" -SCRIPT_COMMIT="fa8ae5776d5603f52725c1a6bc673acb649577fb" +SCRIPT_COMMIT="2373fda303d46489c1ec269dc66369a31663cb25" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-ffnvcodec.sh b/scripts.d/50-ffnvcodec.sh index 3bb3f00..0c52cc4 100755 --- a/scripts.d/50-ffnvcodec.sh +++ b/scripts.d/50-ffnvcodec.sh @@ -1,10 +1,10 @@ #!/bin/bash SCRIPT_REPO="https://github.com/FFmpeg/nv-codec-headers.git" -SCRIPT_COMMIT="4fd7be29a431441ca31b8db0155875ae2ff4ed47" +SCRIPT_COMMIT="9402b5a7693e9841f8a4f4488cd2df21ac55c685" SCRIPT_REPO2="https://github.com/FFmpeg/nv-codec-headers.git" -SCRIPT_COMMIT2="2cd175b30366b6e295991ee0540e3e875cce6f2e" +SCRIPT_COMMIT2="dc3e4484dc83485734e503991fe5ed3bdf256fba" SCRIPT_BRANCH2="sdk/11.1" ffbuild_enabled() { diff --git a/scripts.d/50-frei0r.sh b/scripts.d/50-frei0r.sh index f685a4a..ae465f4 100755 --- a/scripts.d/50-frei0r.sh +++ b/scripts.d/50-frei0r.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/dyne/frei0r.git" -SCRIPT_COMMIT="69819601c671915075bbd1c5c87be01a5feba08d" +SCRIPT_COMMIT="c3f987c4cc8c1a7f6928e574f4cb272a7770ca6f" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-kvazaar.sh b/scripts.d/50-kvazaar.sh index 7a34e28..a045ea9 100755 --- a/scripts.d/50-kvazaar.sh +++ b/scripts.d/50-kvazaar.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/ultravideo/kvazaar.git" -SCRIPT_COMMIT="37a0404bc8ccdc39515a5aed706205dc53810019" +SCRIPT_COMMIT="e001c6a867068b448354d955363bd2ff7caf33d2" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libjxl/45-brotli.sh b/scripts.d/50-libjxl/45-brotli.sh index 2dc01c1..f037940 100755 --- a/scripts.d/50-libjxl/45-brotli.sh +++ b/scripts.d/50-libjxl/45-brotli.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/google/brotli.git" -SCRIPT_COMMIT="ed1995b6bda19244070ab5d331111f16f67c8054" +SCRIPT_COMMIT="1d8452b783dafd7e2acc0914919d38d46b861765" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index dc489c0..4be5db0 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libjxl/libjxl.git" -SCRIPT_COMMIT="c8a4a7aa88f926c00ca4178f6677f83c2fa4e290" +SCRIPT_COMMIT="b4369bdafa2901512aa6b0728a05a90c8fa314fc" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-libopus.sh b/scripts.d/50-libopus.sh index 7a69d3f..e69f098 100755 --- a/scripts.d/50-libopus.sh +++ b/scripts.d/50-libopus.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/xiph/opus.git" -SCRIPT_COMMIT="5023249b5c935545fb02dbfe845cae996ecfc8bb" +SCRIPT_COMMIT="9fc8fc4cf432640f284113ba502ee027268b0d9f" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-librist/50-librist.sh b/scripts.d/50-librist/50-librist.sh index ac6b99e..9b7ee52 100755 --- a/scripts.d/50-librist/50-librist.sh +++ b/scripts.d/50-librist/50-librist.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/rist/librist.git" -SCRIPT_COMMIT="234c2e224c1dc60276a7b427acd3cc0f8bdb3bda" +SCRIPT_COMMIT="c917e970be95658411e249f6e4e7fc1eeea6fe99" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libssh.sh b/scripts.d/50-libssh.sh index 4e17f30..a94e25e 100755 --- a/scripts.d/50-libssh.sh +++ b/scripts.d/50-libssh.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://git.libssh.org/projects/libssh.git" -SCRIPT_COMMIT="2bf49e3e65912fd26c06fc4aa37a72eeedfec9d8" +SCRIPT_COMMIT="df0a445c87dc9678f23984141f6b396c72888972" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libvpx.sh b/scripts.d/50-libvpx.sh index 05d9a63..be696ff 100755 --- a/scripts.d/50-libvpx.sh +++ b/scripts.d/50-libvpx.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://chromium.googlesource.com/webm/libvpx" -SCRIPT_COMMIT="ad5677eafceac4eccf7a7fd506a4e1f081cea22d" +SCRIPT_COMMIT="14e52008edbf2e91386423fdd53310fe49654991" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libwebp.sh b/scripts.d/50-libwebp.sh index 9cdfcb5..e5306cf 100755 --- a/scripts.d/50-libwebp.sh +++ b/scripts.d/50-libwebp.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://chromium.googlesource.com/webm/libwebp" -SCRIPT_COMMIT="e3366659a019515de765a281567242ceaa6eaf75" +SCRIPT_COMMIT="64819c7cf34350aafa9f2f0e3f5d5a444cb82d2a" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-lilv/96-lv2.sh b/scripts.d/50-lilv/96-lv2.sh index 498c0e6..7a14ca7 100755 --- a/scripts.d/50-lilv/96-lv2.sh +++ b/scripts.d/50-lilv/96-lv2.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/lv2/lv2.git" -SCRIPT_COMMIT="52a96cec13bf2d541c42f8f398e7ea1387c6f56d" +SCRIPT_COMMIT="bb6a2103c7adf3c1339728915d7f1497ee98dcbf" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-lilv/99-lilv.sh b/scripts.d/50-lilv/99-lilv.sh index 0e791e6..b2f3eda 100755 --- a/scripts.d/50-lilv/99-lilv.sh +++ b/scripts.d/50-lilv/99-lilv.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/lv2/lilv.git" -SCRIPT_COMMIT="d564baafed0863813a87d872f8663134e74228c8" +SCRIPT_COMMIT="caad4f5554fd77b61a0907a67bab90bc656d86ad" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-onevpl.sh b/scripts.d/50-onevpl.sh index e5a9487..1e6aee5 100755 --- a/scripts.d/50-onevpl.sh +++ b/scripts.d/50-onevpl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/oneapi-src/oneVPL.git" -SCRIPT_COMMIT="fcabffb463299a8792c6baed69afbb69236ba6cb" +SCRIPT_COMMIT="e12ace9761bb52786409e830f619916b86e87fc5" ffbuild_enabled() { [[ $TARGET == *arm64 ]] && return -1 diff --git a/scripts.d/50-openal.sh b/scripts.d/50-openal.sh index 126815f..0c1b47a 100755 --- a/scripts.d/50-openal.sh +++ b/scripts.d/50-openal.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/kcat/openal-soft.git" -SCRIPT_COMMIT="cd781b1511d437816aac65f89646bd80dbf7c040" +SCRIPT_COMMIT="a49b612ef470003ffb16ddc5e19c9a1984a71619" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-openmpt.sh b/scripts.d/50-openmpt.sh index f5e5477..e7cf9e2 100755 --- a/scripts.d/50-openmpt.sh +++ b/scripts.d/50-openmpt.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://source.openmpt.org/svn/openmpt/trunk/OpenMPT" -SCRIPT_REV="19363" +SCRIPT_REV="19424" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-rav1e.sh b/scripts.d/50-rav1e.sh index 75004a0..3eade10 100755 --- a/scripts.d/50-rav1e.sh +++ b/scripts.d/50-rav1e.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/xiph/rav1e.git" -SCRIPT_COMMIT="005a86d38a2eef5004bdc415b504e66accd246e0" +SCRIPT_COMMIT="ba7ed562b01e47dcdb428a44edd0c26a61e8950c" ffbuild_enabled() { [[ $TARGET == win32 ]] && return -1 diff --git a/scripts.d/50-rubberband.sh b/scripts.d/50-rubberband.sh index 83585aa..6ad0385 100755 --- a/scripts.d/50-rubberband.sh +++ b/scripts.d/50-rubberband.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/breakfastquay/rubberband.git" -SCRIPT_COMMIT="7d5b101d278ac4f7eb557d481013b3cc5d8da478" +SCRIPT_COMMIT="82dab93ecf44c9b1203289c0118760b7331b2156" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-sdl.sh b/scripts.d/50-sdl.sh index 34225a3..d8c1434 100755 --- a/scripts.d/50-sdl.sh +++ b/scripts.d/50-sdl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libsdl-org/SDL.git" -SCRIPT_COMMIT="5007b963639bff2fa3359abbfe20d53ea9111fd9" +SCRIPT_COMMIT="ceece918e4ebe7adfe80ee35a0a4a928c0018252" SCRIPT_BRANCH="SDL2" ffbuild_enabled() { diff --git a/scripts.d/50-srt.sh b/scripts.d/50-srt.sh index e0eb8a8..b45b942 100755 --- a/scripts.d/50-srt.sh +++ b/scripts.d/50-srt.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/Haivision/srt.git" -SCRIPT_COMMIT="3cefedefe91fca543083d260d1ed32efd2e7cba5" +SCRIPT_COMMIT="9448e26fcd7602098b4bf9cd7fe535136e89e10b" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-svtav1.sh b/scripts.d/50-svtav1.sh index d5256d9..5ec307c 100755 --- a/scripts.d/50-svtav1.sh +++ b/scripts.d/50-svtav1.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.com/AOMediaCodec/SVT-AV1.git" -SCRIPT_COMMIT="0f8b3a81363b7148f90a07f026f69c97d11e0363" +SCRIPT_COMMIT="08c18ba0768ed3dbbff0903adc326fb3a7549bd9" ffbuild_enabled() { [[ $TARGET == win32 ]] && return -1 diff --git a/scripts.d/50-vaapi/50-libva.sh b/scripts.d/50-vaapi/50-libva.sh index e88aa0e..78bac1d 100755 --- a/scripts.d/50-vaapi/50-libva.sh +++ b/scripts.d/50-vaapi/50-libva.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/intel/libva.git" -SCRIPT_COMMIT="1114bd2b3ef7b6467f94c15cab3e061d3c197571" +SCRIPT_COMMIT="1c58941b93ba5013c68e8370a408efd630275c9c" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/50-vidstab.sh b/scripts.d/50-vidstab.sh index a0404df..c9a3b4c 100755 --- a/scripts.d/50-vidstab.sh +++ b/scripts.d/50-vidstab.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/georgmartius/vid.stab.git" -SCRIPT_COMMIT="77f3ba1b9a8d67be616ce576f24b4b4a73333e82" +SCRIPT_COMMIT="05829db776069b7478dd2d90b6e0081668a41abc" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-vulkan/45-vulkan.sh b/scripts.d/50-vulkan/45-vulkan.sh index c6bd864..13e6622 100755 --- a/scripts.d/50-vulkan/45-vulkan.sh +++ b/scripts.d/50-vulkan/45-vulkan.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/KhronosGroup/Vulkan-Headers.git" -SCRIPT_COMMIT="v1.3.251" +SCRIPT_COMMIT="v1.3.254" SCRIPT_TAGFILTER="v?.*.*" ffbuild_enabled() { diff --git a/scripts.d/50-vulkan/50-shaderc.sh b/scripts.d/50-vulkan/50-shaderc.sh index 26164f1..9f282ac 100755 --- a/scripts.d/50-vulkan/50-shaderc.sh +++ b/scripts.d/50-vulkan/50-shaderc.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/google/shaderc.git" -SCRIPT_COMMIT="95ea3c915aa48ecdeda2f14db73983d1be3f9209" +SCRIPT_COMMIT="4dc596ddc2702092c670e828745dc3e0338d83c1" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-vulkan/55-spirv-cross.sh b/scripts.d/50-vulkan/55-spirv-cross.sh index 5013387..e5f30ba 100755 --- a/scripts.d/50-vulkan/55-spirv-cross.sh +++ b/scripts.d/50-vulkan/55-spirv-cross.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/KhronosGroup/SPIRV-Cross.git" -SCRIPT_COMMIT="12542fc6fc05000e04742daf93892a0b10edbe80" +SCRIPT_COMMIT="2d3a152081ca6e6bea7093940d0f81088fe4d01c" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-vulkan/60-libplacebo.sh b/scripts.d/50-vulkan/60-libplacebo.sh index d863d8e..b8d74e7 100755 --- a/scripts.d/50-vulkan/60-libplacebo.sh +++ b/scripts.d/50-vulkan/60-libplacebo.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/videolan/libplacebo.git" -SCRIPT_COMMIT="3e25675dc10d98ac67d1ca2af9f07b79c543dc77" +SCRIPT_COMMIT="d25b82b7dbf961d25d510bed6198ad3f24a7ec27" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-zimg.sh b/scripts.d/50-zimg.sh index 13a7551..9b9b80b 100755 --- a/scripts.d/50-zimg.sh +++ b/scripts.d/50-zimg.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/sekrit-twc/zimg.git" -SCRIPT_COMMIT="332aaac5e99de46ddd5663092779742ec1958b11" +SCRIPT_COMMIT="939a78cae6a8207ef778375dfcaa75511162a186" ffbuild_enabled() { return 0 From 9465728b3b9d2fe1c9c595abcb49f85ebdd46e7f Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 13:50:46 +0200 Subject: [PATCH 14/27] Disable doxgen for xz --- scripts.d/25-xz.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts.d/25-xz.sh b/scripts.d/25-xz.sh index f9b5ee4..c3fa95d 100755 --- a/scripts.d/25-xz.sh +++ b/scripts.d/25-xz.sh @@ -10,7 +10,7 @@ ffbuild_enabled() { ffbuild_dockerbuild() { cd "$FFBUILD_DLDIR/$SELF" - ./autogen.sh --no-po4a + ./autogen.sh --no-po4a --no-doxygen local myconf=( --prefix="$FFBUILD_PREFIX" From 0071c270bbb6f72ef2158583d1bb7dc86655ba83 Mon Sep 17 00:00:00 2001 From: BtbN Date: Wed, 21 Jun 2023 14:04:39 +0200 Subject: [PATCH 15/27] Specify dlltool in meson cross files --- images/base-win32/cross.meson | 1 + images/base-win64/cross.meson | 1 + 2 files changed, 2 insertions(+) diff --git a/images/base-win32/cross.meson b/images/base-win32/cross.meson index a52a835..c2a0ad1 100644 --- a/images/base-win32/cross.meson +++ b/images/base-win32/cross.meson @@ -5,6 +5,7 @@ ar = 'i686-w64-mingw32-gcc-ar' ranlib = 'i686-w64-mingw32-gcc-ranlib' strip = 'i686-w64-mingw32-strip' windres = 'i686-w64-mingw32-windres' +dlltool = 'i686-w64-mingw32-dlltool' exe_wrapper = ['wine'] [properties] diff --git a/images/base-win64/cross.meson b/images/base-win64/cross.meson index eb16efb..0b5513c 100644 --- a/images/base-win64/cross.meson +++ b/images/base-win64/cross.meson @@ -5,6 +5,7 @@ ar = 'x86_64-w64-mingw32-gcc-ar' ranlib = 'x86_64-w64-mingw32-gcc-ranlib' strip = 'x86_64-w64-mingw32-strip' windres = 'x86_64-w64-mingw32-windres' +dlltool = 'x86_64-w64-mingw32-dlltool' exe_wrapper = ['wine'] [properties] From 0e9c6f8e4d2cb1c9c8c250e3615650d244d2cc2f Mon Sep 17 00:00:00 2001 From: nihil-admirari <50202386+nihil-admirari@users.noreply.github.com> Date: Thu, 22 Jun 2023 23:26:29 +0300 Subject: [PATCH 16/27] Package man --- variants/linux-install-shared.sh | 3 +++ variants/linux-install-static.sh | 15 +++++++++++++++ variants/linux64-gpl.sh | 2 +- variants/linux64-lgpl.sh | 2 +- variants/linuxarm64-gpl.sh | 2 +- variants/linuxarm64-lgpl.sh | 2 +- variants/win32-gpl.sh | 2 +- variants/win32-lgpl.sh | 2 +- variants/win64-gpl.sh | 2 +- variants/win64-lgpl.sh | 2 +- ...fault-install.sh => windows-install-static.sh} | 0 11 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 variants/linux-install-static.sh rename variants/{default-install.sh => windows-install-static.sh} (100%) diff --git a/variants/linux-install-shared.sh b/variants/linux-install-shared.sh index ef8e791..5507cb6 100644 --- a/variants/linux-install-shared.sh +++ b/variants/linux-install-shared.sh @@ -23,4 +23,7 @@ package_variant() { mkdir -p "$OUT"/doc cp -r "$IN"/share/doc/ffmpeg/* "$OUT"/doc + + mkdir -p "$OUT/man" + cp -r "$IN"/share/man/* "$OUT"/man } diff --git a/variants/linux-install-static.sh b/variants/linux-install-static.sh new file mode 100644 index 0000000..6c6a4e6 --- /dev/null +++ b/variants/linux-install-static.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +package_variant() { + IN="$1" + OUT="$2" + + mkdir -p "$OUT"/bin + cp "$IN"/bin/* "$OUT"/bin + + mkdir -p "$OUT/doc" + cp -r "$IN"/share/doc/ffmpeg/* "$OUT"/doc + + mkdir -p "$OUT/man" + cp -r "$IN"/share/man/* "$OUT"/man +} diff --git a/variants/linux64-gpl.sh b/variants/linux64-gpl.sh index b3003a4..bd5fc12 100644 --- a/variants/linux64-gpl.sh +++ b/variants/linux64-gpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/linux-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-gpl.sh diff --git a/variants/linux64-lgpl.sh b/variants/linux64-lgpl.sh index f000a33..da1f9b7 100644 --- a/variants/linux64-lgpl.sh +++ b/variants/linux64-lgpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/linux-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-lgpl.sh diff --git a/variants/linuxarm64-gpl.sh b/variants/linuxarm64-gpl.sh index b3003a4..bd5fc12 100644 --- a/variants/linuxarm64-gpl.sh +++ b/variants/linuxarm64-gpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/linux-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-gpl.sh diff --git a/variants/linuxarm64-lgpl.sh b/variants/linuxarm64-lgpl.sh index f000a33..da1f9b7 100644 --- a/variants/linuxarm64-lgpl.sh +++ b/variants/linuxarm64-lgpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/linux-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-lgpl.sh diff --git a/variants/win32-gpl.sh b/variants/win32-gpl.sh index b3003a4..d629915 100644 --- a/variants/win32-gpl.sh +++ b/variants/win32-gpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/windows-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-gpl.sh diff --git a/variants/win32-lgpl.sh b/variants/win32-lgpl.sh index f000a33..f360d75 100644 --- a/variants/win32-lgpl.sh +++ b/variants/win32-lgpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/windows-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-lgpl.sh diff --git a/variants/win64-gpl.sh b/variants/win64-gpl.sh index b3003a4..d629915 100644 --- a/variants/win64-gpl.sh +++ b/variants/win64-gpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/windows-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-gpl.sh diff --git a/variants/win64-lgpl.sh b/variants/win64-lgpl.sh index f000a33..f360d75 100644 --- a/variants/win64-lgpl.sh +++ b/variants/win64-lgpl.sh @@ -1,3 +1,3 @@ #!/bin/bash -source "$(dirname "$BASH_SOURCE")"/default-install.sh +source "$(dirname "$BASH_SOURCE")"/windows-install-static.sh source "$(dirname "$BASH_SOURCE")"/defaults-lgpl.sh diff --git a/variants/default-install.sh b/variants/windows-install-static.sh similarity index 100% rename from variants/default-install.sh rename to variants/windows-install-static.sh From 20172ca00af0bc0e554c203c559a1339da6651d0 Mon Sep 17 00:00:00 2001 From: Chad Kimes <1936066+chkimes@users.noreply.github.com> Date: Fri, 30 Jun 2023 11:01:53 -0400 Subject: [PATCH 17/27] Use GH_REPO build-arg in target-base builds --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dec190d..971260b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -144,6 +144,7 @@ jobs: IMG="${GITHUB_REPOSITORY,,}/base-${{ matrix.target }}" echo "name=ghcr.io/${IMG/ /-}" >> $GITHUB_OUTPUT echo "rawname=${IMG/ /-}" >> $GITHUB_OUTPUT + echo "gh_repo=${GITHUB_REPOSITORY,,}" >> $GITHUB_OUTPUT - name: Stop Commands run: T="$(echo -n ${{ github.token }} | sha256sum | head -c 64)" && echo -e "::add-mask::${T}\n::stop-commands::${T}" - name: Build target base image @@ -155,6 +156,8 @@ jobs: tags: ${{ steps.imagename.outputs.name }}:latest cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.name }}:cache cache-from: type=registry,ref=${{ steps.imagename.outputs.name }}:cache + build-args: | + GH_REPO=ghcr.io/${{ steps.imagename.outputs.gh_repo }} - name: Cleanup if: ${{ env.HAVE_CLEANUP_PAT == 'true' }} continue-on-error: true @@ -197,7 +200,6 @@ jobs: IMG="${GITHUB_REPOSITORY,,}/${{ matrix.target }}-${{ matrix.variant }}" echo "name=ghcr.io/${IMG/ /-}" >> $GITHUB_OUTPUT echo "rawname=${IMG/ /-}" >> $GITHUB_OUTPUT - echo "gh_repo=${GITHUB_REPOSITORY,,}" >> $GITHUB_OUTPUT - name: Stop Commands run: T="$(echo -n ${{ github.token }} | sha256sum | head -c 64)" && echo -e "::add-mask::${T}\n::stop-commands::${T}" - name: Build target base image @@ -209,8 +211,6 @@ jobs: tags: ${{ steps.imagename.outputs.name }}:latest cache-to: type=registry,mode=max,ref=${{ steps.imagename.outputs.name }}:cache cache-from: type=registry,ref=${{ steps.imagename.outputs.name }}:cache - build-args: | - GH_REPO=ghcr.io/${{ steps.imagename.outputs.gh_repo }} - name: Cleanup if: ${{ env.HAVE_CLEANUP_PAT == 'true' }} continue-on-error: true From 71c3a919b8e51b2ed462d3963748bc3b2f5c2142 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 8 Jul 2023 17:37:10 +0200 Subject: [PATCH 18/27] Update dependencies --- scripts.d/10-mingw.sh | 2 +- scripts.d/20-libiconv.sh | 2 +- scripts.d/20-libxml2.sh | 2 +- scripts.d/25-fftw3.sh | 2 +- scripts.d/25-freetype.sh | 2 +- scripts.d/25-xz.sh | 2 +- scripts.d/45-harfbuzz.sh | 2 +- scripts.d/45-vmaf.sh | 2 +- scripts.d/45-x11/10-xcbproto.sh | 2 +- scripts.d/45-x11/40-libx11.sh | 2 +- scripts.d/50-amf.sh | 2 +- scripts.d/50-aom.sh | 2 +- scripts.d/50-aribb24/25-libpng.sh | 2 +- scripts.d/50-dav1d.sh | 2 +- scripts.d/50-ffnvcodec.sh | 2 +- scripts.d/50-kvazaar.sh | 2 +- scripts.d/50-libjxl/45-brotli.sh | 2 +- scripts.d/50-libjxl/50-libjxl.sh | 2 +- scripts.d/50-librist/50-librist.sh | 2 +- scripts.d/50-libssh.sh | 2 +- scripts.d/50-libvpx.sh | 2 +- scripts.d/50-libwebp.sh | 2 +- scripts.d/50-lilv/96-zix.sh | 2 +- scripts.d/50-lilv/98-sratom.sh | 2 +- scripts.d/50-lilv/99-lilv.sh | 2 +- scripts.d/50-openal.sh | 2 +- scripts.d/50-openmpt.sh | 2 +- scripts.d/50-rav1e.sh | 2 +- scripts.d/50-rubberband.sh | 2 +- scripts.d/50-sdl.sh | 2 +- scripts.d/50-srt.sh | 2 +- scripts.d/50-vaapi/40-libdrm.sh | 2 +- scripts.d/50-vaapi/50-libva.sh | 2 +- scripts.d/50-vulkan/45-vulkan.sh | 2 +- scripts.d/50-vulkan/50-shaderc.sh | 2 +- scripts.d/50-vulkan/55-spirv-cross.sh | 2 +- scripts.d/50-vulkan/60-libplacebo.sh | 2 +- scripts.d/50-x265.sh | 2 +- scripts.d/50-zimg.sh | 2 +- 39 files changed, 39 insertions(+), 39 deletions(-) diff --git a/scripts.d/10-mingw.sh b/scripts.d/10-mingw.sh index e518753..d0a6546 100755 --- a/scripts.d/10-mingw.sh +++ b/scripts.d/10-mingw.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://git.code.sf.net/p/mingw-w64/mingw-w64.git" -SCRIPT_COMMIT="b38a7d3e8016d920f02aad09187e4a5f6ae46246" +SCRIPT_COMMIT="3638d5e9a6f28354bc3e18f04ba0d97e2cc3b44c" ffbuild_enabled() { [[ $TARGET == win* ]] || return -1 diff --git a/scripts.d/20-libiconv.sh b/scripts.d/20-libiconv.sh index 993ad79..ebadb7d 100755 --- a/scripts.d/20-libiconv.sh +++ b/scripts.d/20-libiconv.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://git.savannah.gnu.org/git/libiconv.git" -SCRIPT_COMMIT="5448df580c4287b7bfe59d3be0dcbb2227e641d1" +SCRIPT_COMMIT="6e2b31f6d66739c5abd850338ea68c6bd2012812" ffbuild_enabled() { return 0 diff --git a/scripts.d/20-libxml2.sh b/scripts.d/20-libxml2.sh index 8f9c0a8..40dfe1b 100755 --- a/scripts.d/20-libxml2.sh +++ b/scripts.d/20-libxml2.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.gnome.org/GNOME/libxml2.git" -SCRIPT_COMMIT="5f54bac9ebfc1486c9180b581e32588ee74c59e4" +SCRIPT_COMMIT="884474477284474e0151280aaa275a18e3d7a036" ffbuild_enabled() { return 0 diff --git a/scripts.d/25-fftw3.sh b/scripts.d/25-fftw3.sh index ebe8357..ede5622 100755 --- a/scripts.d/25-fftw3.sh +++ b/scripts.d/25-fftw3.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/FFTW/fftw3.git" -SCRIPT_COMMIT="0842f00ae6b6e1f3aade155bc0edd17a7313fa6a" +SCRIPT_COMMIT="69f6c1a6ebd7ac5af33e7074134fb79fbc729c3d" ffbuild_enabled() { return 0 diff --git a/scripts.d/25-freetype.sh b/scripts.d/25-freetype.sh index 9cf3ae2..bcb52ed 100755 --- a/scripts.d/25-freetype.sh +++ b/scripts.d/25-freetype.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/freetype/freetype.git" -SCRIPT_COMMIT="5c00a46805d6423fc45b4ba2c0f2e22dd0450d73" +SCRIPT_COMMIT="dec2743e6a2a40cddfc8a9892895cb4f861e1eeb" ffbuild_enabled() { return 0 diff --git a/scripts.d/25-xz.sh b/scripts.d/25-xz.sh index c3fa95d..4d9581b 100755 --- a/scripts.d/25-xz.sh +++ b/scripts.d/25-xz.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/xz-mirror/xz.git" -SCRIPT_COMMIT="dbb3a536ed9873ffa0870321f6873e564c6a9da8" +SCRIPT_COMMIT="66bdcfa85fef2911cc80f5f30fed3f9610faccb4" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-harfbuzz.sh b/scripts.d/45-harfbuzz.sh index 2314d34..65c2f38 100755 --- a/scripts.d/45-harfbuzz.sh +++ b/scripts.d/45-harfbuzz.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/harfbuzz/harfbuzz.git" -SCRIPT_COMMIT="a77f28286569b1d187aa7470a4721222a3fc44e7" +SCRIPT_COMMIT="73ee9c346f3acccbe14a4caf258b636de7c459be" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-vmaf.sh b/scripts.d/45-vmaf.sh index 10ea30a..1ad7bac 100755 --- a/scripts.d/45-vmaf.sh +++ b/scripts.d/45-vmaf.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/Netflix/vmaf.git" -SCRIPT_COMMIT="5ee0051cd7b1337e033558910c30525d73edfd76" +SCRIPT_COMMIT="98bdd77b296da207ab42c3113ec8f30de58db197" ffbuild_enabled() { return 0 diff --git a/scripts.d/45-x11/10-xcbproto.sh b/scripts.d/45-x11/10-xcbproto.sh index ef95b9b..75dfd3d 100755 --- a/scripts.d/45-x11/10-xcbproto.sh +++ b/scripts.d/45-x11/10-xcbproto.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/proto/xcbproto.git" -SCRIPT_COMMIT="cfcc51836c1f2c174b67073cc8bed92e7e9c9569" +SCRIPT_COMMIT="91178913c25b19e0457cdf6d21e00e6a613823e2" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/45-x11/40-libx11.sh b/scripts.d/45-x11/40-libx11.sh index fb0c61b..8d90f37 100755 --- a/scripts.d/45-x11/40-libx11.sh +++ b/scripts.d/45-x11/40-libx11.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libx11.git" -SCRIPT_COMMIT="178c4fefd3b0b4be5e69274108b86a51f08ec3a6" +SCRIPT_COMMIT="af2b6dfab1616dc85be9c9b196e4c56d00447851" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/50-amf.sh b/scripts.d/50-amf.sh index 6f43a86..73ed13c 100755 --- a/scripts.d/50-amf.sh +++ b/scripts.d/50-amf.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git" -SCRIPT_COMMIT="bd5db31d3d8ea1fae7002dd903898599bdb7d97a" +SCRIPT_COMMIT="68f2396f1a55a5b12767f5433411bb4093ea65ed" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-aom.sh b/scripts.d/50-aom.sh index cb79cc0..89b526e 100755 --- a/scripts.d/50-aom.sh +++ b/scripts.d/50-aom.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://aomedia.googlesource.com/aom" -SCRIPT_COMMIT="7d637e1ccd859f9018ebff88911411685d3a3a2b" +SCRIPT_COMMIT="83ccc009eade321c8723ae0da8655fc68ce6a128" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-aribb24/25-libpng.sh b/scripts.d/50-aribb24/25-libpng.sh index 4c596a4..e7aa9ff 100755 --- a/scripts.d/50-aribb24/25-libpng.sh +++ b/scripts.d/50-aribb24/25-libpng.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/glennrp/libpng.git" -SCRIPT_COMMIT="8be5c147d567bf90553088305208e612abb16768" +SCRIPT_COMMIT="82414985c1085737bccd3eedb0aaa997451f5d32" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-dav1d.sh b/scripts.d/50-dav1d.sh index 7aaebe8..ca12597 100755 --- a/scripts.d/50-dav1d.sh +++ b/scripts.d/50-dav1d.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/videolan/dav1d.git" -SCRIPT_COMMIT="2373fda303d46489c1ec269dc66369a31663cb25" +SCRIPT_COMMIT="a7e12b628472516718d37108fde7d438b14a0372" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-ffnvcodec.sh b/scripts.d/50-ffnvcodec.sh index 0c52cc4..63862b5 100755 --- a/scripts.d/50-ffnvcodec.sh +++ b/scripts.d/50-ffnvcodec.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/FFmpeg/nv-codec-headers.git" -SCRIPT_COMMIT="9402b5a7693e9841f8a4f4488cd2df21ac55c685" +SCRIPT_COMMIT="855f8263d97bbdcaeabaaaa2997e1ccad7c52dc3" SCRIPT_REPO2="https://github.com/FFmpeg/nv-codec-headers.git" SCRIPT_COMMIT2="dc3e4484dc83485734e503991fe5ed3bdf256fba" diff --git a/scripts.d/50-kvazaar.sh b/scripts.d/50-kvazaar.sh index a045ea9..2ee1b5d 100755 --- a/scripts.d/50-kvazaar.sh +++ b/scripts.d/50-kvazaar.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/ultravideo/kvazaar.git" -SCRIPT_COMMIT="e001c6a867068b448354d955363bd2ff7caf33d2" +SCRIPT_COMMIT="aaae5b0f4926065136f287876c6bc41631bae692" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libjxl/45-brotli.sh b/scripts.d/50-libjxl/45-brotli.sh index f037940..717e814 100755 --- a/scripts.d/50-libjxl/45-brotli.sh +++ b/scripts.d/50-libjxl/45-brotli.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/google/brotli.git" -SCRIPT_COMMIT="1d8452b783dafd7e2acc0914919d38d46b861765" +SCRIPT_COMMIT="413b098564a90a2e6cae192d30642d33a9197a39" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 4be5db0..7af5a5c 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libjxl/libjxl.git" -SCRIPT_COMMIT="b4369bdafa2901512aa6b0728a05a90c8fa314fc" +SCRIPT_COMMIT="c3a4f9ca89ae59c6265a2f1bf2a6d2a87a71fc16" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-librist/50-librist.sh b/scripts.d/50-librist/50-librist.sh index 9b7ee52..0b648ba 100755 --- a/scripts.d/50-librist/50-librist.sh +++ b/scripts.d/50-librist/50-librist.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/rist/librist.git" -SCRIPT_COMMIT="c917e970be95658411e249f6e4e7fc1eeea6fe99" +SCRIPT_COMMIT="04ba78abb6f8f673da0cc75056df876178e504fb" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libssh.sh b/scripts.d/50-libssh.sh index a94e25e..9f4b611 100755 --- a/scripts.d/50-libssh.sh +++ b/scripts.d/50-libssh.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://git.libssh.org/projects/libssh.git" -SCRIPT_COMMIT="df0a445c87dc9678f23984141f6b396c72888972" +SCRIPT_COMMIT="a7f85944c8c04cd1aba1a122b766f5d04db51050" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libvpx.sh b/scripts.d/50-libvpx.sh index be696ff..f16cc1e 100755 --- a/scripts.d/50-libvpx.sh +++ b/scripts.d/50-libvpx.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://chromium.googlesource.com/webm/libvpx" -SCRIPT_COMMIT="14e52008edbf2e91386423fdd53310fe49654991" +SCRIPT_COMMIT="b2c2955c8200ff434f178009df41a1e1e1623156" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-libwebp.sh b/scripts.d/50-libwebp.sh index e5306cf..2579d7e 100755 --- a/scripts.d/50-libwebp.sh +++ b/scripts.d/50-libwebp.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://chromium.googlesource.com/webm/libwebp" -SCRIPT_COMMIT="64819c7cf34350aafa9f2f0e3f5d5a444cb82d2a" +SCRIPT_COMMIT="eac3bd5c53da8bec55a635c6f4234c9cd5753820" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-lilv/96-zix.sh b/scripts.d/50-lilv/96-zix.sh index c6d56cc..534e224 100755 --- a/scripts.d/50-lilv/96-zix.sh +++ b/scripts.d/50-lilv/96-zix.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/drobilla/zix.git" -SCRIPT_COMMIT="a13ae5ad9dc70075740f11139f1db96cc79faa59" +SCRIPT_COMMIT="a5c18d52a5351430d370084f25aaf7d166f7afd5" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-lilv/98-sratom.sh b/scripts.d/50-lilv/98-sratom.sh index 2bc170a..d32e200 100755 --- a/scripts.d/50-lilv/98-sratom.sh +++ b/scripts.d/50-lilv/98-sratom.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/lv2/sratom.git" -SCRIPT_COMMIT="6805327a511242ce9697ccfb98be4569d8883e33" +SCRIPT_COMMIT="b97b447d77fbf172260b4b40f184959f59c3623e" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-lilv/99-lilv.sh b/scripts.d/50-lilv/99-lilv.sh index b2f3eda..d026da6 100755 --- a/scripts.d/50-lilv/99-lilv.sh +++ b/scripts.d/50-lilv/99-lilv.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/lv2/lilv.git" -SCRIPT_COMMIT="caad4f5554fd77b61a0907a67bab90bc656d86ad" +SCRIPT_COMMIT="54b32c1949d60225602a7161d5d6c4853230307a" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-openal.sh b/scripts.d/50-openal.sh index 0c1b47a..7da1fa1 100755 --- a/scripts.d/50-openal.sh +++ b/scripts.d/50-openal.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/kcat/openal-soft.git" -SCRIPT_COMMIT="a49b612ef470003ffb16ddc5e19c9a1984a71619" +SCRIPT_COMMIT="05f9ce8b978239cebecef1a60f0d451a118fa3df" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-openmpt.sh b/scripts.d/50-openmpt.sh index e7cf9e2..b3803f6 100755 --- a/scripts.d/50-openmpt.sh +++ b/scripts.d/50-openmpt.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://source.openmpt.org/svn/openmpt/trunk/OpenMPT" -SCRIPT_REV="19424" +SCRIPT_REV="19445" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-rav1e.sh b/scripts.d/50-rav1e.sh index 3eade10..eb8c37c 100755 --- a/scripts.d/50-rav1e.sh +++ b/scripts.d/50-rav1e.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/xiph/rav1e.git" -SCRIPT_COMMIT="ba7ed562b01e47dcdb428a44edd0c26a61e8950c" +SCRIPT_COMMIT="5ec4f95d9fe1a9295fe8239e2860c8f84e5e2336" ffbuild_enabled() { [[ $TARGET == win32 ]] && return -1 diff --git a/scripts.d/50-rubberband.sh b/scripts.d/50-rubberband.sh index 6ad0385..e3577c4 100755 --- a/scripts.d/50-rubberband.sh +++ b/scripts.d/50-rubberband.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/breakfastquay/rubberband.git" -SCRIPT_COMMIT="82dab93ecf44c9b1203289c0118760b7331b2156" +SCRIPT_COMMIT="1eddafd7a7c8b64e377d64ee5e87ead881a32a48" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-sdl.sh b/scripts.d/50-sdl.sh index d8c1434..bf6b0c2 100755 --- a/scripts.d/50-sdl.sh +++ b/scripts.d/50-sdl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libsdl-org/SDL.git" -SCRIPT_COMMIT="ceece918e4ebe7adfe80ee35a0a4a928c0018252" +SCRIPT_COMMIT="e16a83d393ae1784040519f42c482e2641b971a2" SCRIPT_BRANCH="SDL2" ffbuild_enabled() { diff --git a/scripts.d/50-srt.sh b/scripts.d/50-srt.sh index b45b942..d40e9da 100755 --- a/scripts.d/50-srt.sh +++ b/scripts.d/50-srt.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/Haivision/srt.git" -SCRIPT_COMMIT="9448e26fcd7602098b4bf9cd7fe535136e89e10b" +SCRIPT_COMMIT="61c7bedf27a2edbcf6e6fdc179612980bae53c6a" ffbuild_enabled() { return 0 diff --git a/scripts.d/50-vaapi/40-libdrm.sh b/scripts.d/50-vaapi/40-libdrm.sh index bbc9873..f2b3d4c 100755 --- a/scripts.d/50-vaapi/40-libdrm.sh +++ b/scripts.d/50-vaapi/40-libdrm.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://gitlab.freedesktop.org/mesa/drm.git" -SCRIPT_COMMIT="98e1db501173303e58ef6a1def94ab7a2d84afc1" +SCRIPT_COMMIT="7d7a9901bd67cf5b1ce07e5d237a82e13e9fb500" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/50-vaapi/50-libva.sh b/scripts.d/50-vaapi/50-libva.sh index 78bac1d..ed3d88f 100755 --- a/scripts.d/50-vaapi/50-libva.sh +++ b/scripts.d/50-vaapi/50-libva.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/intel/libva.git" -SCRIPT_COMMIT="1c58941b93ba5013c68e8370a408efd630275c9c" +SCRIPT_COMMIT="984dfee4177021c400367f5dffc0776a6dd745dc" ffbuild_enabled() { [[ $TARGET != linux* ]] && return -1 diff --git a/scripts.d/50-vulkan/45-vulkan.sh b/scripts.d/50-vulkan/45-vulkan.sh index 13e6622..c1a718b 100755 --- a/scripts.d/50-vulkan/45-vulkan.sh +++ b/scripts.d/50-vulkan/45-vulkan.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/KhronosGroup/Vulkan-Headers.git" -SCRIPT_COMMIT="v1.3.254" +SCRIPT_COMMIT="v1.3.257" SCRIPT_TAGFILTER="v?.*.*" ffbuild_enabled() { diff --git a/scripts.d/50-vulkan/50-shaderc.sh b/scripts.d/50-vulkan/50-shaderc.sh index 9f282ac..576dc37 100755 --- a/scripts.d/50-vulkan/50-shaderc.sh +++ b/scripts.d/50-vulkan/50-shaderc.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/google/shaderc.git" -SCRIPT_COMMIT="4dc596ddc2702092c670e828745dc3e0338d83c1" +SCRIPT_COMMIT="e31c4c2e41544d63d90be28c46e4a4793a624240" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-vulkan/55-spirv-cross.sh b/scripts.d/50-vulkan/55-spirv-cross.sh index e5f30ba..f5d189c 100755 --- a/scripts.d/50-vulkan/55-spirv-cross.sh +++ b/scripts.d/50-vulkan/55-spirv-cross.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/KhronosGroup/SPIRV-Cross.git" -SCRIPT_COMMIT="2d3a152081ca6e6bea7093940d0f81088fe4d01c" +SCRIPT_COMMIT="b8e742c91ba47eb3238c939ee11ec9ba2ba247bf" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-vulkan/60-libplacebo.sh b/scripts.d/50-vulkan/60-libplacebo.sh index b8d74e7..0987426 100755 --- a/scripts.d/50-vulkan/60-libplacebo.sh +++ b/scripts.d/50-vulkan/60-libplacebo.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://code.videolan.org/videolan/libplacebo.git" -SCRIPT_COMMIT="d25b82b7dbf961d25d510bed6198ad3f24a7ec27" +SCRIPT_COMMIT="b959cab8b859dc53a6dbd26c050be0b3883114c8" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 diff --git a/scripts.d/50-x265.sh b/scripts.d/50-x265.sh index c7ad259..0e026de 100755 --- a/scripts.d/50-x265.sh +++ b/scripts.d/50-x265.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://bitbucket.org/multicoreware/x265_git.git" -SCRIPT_COMMIT="34532bda12a3a3141880582aa186a59cd4538ae6" +SCRIPT_COMMIT="8f18e3ad32684eee95e885e718655f93951128c3" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 diff --git a/scripts.d/50-zimg.sh b/scripts.d/50-zimg.sh index 9b9b80b..49bc5bb 100755 --- a/scripts.d/50-zimg.sh +++ b/scripts.d/50-zimg.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/sekrit-twc/zimg.git" -SCRIPT_COMMIT="939a78cae6a8207ef778375dfcaa75511162a186" +SCRIPT_COMMIT="ec0c604a9e29dd144b0bb1fb0974ac3b398fc18b" ffbuild_enabled() { return 0 From 49684930d271d0f7765d7a197d261a90d093d508 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 8 Jul 2023 18:30:19 +0200 Subject: [PATCH 19/27] Jxl has a new submodule --- scripts.d/50-libjxl/50-libjxl.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 7af5a5c..0a4e691 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -11,7 +11,7 @@ ffbuild_enabled() { ffbuild_dockerdl() { default_dl "$SELF" - to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth 1 --recommend-shallow third_party/highway third_party/skcms" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth 1 --recommend-shallow third_party/highway third_party/skcms third_party/libjpeg-turbo" } ffbuild_dockerbuild() { From 6c86fdaad04c6908de8175a5015affe457517a95 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 8 Jul 2023 19:09:14 +0200 Subject: [PATCH 20/27] Downgrade libjxl, they removed deprecated stuff --- scripts.d/50-libjxl/50-libjxl.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 0a4e691..6d7645a 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libjxl/libjxl.git" -SCRIPT_COMMIT="c3a4f9ca89ae59c6265a2f1bf2a6d2a87a71fc16" +SCRIPT_COMMIT="5f3cc36bca9e43cf78aa5b819b74b387c638cac5" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 @@ -11,7 +11,7 @@ ffbuild_enabled() { ffbuild_dockerdl() { default_dl "$SELF" - to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth 1 --recommend-shallow third_party/highway third_party/skcms third_party/libjpeg-turbo" + to_df "RUN git -C \"$SELF\" submodule update --init --recursive --depth 1 --recommend-shallow third_party/highway third_party/skcms" } ffbuild_dockerbuild() { @@ -30,7 +30,7 @@ ffbuild_dockerbuild() { cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ -DBUILD_SHARED_LIBS=OFF -DJPEGXL_STATIC=OFF -DJPEGXL_ENABLE_TOOLS=OFF -DJPEGXL_ENABLE_VIEWERS=OFF -DJPEGXL_EMSCRIPTEN=OFF -DJPEGXL_ENABLE_DOXYGEN=OFF \ - -DBUILD_TESTING=OFF -DJPEGXL_ENABLE_EXAMPLES=OFF -DJPEGXL_ENABLE_MANPAGES=OFF -DJPEGXL_ENABLE_JNI=OFF -DJPEGXL_ENABLE_PLUGINS=OFF \ + -DJPEGXL_ENABLE_JPEGLI=OFF -DBUILD_TESTING=OFF -DJPEGXL_ENABLE_EXAMPLES=OFF -DJPEGXL_ENABLE_MANPAGES=OFF -DJPEGXL_ENABLE_JNI=OFF -DJPEGXL_ENABLE_PLUGINS=OFF \ -DJPEGXL_ENABLE_DEVTOOLS=OFF -DJPEGXL_ENABLE_BENCHMARK=OFF -DJPEGXL_BUNDLE_LIBPNG=OFF -DJPEGXL_ENABLE_SJPEG=OFF -DJPEGXL_FORCE_SYSTEM_BROTLI=ON .. ninja -j$(nproc) ninja install From a7ae13efb77f33f645f4faa2143cf1431393aef0 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 8 Jul 2023 20:11:09 +0200 Subject: [PATCH 21/27] Fix cache invalidation on commit update --- scripts.d/20-libiconv.sh | 3 +-- scripts.d/45-pulseaudio.sh | 3 +-- scripts.d/50-davs2.sh | 3 +-- scripts.d/50-gme.sh | 3 +-- scripts.d/50-svtav1.sh | 3 +-- scripts.d/50-uavs3d.sh | 3 +-- scripts.d/50-x265.sh | 3 +-- scripts.d/50-xavs2.sh | 3 +-- 8 files changed, 8 insertions(+), 16 deletions(-) diff --git a/scripts.d/20-libiconv.sh b/scripts.d/20-libiconv.sh index ebadb7d..f6d09f7 100755 --- a/scripts.d/20-libiconv.sh +++ b/scripts.d/20-libiconv.sh @@ -8,8 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN retry-tool sh -c \"rm -rf $SELF && git clone '$SCRIPT_REPO' $SELF\"" - to_df "RUN git -C $SELF checkout \"$SCRIPT_COMMIT\"" + to_df "RUN retry-tool sh -c \"rm -rf $SELF && git clone '$SCRIPT_REPO' $SELF\" && git -C $SELF checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/45-pulseaudio.sh b/scripts.d/45-pulseaudio.sh index e4d5761..356b6be 100755 --- a/scripts.d/45-pulseaudio.sh +++ b/scripts.d/45-pulseaudio.sh @@ -9,8 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone --filter=blob:none \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone --filter=blob:none \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-davs2.sh b/scripts.d/50-davs2.sh index 8a3e778..1e4cd15 100755 --- a/scripts.d/50-davs2.sh +++ b/scripts.d/50-davs2.sh @@ -12,8 +12,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-gme.sh b/scripts.d/50-gme.sh index 015cfae..e580cd4 100755 --- a/scripts.d/50-gme.sh +++ b/scripts.d/50-gme.sh @@ -8,8 +8,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-svtav1.sh b/scripts.d/50-svtav1.sh index 5ec307c..66b6600 100755 --- a/scripts.d/50-svtav1.sh +++ b/scripts.d/50-svtav1.sh @@ -9,8 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-uavs3d.sh b/scripts.d/50-uavs3d.sh index c6d4573..38e56bd 100755 --- a/scripts.d/50-uavs3d.sh +++ b/scripts.d/50-uavs3d.sh @@ -9,8 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-x265.sh b/scripts.d/50-x265.sh index 0e026de..14bc515 100755 --- a/scripts.d/50-x265.sh +++ b/scripts.d/50-x265.sh @@ -9,8 +9,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { diff --git a/scripts.d/50-xavs2.sh b/scripts.d/50-xavs2.sh index ffcde84..36b1e65 100755 --- a/scripts.d/50-xavs2.sh +++ b/scripts.d/50-xavs2.sh @@ -12,8 +12,7 @@ ffbuild_enabled() { } ffbuild_dockerdl() { - to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\"" - to_df "RUN git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" + to_df "RUN git clone \"$SCRIPT_REPO\" \"$SELF\" && git -C \"$SELF\" checkout \"$SCRIPT_COMMIT\"" } ffbuild_dockerbuild() { From 7a5bf0c0bb23d2b367f00fde3e7dd8665d3c4f2f Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 9 Jul 2023 19:44:10 +0200 Subject: [PATCH 22/27] Switch to gmplib github mirror --- scripts.d/25-gmp.sh | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/scripts.d/25-gmp.sh b/scripts.d/25-gmp.sh index 8f7b1c9..3884ce6 100755 --- a/scripts.d/25-gmp.sh +++ b/scripts.d/25-gmp.sh @@ -1,20 +1,16 @@ #!/bin/bash -SCRIPT_VERSION="6.2.1" -SCRIPT_SHA512="c99be0950a1d05a0297d65641dd35b75b74466f7bf03c9e8a99895a3b2f9a0856cd17887738fa51cf7499781b65c049769271cbcb77d057d2e9f1ec52e07dd84" -SCRIPT_URL="https://ftp.gnu.org/gnu/gmp/gmp-${SCRIPT_VERSION}.tar.xz" +SCRIPT_REPO="https://github.com/BtbN/gmplib.git" +SCRIPT_COMMIT="1d7f62515fc8f5109fabace9592d863417f17c37" ffbuild_enabled() { return 0 } -ffbuild_dockerdl() { - to_df "RUN retry-tool check-wget gmp.tar.xz \"$SCRIPT_URL\" \"$SCRIPT_SHA512\"" -} - ffbuild_dockerbuild() { - tar xaf "$FFBUILD_DLDIR"/gmp.tar.xz - cd "gmp-$SCRIPT_VERSION" + cd "$FFBUILD_DLDIR/$SELF" + + ./.bootstrap local myconf=( --prefix="$FFBUILD_PREFIX" From 683e3a4dc9084673f7ea53f94b98a9895f89c811 Mon Sep 17 00:00:00 2001 From: BtbN Date: Mon, 10 Jul 2023 22:40:41 +0200 Subject: [PATCH 23/27] Bump libjxl --- scripts.d/50-libjxl/50-libjxl.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts.d/50-libjxl/50-libjxl.sh b/scripts.d/50-libjxl/50-libjxl.sh index 6d7645a..adbcf6a 100755 --- a/scripts.d/50-libjxl/50-libjxl.sh +++ b/scripts.d/50-libjxl/50-libjxl.sh @@ -1,11 +1,13 @@ #!/bin/bash SCRIPT_REPO="https://github.com/libjxl/libjxl.git" -SCRIPT_COMMIT="5f3cc36bca9e43cf78aa5b819b74b387c638cac5" +SCRIPT_COMMIT="c3a4f9ca89ae59c6265a2f1bf2a6d2a87a71fc16" ffbuild_enabled() { [[ $ADDINS_STR == *4.4* ]] && return -1 [[ $ADDINS_STR == *5.0* ]] && return -1 + [[ $ADDINS_STR == *5.1* ]] && return -1 + [[ $ADDINS_STR == *6.0* ]] && return -1 return 0 } From 2fe73c5aaba608f77060effde14732f7c2aef78b Mon Sep 17 00:00:00 2001 From: BtbN Date: Thu, 20 Jul 2023 15:29:46 +0200 Subject: [PATCH 24/27] Bump avisynth --- scripts.d/50-avisynth.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts.d/50-avisynth.sh b/scripts.d/50-avisynth.sh index 6c5af1c..699250d 100755 --- a/scripts.d/50-avisynth.sh +++ b/scripts.d/50-avisynth.sh @@ -1,7 +1,7 @@ #!/bin/bash SCRIPT_REPO="https://github.com/AviSynth/AviSynthPlus.git" -SCRIPT_COMMIT="ad0d546cd2fd5eadf3b4d29df24bf3f6713d9707" +SCRIPT_COMMIT="fc5b9bc41fd47001b7da39ea777d29c0ede2a2a7" ffbuild_enabled() { [[ $VARIANT == lgpl* ]] && return -1 From c07b573acd10e813c500ed50f4ceeee9cd819b04 Mon Sep 17 00:00:00 2001 From: BtbN Date: Thu, 20 Jul 2023 15:54:19 +0200 Subject: [PATCH 25/27] Avisynth insist on a tag to exist --- scripts.d/50-avisynth.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts.d/50-avisynth.sh b/scripts.d/50-avisynth.sh index 699250d..4978378 100755 --- a/scripts.d/50-avisynth.sh +++ b/scripts.d/50-avisynth.sh @@ -11,6 +11,9 @@ ffbuild_enabled() { ffbuild_dockerbuild() { cd "$FFBUILD_DLDIR/$SELF" + # their version check is insistant on a tag to exist, so make one + git tag -a ffbuild -m "FFbuild Version" + mkdir build && cd build cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" -DHEADERS_ONLY=ON .. From 336c8909c8640e90a3f994dfdde209e040189938 Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 22 Jul 2023 15:46:55 +0200 Subject: [PATCH 26/27] Don't depend on zip Closes #284 --- build.sh | 4 ++-- images/base/Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.sh b/build.sh index 80ec56a..532535a 100755 --- a/build.sh +++ b/build.sh @@ -90,10 +90,10 @@ package_variant ffbuild/prefix "ffbuild/pkgroot/$BUILD_NAME" cd ffbuild/pkgroot if [[ "${TARGET}" == win* ]]; then OUTPUT_FNAME="${BUILD_NAME}.zip" - zip -9 -r "${ARTIFACTS_PATH}/${OUTPUT_FNAME}" "$BUILD_NAME" + docker run --rm -i $TTY_ARG "${UIDARGS[@]}" -v "${ARTIFACTS_PATH}":/out -v "${PWD}/${BUILD_NAME}":"/${BUILD_NAME}" -w / "$IMAGE" zip -9 -r "/out/${OUTPUT_FNAME}" "$BUILD_NAME" else OUTPUT_FNAME="${BUILD_NAME}.tar.xz" - tar cJf "${ARTIFACTS_PATH}/${OUTPUT_FNAME}" "$BUILD_NAME" + docker run --rm -i $TTY_ARG "${UIDARGS[@]}" -v "${ARTIFACTS_PATH}":/out -v "${PWD}/${BUILD_NAME}":"/${BUILD_NAME}" -w / "$IMAGE" tar cJf "/out/${OUTPUT_FNAME}" "$BUILD_NAME" fi cd - diff --git a/images/base/Dockerfile b/images/base/Dockerfile index 4d191e8..9725cf4 100644 --- a/images/base/Dockerfile +++ b/images/base/Dockerfile @@ -8,7 +8,7 @@ RUN \ apt-get -y update && \ apt-get -y dist-upgrade && \ apt-get -y install build-essential yasm nasm \ - xxd pkgconf curl wget unzip git subversion mercurial \ + xxd pkgconf curl wget unzip zip git subversion mercurial \ autoconf automake libtool libtool-bin autopoint gettext cmake clang meson ninja-build \ texinfo texi2html help2man flex bison groff \ gperf itstool ragel libc6-dev libssl-dev \ From 0a5e19d524d224bfc3ee1d9678ae562bae4265b7 Mon Sep 17 00:00:00 2001 From: BtbN Date: Tue, 25 Jul 2023 14:39:11 +0200 Subject: [PATCH 27/27] Move iconv submodule fetch to cache --- scripts.d/20-libiconv.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts.d/20-libiconv.sh b/scripts.d/20-libiconv.sh index f6d09f7..6303f14 100755 --- a/scripts.d/20-libiconv.sh +++ b/scripts.d/20-libiconv.sh @@ -9,12 +9,12 @@ ffbuild_enabled() { ffbuild_dockerdl() { to_df "RUN retry-tool sh -c \"rm -rf $SELF && git clone '$SCRIPT_REPO' $SELF\" && git -C $SELF checkout \"$SCRIPT_COMMIT\"" + to_df "RUN cd $SELF && retry-tool ./autopull.sh --one-time" } ffbuild_dockerbuild() { cd "$FFBUILD_DLDIR/$SELF" - retry-tool ./autopull.sh --one-time (unset CC CFLAGS GMAKE && ./autogen.sh) local myconf=(