From a58c58148db61107497fbdf7fa98ceee96c99c4d Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Mon, 16 Jan 2017 14:01:01 +0100 Subject: Added license headers --- scripts/licensecheck.py | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100755 scripts/licensecheck.py (limited to 'scripts') diff --git a/scripts/licensecheck.py b/scripts/licensecheck.py new file mode 100755 index 0000000..be6de9a --- /dev/null +++ b/scripts/licensecheck.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 + +# TODO: username argument +# TODO: updating licenses + +import argparse +import datetime + +def getLicense(licenseFile): + with open(licenseFile) as rawlicense: + licensetext = rawlicense.read() + + # fill in name and year + licensetext = licensetext.replace('$AUTHOR$', 'Xian Nox') + licensetext = licensetext.replace('$CURRENTYEAR$', str(datetime.datetime.now().year)) + + return licensetext + +def hasLicense(sourceFile): + with open(sourceFile) as source: + if source.readline().startswith('/** LICENSE **'): + return True + else: + return False + +def fix(sourceFile, licenseText): + with open(sourceFile, 'r') as source: + origData = source.read() + with open(sourceFile, 'w') as source: + source.write(licenseText + origData) + +def main(license, src, verbose=False): + if verbose is True: + print("Using license header {0}".format(license)) + print("Going through {0}".format(src)) + + # read license file + licensetext = getLicense(license) + #print(licensetext) + + # open source file and check for license + for filename in src: + if hasLicense(filename): + print("{0} has license".format(filename)) + else: + fix(filename, licensetext) + print("{0} license added".format(filename)) + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Check source files for license') + parser.add_argument('-l', '--license', required=True) + parser.add_argument('-v', '--verbose', action='store_true') + parser.add_argument('src', nargs='*') + args = parser.parse_args() + + main(args.license, args.src, args.verbose) +else: + print('Do not use this as an import!') + sys.exit(-1) -- cgit v1.2.1