[vlc-commits] [Git][videolan/vlc][master] 4 commits: tools: bootstrap: regroup the minimum versions to the top
Steve Lhomme (@robUx4)
gitlab at videolan.org
Thu Oct 23 14:23:58 UTC 2025
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
9f72482f by Steve Lhomme at 2025-10-23T13:20:21+00:00
tools: bootstrap: regroup the minimum versions to the top
- - - - -
6ecda79f by Steve Lhomme at 2025-10-23T13:20:21+00:00
tools: bootstrap: allow requiring a higher version of a tool
For example we may require a newer version of CMake for some targets (iOS, Android)
when the other targets can use a much older version.
This allow keeping required values low while allowing upgrades in some cases.
- - - - -
f6499e6d by Steve Lhomme at 2025-10-23T13:20:21+00:00
package/apple: require CMake 3.28 for vision OS
Otherwise use whatever default value is.
It the default value becomes higher than 3.28 that value will be used.
- - - - -
05ceba2f by Steve Lhomme at 2025-10-23T13:20:21+00:00
tools: lower the CMake requirement to 3.21
Only visionOS requires 3.28.
- - - - -
2 changed files:
- extras/package/apple/build.sh
- extras/tools/bootstrap
Changes:
=====================================
extras/package/apple/build.sh
=====================================
@@ -621,8 +621,13 @@ APPL_LIBTOOL=$(xcrun -f libtool) \
echo "Building needed tools (if missing)"
+TOOLS_BOOTSTRAP=
+if [ "$VLC_HOST_OS" = "xros" ]; then
+ TOOLS_BOOTSTRAP="$TOOLS_BOOTSTRAP --min-cmake=3.28.0"
+fi
+
cd "$VLC_SRC_DIR/extras/tools" || abort_err "Failed cd to tools dir"
-./bootstrap || abort_err "Bootstrapping tools failed"
+./bootstrap $TOOLS_BOOTSTRAP || abort_err "Bootstrapping tools failed"
$MAKE || abort_err "Building tools failed"
echo ""
=====================================
extras/tools/bootstrap
=====================================
@@ -15,9 +15,25 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+MIN_AUTOCONF=2.69
+MIN_AUTOMAKE=1.15
+MIN_BISON=3.0.0
+MIN_CMAKE=3.21.0
+MIN_CONFIGGUESS=2025.07.10
+MIN_LIBTOOL=2.4
+MIN_M4=1.4.16
+MIN_MESON=1.2.3
+MIN_NASM=2.14
+
export LC_ALL=
FOUND=
+usage()
+{
+ echo "Usage: $0 [--min-NAME=VERSION]"
+ echo " --min-NAME=VERSION set NAME tool minimum version to VERSION"
+}
+
check_version() {
gotver=$2
gotmajor=`echo $gotver|cut -d. -f1`
@@ -57,6 +73,45 @@ check_version_majmin() {
}
+while test -n "$1"
+do
+ case "$1" in
+ --min-*=*)
+ NAMEVER="${1#--min-}"
+ TOOLNAME=$(echo "$NAMEVER" | cut -d "=" -f 1 | tr '[:lower:]' '[:upper:]')
+ TVERSION=$(echo "$NAMEVER" | cut -d "=" -f 2)
+ eval "MIN_ORIGINAL_=\$MIN_${TOOLNAME}"
+
+ gotmajor=$(echo $TVERSION|cut -d. -f1)
+ gotminor=$(echo $TVERSION|cut -d. -f2)
+ gotmicro=$(echo $TVERSION|cut -d. -f3|tr -c -d '[:digit:]')
+ [ -z "$gotmicro" ] && gotmicro=0
+ needmajor=$(echo $MIN_ORIGINAL_|cut -d. -f1)
+ needminor=$(echo $MIN_ORIGINAL_|cut -d. -f2)
+ needmicro=$(echo $MIN_ORIGINAL_|cut -d. -f3)
+ [ -z "$needmicro" ] && needmicro=0
+
+ if [ "$needmajor" -lt "$gotmajor" ] ||
+ [ "$needmajor" -eq "$gotmajor" -a "$needminor" -lt "$gotminor" ] ||
+ [ "$needmajor" -eq "$gotmajor" -a "$needminor" -eq "$gotminor" -a "$needmicro" -lt "$gotmicro" ];
+ then
+ # echo "using $TVERSION for $TOOLNAME"
+ eval "MIN_$TOOLNAME=${TVERSION}"
+ fi
+ ;;
+ --help|-h)
+ usage
+ exit 0
+ ;;
+ *)
+ echo "Unrecognized options $1"
+ usage
+ exit 1
+ ;;
+ esac
+ shift
+done
+
check_tar() {
if ! tar PcJ /dev/null >/dev/null 2>&1 && ! tar PcJf /dev/null /dev/null 2>&1
then
@@ -150,23 +205,23 @@ check_config() {
# done
}
-check_config 2024.01.01
-check autoconf 2.69
-check automake 1.15
-check m4 1.4.16
-check libtool 2.4
+check_config $MIN_CONFIGGUESS
+check autoconf $MIN_AUTOCONF
+check automake $MIN_AUTOMAKE
+check m4 $MIN_M4
+check libtool $MIN_LIBTOOL
check pkg-config
-check cmake 3.28.0
+check cmake $MIN_CMAKE
check_tar
check_sed
check ant
check xz
-check bison 3.0.0
+check bison $MIN_BISON
check flex
-check_nasm 2.14
+check_nasm $MIN_NASM
check gettext
check help2man
-check meson 1.2.3
+check meson $MIN_MESON
check_ninja
check gperf
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/ef1d401dd84c70da1bea3edf7e9da571bc7f8586...05ceba2f37b945f51472ee5254b7f7a4f6a02a73
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/ef1d401dd84c70da1bea3edf7e9da571bc7f8586...05ceba2f37b945f51472ee5254b7f7a4f6a02a73
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