classification
Title: Open pyexpat compilation, Make shows error(missing separator)
Type: compile error Stage: resolved
Components: Extension Modules Versions: Python 3.7
process
Status: closed Resolution: duplicate
Dependencies: Superseder: Makefile is not correctly generated when compiling pyextat with DXML_POOR_ENTROPY=1
View: 35184
Assigned To: Nosy List: ahurst, kbengine, ned.deily
Priority: normal Keywords: patch

Created on 2018-12-26 03:59 by kbengine, last changed 2019-06-11 04:19 by benjamin.peterson. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 12900 ahurst, 2019-04-22 02:55
Messages (4)
msg332529 - (view) Author: kbengine (kbengine) Date: 2018-12-26 03:59
Python3.7.2
My compilation steps:
1. Modify Modules/Setup.dist, open pyexpat
pyexpat expat/xmlparse.c expat/xmlrole.c expat/xmltok.c pyexpat.c -I$(srcdir)/Modules/expat -DHAVE_EXPAT_CONFIG_H -DXML_POOR_ENTROPY=1 -DUSE_PYEXPAT_CAPI

2. ./configure
3. make
Makefile:272: *** missing separator. Stop.


----------------------------------------------------
msg334804 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2019-02-04 00:20
Sorry about the delay in responding.  I am unable to reproduce the problem but I may be missing some important details.  What platform were you attempting to build on?  What was the exact path to the source directory?  And, if you can still reproduce, could you attach a copy of the generated Makefile and the output from running it?
msg340634 - (view) Author: Aaron Hurst (ahurst) * Date: 2019-04-22 02:55
This is the same issue as https://bugs.python.org/issue35184

I can reproduce this issue by uncommenting the pyexpat line in Setup.dist and compiling.

The issue is with -DXML_POOR_ENTROPY=1.  The equals character causes the line to be incorrectly interpreted as a macro definition by makesetup.  This results in an invalid Makefile output.

I've submitted a PR, but a quick work-around is to remove the "=1".  It is not necessary.
msg345178 - (view) Author: Aaron Hurst (ahurst) * Date: 2019-06-11 03:53
I believe this bug can be closed now that the following have landed:

New changeset 408a2ef1aceff1f4270c44552fa39ef93d9283e3 by Benjamin Peterson (aaronpaulhurst) in branch 'master':
closes bpo-35184: Fix XML_POOR_ENTROPY option that breaks makesetup parsing of pyexpat line in Setup. (GH-13064)
https://github.com/python/cpython/commit/408a2ef1aceff1f4270c44552fa39ef93d9283e3

New changeset 5b94b857f590db80aab69c31f88dd2a4978f8329 by Miss Islington (bot) in branch '3.8':
closes bpo-35184: Fix XML_POOR_ENTROPY option that breaks makesetup parsing of pyexpat line in Setup. (GH-13064)
https://github.com/python/cpython/commit/5b94b857f590db80aab69c31f88dd2a4978f8329

New changeset 30fd7a476bbd6bb8096c1349698463fa8a3bca18 by Miss Islington (bot) in branch '3.7':
closes bpo-35184: Fix XML_POOR_ENTROPY option that breaks makesetup parsing of pyexpat line in Setup. (GH-13064)
https://github.com/python/cpython/commit/30fd7a476bbd6bb8096c1349698463fa8a3bca18
History
Date User Action Args
2019-06-11 04:19:20benjamin.petersonsetstatus: open -> closed
superseder: Makefile is not correctly generated when compiling pyextat with DXML_POOR_ENTROPY=1
resolution: duplicate
stage: patch review -> resolved
2019-06-11 03:53:45ahurstsetmessages: + msg345178
2019-04-22 02:55:38ahurstsetnosy: + ahurst
messages: + msg340634
pull_requests: + pull_request12830

keywords: + patch
stage: patch review
2019-02-04 00:20:20ned.deilysetnosy: + ned.deily
messages: + msg334804
2018-12-26 03:59:43kbenginecreate