aboutsummaryrefslogtreecommitdiffstats
path: root/build/scripts
diff options
context:
space:
mode:
authorpg <pg@yandex-team.com>2025-02-11 19:28:55 +0300
committerpg <pg@yandex-team.com>2025-02-11 19:46:13 +0300
commit9c9d92fa09369c85d2acc077d598f79a841b7153 (patch)
tree673e8528d7345b711709466a3ca44c76720c11c7 /build/scripts
parent0403e4ce9782569601e2cb7d688c2e778665c5c1 (diff)
downloadydb-9c9d92fa09369c85d2acc077d598f79a841b7153.tar.gz
Add ability to postprocess static libraries during the build.
commit_hash:792b08e2ac7c31269c1d0f21ab6ec2e062d67643
Diffstat (limited to 'build/scripts')
-rw-r--r--build/scripts/link_lib.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/build/scripts/link_lib.py b/build/scripts/link_lib.py
index 388f82f870..b792540fd0 100644
--- a/build/scripts/link_lib.py
+++ b/build/scripts/link_lib.py
@@ -1,12 +1,25 @@
+from __future__ import print_function
+
import sys
import subprocess
import tempfile
import os
import shutil
+import argparse
class Opts(object):
def __init__(self, args):
+ kvs = args.index('--')
+ kve = args.index('--', kvs + 1)
+ kv = args[kvs + 1:kve]
+ args = args[:kvs] + args[kve + 1:]
+
+ parser = argparse.ArgumentParser()
+ parser.add_argument('--plugin')
+ kvargs = parser.parse_args(kv)
+
+ self.ar_plugin = kvargs.plugin
self.archiver = args[0]
self.arch_type = args[1]
self.llvm_ar_format = args[2]
@@ -165,3 +178,6 @@ if __name__ == "__main__":
if opts.enable_openssl3 != 'no-openssl3' and os.path.basename(opts.output) in ['libcontrib-libs-openssl.a', 'liblibs-openssl-crypto.a']:
rename_syms(os.path.dirname(opts.archiver) + '/', opts.output)
+
+ if opts.ar_plugin:
+ subprocess.check_call([sys.executable, opts.ar_plugin, opts.output, '--'] + sys.argv[1:])