validate-scenario: fix g-i warning in annotation
[platform/upstream/gstreamer.git] / scripts / meson.build
index f5d9106..0554b17 100644 (file)
@@ -1,4 +1,53 @@
-# dist scripts
-if not meson.is_subproject()
-  meson.add_dist_script('dist-translations.py')
+fs = import('fs')
+
+# scripts checks
+release_modules = [
+  'gstreamer',
+  'gst-plugins-base',
+  'gst-plugins-good',
+  'gst-plugins-ugly',
+  'gst-plugins-bad',
+  'gst-libav',
+  'gst-rtsp-server',
+  'gst-editing-services',
+  'gst-devtools',
+  'gst-python',
+  'gstreamer-vaapi',
+  'gst-omx',
+  'gst-docs',
+  'gstreamer-sharp',
+]
+
+# Make sure the files are all identical to avoid divergence
+gen_cl_hash = fs.hash(files('gen-changelog.py'), 'md5')
+
+out_of_sync_list = []
+
+foreach m : release_modules
+  module_gen_cl_hash = fs.hash(f'../subprojects/@m@/scripts/gen-changelog.py', 'md5')
+
+  if module_gen_cl_hash != gen_cl_hash
+    out_of_sync_list += [f'subprojects/@m@/scripts/gen-changelog.py']
+  endif
+endforeach
+
+if out_of_sync_list.length() > 0
+  module_list = ' '.join(release_modules)
+  out_of_sync_msg = '\n          '.join(out_of_sync_list)
+  error('''
+
+    ==============================================================================================================
+
+        The following subproject scripts are out of sync with scripts/gen-changelog.py:
+
+          @0@
+
+        Run
+
+          for m in @1@; do cp scripts/gen-changelog.py subprojects/$m/scripts/gen-changelog.py; done 
+
+        from the top-level git source directory to sync them up.
+
+    ==============================================================================================================
+    '''.format(out_of_sync_msg, module_list))
 endif