diff options
Diffstat (limited to 'win32/pc_base.py')
-rw-r--r-- | win32/pc_base.py | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/win32/pc_base.py b/win32/pc_base.py deleted file mode 100644 index f7976e8d..00000000 --- a/win32/pc_base.py +++ /dev/null @@ -1,124 +0,0 @@ -#!/usr/bin/python -# -# Simple utility script to generate the basic info -# needed in a .pc (pkg-config) file, used especially -# for introspection purposes - -# This can be used in various projects where -# there is the need to generate .pc files, -# and is copied from GLib's $(srcroot)/win32 - -# Author: Fan, Chun-wei -# Date: March 10, 2016 - -import os -import sys -import argparse - -class BasePCItems: - def __init__(self): - self.base_replace_items = {} - self.exec_prefix = '' - self.includedir = '' - self.libdir = '' - self.prefix = '' - self.srcdir = os.path.dirname(__file__) - self.top_srcdir = self.srcdir + '\\..' - self.version = '' - - def setup(self, argv, parser=None): - if parser is None: - parser = argparse.ArgumentParser(description='Setup basic .pc file info') - parser.add_argument('--prefix', help='prefix of the installed library', - required=True) - parser.add_argument('--exec-prefix', - help='prefix of the installed programs, \ - if different from the prefix') - parser.add_argument('--includedir', - help='includedir of the installed library, \ - if different from ${prefix}/include') - parser.add_argument('--libdir', - help='libdir of the installed library, \ - if different from ${prefix}/lib') - parser.add_argument('--version', help='Version of the package', - required=True) - args = parser.parse_args() - - self.version = args.version - - # check whether the prefix and exec_prefix are valid - if not os.path.exists(args.prefix): - raise SystemExit('Specified prefix \'%s\' is invalid' % args.prefix) - - # use absolute paths for prefix - self.prefix = os.path.abspath(args.prefix).replace('\\','/') - - # check and setup the exec_prefix - if getattr(args, 'exec_prefix', None) is None: - exec_prefix_use_shorthand = True - self.exec_prefix = '${prefix}' - else: - if args.exec_prefix.startswith('${prefix}'): - exec_prefix_use_shorthand = True - input_exec_prefix = args.prefix + args.exec_prefix[len('${prefix}'):] - else: - exec_prefix_use_shorthand = False - input_exec_prefix = args.exec_prefix - if not os.path.exists(input_exec_prefix): - raise SystemExit('Specified exec_prefix \'%s\' is invalid' % - args.exec_prefix) - if exec_prefix_use_shorthand is True: - self.exec_prefix = args.exec_prefix.replace('\\','/') - else: - self.exec_prefix = os.path.abspath(input_exec_prefix).replace('\\','/') - - # check and setup the includedir - if getattr(args, 'includedir', None) is None: - self.includedir = '${prefix}/include' - else: - if args.includedir.startswith('${prefix}'): - includedir_use_shorthand = True - input_includedir = args.prefix + args.includedir[len('${prefix}'):] - else: - if args.includedir.startswith('${exec_prefix}'): - includedir_use_shorthand = True - input_includedir = input_exec_prefix + args.includedir[len('${exec_prefix}'):] - else: - includedir_use_shorthand = False - input_includedir = args.includedir - if not os.path.exists(input_includedir): - raise SystemExit('Specified includedir \'%s\' is invalid' % - args.includedir) - if includedir_use_shorthand is True: - self.includedir = args.includedir.replace('\\','/') - else: - self.includedir = os.path.abspath(input_includedir).replace('\\','/') - - # check and setup the libdir - if getattr(args, 'libdir', None) is None: - self.libdir = '${prefix}/lib' - else: - if args.libdir.startswith('${prefix}'): - libdir_use_shorthand = True - input_libdir = args.prefix + args.libdir[len('${prefix}'):] - else: - if args.libdir.startswith('${exec_prefix}'): - libdir_use_shorthand = True - input_libdir = input_exec_prefix + args.libdir[len('${exec_prefix}'):] - else: - libdir_use_shorthand = False - input_libdir = args.libdir - if not os.path.exists(input_libdir): - raise SystemExit('Specified libdir \'%s\' is invalid' % - args.libdir) - if libdir_use_shorthand is True: - self.libdir = args.libdir.replace('\\','/') - else: - self.libdir = os.path.abspath(input_libdir).replace('\\','/') - - # setup dictionary for replacing items in *.pc.in - self.base_replace_items.update({'@VERSION@': self.version}) - self.base_replace_items.update({'@prefix@': self.prefix}) - self.base_replace_items.update({'@exec_prefix@': self.exec_prefix}) - self.base_replace_items.update({'@libdir@': self.libdir}) - self.base_replace_items.update({'@includedir@': self.includedir}) |