These files are a subset of the python-2.7.2.tgz distribution from python.org. Changed files from PyMod-2.7.2 have been copied into the corresponding directories of this tree, replacing the original files in the distribution. Signed-off-by: daryl.mcdaniel@intel.com git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13197 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			114 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #! /usr/bin/env python
 | |
| 
 | |
| """(Ostensibly) fix copyright notices in files.
 | |
| 
 | |
| Actually, this sript will simply replace a block of text in a file from one
 | |
| string to another.  It will only do this once though, i.e. not globally
 | |
| throughout the file.  It writes a backup file and then does an os.rename()
 | |
| dance for atomicity.
 | |
| 
 | |
| Usage: fixnotices.py [options] [filenames]
 | |
| Options:
 | |
|     -h / --help
 | |
|         Print this message and exit
 | |
| 
 | |
|     --oldnotice=file
 | |
|         Use the notice in the file as the old (to be replaced) string, instead
 | |
|         of the hard coded value in the script.
 | |
| 
 | |
|     --newnotice=file
 | |
|         Use the notice in the file as the new (replacement) string, instead of
 | |
|         the hard coded value in the script.
 | |
| 
 | |
|     --dry-run
 | |
|         Don't actually make the changes, but print out the list of files that
 | |
|         would change.  When used with -v, a status will be printed for every
 | |
|         file.
 | |
| 
 | |
|     -v / --verbose
 | |
|         Print a message for every file looked at, indicating whether the file
 | |
|         is changed or not.
 | |
| """
 | |
| 
 | |
| OLD_NOTICE = """/***********************************************************
 | |
| Copyright (c) 2000, BeOpen.com.
 | |
| Copyright (c) 1995-2000, Corporation for National Research Initiatives.
 | |
| Copyright (c) 1990-1995, Stichting Mathematisch Centrum.
 | |
| All rights reserved.
 | |
| 
 | |
| See the file "Misc/COPYRIGHT" for information on usage and
 | |
| redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
 | |
| ******************************************************************/
 | |
| """
 | |
| import os
 | |
| import sys
 | |
| import getopt
 | |
| 
 | |
| NEW_NOTICE = ""
 | |
| DRYRUN = 0
 | |
| VERBOSE = 0
 | |
| 
 | |
| 
 | |
| def usage(code, msg=''):
 | |
|     print __doc__ % globals()
 | |
|     if msg:
 | |
|         print msg
 | |
|     sys.exit(code)
 | |
| 
 | |
| 
 | |
| def main():
 | |
|     global DRYRUN, OLD_NOTICE, NEW_NOTICE, VERBOSE
 | |
|     try:
 | |
|         opts, args = getopt.getopt(sys.argv[1:], 'hv',
 | |
|                                    ['help', 'oldnotice=', 'newnotice=',
 | |
|                                     'dry-run', 'verbose'])
 | |
|     except getopt.error, msg:
 | |
|         usage(1, msg)
 | |
| 
 | |
|     for opt, arg in opts:
 | |
|         if opt in ('-h', '--help'):
 | |
|             usage(0)
 | |
|         elif opt in ('-v', '--verbose'):
 | |
|             VERBOSE = 1
 | |
|         elif opt == '--dry-run':
 | |
|             DRYRUN = 1
 | |
|         elif opt == '--oldnotice':
 | |
|             fp = open(arg)
 | |
|             OLD_NOTICE = fp.read()
 | |
|             fp.close()
 | |
|         elif opt == '--newnotice':
 | |
|             fp = open(arg)
 | |
|             NEW_NOTICE = fp.read()
 | |
|             fp.close()
 | |
| 
 | |
|     for arg in args:
 | |
|         process(arg)
 | |
| 
 | |
| 
 | |
| def process(file):
 | |
|     f = open(file)
 | |
|     data = f.read()
 | |
|     f.close()
 | |
|     i = data.find(OLD_NOTICE)
 | |
|     if i < 0:
 | |
|         if VERBOSE:
 | |
|             print 'no change:', file
 | |
|         return
 | |
|     elif DRYRUN or VERBOSE:
 | |
|         print '   change:', file
 | |
|     if DRYRUN:
 | |
|         # Don't actually change the file
 | |
|         return
 | |
|     data = data[:i] + NEW_NOTICE + data[i+len(OLD_NOTICE):]
 | |
|     new = file + ".new"
 | |
|     backup = file + ".bak"
 | |
|     f = open(new, "w")
 | |
|     f.write(data)
 | |
|     f.close()
 | |
|     os.rename(file, backup)
 | |
|     os.rename(new, file)
 | |
| 
 | |
| 
 | |
| if __name__ == '__main__':
 | |
|     main()
 |