[vlc-commits] [Git][videolan/vlc][master] 12 commits: ci: generate a contrib package if Debian prebuilt were used but failed

Steve Lhomme (@robUx4) gitlab at videolan.org
Wed Sep 28 15:45:26 UTC 2022



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
db5a4b06 by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if Debian prebuilt were used but failed

If the previous prebuilt was broken we have a fresh one to use.

- - - - -
8998fca0 by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/win32: build.sh: build contribs locally if prebuilt failed

- - - - -
ee926f42 by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if Windows prebuilt were used but failed

If the previous prebuilt was broken we have a fresh one to use.

- - - - -
c59b8170 by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/raspberry: build.sh: build contribs locally if prebuilt failed

- - - - -
df0e0e2e by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if Raspberry prebuilt were used but failed

If the previous prebuilt was broken we have a fresh one to use.

- - - - -
1b4929e1 by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/macos: build.sh: build contribs locally if prebuilt failed

- - - - -
cf342c83 by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if macOS prebuilt were used but failed

If the previous prebuilt was broken we have a fresh one to use.

- - - - -
2574c81c by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/apple: build.sh: build contribs locally if prebuilt failed

- - - - -
3d0b092e by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/apple: build.sh: allow creating a package with when using prebuilt

This is necessary if we want to regenerate the prebuilt packages if it's broken

- - - - -
bd01267a by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if Apple prebuilt were used but failed

If the previous prebuilt was broken we have a fresh one to use.

- - - - -
413998fd by Steve Lhomme at 2022-09-28T14:41:37+00:00
package/emscripten: build.sh: build contribs locally if prebuilt failed

- - - - -
d6709fa4 by Steve Lhomme at 2022-09-28T14:41:37+00:00
ci: generate a contrib package if Emscripten prebuilt were used but failed

- - - - -


6 changed files:

- extras/ci/gitlab-ci.yml
- extras/package/apple/build.sh
- extras/package/macosx/build.sh
- extras/package/raspberry/build.sh
- extras/package/wasm-emscripten/build.sh
- extras/package/win32/build.sh


Changes:

=====================================
extras/ci/gitlab-ci.yml
=====================================
@@ -136,7 +136,7 @@ variables:
         fi
         if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
             echo "Building using prebuilt contribs at $VLC_PREBUILT_CONTRIBS_URL"
-            extras/package/win32/build.sh -p -a $HOST_ARCH $NIGHTLY_EXTRA_BUILD_FLAGS $LIBVLC_EXTRA_BUILD_FLAGS $UWP_EXTRA_BUILD_FLAGS
+            extras/package/win32/build.sh -p -c -a $HOST_ARCH $NIGHTLY_EXTRA_BUILD_FLAGS $LIBVLC_EXTRA_BUILD_FLAGS $UWP_EXTRA_BUILD_FLAGS
         else
             extras/package/win32/build.sh -c -a $HOST_ARCH $NIGHTLY_EXTRA_BUILD_FLAGS $LIBVLC_EXTRA_BUILD_FLAGS $UWP_EXTRA_BUILD_FLAGS
         fi
@@ -241,13 +241,15 @@ debian:
         ../bootstrap
         if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
             echo "Building using prebuilt contribs at $VLC_PREBUILT_CONTRIBS_URL"
-            make prebuilt PREBUILT_URL="${VLC_PREBUILT_CONTRIBS_URL}"
-            make -j$NCPU --output-sync=recurse tools
-        else
+            make prebuilt PREBUILT_URL="${VLC_PREBUILT_CONTRIBS_URL}" || PREBUILT_FAILED=yes
+        fi
+        if [ -n "$PREBUILT_FAILED" ]; then
             make list
             make -j$NCPU --output-sync=recurse fetch
             make -j$NCPU --output-sync=recurse
             make package
+        else
+            make -j$NCPU --output-sync=recurse tools
         fi
         cd ../../
 
@@ -319,7 +321,7 @@ raspbian-arm:
     script: |
         if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
             echo "Building using prebuilt contribs at $VLC_PREBUILT_CONTRIBS_URL"
-            extras/package/raspberry/build.sh -p -x -a $HOST_ARCH
+            extras/package/raspberry/build.sh -p -c -x -a $HOST_ARCH
         else
             extras/package/raspberry/build.sh -c -x -a $HOST_ARCH
         fi
@@ -370,6 +372,7 @@ raspbian-arm:
         fi
         if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
             echo "Building using prebuilt contribs at $VLC_PREBUILT_CONTRIBS_URL"
