[Python-Dev] C ABI and #ifndef Py_LIMITED_API

2015-01-13 Thread Ethan Furman
In the CPython source code I see

#ifndef Py_LIMITED_API

Is there a section in the docs that explains the purpose?  If not, can someone 
give me the cliff notes version?

Many thanks.

--
~Ethan~



signature.asc
Description: OpenPGP digital signature
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] New Windows installer for Python 3.5

2015-01-13 Thread Martin v. Löwis
Am 04.01.15 00:34, schrieb Steve Dower:
 so I'm keen to hear whatever feedback people have. 

One issue that I always wanted to address is patch releases. There are
two aspects I dislike about the current implementation

a) an upgrade install first uninstalls the previous installation
(removing all files), and then reinstalls all new files. In many patch
releases, a lot of .py files remain unmodified, so it should
speed up the upgrade if they would not need to be replaced.
b) Installer supports patch files (.msp); I always wanted to provide
them in the hope that this would reduce the download size. IIUC, it
would require stable component IDs for components to be upgraded, which
I could not manage to provide.

So, do you have any plans on dealing with a or b?

Other issues:
- what MSI version do you require, and what is the minimum
  Windows version supporting that MSI version?
- Since you are going to install into Program Files by default,
  I think the library should be precompiled by default - there
  is little chance that a regular user can save .pyc files when
  running Python. It might be possible to even include the pyc
  files in the distribution, if we can arrange to somehow support
  relative paths in co_filename.

Regards,
Martin

___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] New Windows installer for Python 3.5

2015-01-13 Thread Steve Dower
Martin v. Löwis wrote:
 Am 04.01.15 00:34, schrieb Steve Dower:
 so I'm keen to hear whatever feedback people have.
 
 One issue that I always wanted to address is patch releases. There are two
 aspects I dislike about the current implementation
 
 a) an upgrade install first uninstalls the previous installation (removing all
files), and then reinstalls all new files. In many patch releases, a lot 
 of
.py files remain unmodified, so it should speed up the upgrade if they 
 would not
need to be replaced.
 b) Installer supports patch files (.msp); I always wanted to provide them in 
 the
hope that this would reduce the download size. IIUC, it would require 
 stable
component IDs for components to be upgraded, which I could not manage to
provide.
 
 So, do you have any plans on dealing with a or b?

So the stable component IDs is dealt with - WiX will auto-generate them based 
on the relative install path of each file and a user-provided ID (to 
distinguish between the 32-bit and 64-bit installs, for example. This ID is 
currently generated from the hash of a user provided URI, which is also used to 
generate upgrade codes and a few fixed component IDs).

Installing patches is something we can defer until 3.5.1, but I am interested 
in looking into it. My main concern is that it may hurt fresh installs (for 
example, 3.5.5 is actually 3.5.0.msi+.1.msp+.2.msp+.3.msp+.4.msp+.5.msp) and 
I'm not sure that true slipstreams are supported/recommended because it will 
affect future patches (different product codes, IIRC). So fresh installs of 
later versions may have a significantly increased download size.

