diff --git a/lib/build.sh b/lib/build.sh index 12f7a17..5155586 100644 --- a/lib/build.sh +++ b/lib/build.sh @@ -327,6 +327,8 @@ libopus 1.5.2 tar.gz https://github.com/xiph/opus/releases/download/v${ver}/ libdav1d 1.5.1 tar.xz http://downloads.videolan.org/videolan/dav1d/${ver}/dav1d-${ver}.${ext} libx264 latest git https://code.videolan.org/videolan/x264.git libmp3lame 3.100 tar.gz https://pilotfiber.dl.sourceforge.net/project/lame/lame/${ver}/lame-${ver}.${ext} +libvpx 1.15.2 tar.gz https://github.com/webmproject/libvpx/archive/refs/tags/v${ver}.${ext} +libvorbis 1.3.7 tar.xz https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-${ver}.${ext} libwebp 1.6.0 tar.gz https://github.com/webmproject/libwebp/archive/refs/tags/v${ver}.${ext} libpng,libjpeg libjpeg 3.0.3 tar.gz https://github.com/winlibs/libjpeg/archive/refs/tags/libjpeg-turbo-${ver}.${ext} @@ -754,6 +756,12 @@ build_libopus() { sanitize_sysroot_libs libopus || return 1 } +build_libvorbis() { + meta_cmake_build || return 1 + sanitize_sysroot_libs \ + libvorbis libvorbisenc libvorbisfile || return 1 +} + build_libwebp() { if is_android; then replace_line CMakeLists.txt \ @@ -938,6 +946,23 @@ meta_configure_build() { LDFLAGS="${ldflagsBackup}" } +build_libvpx() { + meta_configure_build \ + --disable-examples \ + --disable-tools \ + --disable-docs \ + --disable-unit-tests \ + --disable-decode-perf-tests \ + --disable-encode-perf-tests \ + --enable-vp8 \ + --enable-vp9 \ + --enable-vp9-highbitdepth \ + --enable-better-hw-compatability \ + --enable-webm-io \ + --enable-libyuv || return 1 + sanitize_sysroot_libs libvpx || return 1 +} + build_libx264() { # libx264 breaks with LTO LTO=OFF meta_configure_build \ diff --git a/patches/libvorbis/add-lm-to-pc.patch b/patches/libvorbis/add-lm-to-pc.patch new file mode 100644 index 0000000..baf9a34 --- /dev/null +++ b/patches/libvorbis/add-lm-to-pc.patch @@ -0,0 +1,24 @@ +diff --git a/vorbis.pc.in b/vorbis.pc.in +index f5ca77d..50cad9e 100644 +--- a/vorbis.pc.in ++++ b/vorbis.pc.in +@@ -10,6 +10,6 @@ Description: vorbis is the primary Ogg Vorbis library + Version: @VERSION@ + Requires.private: ogg + Conflicts: +-Libs: -L${libdir} -lvorbis +-Libs.private: @VORBIS_LIBS@ ++Libs: -L${libdir} -lvorbis ++Libs.private: @VORBIS_LIBS@ -lm + Cflags: -I${includedir} +diff --git a/vorbisenc.pc.in b/vorbisenc.pc.in +index a412b7a..4222daf 100644 +--- a/vorbisenc.pc.in ++++ b/vorbisenc.pc.in +@@ -10,5 +10,5 @@ Description: vorbisenc is a library that provides a convenient API for setting u + Version: @VERSION@ + Requires.private: vorbis + Conflicts: +-Libs: -L${libdir} -lvorbisenc ++Libs: -L${libdir} -lvorbisenc -lm + Cflags: -I${includedir} diff --git a/patches/libvpx/ignore-unknown-configure-options.patch b/patches/libvpx/ignore-unknown-configure-options.patch new file mode 100644 index 0000000..3992025 --- /dev/null +++ b/patches/libvpx/ignore-unknown-configure-options.patch @@ -0,0 +1,13 @@ +diff --git a/build/make/configure.sh b/build/make/configure.sh +index cc5bf6c..c229965 100644 +--- a/build/make/configure.sh ++++ b/build/make/configure.sh +@@ -16,8 +16,6 @@ + die_unknown(){ + echo "Unknown option \"$1\"." + echo "See $0 --help for available options." +- clean_temp_files +- exit 1 + } + + die() {