From 7e6ac5adfa19bd64e25bfb15a13a440f2390e38f Mon Sep 17 00:00:00 2001 From: BtbN Date: Sun, 3 Mar 2024 23:11:40 +0100 Subject: [PATCH] Add dvdread/nav --- scripts.d/50-dvd/30-libdvdcss.sh | 41 ++++++++++++++++++++++++ scripts.d/50-dvd/40-libdvdread.sh | 53 +++++++++++++++++++++++++++++++ scripts.d/50-dvd/50-libdvdnav.sh | 51 +++++++++++++++++++++++++++++ 3 files changed, 145 insertions(+) create mode 100644 scripts.d/50-dvd/30-libdvdcss.sh create mode 100644 scripts.d/50-dvd/40-libdvdread.sh create mode 100644 scripts.d/50-dvd/50-libdvdnav.sh diff --git a/scripts.d/50-dvd/30-libdvdcss.sh b/scripts.d/50-dvd/30-libdvdcss.sh new file mode 100644 index 000000000..cb9dc7cfd --- /dev/null +++ b/scripts.d/50-dvd/30-libdvdcss.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +SCRIPT_REPO="https://code.videolan.org/videolan/libdvdcss.git" +SCRIPT_COMMIT="d0b6a291c24eda3727ad5c7a14956fc1fc82446d" + +ffbuild_enabled() { + [[ $VARIANT == lgpl* ]] && return -1 + [[ $ADDINS_STR == *4.4* ]] && return -1 + [[ $ADDINS_STR == *5.0* ]] && return -1 + [[ $ADDINS_STR == *5.1* ]] && return -1 + [[ $ADDINS_STR == *6.0* ]] && return -1 + [[ $ADDINS_STR == *6.1* ]] && return -1 + return 0 +} + +ffbuild_dockerbuild() { + autoreconf -i + + local myconf=( + --prefix="$FFBUILD_PREFIX" + --disable-shared + --enable-static + --with-pic + --disable-doc + ) + + if [[ $TARGET == win* || $TARGET == linux* ]]; then + myconf+=( + --host="$FFBUILD_TOOLCHAIN" + ) + else + echo "Unknown target" + return -1 + fi + + export CFLAGS="$CFLAGS -Dprint_error=dvdcss_print_error -Dprint_debug=dvdcss_print_debug" + + ./configure "${myconf[@]}" + make -j$(nproc) + make install +} diff --git a/scripts.d/50-dvd/40-libdvdread.sh b/scripts.d/50-dvd/40-libdvdread.sh new file mode 100644 index 000000000..47373a83c --- /dev/null +++ b/scripts.d/50-dvd/40-libdvdread.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +SCRIPT_REPO="https://code.videolan.org/videolan/libdvdread.git" +SCRIPT_COMMIT="ba2227bb8619724c2bfadcc4d8f25d741a3398ac" + +ffbuild_enabled() { + [[ $VARIANT == lgpl* ]] && return -1 + [[ $ADDINS_STR == *4.4* ]] && return -1 + [[ $ADDINS_STR == *5.0* ]] && return -1 + [[ $ADDINS_STR == *5.1* ]] && return -1 + [[ $ADDINS_STR == *6.0* ]] && return -1 + [[ $ADDINS_STR == *6.1* ]] && return -1 + return 0 +} + +ffbuild_dockerbuild() { + autoreconf -i + + local myconf=( + --prefix="$FFBUILD_PREFIX" + --disable-shared + --enable-static + --with-pic + --disable-apidoc + --with-libdvdcss + ) + + if [[ $TARGET == win* || $TARGET == linux* ]]; then + myconf+=( + --host="$FFBUILD_TOOLCHAIN" + ) + else + echo "Unknown target" + return -1 + fi + + ./configure "${myconf[@]}" + make -j$(nproc) + make install +} + +ffbuild_configure() { + echo --enable-libdvdread +} + +ffbuild_unconfigure() { + [[ $ADDINS_STR == *4.4* ]] && return 0 + [[ $ADDINS_STR == *5.0* ]] && return 0 + [[ $ADDINS_STR == *5.1* ]] && return 0 + [[ $ADDINS_STR == *6.0* ]] && return 0 + [[ $ADDINS_STR == *6.1* ]] && return 0 + echo --disable-libdvdread +} diff --git a/scripts.d/50-dvd/50-libdvdnav.sh b/scripts.d/50-dvd/50-libdvdnav.sh new file mode 100644 index 000000000..4bf85ab8f --- /dev/null +++ b/scripts.d/50-dvd/50-libdvdnav.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +SCRIPT_REPO="https://code.videolan.org/videolan/libdvdnav.git" +SCRIPT_COMMIT="9831fe01488bd0e9d1e3521195da6940cd8415eb" + +ffbuild_enabled() { + [[ $VARIANT == lgpl* ]] && return -1 + [[ $ADDINS_STR == *4.4* ]] && return -1 + [[ $ADDINS_STR == *5.0* ]] && return -1 + [[ $ADDINS_STR == *5.1* ]] && return -1 + [[ $ADDINS_STR == *6.0* ]] && return -1 + [[ $ADDINS_STR == *6.1* ]] && return -1 + return 0 +} + +ffbuild_dockerbuild() { + autoreconf -i + + local myconf=( + --prefix="$FFBUILD_PREFIX" + --disable-shared + --enable-static + --with-pic + ) + + if [[ $TARGET == win* || $TARGET == linux* ]]; then + myconf+=( + --host="$FFBUILD_TOOLCHAIN" + ) + else + echo "Unknown target" + return -1 + fi + + ./configure "${myconf[@]}" + make -j$(nproc) + make install +} + +ffbuild_configure() { + echo --enable-libdvdnav +} + +ffbuild_unconfigure() { + [[ $ADDINS_STR == *4.4* ]] && return 0 + [[ $ADDINS_STR == *5.0* ]] && return 0 + [[ $ADDINS_STR == *5.1* ]] && return 0 + [[ $ADDINS_STR == *6.0* ]] && return 0 + [[ $ADDINS_STR == *6.1* ]] && return 0 + echo --disable-libdvdnav +}