New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't mention Perl in Windows build output #65340
Comments
Attached is a patch that prevents mentioning Perl in the Windows build output, thereby avoiding giving the indication that Perl is necessary to build Python. To make this work, the patch converts PCbuild/build_ssl.py into PCbuild/prepare_ssl.py and removes the actual building of OpenSSL from that script. Instead, prepare_ssl.py takes a directory name as an argument (which is assumed to be a directory containing OpenSSL sources) and does what it has always done to prepare the way for building, except now it does it for both platforms. PCbuild/build_ssl.bat is also updated to match. Meanwhile, the actual building is moved entirely within ssl.vcxproj, which now runs a short script that copies buildinf*.h and opensslconf*.h into place and calls nmake with the appropriate makefile (x64 builds also run the appropriate nasm command first). Since this is all done inside ssl.vcxproj, the dependency on python.vcxproj is dropped, allowing SSL to be built in parallel with pythoncore, tcl, tk, and tix when using the '/m' msbuild command line switch. As a part of converting build_ssl.py into prepare_ssl.py, the comments at the top of the file have been updated. Also, some dead code has been trimmed: the "-a" flag has been completely unused for a long time, and debug builds have been disabled as well; all code relating to either feature has been removed. I've tested this by successfully preparing (once) and building openssl-1.0.1f in both 32 and 64 bit builds. |
Here's a slightly revised patch, including documentation changes in PCbuild/readme.txt. Also, this patch doesn't rename build_ssl.(bat|py), so Rietveld should accept the patch as reviewable. I think the renames should actually happen, though. |
Can you please explain what this has to do with dropping the mentioning of Perl? |
Sure; currently, the "ssl" project emits messages from build_ssl.py concerning the finding of Perl. On a machine with a usable Perl, it's just " Found a working perl at 'C:\Perl\bin\perl.exe'" On machines without Perl, its the more worrisome """ The last line of that message (and the fact that the ssl-related projects build ok anyway, if using source from svn.python.org) ought to make it clear that Perl really isn't necessary, but removing the messages entirely removes the possibility of misunderstanding. The messages are still useful if you actually need the preparation part of build_ssl.py, though, so I don't want to just remove them from the script. Divorcing the building from the preparation has other benefits as well, which IMO would stand on their own, but that wasn't my main goal here. As for the brief discussion of Perl that remains in readme.txt, I think it should stay as long as we include a mention of how to use non-svn.python.org sources, just so that anyone needing to do a non-standard build will have some warning. On the other hand, readme.txt could just give the script invocation, and leave it up to the script to recommend Perl if it's not available. |
I'm at least +0 on this, not because I've ever been that bothered by the Perl messages, but because it tidies things up a little smooths the way very slightly for people trying to build Python on Windows and I'm always ready to support that. |
+1 for this. The current messages are confusing, and I think I've already installed Perl because of them. |
The patch looks fine to me, including the renaming. Please apply. |
New changeset 9ef99fafaadd by Zachary Ware in branch 'default': |
Committed. Thanks for the review, Martin, and for the votes of confidence Tim and Antoine! |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: