+#!/usr/bin/env python3
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2020 Intel Corporation
+
+# Script to fix flags for static linking in pkgconfig files from meson
+# Should be called from meson build itself
+import os
+import sys
+
+
+def fix_ldflag(f):
+ if not f.startswith('-lrte_'):
+ return f
+ return '-l:lib' + f[2:] + '.a'
+
+
+def fix_libs_private(line):
+ if not line.startswith('Libs.private'):
+ return line
+ ldflags = [fix_ldflag(flag) for flag in line.split()]
+ return ' '.join(ldflags) + '\n'
+
+
+def process_pc_file(filepath):
+ print('Processing', filepath)
+ with open(filepath) as src:
+ lines = src.readlines()
+ with open(filepath, 'w') as dst:
+ dst.writelines([fix_libs_private(line) for line in lines])
+
+
+if 'MESON_BUILD_ROOT' not in os.environ:
+ print('This script must be called from a meson build environment')
+ sys.exit(1)
+for root, dirs, files in os.walk(os.environ['MESON_BUILD_ROOT']):
+ pc_files = [f for f in files if f.endswith('.pc')]
+ for f in pc_files:
+ process_pc_file(os.path.join(root, f))