mirror of
				https://bitbucket.org/chromiumembedded/cef
				synced 2025-06-05 21:39:12 +02:00 
			
		
		
		
	git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@294 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
		
			
				
	
	
		
			66 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # Copyright (c) 2011 The Chromium Embedded Framework Authors. All rights
 | |
| # reserved. Use of this source code is governed by a BSD-style license that
 | |
| # can be found in the LICENSE file.
 | |
| 
 | |
| from date_util import *
 | |
| from file_util import *
 | |
| from optparse import OptionParser
 | |
| from svn_util import *
 | |
| import sys
 | |
| 
 | |
| # cannot be loaded as a module
 | |
| if __name__ != "__main__":
 | |
|     sys.stderr.write('This file cannot be loaded as a module!')
 | |
|     sys.exit()
 | |
| 
 | |
| 
 | |
| # parse command-line options
 | |
| disc = """
 | |
| This utility creates the version header file.
 | |
| """
 | |
| 
 | |
| parser = OptionParser(description=disc)
 | |
| parser.add_option('--header', dest='header', metavar='FILE',
 | |
|                   help='output version header file [required]')
 | |
| parser.add_option('-q', '--quiet',
 | |
|                   action='store_true', dest='quiet', default=False,
 | |
|                   help='do not output detailed status information')
 | |
| (options, args) = parser.parse_args()
 | |
| 
 | |
| # the header option is required
 | |
| if options.header is None:
 | |
|     parser.print_help(sys.stdout)
 | |
|     sys.exit()
 | |
| 
 | |
| def write_svn_header(file):
 | |
|     """ Creates the header file for the current revision if the revision has
 | |
|         changed or if the file doesn't already exist. """
 | |
|     if path_exists(file):
 | |
|         oldcontents = read_file(file)
 | |
|     else:
 | |
|         oldcontents = ''
 | |
| 
 | |
|     newcontents = '// This file is generated by the make_version_header.py tool.\n'+\
 | |
|                   '#ifndef _VERSION_H\n'+\
 | |
|                   '#define _VERSION_H\n'+\
 | |
|                   '\n'+\
 | |
|                   '#define SVN_REVISION ' + get_revision() + '\n'+\
 | |
|                   '#define COPYRIGHT_YEAR ' + get_year() + '\n'+\
 | |
|                   '\n'+\
 | |
|                   '#define DO_MAKE_STRING(p) #p\n'+\
 | |
|                   '#define MAKE_STRING(p) DO_MAKE_STRING(p)\n'+\
 | |
|                   '\n'+\
 | |
|                   '#endif\n'
 | |
|     if newcontents != oldcontents:
 | |
|         write_file(file, newcontents)
 | |
|         return True
 | |
| 
 | |
|     return False
 | |
| 
 | |
| written = write_svn_header(options.header)
 | |
| if not options.quiet:
 | |
|   if written:
 | |
|     sys.stdout.write('File '+options.header+' updated.\n')
 | |
|   else:
 | |
|     sys.stdout.write('File '+options.header+' is already up to date.\n')
 |