summaryrefslogtreecommitdiffstats
path: root/libcxx/utils/gen_link_script.py
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/utils/gen_link_script.py')
-rwxr-xr-xlibcxx/utils/gen_link_script.py58
1 files changed, 0 insertions, 58 deletions
diff --git a/libcxx/utils/gen_link_script.py b/libcxx/utils/gen_link_script.py
deleted file mode 100755
index eaa752d5ae2..00000000000
--- a/libcxx/utils/gen_link_script.py
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/usr/bin/env python
-#===----------------------------------------------------------------------===##
-#
-# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-# See https://llvm.org/LICENSE.txt for license information.
-# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-#
-#===----------------------------------------------------------------------===##
-
-"""
-Generate a linker script that links libc++ to the proper ABI library.
-An example script for c++abi would look like "INPUT(libc++.so.1 -lc++abi)".
-"""
-
-import argparse
-import os
-import sys
-
-
-def main():
- parser = argparse.ArgumentParser(description=__doc__)
- parser.add_argument("--dryrun", help="Don't write any output",
- action="store_true", default=False)
- parser.add_argument("--rename", action="store_true", default=False,
- help="Rename the output as input so we can replace it")
- parser.add_argument("--input", help="Path to libc++ library", required=True)
- parser.add_argument("--output", help="Path to libc++ linker script",
- required=True)
- parser.add_argument("libraries", nargs="+",
- help="List of libraries libc++ depends on")
- args = parser.parse_args()
-
- # Use the relative path for the libc++ library.
- libcxx = os.path.relpath(args.input, os.path.dirname(args.output))
-
- # Prepare the list of public libraries to link.
- public_libs = ['-l%s' % l for l in args.libraries]
-
- # Generate the linker script contents.
- contents = "INPUT(%s)" % ' '.join([libcxx] + public_libs)
-
- if args.dryrun:
- print("GENERATING SCRIPT: '%s' as file %s" % (contents, args.output))
- return 0
-
- # Remove the existing libc++ symlink if it exists.
- if os.path.islink(args.output):
- os.unlink(args.output)
-
- # Replace it with the linker script.
- with open(args.output, 'w') as f:
- f.write(contents + "\n")
-
- return 0
-
-
-if __name__ == '__main__':
- sys.exit(main())
OpenPOWER on IntegriCloud