Because of the split into multiple MSIs, it's also possible to independently 
version some parts of it. I suspect this will only apply to the py.exe 
launcher, but if that is unchanged between 3.5.0 and 3.5.1 then we can leave 
its version at 3.5.0 and it won't be redownloaded/installed. Not a huge saving, 
but it's a possibility. I expect most MSIs will change in some way between 
versions, so an MSP is the only good way to improve upgrades (the main benefit 
of the MSI split here is we will always install the latest 32-bit launcher, and 
if you install 3.5 32-bit and 64-bit and eventually 3.6 32-bit and 64-bit 
you'll only have one launcher installed).

Another possible problem is that MSI uses file version information to determine 
whether to update files. .py files don't have version information, so MSI to 
MSI updates are probably always going to replace everything - another reason 
why MSPs are the only good choice here.

I'll chat to some of the guys who work on the Visual Studio installer, since it 
uses the same technology and is far more complex than Python's one. They may 
have some suggestions about how to approach this.

 Other issues:
 - what MSI version do you require, and what is the minimum
   Windows version supporting that MSI version?

I need to double-check the support still, but the aim is to support back to 
Windows Vista, so I think that's Windows Installer 3.0. Of more concern is the 
installer EXE, which is going to require a minimum level C runtime that may not 
be available before we've installed...

 - Since you are going to install into Program Files by default,
   I think the library should be precompiled by default - there
   is little chance that a regular user can save .pyc files when
   running Python. It might be possible to even include the pyc
   files in the distribution, if we can arrange to somehow support
   relative paths in co_filename.

Agreed. The library will be precompiled by default if you choose the All Users 
button on the front page, and you can control this independently through the 
customize option (to precompile Just for Me or install without precompiling).

 Regards,
 Martin

Cheers,
Steve
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Mark Lawrence

On 13/01/2015 22:04, Victor Stinner wrote:


+* Type: PCbuild\win32\python_d.exe PCbuild\prepare_ssl.py
externals\openssl-1.0.1j



See also http://bugs.python.org/issue23212 Update Windows and OS X 
installer copies of OpenSSL to 1.0.1k


--
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.

Mark Lawrence

___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Victor Stinner
2015-01-13 23:18 GMT+01:00 Steve Dower steve.do...@microsoft.com:
 Technically, Python 3.5 requires Visual Studio 2015

For me, it's *very* difficult to find how to install Visual Studio.
There are many different websites and web pages which mention Visual
Studio with a lot of versions and flavors (Express, Community,
Ultimate, etc.).

Visual Studio 2015 was not released yet :-/

My VM has only a disk of 40 GB. Only 12 GB are free. I already have VS
2008 Express and VS 2010 Express installed. I understood that
Ultimate includes a *lot* of things, not only a C compiler.

I found a free Visual Studio which is in fact Visual Studio 2013
Community and I read that it's not free.

I sent an email to Brian Curtin to ask to renew my MSDN account. He
didn't reply yet.

Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Brian Curtin
On Tue, Jan 13, 2015 at 4:36 PM, Victor Stinner
victor.stin...@gmail.com wrote:
 2015-01-13 23:18 GMT+01:00 Steve Dower steve.do...@microsoft.com:
 Technically, Python 3.5 requires Visual Studio 2015

 For me, it's *very* difficult to find how to install Visual Studio.
 There are many different websites and web pages which mention Visual
 Studio with a lot of versions and flavors (Express, Community,
 Ultimate, etc.).

 Visual Studio 2015 was not released yet :-/

 My VM has only a disk of 40 GB. Only 12 GB are free. I already have VS
 2008 Express and VS 2010 Express installed. I understood that
 Ultimate includes a *lot* of things, not only a C compiler.

 I found a free Visual Studio which is in fact Visual Studio 2013
 Community and I read that it's not free.

 I sent an email to Brian Curtin to ask to renew my MSDN account. He
 didn't reply yet.

I saw that and will send it on, but it's still going to take some time
to process - usually a week or so.

In the meantime, the first result searching for Visual Studio 2015
came up with 
http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx,
which seems to give you VS2015. I haven't tried to run it since I'm
not on Windows at the moment, but it looks correct.
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Victor Stinner
2015-01-13 23:42 GMT+01:00 Brian Curtin br...@python.org:
 In the meantime, the first result searching for Visual Studio 2015
 came up with 
 http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx,
 which seems to give you VS2015. I haven't tried to run it since I'm
 not on Windows at the moment, but it looks correct.

I only see the Ultime flavor which contains a lot of things that I
don't need. It says that it requires 20 GB of disk, I don't have
enough free disk space (12 GB or something like that).

Is there a lighter flavor available?

If VS 2010 still works, I prefer to keep it right now.

Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread M.-A. Lemburg
On 13.01.2015 23:42, Brian Curtin wrote:
 On Tue, Jan 13, 2015 at 4:36 PM, Victor Stinner
 victor.stin...@gmail.com wrote:
 2015-01-13 23:18 GMT+01:00 Steve Dower steve.do...@microsoft.com:
 Technically, Python 3.5 requires Visual Studio 2015

 For me, it's *very* difficult to find how to install Visual Studio.
 There are many different websites and web pages which mention Visual
 Studio with a lot of versions and flavors (Express, Community,
 Ultimate, etc.).

 Visual Studio 2015 was not released yet :-/

 My VM has only a disk of 40 GB. Only 12 GB are free. I already have VS
 2008 Express and VS 2010 Express installed. I understood that
 Ultimate includes a *lot* of things, not only a C compiler.

 I found a free Visual Studio which is in fact Visual Studio 2013
 Community and I read that it's not free.

 I sent an email to Brian Curtin to ask to renew my MSDN account. He
 didn't reply yet.
 
 I saw that and will send it on, but it's still going to take some time
 to process - usually a week or so.
 
 In the meantime, the first result searching for Visual Studio 2015
 came up with 
 http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx,
 which seems to give you VS2015. I haven't tried to run it since I'm
 not on Windows at the moment, but it looks correct.

Just a note of caution: for older preview releases of VS the
only way to get back to a clean system was to reinstall
Windows.

I don't know whether this will be different with VS 2015,
but if you care for your VM, you should probably create
a snapshot before installing VS 2015 preview to make it
easy to revert back, e.g. to install the final VS 2015
version.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jan 13 2015)
 Python Projects, Coaching and Consulting ...  http://www.egenix.com/
 mxODBC Plone/Zope Database Adapter ...   http://zope.egenix.com/
 mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/

