Add Addin-System
This commit is contained in:
		
							parent
							
								
									795d8a739f
								
							
						
					
					
						commit
						e90d9436fc
					
				
					 9 changed files with 36 additions and 14 deletions
				
			
		
							
								
								
									
										2
									
								
								addins/debug.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								addins/debug.sh
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
FF_CONFIGURE="${FF_CONFIGURE/--disable-debug/} --optflags='-Og' --disable-stripping"
 | 
			
		||||
							
								
								
									
										4
									
								
								build.sh
									
										
									
									
									
								
							
							
						
						
									
										4
									
								
								build.sh
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -17,6 +17,10 @@ get_output() {
 | 
			
		|||
 | 
			
		||||
source "variants/${TARGET}-${VARIANT}.sh"
 | 
			
		||||
 | 
			
		||||
for addin in ${ADDINS[*]}; do
 | 
			
		||||
    source "addins/${addin}.sh"
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
export FFBUILD_PREFIX="$(docker run --rm "$IMAGE" bash -c 'echo $FFBUILD_PREFIX')"
 | 
			
		||||
 | 
			
		||||
for script in scripts.d/*.sh; do
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,7 +11,7 @@ to_df() {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
to_df "FROM docker.pkg.github.com/${REPO}/base-${TARGET}:latest"
 | 
			
		||||
to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO"
 | 
			
		||||
to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR"
 | 
			
		||||
 | 
			
		||||
for script in scripts.d/*.sh; do
 | 
			
		||||
(
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,6 +6,6 @@ source util/vars.sh
 | 
			
		|||
docker build --cache-from "$BASE_IMAGE" --tag "$BASE_IMAGE" images/base
 | 
			
		||||
docker build --build-arg GH_REPO="$REPO" --cache-from "$TARGET_IMAGE" --tag "$TARGET_IMAGE" "images/base-${TARGET}"
 | 
			
		||||
 | 
			
		||||
./generate.sh "$TARGET" "$VARIANT"
 | 
			
		||||
./generate.sh "$TARGET" "$VARIANT" "${ADDINS[@]}"
 | 
			
		||||
 | 
			
		||||
exec docker build --cache-from "$IMAGE" --tag "$IMAGE" .
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										32
									
								
								util/vars.sh
									
										
									
									
									
								
							
							
						
						
									
										32
									
								
								util/vars.sh
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,24 +1,40 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
if [[ $# -lt 1 || $# -gt 2 ]]; then
 | 
			
		||||
if [[ $# -lt 2 ]]; then
 | 
			
		||||
    echo "Invalid Arguments"
 | 
			
		||||
    exit -1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
TARGET="$1"
 | 
			
		||||
VARIANT="${2:-gpl}"
 | 
			
		||||
REPO="${GITHUB_REPOSITORY:-btbn/ffmpeg-builds}"
 | 
			
		||||
REPO="${REPO,,}"
 | 
			
		||||
REGISTRY="docker.pkg.github.com"
 | 
			
		||||
BASE_IMAGE="${REGISTRY}/${REPO}/base:latest"
 | 
			
		||||
TARGET_IMAGE="${REGISTRY}/${REPO}/base-${TARGET}:latest"
 | 
			
		||||
IMAGE="${REGISTRY}/${REPO}/${TARGET}-${VARIANT}:latest"
 | 
			
		||||
VARIANT="$2"
 | 
			
		||||
shift 2
 | 
			
		||||
 | 
			
		||||
if ! [[ -f "variants/${TARGET}-${VARIANT}.sh" ]]; then
 | 
			
		||||
    echo "Invalid target/variant"
 | 
			
		||||
    exit -1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
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="docker.pkg.github.com"
 | 
			
		||||
BASE_IMAGE="${REGISTRY}/${REPO}/base:latest"
 | 
			
		||||
TARGET_IMAGE="${REGISTRY}/${REPO}/base-${TARGET}:latest"
 | 
			
		||||
IMAGE="${REGISTRY}/${REPO}/${TARGET}-${VARIANT}${ADDINS_STR:+-}${ADDINS_STR}:latest"
 | 
			
		||||
 | 
			
		||||
ffbuild_configure() {
 | 
			
		||||
    return 0
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,3 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
source "$(dirname "$BASH_SOURCE")"/defaults-gpl.sh
 | 
			
		||||
FF_CONFIGURE+=" --enable-shared --disable-static"
 | 
			
		||||
FF_CONFIGURE+=" --enable-shared --disable-static --disable-debug"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
FF_CONFIGURE="--enable-gpl --enable-version3"
 | 
			
		||||
FF_CONFIGURE="--enable-gpl --enable-version3 --disable-debug"
 | 
			
		||||
FF_CFLAGS=""
 | 
			
		||||
FF_CXXFLAGS=""
 | 
			
		||||
FF_LDFLAGS=""
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,3 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
source "$(dirname "$BASH_SOURCE")"/defaults-lgpl.sh
 | 
			
		||||
FF_CONFIGURE+=" --enable-shared --disable-static"
 | 
			
		||||
FF_CONFIGURE+=" --enable-shared --disable-static --disable-debug"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
FF_CONFIGURE="--enable-version3"
 | 
			
		||||
FF_CONFIGURE="--enable-version3 --disable-debug"
 | 
			
		||||
FF_CFLAGS=""
 | 
			
		||||
FF_CXXFLAGS=""
 | 
			
		||||
FF_LDFLAGS=""
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue