Mercurial > cpython-lru_cache-weakref
view Tools/scripts/fixheader.py @ 62398:ea25129b94fe 3.1
Blocked revisions 82071 via svnmerge
........
r82071 | alexander.belopolsky | 2010-06-18 12:57:49 -0400 (Fri, 18 Jun 2010) | 1 line
Added a new line at the end of the file.
........
| author | Alexander Belopolsky <alexander.belopolsky@gmail.com> |
|---|---|
| date | Fri, 18 Jun 2010 16:59:25 +0000 |
| parents | 893a4dc17a91 |
| children | fcfe324663a6 |
line wrap: on
line source
#! /usr/bin/env python # Add some standard cpp magic to a header file import sys def main(): args = sys.argv[1:] for filename in args: process(filename) def process(filename): try: f = open(filename, 'r') except IOError as msg: sys.stderr.write('%s: can\'t open: %s\n' % (filename, str(msg))) return data = f.read() f.close() if data[:2] != '/*': sys.stderr.write('%s does not begin with C comment\n' % filename) return try: f = open(filename, 'w') except IOError as msg: sys.stderr.write('%s: can\'t write: %s\n' % (filename, str(msg))) return sys.stderr.write('Processing %s ...\n' % filename) magic = 'Py_' for c in filename: if ord(c)<=0x80 and c.isalnum(): magic = magic + c.upper() else: magic = magic + '_' sys.stdout = f print('#ifndef', magic) print('#define', magic) print('#ifdef __cplusplus') print('extern "C" {') print('#endif') print() f.write(data) print() print('#ifdef __cplusplus') print('}') print('#endif') print('#endif /*', '!'+magic, '*/') if __name__ == '__main__': main()