2015-01-09: Released eGenix pyOpenSSL 0.13.7 ...  http://egenix.com/go68
2015-01-20: Python Meeting Duesseldorf ...http://egenix.com/go69

: Try our mxODBC.Connect Python Database Interface for free ! ::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
   Registered at Amtsgericht Duesseldorf: HRB 46611
   http://www.egenix.com/company/contact/
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Victor Stinner
2015-01-13 23:46 GMT+01:00 M.-A. Lemburg m...@egenix.com:
 Just a note of caution: for older preview releases of VS the
 only way to get back to a clean system was to reinstall
 Windows.

Does it mean that it's not possible to have VS 2008 and VS 2015
installed at the same time?

VS 2008 is required to build Python 2.7.

Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Steve Dower
Victor Stinner wrote:
 2015-01-13 23:18 GMT+01:00 Steve Dower steve.do...@microsoft.com:
 Technically, Python 3.5 requires Visual Studio 2015
 
 For me, it's *very* difficult to find how to install Visual Studio.
 There are many different websites and web pages which mention Visual Studio 
 with
 a lot of versions and flavors (Express, Community, Ultimate, etc.).

http://www.visualstudio.com/ is the only website to look at, and it may 
redirect you to somewhere on microsoft.com. Anywhere else is sketchy.

 Visual Studio 2015 was not released yet :-/

Yes, the timing is a little bit awkward, which is why I'm keen to make sure VS 
2010 keeps working for now.

 My VM has only a disk of 40 GB. Only 12 GB are free. I already have VS
 2008 Express and VS 2010 Express installed. I understood that Ultimate
 includes a *lot* of things, not only a C compiler.

I appreciate this, and I'm constantly trying to get a version released that is 
just the compiler and nothing else. Unfortunately, I'm one lone low-level 
engineer, and releasing a different package like this is a high-level decision 
that I have no control over. Because VS 2015 is in preview, the only available 
version is Ultimate, but when the RC is released I'd expect to be able to 
choose the more specific versions.

 I found a free Visual Studio which is in fact Visual Studio 2013 Community 
 and
 I read that it's not free.

Community Edition is certainly free (as in $0 - if you want to get ideological 
about free then you'll make it very hard for yourself to use any software 
produced by a business). The only requirement is that you log in with a 
Microsoft (a.k.a Live.com/Hotmail) account. It's a dumb requirement, but again, 
this is a high-level decision that I get no say in.

 I sent an email to Brian Curtin to ask to renew my MSDN account. He didn't 
 reply
 yet.

Give him a chance, I'm sure he's just busy :)

 Victor

Cheers,
Steve
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Victor Stinner
2015-01-13 23:15 GMT+01:00 Zachary Ware zachary.ware+py...@gmail.com:
 The first line of the section you linked to is The readme included in
 the solution has more details, especially on what additional software
 is required to build which parts of Python., and 'readme' is a link
 to the readme on h.p.o. :)

Ok, I didn't read the full section. But we should show the readme link
in bold or maybe in a seealso section. Right now, it's easy to miss
this important link.

 Quick Start Guide
 -

 1.  Install Microsoft Visual Studio 2015, any edition.
 2.  Install Subversion, and make sure 'svn.exe' is on your PATH.
 3.  Run build.bat -e to build Python in 32-bit Release configuration.

Oh wow, it's much simpler that my procedure :-) It worked for me, in a
few minutes I got a working import ssl. Thanks. I'm now able to test
my asyncio patch on Windows ;-)
http://bugs.python.org/issue22560

(With this patch, it will be possible to use SSL with the proactor
(IOCP) event loop which is more efficient and supports more defaults
than the default selector event loop.)

Note: build.bat is in the PCbuild directory, and the command doesn't
need to be executed in the Visual Studio/Windows SDK shell. It works
in the classical cmd.exe shell.

Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Zachary Ware
On Tue, Jan 13, 2015 at 4:04 PM, Victor Stinner
victor.stin...@gmail.com wrote:
 Hi,

 To compile Python on Windows, there are a few information in the
 Developer Guide:
 https://docs.python.org/devguide/setup.html#windows-compiling

 Python 3.5 now requires Visual Studio 2010 *SP1*, or newer Visual Studio:
 http://bugs.python.org/issue22919#msg233637

 I found PCbuild\readme.txt which is not mentionned in the devguide :-/
 https://hg.python.org/cpython/file/56f717235c45/PCbuild/readme.txt
 (at least not on the Windows section of the setup page)

The first line of the section you linked to is The readme included in
the solution has more details, especially on what additional software
is required to build which parts of Python., and 'readme' is a link
to the readme on h.p.o. :)

 I found some clues to build OpenSSL to be able to build the Python ssl
 module, but I still have issues.

 Is there a more complete documentation?

The readme *should* be fairly comprehensive as I rewrote it last year,
but it may still be lacking since I wrote it after doing regular
builds for a year or two.  In particular, the Quick Start guide at the
very beginning of the readme should be enough to get you going.


Quick Start Guide
-

1.  Install Microsoft Visual Studio 2015, any edition.
2.  Install Subversion, and make sure 'svn.exe' is on your PATH.
3.  Run build.bat -e to build Python in 32-bit Release configuration.
4.  (Optional, but recommended) Run the test suite with rt.bat -q.


That should be enough to build Python, OpenSSL, Tcl/Tk/Tix, and all
other external projects.  One thing that might be a gotcha there, if
you're using a Command Prompt window that you opened before installing
SVN, you'll need to either adjust PATH manually or open a new Command
Prompt to get the PATH changes.

 I found how to install svn.exe, perl.exe and nasm.exe, but not how to
 install nmake.exe. I don't know the command to build OpenSSL.

Perl is not necessary if you're using sources from svn.python.org
(which build.bat -e will do).  You also no longer need to install
NASM.  nmake.exe is part of Visual Studio (or the Windows SDK,
whichever).

 I don't care of building OpenSSL, my goal is only to build the Python
 ssl module. Is there a way to install a development version of OpenSSL
 (.lib files if I remember correctly) from an installer/binary?

 My draft notes:

 +Compile CPython on Windows
 +==
 +
 +To build the Python ssl extension:
 +
 +Need:
 +
 +* Visual Studio 2010 SP1 or newer
 +* CPython source code (default branch: 3.5)
 +* perl binary: ActivePerl
 +* svn binary, ex: SilkSVN
 +* nasm and nmake binaries: compile NASM (install the binary doesn't
 install nmake)
 +
 +Read PCbuild/readme.txt.
 +
 +* Build Python (in debug mode)
 +* Type: PCbuild\get_externals.bat
 +* Type: PCbuild\win32\python_d.exe PCbuild\prepare_ssl.py
 externals\openssl-1.0.1j

You don't need to use prepare_ssl.py if you use get_externals.bat.
The 'ssl' section of the readme should cover that (if it can be
clarified, please point out the problems to me!).

-- 
Zach
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


[Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Victor Stinner
Hi,

To compile Python on Windows, there are a few information in the
Developer Guide:
https://docs.python.org/devguide/setup.html#windows-compiling

Python 3.5 now requires Visual Studio 2010 *SP1*, or newer Visual Studio:
http://bugs.python.org/issue22919#msg233637

I found PCbuild\readme.txt which is not mentionned in the devguide :-/
https://hg.python.org/cpython/file/56f717235c45/PCbuild/readme.txt
(at least not on the Windows section of the setup page)

I found some clues to build OpenSSL to be able to build the Python ssl
module, but I still have issues.

Is there a more complete documentation?

I found how to install svn.exe, perl.exe and nasm.exe, but not how to
install nmake.exe. I don't know the command to build OpenSSL.

I don't care of building OpenSSL, my goal is only to build the Python
ssl module. Is there a way to install a development version of OpenSSL
(.lib files if I remember correctly) from an installer/binary?

My draft notes:

+Compile CPython on Windows
+==
+
+To build the Python ssl extension:
+
+Need:
+
+* Visual Studio 2010 SP1 or newer
+* CPython source code (default branch: 3.5)
+* perl binary: ActivePerl
+* svn binary, ex: SilkSVN
+* nasm and nmake binaries: compile NASM (install the binary doesn't
install nmake)
+
+Read PCbuild/readme.txt.
+
+* Build Python (in debug mode)
+* Type: PCbuild\get_externals.bat
+* Type: PCbuild\win32\python_d.exe PCbuild\prepare_ssl.py
externals\openssl-1.0.1j

Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread M.-A. Lemburg
On 13.01.2015 23:04, Victor Stinner wrote:
 Hi,
 
 To compile Python on Windows, there are a few information in the
 Developer Guide:
 https://docs.python.org/devguide/setup.html#windows-compiling
 
 Python 3.5 now requires Visual Studio 2010 *SP1*, or newer Visual Studio:
 http://bugs.python.org/issue22919#msg233637
 
 I found PCbuild\readme.txt which is not mentionned in the devguide :-/
 https://hg.python.org/cpython/file/56f717235c45/PCbuild/readme.txt
 (at least not on the Windows section of the setup page)
 
 I found some clues to build OpenSSL to be able to build the Python ssl
 module, but I still have issues.
 
 Is there a more complete documentation?
 
 I found how to install svn.exe, perl.exe and nasm.exe, but not how to
 install nmake.exe. I don't know the command to build OpenSSL.
 
 I don't care of building OpenSSL, my goal is only to build the Python
 ssl module. Is there a way to install a development version of OpenSSL
 (.lib files if I remember correctly) from an installer/binary?

If you just need the compiled OpenSSL DLLs and .libs, you
can use the ones we ship with the source package of egenix-pyopenssl:

http://www.egenix.com/products/python/pyOpenSSL/#Download

The files are in openssl-win32 / openssl-win64.

Those dirs also have batch files which we use to build the
OpenSSL libs on Windows.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jan 13 2015)
 Python Projects, Coaching and Consulting ...  http://www.egenix.com/
 mxODBC Plone/Zope Database Adapter ...   http://zope.egenix.com/
 mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/

2015-01-09: Released eGenix pyOpenSSL 0.13.7 ...  http://egenix.com/go68
2015-01-20: Python Meeting Duesseldorf ...http://egenix.com/go69

: Try our mxODBC.Connect Python Database Interface for free ! ::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
   Registered at Amtsgericht Duesseldorf: HRB 46611
   http://www.egenix.com/company/contact/
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Brian Curtin
On Tue, Jan 13, 2015 at 4:04 PM, Victor Stinner
victor.stin...@gmail.com wrote:
 Hi,

 To compile Python on Windows, there are a few information in the
 Developer Guide:
 https://docs.python.org/devguide/setup.html#windows-compiling

 Python 3.5 now requires Visual Studio 2010 *SP1*, or newer Visual Studio:
 http://bugs.python.org/issue22919#msg233637

 I found PCbuild\readme.txt which is not mentionned in the devguide :-/
 https://hg.python.org/cpython/file/56f717235c45/PCbuild/readme.txt
 (at least not on the Windows section of the setup page)

 I found some clues to build OpenSSL to be able to build the Python ssl
 module, but I still have issues.

 Is there a more complete documentation?

 I found how to install svn.exe, perl.exe and nasm.exe, but not how to
 install nmake.exe. I don't know the command to build OpenSSL.

For nmake, are you running this in a regular Command Prompt or in the
Visual Studio Command Prompt? The latter sets the right environment to
point you to some tools that VS installs, including nmake.
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Steve Dower
Victor Stinner wrote:
 To compile Python on Windows, there are a few information in the Developer
 Guide:
 https://docs.python.org/devguide/setup.html#windows-compiling

I'm sorry, I've been slack and haven't updated this guide with the new changes. 
That said, there aren't that many changes to what is already in the guide - 
mostly new information that I'd like to add. I'll try and get something written 
up this week.

 Python 3.5 now requires Visual Studio 2010 *SP1*, or newer Visual Studio:
 http://bugs.python.org/issue22919#msg233637

