| Thomas Heller | 13dbabe | 2003-10-10 16:57:45 +0000 | [diff] [blame] | 1 | #include <stdio.h> | 
 | 2 | #include "patchlevel.h" | 
 | 3 | /* | 
 | 4 |  * This program prints out an include file containing fields required to build | 
 | 5 |  * the version info resource of pythonxx.dll because the resource compiler | 
 | 6 |  * cannot do the arithmetic. | 
 | 7 |  */ | 
 | 8 | /* | 
 | 9 |  * FIELD3 is the third field of the version number. | 
 | 10 |  * This is what we'd like FIELD3 to be: | 
 | 11 |  * | 
 | 12 |  * #define FIELD3 (PY_MICRO_VERSION*1000 + PY_RELEASE_LEVEL*10 + PY_RELEASE_SERIAL) | 
 | 13 |  * | 
 | 14 |  * but that neither gives an error nor comes anywhere close to working. | 
 | 15 |  * | 
 | 16 |  * For 2.4a0, | 
 | 17 |  * PY_MICRO_VERSION = 0 | 
 | 18 |  * PY_RELEASE_LEVEL = 'alpha' = 0xa | 
 | 19 |  * PY_RELEASE_SERIAL = 0 | 
 | 20 |  * | 
 | 21 |  * gives FIELD3 = 0*1000 + 10*10 + 0 = 100 | 
 | 22 |  */ | 
 | 23 | int main(int argc, char **argv) | 
 | 24 | { | 
| Antoine Pitrou | f95a1b3 | 2010-05-09 15:52:27 +0000 | [diff] [blame] | 25 |     printf("/* This file created by make_versioninfo.exe */\n"); | 
 | 26 |     printf("#define FIELD3 %d\n", | 
 | 27 |         PY_MICRO_VERSION*1000 + PY_RELEASE_LEVEL*10 + PY_RELEASE_SERIAL); | 
 | 28 |     printf("#define MS_DLL_ID \"%d.%d\"\n", | 
 | 29 |            PY_MAJOR_VERSION, PY_MINOR_VERSION); | 
 | 30 |     printf("#ifndef _DEBUG\n"); | 
 | 31 |     printf("#define PYTHON_DLL_NAME \"python%d%d.dll\"\n", | 
 | 32 |            PY_MAJOR_VERSION, PY_MINOR_VERSION); | 
 | 33 |     printf("#else\n"); | 
 | 34 |     printf("#define PYTHON_DLL_NAME \"python%d%d_d.dll\"\n", | 
 | 35 |            PY_MAJOR_VERSION, PY_MINOR_VERSION); | 
 | 36 |     printf("#endif\n"); | 
 | 37 |     return 0; | 
| Thomas Heller | 13dbabe | 2003-10-10 16:57:45 +0000 | [diff] [blame] | 38 | } |