annotate PC/python33gen.py @ 74006:88198b93ff2f

Issue #13560: Add PyUnicode_EncodeLocale() * Use PyUnicode_EncodeLocale() in time.strftime() if wcsftime() is not available * Document my last changes in Misc/NEWS
author Victor Stinner <victor.stinner@haypocalc.com>
date Sat, 17 Dec 2011 04:13:41 +0100
parents b39270c6b8d1
children 3f14119e4af7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
68136
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
1 # Generate python33stub.def out of python3.def
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
2 # The regular import library cannot be used,
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
3 # since it doesn't provide the right symbols for
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
4 # data forwarding
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
5 out = open("python33stub.def", "w")
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
6 out.write('LIBRARY "python33"\n')
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
7 out.write('EXPORTS\n')
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
8
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
9 inp = open("python3.def")
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
10 inp.readline()
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
11 line = inp.readline()
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
12 assert line.strip()=='EXPORTS'
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
13
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
14 for line in inp:
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
15 # SYM1=python33.SYM2[ DATA]
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
16 head, tail = line.split('.')
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
17 if 'DATA' in tail:
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
18 symbol, tail = tail.split(' ')
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
19 else:
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
20 symbol = tail.strip()
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
21 out.write(symbol+'\n')
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
22
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
23 inp.close()
eb5ed3da6862 More eol-style's
Antoine Pitrou <solipsis@pitrou.net>
parents: 68071
diff changeset
24 out.close()