This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author christian.heimes
Recipients Alex.Willmer, christian.heimes, gvanrossum
Date 2022-01-05.18:27:14
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1641407234.76.0.448260785945.issue46271@roundup.psfhosted.org>
In-reply-to
Content
The Makefile rules for frozen header files have a dependency on $(FREEZE_MODULE_BOOTSTRAP_DEPS) or $(FREEZE_MODULE_DEPS). For normal builds this dependency will trigger a refresh of the frozen header files when the byte code magic changes:

  FREEZE_MODULE_BOOTSTRAP_DEPS=Programs/_freeze_module
  FREEZE_MODULE_DEPS=_bootstrap_python

Both binaries depend on object files which indirectly have a dependency on all core header files $(PYTHON_HEADERS).

However cross builds use an external Python binary. Neither $(FREEZE_MODULE_BOOTSTRAP_DEPS) nor $(FREEZE_MODULE_DEPS) add an indirect dependency on $(PYTHON_HEADERS). The frozen header files are not rebuilt when any header file like opcode.h is modified. This causes hard to debug issues like https://bugs.python.org/issue46009#msg409770

Fix: all frozen header files should also depend on $(PYTHON_HEADERS)
History
Date User Action Args
2022-01-05 18:27:14christian.heimessetrecipients: + christian.heimes, gvanrossum, Alex.Willmer
2022-01-05 18:27:14christian.heimessetmessageid: <1641407234.76.0.448260785945.issue46271@roundup.psfhosted.org>
2022-01-05 18:27:14christian.heimeslinkissue46271 messages
2022-01-05 18:27:14christian.heimescreate