+            EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -p"
         else
             EXTRA_BUILD_FLAGS="${EXTRA_BUILD_FLAGS} -c -p"
         fi
@@ -417,7 +420,7 @@ nightly-macos-arm64:
         export PATH="${VLC_PATH}:$PATH"
         mkdir build && cd build
         if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-            ../extras/package/apple/build.sh --sdk=$SDKNAME --arch=$HOST_ARCH \
+            ../extras/package/apple/build.sh --sdk=$SDKNAME --arch=$HOST_ARCH --package-contribs \
                 --with-prebuilt-contribs
         else
             ../extras/package/apple/build.sh --sdk=$SDKNAME --arch=$HOST_ARCH --package-contribs
@@ -484,7 +487,7 @@ wasm32-emscripten-build :
         - source $EMSCRIPTEN_SDK/emsdk_env.sh
         - |
             if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-                ./extras/package/wasm-emscripten/build.sh --with-prebuilt-contribs
+                ./extras/package/wasm-emscripten/build.sh --gen-contrib-archive --with-prebuilt-contribs
             else
                 ./extras/package/wasm-emscripten/build.sh --gen-contrib-archive
             fi


=====================================
extras/package/apple/build.sh
=====================================
@@ -496,15 +496,6 @@ if [ "${VLC_REQUESTED_CORE_COUNT}" != "0" ]; then
     export MAKEFLAGS="${MAKEFLAGS} -j${VLC_REQUESTED_CORE_COUNT}"
 fi
 
-# Validate arguments
-if [ "$VLC_MAKE_PREBUILT_CONTRIBS" -gt "0" ] &&
-   [ "$VLC_USE_PREBUILT_CONTRIBS" -gt "0" ]; then
-    echo >&2 "ERROR: The --package-contribs and --with-prebuilt-contribs options"
-    echo >&2 "       can not be used together."
-    usage
-    exit 1
-fi
-
 # Check for some required tools before proceeding
 check_tool xcrun
 
@@ -600,12 +591,6 @@ echo ""
 ##########################################################
 #                     Contribs build                     #
 ##########################################################
-if [ "$VLC_USE_PREBUILT_CONTRIBS" -gt "0" ]; then
-    echo "Fetching prebuilt contribs"
-else
-    echo "Building contribs for $VLC_HOST_ARCH"
-fi
-
 # Combine settings from config file
 VLC_CONTRIB_OPTIONS=( "${VLC_CONTRIB_OPTIONS_BASE[@]}" )
 
@@ -645,15 +630,19 @@ fi
 $MAKE list
 
 if [ "$VLC_USE_PREBUILT_CONTRIBS" -gt "0" ]; then
