cpython/Mac/BuildScript
Benjamin Peterson 2a691a8149 Merged revisions 62021,62029,62035-62038,62043-62044,62052-62053 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r62021 | benjamin.peterson | 2008-03-28 18:11:01 -0500 (Fri, 28 Mar 2008) | 2 lines

  NIL => NULL
........
  r62029 | amaury.forgeotdarc | 2008-03-28 20:42:31 -0500 (Fri, 28 Mar 2008) | 3 lines

  Correctly call the base class tearDown();
  otherwise running test_logging twice produce the errors we see on all buildbots
........
  r62035 | raymond.hettinger | 2008-03-29 05:42:07 -0500 (Sat, 29 Mar 2008) | 1 line

  Be explicit about what efficient means.
........
  r62036 | georg.brandl | 2008-03-29 06:46:18 -0500 (Sat, 29 Mar 2008) | 2 lines

  Fix capitalization.
........
  r62037 | amaury.forgeotdarc | 2008-03-29 07:42:54 -0500 (Sat, 29 Mar 2008) | 5 lines

  lib2to3 should install a logging handler only when run as a main program,
  not when used as a library.

  This may please the buildbots, which fail when test_lib2to3 is run before test_logging.
........
  r62043 | benjamin.peterson | 2008-03-29 10:24:25 -0500 (Sat, 29 Mar 2008) | 3 lines

  #2503 make singletons compared with "is" not == or !=
  Thanks to Wummel for the patch
........
  r62044 | gerhard.haering | 2008-03-29 14:11:52 -0500 (Sat, 29 Mar 2008) | 2 lines

  Documented the lastrowid attribute.
........
  r62052 | benjamin.peterson | 2008-03-30 14:35:10 -0500 (Sun, 30 Mar 2008) | 2 lines

  Updated README regarding doc formats
........
  r62053 | georg.brandl | 2008-03-30 14:41:39 -0500 (Sun, 30 Mar 2008) | 2 lines

  The other download formats will be available for 2.6 too.
........
2008-03-31 01:51:45 +00:00
..
resources Merged revisions 46753-51188 via svnmerge from 2006-08-11 14:57:12 +00:00
scripts Four months of trunk changes (including a few releases...) 2006-12-13 04:49:30 +00:00
build-installer.py Merged revisions 62021,62029,62035-62038,62043-62044,62052-62053 via svnmerge from 2008-03-31 01:51:45 +00:00
ncurses-5.5.patch Merge the rest of the trunk. 2006-06-08 15:35:45 +00:00
README.txt Merged revisions 46753-51188 via svnmerge from 2006-08-11 14:57:12 +00:00

Building a MacPython distribution
=================================

The ``build-install.py`` script creates MacPython distributions, including
sleepycat db4, sqlite3 and readline support.  It builds a complete 
framework-based Python out-of-tree, installs it in a funny place with 
$DESTROOT, massages that installation to remove .pyc files and such, creates 
an Installer package from the installation plus other files in ``resources`` 
and ``scripts`` and placed that on a ``.dmg`` disk image.

Prerequisites
-------------

* A MacOS X 10.4 (or later)

* XCode 2.2 (or later), with the universal SDK

* No Fink (in ``/sw``) or DarwinPorts (in ``/opt/local``), those could
  interfere with the build.

* The documentation for the release must be available on python.org
  because it is included in the installer.


The Recipe
----------

Here are the steps you need to follow to build a MacPython installer:

*  Run ``./build-installer.py``. Optionally you can pass a number of arguments
   to specify locations of various files. Please see the top of
  ``build-installer.py`` for its usage.

  Running this script takes some time, I will not only build Python itself
  but also some 3th-party libraries that are needed for extensions.

* When done the script will tell you where the DMG image is (by default
  somewhere in ``/tmp/_py``).

Testing
-------

The resulting binaries should work on MacOSX 10.3.9 or later. I usually run
the installer on a 10.3.9, a 10.4.x PPC and a 10.4.x Intel system and then
run the testsuite to make sure.


Announcements
-------------

(This is mostly of historic interest)

When all is done, announcements can be posted to at least the following
places:
-   pythonmac-sig@python.org
-   python-dev@python.org
-   python-announce@python.org
-   archivist@info-mac.org
-   adcnews@apple.com
-   news@macnn.com
-   http://www.macupdate.com
-   http://guide.apple.com/usindex.lasso
-   http://www.apple.com/downloads/macosx/submit
-   http://www.versiontracker.com/ (userid Jack.Jansen@oratrix.com)
-   http://www.macshareware.net (userid jackjansen)

Also, check out Stephan Deibels http://pythonology.org/market contact list