Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 1 | |
Guido van Rossum | 45aecf4 | 2006-03-15 04:58:47 +0000 | [diff] [blame] | 2 | /* Python version identification scheme. |
Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 3 | |
| 4 | When the major or minor version changes, the VERSION variable in |
Matthias Klose | 0f4c16e | 2012-03-14 23:10:15 +0100 | [diff] [blame] | 5 | configure.ac must also be changed. |
Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 6 | |
| 7 | There is also (independent) API version information in modsupport.h. |
| 8 | */ |
| 9 | |
| 10 | /* Values for PY_RELEASE_LEVEL */ |
Serhiy Storchaka | 598ceae | 2017-11-28 17:56:10 +0200 | [diff] [blame] | 11 | #define PY_RELEASE_LEVEL_ALPHA 0xA |
| 12 | #define PY_RELEASE_LEVEL_BETA 0xB |
| 13 | #define PY_RELEASE_LEVEL_GAMMA 0xC /* For release candidates */ |
| 14 | #define PY_RELEASE_LEVEL_FINAL 0xF /* Serial should be 0 here */ |
| 15 | /* Higher for patch releases */ |
Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 16 | |
| 17 | /* Version parsed out into numeric values */ |
Barry Warsaw | bb5cd08 | 2008-04-02 23:33:27 +0000 | [diff] [blame] | 18 | /*--start constants--*/ |
Serhiy Storchaka | 598ceae | 2017-11-28 17:56:10 +0200 | [diff] [blame] | 19 | #define PY_MAJOR_VERSION 3 |
Łukasz Langa | 9ab2fb1 | 2019-06-04 22:12:32 +0200 | [diff] [blame] | 20 | #define PY_MINOR_VERSION 9 |
Serhiy Storchaka | 598ceae | 2017-11-28 17:56:10 +0200 | [diff] [blame] | 21 | #define PY_MICRO_VERSION 0 |
Łukasz Langa | 9ab2fb1 | 2019-06-04 22:12:32 +0200 | [diff] [blame] | 22 | #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA |
| 23 | #define PY_RELEASE_SERIAL 0 |
Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 24 | |
| 25 | /* Version as a string */ |
Łukasz Langa | 9ab2fb1 | 2019-06-04 22:12:32 +0200 | [diff] [blame] | 26 | #define PY_VERSION "3.9.0a0" |
Barry Warsaw | bb5cd08 | 2008-04-02 23:33:27 +0000 | [diff] [blame] | 27 | /*--end constants--*/ |
Guido van Rossum | f1176c4 | 1999-01-03 12:40:24 +0000 | [diff] [blame] | 28 | |
| 29 | /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. |
| 30 | Use this for numeric comparisons, e.g. #if PY_VERSION_HEX >= ... */ |
| 31 | #define PY_VERSION_HEX ((PY_MAJOR_VERSION << 24) | \ |
Serhiy Storchaka | 598ceae | 2017-11-28 17:56:10 +0200 | [diff] [blame] | 32 | (PY_MINOR_VERSION << 16) | \ |
| 33 | (PY_MICRO_VERSION << 8) | \ |
| 34 | (PY_RELEASE_LEVEL << 4) | \ |
| 35 | (PY_RELEASE_SERIAL << 0)) |