+    echo "Fetching prebuilt contribs"
     # Fetch prebuilt contribs
     if [ -z "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-        $MAKE prebuilt || abort_err "Fetching prebuilt contribs failed"
+        $MAKE prebuilt || PREBUILT_FAILED=yes && echo "ERROR: Fetching prebuilt contribs failed" >&2
     else
         $MAKE prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" \
-            || abort_err "Fetching prebuilt contribs from ${VLC_PREBUILT_CONTRIBS_URL} failed"
+             || PREBUILT_FAILED=yes && echo "ERROR: Fetching prebuilt contribs from ${VLC_PREBUILT_CONTRIBS_URL} failed" >&2
     fi
-    $MAKE tools
 else
+    PREBUILT_FAILED=yes
+fi
+if [ -n "$PREBUILT_FAILED" ]; then
+    echo "Building contribs for $VLC_HOST_ARCH"
     # Download source packages
     $MAKE fetch
 
@@ -664,6 +653,8 @@ else
     if [ "$VLC_MAKE_PREBUILT_CONTRIBS" -gt "0" ]; then
         $MAKE package || abort_err "Creating prebuilt contribs package failed"
     fi
+else
+    $MAKE tools
 fi
 
 echo ""


=====================================
extras/package/macosx/build.sh
=====================================
@@ -170,7 +170,18 @@ mkdir -p contrib-$HOST_TRIPLET && cd contrib-$HOST_TRIPLET
 ../bootstrap --build=$BUILD_TRIPLET --host=$HOST_TRIPLET > $out
 
 make list
-if [ "$CONTRIBFROMSOURCE" = "yes" ]; then
+if [ "$CONTRIBFROMSOURCE" != "yes" ]; then
+    if [ ! -e "../$HOST_TRIPLET" ]; then
+        if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
+            make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" || PREBUILT_FAILED=yes
+        else
+            make prebuilt || PREBUILT_FAILED=yes
+        fi
+    fi
+else
+    PREBUILT_FAILED=yes
+fi
+if [ -n "$PREBUILT_FAILED" ]; then
     make fetch
     make -j$JOBS .gettext
     make -j$JOBS -k || make -j1
@@ -178,17 +189,9 @@ if [ "$CONTRIBFROMSOURCE" = "yes" ]; then
     if [ "$PACKAGE" = "yes" ]; then
         make package
     fi
-
 else
-if [ ! -e "../$HOST_TRIPLET" ]; then
-    if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-        make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL"
-    else
-        make prebuilt
-    fi
     make -j$JOBS tools
 fi
-fi
 spopd
 
 


=====================================
extras/package/raspberry/build.sh
=====================================
@@ -121,18 +121,23 @@ export CPPFLAGS="$CPPFLAGS -g -mfpu=neon -isystem=/usr/lib/$TRIPLET -isystem=/op
 export LDFLAGS="$LDFLAGS -L/usr/$TRIPLET/lib -L/opt/vc/lib"
 
 # Rebuild the contribs or use the prebuilt ones
-if [ "$PREBUILT" != "yes" ]; then
+if [ "$PREBUILT" = "yes" ]; then
+    if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
+        make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" || PREBUILT_FAILED=yes
+    else
+        make prebuilt || PREBUILT_FAILED=yes
+    fi
+else
+    PREBUILT_FAILED=yes
+fi
+if [ -n "$PREBUILT_FAILED" ]; then
     make list
     make -j$JOBS --output-sync=recurse fetch
     make -j$JOBS --output-sync=recurse -k || make -j1
     if [ "$PACKAGE" = "yes" ]; then
         make package
     fi
-elif [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-    make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL"
-    make -j$JOBS --output-sync=recurse tools
 else
-    make prebuilt
     make -j$JOBS --output-sync=recurse tools
 fi
 cd ../..


=====================================
extras/package/wasm-emscripten/build.sh
=====================================
@@ -129,15 +129,19 @@ diagnostic "vlc contribs: bootstrap"
             --host=wasm32-unknown-emscripten
 
 diagnostic "vlc contribs: make"
-if [ "$VLC_USE_PREBUILT_CONTRIBS" -eq "0" ]; then
+if [ "$VLC_USE_PREBUILT_CONTRIBS" -ne "0" ]; then
+    diagnostic "vlc contribs: using prebuilt contribs"
+    emmake make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" || PREBUILT_FAILED=yes
+else
+    PREBUILT_FAILED=yes
+fi
+if [ -n "$PREBUILT_FAILED" ]; then
     emmake make
     if [ "$GENERATE_ARCHIVE" -eq "1" ]; then
         diagnostic "vlc contribs: generating package"
         emmake make package
     fi
 else
-    diagnostic "vlc contribs: using prebuilt contribs"
-    emmake make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL"
     emmake make tools
 fi
 


=====================================
extras/package/win32/build.sh
=====================================
@@ -321,18 +321,22 @@ ${VLC_ROOT_PATH}/contrib/bootstrap --host=$TRIPLET --prefix=../$CONTRIB_PREFIX $
 
 # Rebuild the contribs or use the prebuilt ones
 make list
-if [ "$PREBUILT" != "yes" ]; then
+if [ "$PREBUILT" = "yes" ]; then
+    if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
+        make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL" || PREBUILT_FAILED=yes
+    else
+        make prebuilt || PREBUILT_FAILED=yes
+    fi
+else
+    PREBUILT_FAILED=yes
+fi
+if [ -n "$PREBUILT_FAILED" ]; then
     make -j$JOBS fetch
     make -j$JOBS -k || make -j1
     if [ "$PACKAGE" = "yes" ]; then
         make package
     fi
 else
-    if [ -n "$VLC_PREBUILT_CONTRIBS_URL" ]; then
-        make prebuilt PREBUILT_URL="$VLC_PREBUILT_CONTRIBS_URL"
-    else
-        make prebuilt
-    fi
     make -j$JOBS tools
 fi
 cd ../..



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/65b96ee7dcc16c9373adf022aafe6dc67c3db2b4...d6709fa4b6982b21e77c212ce592feef2e6672fe

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/65b96ee7dcc16c9373adf022aafe6dc67c3db2b4...d6709fa4b6982b21e77c212ce592feef2e6672fe
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list