Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 1 | Building a MacPython distribution |
| 2 | ================================= |
| 3 | |
| 4 | The ``build-install.py`` script creates MacPython distributions, including |
| 5 | sleepycat db4, sqlite3 and readline support. It builds a complete |
| 6 | framework-based Python out-of-tree, installs it in a funny place with |
| 7 | $DESTROOT, massages that installation to remove .pyc files and such, creates |
| 8 | an Installer package from the installation plus other files in ``resources`` |
| 9 | and ``scripts`` and placed that on a ``.dmg`` disk image. |
| 10 | |
Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 11 | Prerequisites |
| 12 | ------------- |
Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 13 | |
Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 14 | * A MacOS X 10.4 (or later) |
| 15 | |
| 16 | * XCode 2.2 (or later), with the universal SDK |
| 17 | |
| 18 | * No Fink (in ``/sw``) or DarwinPorts (in ``/opt/local``), those could |
| 19 | interfere with the build. |
| 20 | |
| 21 | * The documentation for the release must be available on python.org |
| 22 | because it is included in the installer. |
| 23 | |
| 24 | |
| 25 | The Recipe |
| 26 | ---------- |
| 27 | |
| 28 | Here are the steps you need to follow to build a MacPython installer: |
| 29 | |
| 30 | * Run ``./build-installer.py``. Optionally you can pass a number of arguments |
| 31 | to specify locations of various files. Please see the top of |
Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 32 | ``build-installer.py`` for its usage. |
Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 33 | |
Thomas Wouters | 0e3f591 | 2006-08-11 14:57:12 +0000 | [diff] [blame] | 34 | Running this script takes some time, I will not only build Python itself |
| 35 | but also some 3th-party libraries that are needed for extensions. |
| 36 | |
| 37 | * When done the script will tell you where the DMG image is (by default |
| 38 | somewhere in ``/tmp/_py``). |
| 39 | |
| 40 | Testing |
| 41 | ------- |
| 42 | |
| 43 | The resulting binaries should work on MacOSX 10.3.9 or later. I usually run |
| 44 | the installer on a 10.3.9, a 10.4.x PPC and a 10.4.x Intel system and then |
| 45 | run the testsuite to make sure. |
| 46 | |
| 47 | |
| 48 | Announcements |
| 49 | ------------- |
| 50 | |
| 51 | (This is mostly of historic interest) |
Thomas Wouters | 477c8d5 | 2006-05-27 19:21:47 +0000 | [diff] [blame] | 52 | |
| 53 | When all is done, announcements can be posted to at least the following |
| 54 | places: |
| 55 | - pythonmac-sig@python.org |
| 56 | - python-dev@python.org |
| 57 | - python-announce@python.org |
| 58 | - archivist@info-mac.org |
| 59 | - adcnews@apple.com |
| 60 | - news@macnn.com |
| 61 | - http://www.macupdate.com |
| 62 | - http://guide.apple.com/usindex.lasso |
| 63 | - http://www.apple.com/downloads/macosx/submit |
| 64 | - http://www.versiontracker.com/ (userid Jack.Jansen@oratrix.com) |
| 65 | - http://www.macshareware.net (userid jackjansen) |
| 66 | |
| 67 | Also, check out Stephan Deibels http://pythonology.org/market contact list |