<commit_before>This file gives an overview of what is necessary to build binary releases for
NumPy on OS X. Windows binaries are built here using Wine, they can of course
also be built on Windows itself. Building OS X binaries on another platform is
not possible.

Current build and release info
==============================
The current info on building and releasing NumPy and SciPy is scattered in
several places. It should be summarized in one place, updated and where
necessary described in more detail. The sections below list all places where
useful info can be found.

Source tree
-----------
* INSTALL.txt
* release.sh
* pavement.py

NumPy Trac
----------
* http://projects.scipy.org/numpy/wiki/MakingReleases
* http://projects.scipy.org/numpy/wiki/MicrosoftToolchainSupport
* http://projects.scipy.org/numpy/wiki/ApiDeprecation

SciPy.org wiki
--------------
* http://www.scipy.org/Installing_SciPy and links on that page.
* http://new.scipy.org/building/windows.html

Doc wiki
--------
* http://docs.scipy.org/numpy/docs/numpy-docs/user/install.rst/


Supported platforms and versions
================================
Python 2.4-2.7 and >=3.1 are the currently supported versions on all platforms. 

OS X
----
OS X 10.4 (Tiger), 10.5 (Leopard) and 10.6 (Snow Leopard) are supported. 
Note that only the Python from `python.org <http://python.org>`_ is
supported. Binaries do *not* support Apple Python.

Windows
-------
Windows XP and Windows Vista are supported by the 1.3.0 release, the 1.4.x
releases also support Windows 7.

Linux
-----
Many distributions include NumPy. Building from source is also relatively
straightforward. Only tarballs are created for Linux, no specific binary
installers are provided (yet).

BSD / Solaris
-------------
No binaries are provided, but succesful builds on Solaris and BSD have been
reported.


Tool chain
==========
Compilers
---------
The same gcc version is used as the one with which Python itself is built on
each platform. At the moment this means:

* OS X uses gcc-4.0 (since that is what Python itself is built with).
* Windows build uses latest released version from MinGW, now at 3.4.5.

Cython is not needed for building the binaries, because generated C files from
Cython sources are checked in at the moment. It is worth keeping an eye on what
Cython versions have been used to generate all current C files, it should be
the same and most recent version (0.12.1 as of now).

Fortran: on OS X gfortran from `this site <http://r.research.att.com/tools/>`_ 
is used. On Windows g77 (included in MinGW) is the current default, in the future 
this may shift to gfortran as well.

Python
------
* Python(s) from `python.org <http://python.org>`_
* virtualenv
* paver
* bdist_mpkg
<commit_msg>DOC: describe required version of GCC in MinGW on Windows in release doc.<commit_after>This file gives an overview of what is necessary to build binary releases for
NumPy on OS X. Windows binaries are built here using Wine, they can of course
also be built on Windows itself. Building OS X binaries on another platform is
not possible.

Current build and release info
==============================
The current info on building and releasing NumPy and SciPy is scattered in
several places. It should be summarized in one place, updated and where
necessary described in more detail. The sections below list all places where
useful info can be found.

Source tree
-----------
* INSTALL.txt
* release.sh
* pavement.py

NumPy Trac
----------
* http://projects.scipy.org/numpy/wiki/MakingReleases
* http://projects.scipy.org/numpy/wiki/MicrosoftToolchainSupport
* http://projects.scipy.org/numpy/wiki/ApiDeprecation

SciPy.org wiki
--------------
* http://www.scipy.org/Installing_SciPy and links on that page.
* http://new.scipy.org/building/windows.html

Doc wiki
--------
* http://docs.scipy.org/numpy/docs/numpy-docs/user/install.rst/


Supported platforms and versions
================================
Python 2.4-2.7 and >=3.1 are the currently supported versions on all platforms. 

OS X
----
OS X 10.4 (Tiger), 10.5 (Leopard) and 10.6 (Snow Leopard) are supported. 
Note that only the Python from `python.org <http://python.org>`_ is
supported. Binaries do *not* support Apple Python.

Windows
-------
Windows XP and Windows Vista are supported by the 1.3.0 release, the 1.4.x
releases also support Windows 7.

Linux
-----
Many distributions include NumPy. Building from source is also relatively
straightforward. Only tarballs are created for Linux, no specific binary
installers are provided (yet).

BSD / Solaris
-------------
No binaries are provided, but succesful builds on Solaris and BSD have been
reported.


Tool chain
==========
Compilers
---------
The same gcc version is used as the one with which Python itself is built on
each platform. At the moment this means:

* OS X uses gcc-4.0 (since that is what Python itself is built with).
* Windows build uses the latest released version from MinGW.  Note that NumPy
  releases until 1.6.x and SciPy releases until 0.10.x were made with GCC
  3.4.5.  For NumPy 1.7.x ad later GCC 4.x is required.

Cython is not needed for building the binaries, because generated C files from
Cython sources are checked in at the moment. It is worth keeping an eye on what
Cython versions have been used to generate all current C files, it should be
the same and most recent version (0.12.1 as of now).

Fortran: on OS X gfortran from `this site <http://r.research.att.com/tools/>`_ 
is used. On Windows g77 (included in MinGW) is the current default, in the future 
this may shift to gfortran as well.

Python
------
* Python(s) from `python.org <http://python.org>`_
* virtualenv
* paver
* bdist_mpkg

{'fraction_non_alphanumeric': 0.11927731976846168, 'fraction_numerical': 0.012629363269601825, 'mean_word_length': 3.5253968253968253, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5492202', 'n_tokens_mistral': 1713, 'n_tokens_neox': 1585, 'n_words': 759}