This commit was manufactured by cvs2svn to create tag 'r234c1'.
[python/dscho.git] / Mac / OSX / Dist / README.txt
blob1815a11027dd864422c81d536190ba577fe49503
1 Building a MacPython distribution
2 =================================
4 The ``build`` shell script here creates MacPython distributions.
5 It builds a complete framework-based Python out-of-tree, installs
6 it in a funny place with $DESTROOT, massages that installation to remove
7 .pyc files and such, creates an Installer package from the installation
8 plus the stuff in ``resources`` and compresses that installer as a
9 ``.dmg`` disk image.
11 Here are the steps you ned to follow to build a MacPython installer:
13 - There are various version numbers that need to be updated. Weed through
14   ``Mac/OSXResources``, ``Mac/scripts`` and ``Mac/Tools`` and inspect the
15   various ``.plist`` and ``.strings`` files. Note that the latter are
16   UTF-16 files.
17 - Edit ``resource/ReadMe.txt`` and ``resources/Welcome.rtf`` to reflect
18   version number and such.
19 - Edit ``build`` to change ``PYVERSION``, ``PYVER`` and ``BUILDNUM``.
20 - Run ``./build``. Optionally you can pass the name of the directory
21   where Python will be built, so you don't have to wait for the complete
22   build when you're debugging the process. For the final distribution use
23   a clean build.
24 - When done the script will tell you where the DMG image is.
26 Currently (November 2003) there is still a bug in the build procedure
27 for $DESTROOT builds: building some of the applets will fail (in
28 ``Mac/OSX/Makefile``) if you don't have the same version of Python installed
29 normally. So before doing the distribution you should build and install
30 a framework Python in the normal way.
32 When all is done, announcements can be posted to at least the following
33 places:
34 -   pythonmac-sig@python.org
35 -   python-dev@python.org
36 -   python-announce@python.org
37 -   archivist@info-mac.org
38 -   adcnews@apple.com
39 -   news@macnn.com
40 -   http://www.macupdate.com
41 -   http://guide.apple.com/usindex.lasso
42 -   http://www.apple.com/downloads/macosx/submit
43 -   http://www.versiontracker.com/ (userid Jack.Jansen@oratrix.com)
44 -   http://www.macshareware.net (userid jackjansen)
46 Also, check out Stephan Deibels http://pythonology.org/market contact list
48 After all this is done you may also need to update the Package Manager
49 database for the new distribution. A description of this remains TBD.
51 Building a MacPython Panther Additions distribution
52 ===================================================
54 *warning*: this section has not been debugged yet.
56 Note that this procedure is completely independent from building a minor
57 Python release: a minor Python release will be called something like
58 2.3.3, a new release of the MacPython Panther additions will be called
59 something like "third build of MacPython 2.3 additions for Panther".
60 This is because the additions will not include the 2.3.3 fixes: the Python
61 core installation is in ``/System`` and cannot be touched.
63 If you have made changes to PythonIDE or Package Manager that you want
64 to include in the additions distribution you need to include the changed
65 source files in the ``Resources`` folder of the ``.app`` bundle, where they
66 will override the source files installed into the Python framework installed
67 by Apple. You can do this in ``../Makefile.panther``, see how ``PythonIDEMain.py``
68 is included in the IDE for an example. It is not pretty but it works.
70 Next, make sure your ``/Library/Python/2.3`` directory, which is where
71 ``site-packages`` points, is empty. Having ``_tkinter`` in there will
72 erronously include IDLE in the installer.
74 Now, edit ``resources.panther`` and ``build.panther``. See above for what to
75 change.
77 There is probably more to come here.