import("//llvm/utils/gn/build/write_cmake_config.gni")
import("//llvm/version.gni")
+action("write_extension_dependencies") {
+ script = "//llvm/utils/gn/secondary/llvm/tools/llvm-config/write_extension_dependencies.py"
+ outputs = [ "$target_gen_dir/ExtensionDependencies.inc" ]
+ args = [
+ "-o",
+ rebase_path(outputs[0], root_build_dir),
+ ]
+}
+
write_cmake_config("BuildVariables.inc") {
input = "BuildVariables.inc.in"
output = "$target_gen_dir/BuildVariables.inc"
deps = [
":BuildVariables.inc",
":LibraryDependencies.inc",
+ ":write_extension_dependencies",
"//llvm/include/llvm/Config:config",
"//llvm/include/llvm/Config:llvm-config",
"//llvm/lib/Support",
--- /dev/null
+#!/usr/bin/env python
+r"""Writes ExtensionDepencencies.inc."""
+
+from __future__ import print_function
+
+import argparse
+import os
+import re
+import sys
+
+
+def main():
+ parser = argparse.ArgumentParser(description=__doc__)
+ parser.add_argument('-o', '--output', required=True,
+ help='output file')
+ args = parser.parse_args()
+
+ source = """\
+#include <array>
+struct ExtensionDescriptor {
+ const char* Name;
+ const char* const RequiredLibraries[1 + 1];
+};
+std::array<ExtensionDescriptor, 0> AvailableExtensions{};
+"""
+ open(args.output, 'w').write(source)
+
+
+if __name__ == '__main__':
+ sys.exit(main())