From f034ec3e14b40fc0e07fbdb81d50ef28e7b99161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Mon, 25 Oct 2021 11:37:45 +0100 Subject: [PATCH] meson: require matching GStreamer dep versions for unstable development releases Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 Part-of: --- subprojects/gst-devtools/meson.build | 13 ++++++++++--- subprojects/gst-editing-services/meson.build | 9 ++++++++- subprojects/gst-libav/meson.build | 9 ++++++++- subprojects/gst-plugins-bad/meson.build | 10 ++++++++-- subprojects/gst-plugins-base/meson.build | 8 +++++++- subprojects/gst-plugins-good/meson.build | 10 ++++++++-- subprojects/gst-plugins-ugly/meson.build | 10 ++++++++-- subprojects/gst-rtsp-server/meson.build | 10 ++++++++-- 8 files changed, 65 insertions(+), 14 deletions(-) diff --git a/subprojects/gst-devtools/meson.build b/subprojects/gst-devtools/meson.build index 5711397ebf..ccc79f898e 100644 --- a/subprojects/gst-devtools/meson.build +++ b/subprojects/gst-devtools/meson.build @@ -10,10 +10,12 @@ version_arr = gst_version.split('.') gst_version_major = version_arr[0].to_int() gst_version_minor = version_arr[1].to_int() gst_version_micro = version_arr[2].to_int() -if gst_version_minor.is_even() +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 +if gst_version_is_stable TESTSUITE_VERSION = '@0@.@1@'.format(gst_version_major, gst_version_minor) else - TESTSUITE_VERSION = 'master' + TESTSUITE_VERSION = 'master' # FIXME: main? endif apiversion = '1.0' @@ -27,7 +29,12 @@ osxversion = curversion + 1 prefix = get_option('prefix') glib_req = '>= 2.56.0' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif cc = meson.get_compiler('c') diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build index c84d7a42fa..5ff1234c81 100644 --- a/subprojects/gst-editing-services/meson.build +++ b/subprojects/gst-editing-services/meson.build @@ -16,6 +16,8 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 apiversion = '1.0' soversion = 0 @@ -26,7 +28,12 @@ libversion = '@0@.@1@.0'.format(soversion, curversion) osxversion = curversion + 1 glib_req = '>= 2.56.0' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif cc = meson.get_compiler('c') mathlib = cc.find_library('m', required : false) diff --git a/subprojects/gst-libav/meson.build b/subprojects/gst-libav/meson.build index 8b36c73259..f3082ded0d 100644 --- a/subprojects/gst-libav/meson.build +++ b/subprojects/gst-libav/meson.build @@ -14,6 +14,8 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 api_version = '1.0' libavfilter_dep = dependency('libavfilter', version: '>= 7.16.100', @@ -79,7 +81,12 @@ foreach h : check_headers endif endforeach -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif + gst_dep = dependency('gstreamer-1.0', version : gst_req, fallback : ['gstreamer', 'gst_dep']) gstbase_dep = dependency('gstreamer-base-1.0', version : gst_req, diff --git a/subprojects/gst-plugins-bad/meson.build b/subprojects/gst-plugins-bad/meson.build index 8a83b64603..9cfcf8e7df 100644 --- a/subprojects/gst-plugins-bad/meson.build +++ b/subprojects/gst-plugins-bad/meson.build @@ -14,11 +14,17 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif -gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 glib_req = '>= 2.56.0' orc_req = '>= 0.4.17' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif api_version = '1.0' soversion = 0 diff --git a/subprojects/gst-plugins-base/meson.build b/subprojects/gst-plugins-base/meson.build index 6bc1aa6da1..6ea237adea 100644 --- a/subprojects/gst-plugins-base/meson.build +++ b/subprojects/gst-plugins-base/meson.build @@ -14,6 +14,7 @@ if version_arr.length() == 4 else gst_version_nano = 0 endif +gst_version_is_stable = gst_version_minor.is_even() gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 host_system = host_machine.system() @@ -28,7 +29,12 @@ endif glib_req = '>= 2.56.0' orc_req = '>= 0.4.24' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif api_version = '1.0' soversion = 0 diff --git a/subprojects/gst-plugins-good/meson.build b/subprojects/gst-plugins-good/meson.build index f5390651ed..1111c45be5 100644 --- a/subprojects/gst-plugins-good/meson.build +++ b/subprojects/gst-plugins-good/meson.build @@ -14,13 +14,19 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif -gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 have_cxx = add_languages('cpp', native: false, required: false) glib_req = '>= 2.56.0' orc_req = '>= 0.4.17' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif api_version = '1.0' diff --git a/subprojects/gst-plugins-ugly/meson.build b/subprojects/gst-plugins-ugly/meson.build index c881ad8b50..7228b461ac 100644 --- a/subprojects/gst-plugins-ugly/meson.build +++ b/subprojects/gst-plugins-ugly/meson.build @@ -14,12 +14,18 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif -gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 have_cxx = add_languages('cpp', native: false, required: false) glib_req = '>= 2.56.0' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif api_version = '1.0' diff --git a/subprojects/gst-rtsp-server/meson.build b/subprojects/gst-rtsp-server/meson.build index 4613aa95fa..08255330d1 100644 --- a/subprojects/gst-rtsp-server/meson.build +++ b/subprojects/gst-rtsp-server/meson.build @@ -13,10 +13,16 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif -gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 +gst_version_is_stable = gst_version_minor.is_even() +gst_version_is_dev = gst_version_minor.is_odd() and gst_version_micro < 90 glib_req = '>= 2.56.0' -gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) + +if gst_version_is_stable + gst_req = '>= @0@.@1@.0'.format(gst_version_major, gst_version_minor) +else + gst_req = '>= ' + gst_version +endif api_version = '1.0' soversion = 0