Mercurial > cpython-lru_cache-weakref
diff Python/import.c @ 70631:d31d141f11b1
some horrible preprocessing tricks to automatically update the tag
| author | Benjamin Peterson <benjamin@python.org> |
|---|---|
| date | Fri, 03 Jun 2011 17:50:16 -0500 |
| parents | 1e73b90e4d52 |
| children | 9a6d9ac6fb2e |
line wrap: on
line diff
--- a/Python/import.c Fri Jun 03 14:38:24 2011 -0500 +++ b/Python/import.c Fri Jun 03 17:50:16 2011 -0500 @@ -110,8 +110,12 @@ TAG and PYC_TAG_UNICODE must change for each major Python release. The magic number will take care of any bytecode changes that occur during development. */ +#define QUOTE(arg) #arg +#define STRIFY(name) QUOTE(name) +#define MAJOR STRIFY(PY_MAJOR_VERSION) +#define MINOR STRIFY(PY_MINOR_VERSION) #define MAGIC (3180 | ((long)'\r'<<16) | ((long)'\n'<<24)) -#define TAG "cpython-32" +#define TAG "cpython-" MAJOR MINOR; #define CACHEDIR "__pycache__" static const Py_UNICODE CACHEDIR_UNICODE[] = { '_', '_', 'p', 'y', 'c', 'a', 'c', 'h', 'e', '_', '_', '\0'}; @@ -119,7 +123,11 @@ static long pyc_magic = MAGIC; static const char *pyc_tag = TAG; static const Py_UNICODE PYC_TAG_UNICODE[] = { - 'c', 'p', 'y', 't', 'h', 'o', 'n', '-', '3', '2', '\0'}; + 'c', 'p', 'y', 't', 'h', 'o', 'n', '-', PY_MAJOR_VERSION + 48, PY_MINOR_VERSION + 48, '\0'}; +#undef QUOTE +#undef STRIFY +#undef MAJOR +#undef MINOR /* See _PyImport_FixupExtensionObject() below */ static PyObject *extensions = NULL;
