diff --git a/buildsystem/build-libvlc.sh b/buildsystem/build-libvlc.sh index 236210b42d7f2461f3bf3f09c71c1a0dfa06b155..d8064a902aed44bbc3a9f82a45a33ae88c9f8110 100755 --- a/buildsystem/build-libvlc.sh +++ b/buildsystem/build-libvlc.sh @@ -13,11 +13,17 @@ AVLC_MAKE_PREBUILT_CONTRIBS=0 # Indicates that prebuit contribs should be # used instead of building the contribs from source AVLC_USE_PREBUILT_CONTRIBS=0 +# Indicates the license of contribs +AVLC_CONTRIB_LICENSE=g while [ $# -gt 0 ]; do case $1 in help|--help) echo "Use -a to set the ARCH" echo "Use --release to build in release mode" + echo "Use --license <l> to build contribs with license l" + echo " g: GPLv3 (default)" + echo " l: LGPLv3 + ad-clauses" + echo " a: LGPLv2 + ad-clauses" exit 1 ;; a|-a) @@ -27,6 +33,10 @@ while [ $# -gt 0 ]; do release|--release) AVLC_RELEASE=1 ;; + --license) + AVLC_CONTRIB_LICENSE=$2 + shift + ;; --package-contribs) AVLC_MAKE_PREBUILT_CONTRIBS=1 ;; @@ -282,7 +292,6 @@ VLC_CONTRIB_ARGS="\ --disable-x265 \ --enable-ad-clauses \ --enable-dvdnav \ - --enable-dvdread \ --enable-fluidlite \ --enable-gme \ --enable-harfbuzz \ @@ -347,14 +356,12 @@ VLC_CONFIGURE_ARGS="\ --enable-chromecast \ --enable-dvbpsi \ --enable-dvdnav \ - --enable-dvdread \ --enable-fluidlite \ --enable-gles2 \ --enable-gme \ --enable-jpeg \ --enable-libass \ --enable-libxml2 \ - --enable-live555 \ --enable-lua \ --enable-matroska \ --enable-mod \ @@ -477,6 +484,23 @@ else VLC_CONTRIB_ARGS="$VLC_CONTRIB_ARGS --disable-gettext" fi +case $AVLC_CONTRIB_LICENSE in + l) + # LGPL v3 + ad-clauses + VLC_CONTRIB_ARGS="$VLC_CONTRIB_ARGS --disable-gpl --enable-ad-clauses" + VLC_CONFIGURE_ARGS="$VLC_CONFIGURE_ARGS --enable-live555" + ;; + a) + # LGPL v2.1 + ad-clauses + VLC_CONTRIB_ARGS="$VLC_CONTRIB_ARGS --disable-gpl --disable-gnuv3 --enable-ad-clauses" + ;; + g|*) + # GPL v3 + VLC_CONFIGURE_ARGS="$VLC_CONFIGURE_ARGS --enable-live555 --enable-dvdread" + ;; +esac + + (cd $VLC_CONTRIB_DIR && ANDROID_ABI=${ANDROID_ABI} ANDROID_API=${ANDROID_API} \ ../bootstrap --host=${TARGET_TUPLE} ${VLC_CONTRIB_ARGS}) avlc_checkfail "contribs: bootstrap failed" diff --git a/buildsystem/compile-libvlc.sh b/buildsystem/compile-libvlc.sh index 799a4e84d30b212ea8a724afa6f8b04928af3b74..60e4fbdb5f9fe14f1b07659cd0f11c642148243d 100755 --- a/buildsystem/compile-libvlc.sh +++ b/buildsystem/compile-libvlc.sh @@ -15,11 +15,17 @@ AVLC_MAKE_PREBUILT_CONTRIBS=0 AVLC_USE_PREBUILT_CONTRIBS=0 # JNI build can be disabled for testing/CI purpose AVLC_BUILD_JNI=1 +# Indicates the license of contribs +AVLC_CONTRIB_LICENSE=g while [ $# -gt 0 ]; do case $1 in help|--help) echo "Use -a to set the ARCH" echo "Use --release to build in release mode" + echo "Use --license <l> to build contribs with license l" + echo " g: GPLv3 (default)" + echo " l: LGPLv3 + ad-clauses" + echo " a: LGPLv2 + ad-clauses" exit 1 ;; a|-a) @@ -30,6 +36,10 @@ while [ $# -gt 0 ]; do AVLC_RELEASE=1 LIBVLC_RELEASE="--release" ;; + --license) + AVLC_CONTRIB_LICENSE=$2 + shift + ;; --package-contribs) AVLC_MAKE_PREBUILT_CONTRIBS=1 LIBVLC_PACKAGE_CONTRIBS="--package-contribs" @@ -265,7 +275,7 @@ avlc_pkgconfig() avlc_build() { -$LIBVLCJNI_SRC_DIR/buildsystem/build-libvlc.sh -a $ANDROID_ABI $LIBVLC_RELEASE $LIBVLC_PACKAGE_CONTRIBS $LIBVLC_PREBUILT_CONTRIBS +$LIBVLCJNI_SRC_DIR/buildsystem/build-libvlc.sh -a $ANDROID_ABI $LIBVLC_RELEASE $LIBVLC_PACKAGE_CONTRIBS $LIBVLC_PREBUILT_CONTRIBS --license $AVLC_CONTRIB_LICENSE if [ "$AVLC_BUILD_JNI" = "1" ]; then $LIBVLCJNI_SRC_DIR/buildsystem/build-libvlcjni.sh -a $ANDROID_ABI $LIBVLC_RELEASE