chore: add error handling and cc-opt injection to build scripts

This commit is contained in:
2026-06-09 22:45:32 +03:30
parent 058d835f07
commit 256b21e25b
2 changed files with 56 additions and 8 deletions

View File

@@ -68,17 +68,39 @@ def rewrite_module_path(arg, nginx_src):
return arg
def rewrite_configure_args(args, nginx_src):
if not nginx_src:
def add_extra_cc_opt(args, extra_cc_opt):
if not extra_cc_opt:
return args
return [rewrite_module_path(arg, nginx_src) for arg in args]
rewritten = []
found = False
for arg in args:
if arg.startswith("--with-cc-opt="):
found = True
rewritten.append(arg + " " + extra_cc_opt)
else:
rewritten.append(arg)
if not found:
rewritten.append("--with-cc-opt=" + extra_cc_opt)
return rewritten
def rewrite_configure_args(args, nginx_src, extra_cc_opt):
if not nginx_src:
return add_extra_cc_opt(args, extra_cc_opt)
rewritten = [rewrite_module_path(arg, nginx_src) for arg in args]
return add_extra_cc_opt(rewritten, extra_cc_opt)
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--nginx-bin", default="nginx")
parser.add_argument("--nginx-src", default="")
parser.add_argument("--extra-cc-opt", default="")
parser.add_argument("--json", action="store_true")
parser.add_argument("--configure-line", action="store_true")
parser.add_argument("--modules-path", action="store_true")
@@ -86,7 +108,11 @@ def main():
output = nginx_v_output(args.nginx_bin)
version, configure_line, configure_args = parse_nginx_v(output)
rewritten_args = rewrite_configure_args(configure_args, args.nginx_src)
rewritten_args = rewrite_configure_args(
configure_args,
args.nginx_src,
args.extra_cc_opt,
)
modules_path = option_value(configure_args, "--modules-path")
if not modules_path: