forked from python/cpython
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added one call to Py_Main(), for OSX framework builds only, that will…
… get the actual script to run in case we are running from an applet. If we are indeed running an applet we skip the normal option processing leaving it all to the applet code. This allows us to get use the normal python binary in the Python.app bundle, giving us all the normal command line options through PythonLauncher while still allowing Python.app to be used as the template for building applets. Consequently, pythonforbundle is gone, and Mac/Python/macmain.c isn't used on OSX anymore.
- Loading branch information
1 parent
94416e5
commit 21ed16a
Showing
5 changed files
with
132 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,29 @@ | ||
This directory contains a Makefile that will create a proof-of-concept | ||
Mac OS X application for Python. The process is far from streamlined, | ||
and it will definitely change in future releases of Python, but I wanted to | ||
include this in the current distribution so people could play with it. | ||
This directory contains a Makefile that will create a couple of python-related | ||
applications (fullblown OSX .app applications, that is) in /Applications/Python, | ||
and a hidden helper application Python.app inside the Python.framework. In addition | ||
it has a target "installmacsubtree" that installs the relevant portions of the | ||
Mac subtree into the Python.framework. | ||
|
||
To create a fullblown Python.app proceed as follows. | ||
It is normally invoked indirectly through the main Makefile, as the last step | ||
in the sequence | ||
1. configure --enable-framework | ||
2. make | ||
3. make frameworkinstall | ||
4. make osxapps | ||
|
||
1. In the main Python source directory configure python with | ||
configure --enable-framework | ||
2. Do a "make clean" if you did a previous build, then "make". | ||
3. Install this as a framework with "make frameworkinstall". This puts a Python | ||
framework into /Library/Frameworks. | ||
4. Come back here (Mac/OSX) and build and install the application, | ||
with "make install". | ||
5. It is probably a good idea to add the Mac-specific modules to the framework, | ||
with "make installmacsubtree". This puts a MacPython lib directory into | ||
sys.prefix/Mac/Lib. Again, this is a temporary measure. | ||
6. To actually find the Lib directory installed in step 5 you add a line | ||
to your site.py file (the one in /Library/Frameworks/....): | ||
sys.path.append(os.path.join(sys.prefix, 'Mac/Lib')) | ||
The interesting targets in the makefile are: | ||
installmacsubtree - explained above, | ||
dontinstallmacsubtree - Put only a .pth file into the framework (pointing to this | ||
sourcetree), which may be easier for development, | ||
install_all - install all three .app applications, | ||
install_Python - install the hidden interpreter .app into the framework, | ||
install_PythonLauncher - install the user-visible script launch helper | ||
install_IDE - install the IDE | ||
installunixprograms - install symlinks/scripts mimicking normal unix Python into | ||
/usr/local. | ||
|
||
You are now done. In your Applications you should have a "Python", with the icon | ||
being a falling 16 Ton weight with a shadow under it. You can drop Python scripts | ||
on this and the will be run, in a full-windowing environment. Note that you | ||
do not get sys.stdin, and that sys.stdout goes to the console (Use | ||
Applications/Utilities/Console to see it). | ||
|
||
For some reason the application only accepts files with TEXT type, not straight unix | ||
typeless files. | ||
|
||
Something to take note of is that the ".rsrc" files in the distribution are not | ||
actually resource files, they're AppleSingle encoded resource files. | ||
|
||
Jack Jansen, [email protected], 11-Sep-01. | ||
Jack Jansen, [email protected], 02-Aug-02 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters