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 ahurst
Recipients ahurst, mgmacias95, ned.deily
Date 2019-05-02.19:07:27
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1556824047.66.0.68620047865.issue35184@roundup.psfhosted.org>
In-reply-to
Content
Hi Ned,

Thanks for testing this.  I also observe that macOS compiles "without error"... but it's still broken... and silently.

This is because the pyexpat line isn't being turned into the expected set of source compilation rules, but it is instead being dumped into the variable definition section.  Why is it being interpreted by makesetup as a variable definition?  With the equals character, it matches this pattern:

# Lines can also have the form
#
# <name> = <value>
#
# which defines a Make variable definition inserted into Makefile.in

But it is intended to match this pattern:

# Lines have the following structure:
#
# <module> ... [<sourcefile> ...] [<cpparg> ...] [<library> ...]

For reference, here is the corresponding rule in makesetup:

> *=*)    DEFS="$line$NL$DEFS"; continue;;

I fully support tweaking this pattern to better differentiate when "=" means a variable definition and when "=" is part of a compilation flag, but given that pyexpat is the only such case, my one-line fix makes things consistent again.  For now.
History
Date User Action Args
2019-05-02 19:07:27ahurstsetrecipients: + ahurst, ned.deily, mgmacias95
2019-05-02 19:07:27ahurstsetmessageid: <1556824047.66.0.68620047865.issue35184@roundup.psfhosted.org>
2019-05-02 19:07:27ahurstlinkissue35184 messages
2019-05-02 19:07:27ahurstcreate