From 7c69abd9183bf5a4060eff74cd59967e9bee0b09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Sun, 16 Dec 2018 00:56:50 +0000 Subject: [PATCH] meson: build gme plugin --- ext/gme/meson.build | 23 +++++++++++++++++++++++ ext/meson.build | 2 +- meson_options.txt | 1 + 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 ext/gme/meson.build diff --git a/ext/gme/meson.build b/ext/gme/meson.build new file mode 100644 index 0000000000..33c6e1bb22 --- /dev/null +++ b/ext/gme/meson.build @@ -0,0 +1,23 @@ +if get_option('gme').disabled() + subdir_done() +endif + +have_gme = cc.has_header ('gme/gme.h') +if have_gme + gme_dep = cc.find_library('gme', required: get_option('gme')) + have_gme = gme_dep.found() +endif + +if have_gme + cdata.set('HAVE_LIBGME_ACCURACY', cc.has_function('gme_enable_accuracy', dependencies: gme_dep)) + gstgme = library('gstgme', 'gstgme.c', + c_args: gst_plugins_bad_args, + include_directories: [configinc], + dependencies: [gstaudio_dep, gme_dep], + install: true, + install_dir: plugins_install_dir, + ) + pkgconfig.generate(gstgme, install_dir: plugins_pkgconfig_install_dir) +elif get_option('gme').enabled() + error('libgme plugin was enabled but required dependencies not found.') +endif diff --git a/ext/meson.build b/ext/meson.build index e1350b43b2..255e1c8f30 100644 --- a/ext/meson.build +++ b/ext/meson.build @@ -18,7 +18,7 @@ subdir('fdkaac') subdir('flite') subdir('fluidsynth') subdir('gl') -#subdir('gme') +subdir('gme') subdir('gsm') subdir('hls') subdir('iqa') diff --git a/meson_options.txt b/meson_options.txt index 6ac04747f4..1ba732c262 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -99,6 +99,7 @@ option('fdkaac', type : 'feature', value : 'auto', description : 'Fraunhofer AAC option('flite', type : 'feature', value : 'auto', description : 'Flite speech synthesizer source plugin') option('fluidsynth', type : 'feature', value : 'auto', description : 'Fluidsynth MIDI decoder plugin') option('gl', type : 'feature', value : 'auto', description : 'GStreamer OpenGL mixer plugin') +option('gme', type : 'feature', value : 'auto', description : 'libgme gaming console music file decoder plugin') option('gsm', type : 'feature', value : 'auto', description : 'GSM encoder/decoder plugin') option('ipcpipeline', type : 'feature', value : 'auto', description : 'Inter-process communication plugin') option('iqa', type : 'feature', value : 'auto', description : 'Image quality assessment plugin')