subprojects: add ogg, flac, opus

This commit is contained in:
Max Kellermann 2023-12-11 10:02:59 +01:00
parent 578c94081f
commit dcf3cf4216
8 changed files with 52 additions and 38 deletions

@ -32,9 +32,6 @@ from build.toolchain import AndroidNdkToolchain
from build.libs import *
thirdparty_libs = [
libmpdclient,
libogg,
opus,
flac,
libid3tag,
libmodplug,
wildmidi,

@ -14,11 +14,14 @@ project(
# linked statically into the MPD executable.
'curl:default_library=static',
'expat:default_library=static',
'flac:default_library=static',
'fmt:default_library=static',
'gtest:default_library=static',
'libmicrohttpd:default_library=static',
'libnpupnp:default_library=static',
'liburing:default_library=static',
'ogg:default_library=static',
'opus:default_library=static',
'sqlite3:default_library=static',
'vorbis:default_library=static',
@ -27,12 +30,18 @@ project(
'curl:warning_level=0',
'expat:werror=false',
'expat:warning_level=0',
'flac:werror=false',
'flac:warning_level=0',
'fmt:warning_level=0',
'gtest:warning_level=0',
'libmicrohttpd:warning_level=0',
'libnpupnp:warning_level=0',
'liburing:warning_level=0',
'sqlite3:warning_level=0',
'oggiopus:werror=false',
'ogg:warning_level=0',
'opus:werror=false',
'opus:warning_level=0',
'vorbis:warning_level=0',
# Disable subprojects features we don't need

@ -17,10 +17,10 @@ libmpdclient = MesonProject(
'lib/libmpdclient.a',
)
libogg = CmakeProject(
'http://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.xz',
'c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705',
'lib/libogg.a',
libsamplerate = CmakeProject(
'https://github.com/libsndfile/libsamplerate/releases/download/0.2.2/libsamplerate-0.2.2.tar.xz',
'97c010fc25156c33cddc272c1935afab',
'lib/libsamplerate.a',
[
'-DBUILD_SHARED_LIBS=OFF',
'-DINSTALL_DOCS=OFF',
@ -28,34 +28,6 @@ libogg = CmakeProject(
],
)
opus = AutotoolsProject(
'https://downloads.xiph.org/releases/opus/opus-1.4.tar.gz',
'c9b32b4253be5ae63d1ff16eea06b94b5f0f2951b7a02aceef58e3a3ce49c51f',
'lib/libopus.a',
[
'--disable-shared', '--enable-static',
'--disable-doc',
'--disable-extra-programs',
],
# suppress "visibility default" from opus_defines.h
cppflags='-DOPUS_EXPORT=',
)
flac = AutotoolsProject(
'http://downloads.xiph.org/releases/flac/flac-1.4.3.tar.xz',
'6c58e69cd22348f441b861092b825e591d0b822e106de6eb0ee4d05d27205b70',
'lib/libFLAC.a',
[
'--disable-shared', '--enable-static',
'--disable-stack-smash-protection',
'--disable-xmms-plugin', '--disable-cpplibs',
'--disable-doxygen-docs',
'--disable-programs',
],
subdirs=['include', 'src/libFLAC'],
)
zlib = ZlibProject(
('http://zlib.net/zlib-1.3.1.tar.xz',
'https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.xz'),

@ -2,10 +2,13 @@
/curl-*/
/expat-*/
/flac-*/
/fmt-*/
/googletest-*/
/libmicrohttpd*
/libnpupnp-*/
/libogg-*/
/liburing-*/
/libvorbis-*/
/opus-*/
/sqlite-*/

13
subprojects/flac.wrap Normal file

@ -0,0 +1,13 @@
[wrap-file]
directory = flac-1.4.3
source_url = https://github.com/xiph/flac/releases/download/1.4.3/flac-1.4.3.tar.xz
source_filename = flac-1.4.3.tar.xz
source_hash = 6c58e69cd22348f441b861092b825e591d0b822e106de6eb0ee4d05d27205b70
patch_filename = flac_1.4.3-2_patch.zip
patch_url = https://wrapdb.mesonbuild.com/v2/flac_1.4.3-2/get_patch
patch_hash = 3eace1bd0769d3e0d4ff099960160766a5185d391c8f583293b087a1f96c2a9c
source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/flac_1.4.3-2/flac-1.4.3.tar.xz
wrapdb_version = 1.4.3-2
[provide]
flac = flac_dep

13
subprojects/ogg.wrap Normal file

@ -0,0 +1,13 @@
[wrap-file]
directory = libogg-1.3.5
source_url = https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.xz
source_filename = libogg-1.3.5.tar.xz
source_hash = c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705
patch_filename = ogg_1.3.5-6_patch.zip
patch_url = https://wrapdb.mesonbuild.com/v2/ogg_1.3.5-6/get_patch
patch_hash = 8be6dcd5f93bbf9c0b9c8ec1fa29810226a60f846383074ca05b313a248e78b2
source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/ogg_1.3.5-6/libogg-1.3.5.tar.xz
wrapdb_version = 1.3.5-6
[provide]
ogg = libogg_dep

10
subprojects/opus.wrap Normal file

@ -0,0 +1,10 @@
[wrap-file]
directory = opus-1.5.2
source_url = https://downloads.xiph.org/releases/opus/opus-1.5.2.tar.gz
source_filename = opus-1.5.2.tar.gz
source_hash = 65c1d2f78b9f2fb20082c38cbe47c951ad5839345876e46941612ee87f9a7ce1
source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/opus_1.5.2-1/opus-1.5.2.tar.gz
wrapdb_version = 1.5.2-1
[provide]
opus = opus_dep

@ -39,9 +39,6 @@ root_path = os.path.join(arch_path, 'root')
from build.libs import *
thirdparty_libs = [
libmpdclient,
libogg,
opus,
flac,
zlib,
libid3tag,
liblame,