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
Set up nasm from external.bat #61917
Comments
It would be nice for Tools\buildbot\external.bat to set a copy of nasm up to use. Is there a reason this is not done? |
Could you elaborate on what you mean to be done? All I've ever had to do was run the nasm installer and add the install location to PATH. |
What I'd like is for external to set up all the dependencies needed to build python and run the test suite. Yes, nasm can be downloaded and set up separately, but that's true of all of the libraries that external.bat downloads. |
I agree it would be nice, but I'm not sure how easy or practical it would be to implement, particularly making sure that NASM is on the PATH. And besides, at some point, we have to draw the line between what we can reasonably do for a user and what we can reasonably expect a user to do for themselves. That line falls at minimum after installation of Visual C++ 2010, which would be nearly impossible to properly install from a batch script, and is currently also after installation of NASM and Perl, which are both optional anyway--you can build Python without NASM, you'll just have build errors and won't have SSL support. I think that's a reasonable place to keep the line: short of trying to install external programs for the user. I think it would be good to have a nice error/warning message in build.bat if NASM (or MSVC++, for that matter) can't be found, possibly with a URL pointing to where to look for an installer. Something along the lines of: """ if %ERRORLEVEL% == 1 ( Does that come anywhere close to scratching your itch? |
I think a message as suggested in msg187571 would be more than adequate. |
Practically this is very easy to do, and I'm more than willing to author detection into the new PCbuild files. Having nasm mirrored on svn.python.org (or anywhere on a PSF host) would be real nice though. I don't particularly like making the build system rely on potentially unreliable external sites. Not sure what the legal ramifications here are though... |
NASM seems BSD-licensed, so it shouldn't be a legal problem. |
Ok, I've imported nasm-2.11.06 to: http://svn.python.org/projects/external/nasm-2.11.06 I'll work on a patch for default and see what (if anything) will need to change in the openssl checkout. |
Fairly simple patch for default. |
I can't say anything about the patch, but thank you for automating this! One less manual step :-) |
New changeset 28d18fdc52c4 by Zachary Ware in branch '2.7': New changeset f7ed3e058fca by Zachary Ware in branch '3.4': New changeset ef15b51d59fb by Zachary Ware in branch 'default': |
The patches for 2.7 and 3.4 were more trivial than for default, and I was pretty confident in the patch for default, so I went ahead and committed. I did switch around which end of PATH our copy of NASM was added to, to make it easier for someone to override which NASM was used. Thanks for the suggestion John, and thanks for the support 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: