113 lines
1.9 KiB
Bash
113 lines
1.9 KiB
Bash
#!/bin/bash
|
|
|
|
if [[ $# -lt 2 ]]; then
|
|
echo "Invalid Arguments"
|
|
exit -1
|
|
fi
|
|
|
|
TARGET="$1"
|
|
VARIANT="$2"
|
|
shift 2
|
|
|
|
if ! [[ -f "variants/${TARGET}-${VARIANT}.sh" ]]; then
|
|
echo "Invalid target/variant"
|
|
exit -1
|
|
fi
|
|
|
|
LICENSE_FILE="COPYING.LGPLv2.1"
|
|
|
|
ADDINS=()
|
|
ADDINS_STR=""
|
|
while [[ "$#" -gt 0 ]]; do
|
|
if ! [[ -f "addins/${1}.sh" ]]; then
|
|
echo "Invalid addin: $1"
|
|
exit -1
|
|
fi
|
|
|
|
ADDINS+=( "$1" )
|
|
ADDINS_STR="${ADDINS_STR}${ADDINS_STR:+-}$1"
|
|
|
|
shift
|
|
done
|
|
|
|
REPO="${GITHUB_REPOSITORY:-btbn/ffmpeg-builds}"
|
|
REPO="${REPO,,}"
|
|
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_RAW="${REGISTRY}/${REPO}/dl_cache"
|
|
if [[ -n "$REGISTRY_OVERRIDE_DL" && -n "$GITHUB_REPOSITORY_DL" ]]; then
|
|
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"
|
|
}
|
|
|
|
ffbuild_dockerlayer_dl() {
|
|
to_df "COPY --from=${SELFLAYER} \$FFBUILD_DLDIR/. \$FFBUILD_DLDIR"
|
|
}
|
|
|
|
ffbuild_dockerstage() {
|
|
to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=/,dst=\$FFBUILD_DLDIR,from=${DL_IMAGE},rw run_stage /stage.sh"
|
|
}
|
|
|
|
ffbuild_dockerlayer() {
|
|
to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/. \$FFBUILD_PREFIX"
|
|
}
|
|
|
|
ffbuild_dockerfinal() {
|
|
to_df "COPY --from=${PREVLAYER} \$FFBUILD_PREFIX/. \$FFBUILD_PREFIX"
|
|
}
|
|
|
|
ffbuild_configure() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_unconfigure() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_cflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_uncflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_cxxflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_uncxxflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_ldexeflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_unldexeflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_ldflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_unldflags() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_libs() {
|
|
return 0
|
|
}
|
|
|
|
ffbuild_unlibs() {
|
|
return 0
|
|
}
|