PageRenderTime 16ms CodeModel.GetById 12ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/PC/make_versioninfo.c

http://unladen-swallow.googlecode.com/
C | 38 lines | 18 code | 0 blank | 20 comment | 0 complexity | db485d93aa67de6989325b089086f4c7 MD5 | raw file
 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 */
23int main(int argc, char **argv)
24{
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;
38}