mirror of
https://github.com/python/cpython.git
synced 2024-11-25 02:44:06 +08:00
c78462fb94
correctly. So field3.py is a Python program that can. This injects another manual step into the Python release process for Windows; so it goes.
105 lines
2.7 KiB
Plaintext
105 lines
2.7 KiB
Plaintext
// Resource script for Python core DLL.
|
||
// Currently only holds version information.
|
||
//
|
||
#include "winver.h"
|
||
|
||
#define MS_WINDOWS
|
||
#include "modsupport.h"
|
||
#include "patchlevel.h"
|
||
|
||
/* Across releases, change:
|
||
* MS_DLL_ID if the minor version number changes.
|
||
* PYTHON_DLL_NAME ditto.
|
||
* MS_DLL_ID must match PY_VERSION in the Windows install script.
|
||
*/
|
||
#define MS_DLL_ID "2.3"
|
||
|
||
#ifndef PYTHON_DLL_NAME
|
||
#define PYTHON_DLL_NAME "python23.dll"
|
||
#endif
|
||
|
||
/* Nothing below this should need to be changed except for copyright
|
||
* notices, company name, and FIELD3. Unfortunately, all attempts
|
||
* to get the resource compiler to do arithmetic in macros have
|
||
* failed miserably -- it gives syntax errors, ignores operators,
|
||
* or does stuff that's simply bizarre.
|
||
*/
|
||
|
||
|
||
/* This is what we'd like FIELD3 to be:
|
||
*
|
||
* #define FIELD3 (PY_MICRO_VERSION*1000 + PY_RELEASE_LEVEL*10 + PY_RELEASE_SERIAL)
|
||
*
|
||
* but that neither gives an error nor comes anywhere close to working. The
|
||
* following comment and #define are output from PCbuild\field3.py:
|
||
*
|
||
* For 2.3a0,
|
||
* PY_MICRO_VERSION = 0
|
||
* PY_RELEASE_LEVEL = 'alpha' = 0xa
|
||
* PY_RELEASE_SERIAL = 1
|
||
*
|
||
* and 0*1000 + 10*10 + 1 = 101
|
||
*/
|
||
#define FIELD3 101
|
||
|
||
/* e.g., 2.1a2
|
||
* PY_VERSION comes from patchevel.h
|
||
*/
|
||
#define PYTHON_VERSION PY_VERSION "\0"
|
||
|
||
/* 64-bit version number as comma-separated list of 4 16-bit ints */
|
||
#if PY_MICRO_VERSION > 64
|
||
# error "PY_MICRO_VERSION > 64"
|
||
#endif
|
||
#if PY_RELEASE_LEVEL > 99
|
||
# error "PY_RELEASE_LEVEL > 99"
|
||
#endif
|
||
#if PY_RELEASE_SERIAL > 9
|
||
# error "PY_RELEASE_SERIAL > 9"
|
||
#endif
|
||
#define PYVERSION64 PY_MAJOR_VERSION, PY_MINOR_VERSION, FIELD3, PYTHON_API_VERSION
|
||
|
||
// String Tables
|
||
STRINGTABLE DISCARDABLE
|
||
BEGIN
|
||
1000, MS_DLL_ID
|
||
END
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// Version
|
||
//
|
||
|
||
VS_VERSION_INFO VERSIONINFO
|
||
FILEVERSION PYVERSION64
|
||
PRODUCTVERSION PYVERSION64
|
||
FILEFLAGSMASK 0x3fL
|
||
#ifdef _DEBUG
|
||
FILEFLAGS 0x1L
|
||
#else
|
||
FILEFLAGS 0x0L
|
||
#endif
|
||
FILEOS 0x40004L
|
||
FILETYPE 0x1L
|
||
FILESUBTYPE 0x0L
|
||
BEGIN
|
||
BLOCK "StringFileInfo"
|
||
BEGIN
|
||
BLOCK "000004b0"
|
||
BEGIN
|
||
VALUE "CompanyName", "PythonLabs at Zope Corporation\0"
|
||
VALUE "FileDescription", "Python Core\0"
|
||
VALUE "FileVersion", PYTHON_VERSION
|
||
VALUE "InternalName", "Python DLL\0"
|
||
VALUE "LegalCopyright", "Copyright <20> 2001-2002 Python Software Foundation. Copyright <20> 2000 BeOpen.com. Copyright <20> 1995-2001 CNRI. Copyright <20> 1991-1995 SMC.\0"
|
||
VALUE "OriginalFilename", PYTHON_DLL_NAME "\0"
|
||
VALUE "ProductName", "Python\0"
|
||
VALUE "ProductVersion", PYTHON_VERSION
|
||
END
|
||
END
|
||
BLOCK "VarFileInfo"
|
||
BEGIN
|
||
VALUE "Translation", 0x0, 1200
|
||
END
|
||
END
|