Technically, Python 3.5 requires Visual Studio 2015, as the decision was made 
to move to the newer compiler for this release (and make whatever schedule 
changes were necessary to ensure everything will be available - it was on 
python-dev, though I don't have links handy).

It will still open and build with Visual Studio 2010 SP1 or later, however, 
buildbots should move to VS 2015 as they can, since that will be the official 
toolset. (I'm not pushing too hard until 2015 RC is released, since that's when 
Microsoft start supporting upgrades to newer versions. We do have one buildbot 
that's already using VS 2015 Preview though.)

 I found PCbuild\readme.txt which is not mentionned in the devguide :-/
 https://hg.python.org/cpython/file/56f717235c45/PCbuild/readme.txt
 (at least not on the Windows section of the setup page)

That should help, since I've updated that file. Though it's a little ahead of 
its time still, so a lot of the instructions do not yet have to be followed 
strictly, and I consider being able to build with VS 2010 SP1 a feature that we 
want to keep supporting for now while we transition.

 I found some clues to build OpenSSL to be able to build the Python ssl module,
 but I still have issues.
 
 Is there a more complete documentation?
 
 I found how to install svn.exe, perl.exe and nasm.exe, but not how to install
 nmake.exe. I don't know the command to build OpenSSL.

You don't require perl, you don't have to install nasm or build OpenSSL. 
Calling PCBuild/get_externals.bat will get nasm and the OpenSSL sources, and 
PCBuild/build.bat will rebuild OpenSSL as necessary.

nmake is part of Visual C++, so it should be available once you have your path 
configured (PCBuild/env.bat).

So a complete guide to check out and build Python on Windows should be:

1. Install SVN and put it on your path
2. Run PCBuild\get_externals.bat (this is the only step that requires SVN)
3. Install Visual Studio 2010 SP1 or later
4. Open PCBuild\pcbuild.sln in Visual Studio *or* run PCBuild\build.bat from 
the command line.

 I don't care of building OpenSSL, my goal is only to build the Python ssl
 module. Is there a way to install a development version of OpenSSL (.lib files
 if I remember correctly) from an installer/binary?

If you can find ssleay.lib and libeay.lib somewhere, they'll probably work. If 
not, those projects are in PCBuild and will be built automatically (if 
necessary) when you build _ssl.vcxproj or _hashlib.vcxproj.

Cheers,
Steve

 My draft notes:
 
 +Compile CPython on Windows
 +==
 +
 +To build the Python ssl extension:
 +
 +Need:
 +
 +* Visual Studio 2010 SP1 or newer
 +* CPython source code (default branch: 3.5)
 +* perl binary: ActivePerl
 +* svn binary, ex: SilkSVN
 +* nasm and nmake binaries: compile NASM (install the binary doesn't
 install nmake)
 +
 +Read PCbuild/readme.txt.
 +
 +* Build Python (in debug mode)
 +* Type: PCbuild\get_externals.bat
 +* Type: PCbuild\win32\python_d.exe PCbuild\prepare_ssl.py
 externals\openssl-1.0.1j
 
 Victor

___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Zachary Ware
On Tue, Jan 13, 2015 at 4:15 PM, Zachary Ware
zachary.ware+py...@gmail.com wrote:
 
 Quick Start Guide
 -

 1.  Install Microsoft Visual Studio 2015, any edition.

Note that this isn't precisely true; any VS 2010 SP1 or newer *should*
work, as you already know :).  This just says 2015 because that's the
'official' version to use.

-- 
Zach
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Compile Python on Windows (OpenSSL)

2015-01-13 Thread Steve Dower
Victor Stinner wrote:
 2015-01-13 23:46 GMT+01:00 M.-A. Lemburg m...@egenix.com:
 Just a note of caution: for older preview releases of VS the only way 
 to get back to a clean system was to reinstall Windows.

 Does it mean that it's not possible to have VS 2008 and VS 2015 installed at 
 the same time?

It's possible, and that configuration will be fine.

Until VS 2015 RC is released, there's no guarantee that it will uninstall or 
upgrade cleanly. The testing so far looks like it'll be fine, but there's no 
guarantee.

There's also a chance that it will interfere with VS 2013, but any earlier 
versions will be fine.

Cheers,
Steve

 VS 2008 is required to build Python 2.7.

 Victor
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com