diff --git a/android/build.py b/android/build.py index 2b658cc45..b584647f9 100755 --- a/android/build.py +++ b/android/build.py @@ -32,9 +32,6 @@ from build.toolchain import AndroidNdkToolchain from build.libs import * thirdparty_libs = [ libmpdclient, - libogg, - opus, - flac, libid3tag, libmodplug, wildmidi, diff --git a/meson.build b/meson.build index d5a084c5f..d6ebd77cf 100644 --- a/meson.build +++ b/meson.build @@ -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 diff --git a/python/build/libs.py b/python/build/libs.py index 891c7f9a9..f840ef1d8 100644 --- a/python/build/libs.py +++ b/python/build/libs.py @@ -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'), diff --git a/subprojects/.gitignore b/subprojects/.gitignore index 4baf86ff4..9f9db2a85 100644 --- a/subprojects/.gitignore +++ b/subprojects/.gitignore @@ -2,10 +2,13 @@ /curl-*/ /expat-*/ +/flac-*/ /fmt-*/ /googletest-*/ /libmicrohttpd* /libnpupnp-*/ +/libogg-*/ /liburing-*/ /libvorbis-*/ +/opus-*/ /sqlite-*/ diff --git a/subprojects/flac.wrap b/subprojects/flac.wrap new file mode 100644 index 000000000..ee3647912 --- /dev/null +++ b/subprojects/flac.wrap @@ -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 diff --git a/subprojects/ogg.wrap b/subprojects/ogg.wrap new file mode 100644 index 000000000..e7f23ebf1 --- /dev/null +++ b/subprojects/ogg.wrap @@ -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 diff --git a/subprojects/opus.wrap b/subprojects/opus.wrap new file mode 100644 index 000000000..357643b19 --- /dev/null +++ b/subprojects/opus.wrap @@ -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 diff --git a/win32/build.py b/win32/build.py index 69a97c2e8..8dd91fe70 100755 --- a/win32/build.py +++ b/win32/build.py @@ -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,