to be somewhere on your PATH. More recent versions of OpenSSL may\r
need a later version of NASM. If OpenSSL's self tests don't pass,\r
you should first try to update NASM and do a full rebuild of\r
- OpenSSL. get_externals.py also downloads a snapshot of NASM, and the\r
- libeay and ssleay sub-projects use that version of nasm.exe.\r
+ OpenSSL. If you use the PCbuild\get_externals.bat method\r
+ for getting sources, it also downloads a version of NASM which the\r
- ssl build script will add to PATH.\r
++ libeay/ssleay sub-projects use.\r
+\r
+ The libeay/ssleay sub-projects expect your OpenSSL sources to have\r
+ already been configured and be ready to build. If you get your sources\r
+ from svn.python.org as suggested in the "Getting External Sources"\r
+ section below, the OpenSSL source will already be ready to go. If\r
+ you want to build a different version, you will need to run\r
\r
- If you like to use the official sources instead of the files from\r
- python.org's subversion repository, Perl is required to build the\r
- necessary makefiles and assembly files. ActivePerl is available\r
- from\r
+ PCbuild\prepare_ssl.py path\to\openssl-source-dir\r
+\r
+ That script will prepare your OpenSSL sources in the same way that\r
+ those available on svn.python.org have been prepared. Note that\r
+ Perl must be installed and available on your PATH to configure\r
+ OpenSSL. ActivePerl is recommended and is available from\r
http://www.activestate.com/activeperl/\r
- The svn.python.org version contains pre-built makefiles and assembly\r
- files.\r
-\r
- The build process makes sure that no patented algorithms are\r
- included. For now RC5, MDC2 and IDEA are excluded from the build.\r
- You may have to manually remove $(OBJ_D)\i_*.obj from ms\nt.mak if\r
- using official sources; the svn.python.org-hosted version is already\r
- fixed.\r
-\r
- The ssl.vcxproj sub-project simply invokes PCbuild/build_ssl.py,\r
- which locates and builds OpenSSL.\r
-\r
- build_ssl.py attempts to catch the most common errors (such as not\r
- being able to find OpenSSL sources, or not being able to find a Perl\r
- that works with OpenSSL) and give a reasonable error message. If\r
- you have a problem that doesn't seem to be handled correctly (e.g.,\r
- you know you have ActivePerl but we can't find it), please take a\r
- peek at build_ssl.py and suggest patches. Note that build_ssl.py\r
- should be able to be run directly from the command-line.\r
-\r
- The ssl sub-project does not have the ability to clean the OpenSSL\r
- build; if you need to rebuild, you'll have to clean it by hand.\r
+\r
+ The libeay and ssleay sub-projects will build the modules of OpenSSL\r
+ required by _ssl and _hashlib and may need to be manually updated when\r
+ upgrading to a newer version of OpenSSL or when adding new\r
+ functionality to _ssl or _hashlib. They will not clean up their output\r
+ with the normal Clean target; CleanAll should be used instead.\r
_sqlite3\r
Wraps SQLite 3.8.3.1, which is itself built by sqlite3.vcxproj\r
Homepage:\r