summaryrefslogtreecommitdiffstats
path: root/Mac/OSX/Tools/pythonw.c
diff options
context:
space:
mode:
authorRonald Oussoren <ronaldoussoren@mac.com>2006-05-14 19:56:34 (GMT)
committerRonald Oussoren <ronaldoussoren@mac.com>2006-05-14 19:56:34 (GMT)
commit836b039b7cbcf99dd0864dcdffa30ef66a81d819 (patch)
tree840c0b4da42ed45831769fff68b9040fdf910f87 /Mac/OSX/Tools/pythonw.c
parent375f06b1755b712dcb1868fb32ee86dd317552f5 (diff)
downloadcpython-836b039b7cbcf99dd0864dcdffa30ef66a81d819.zip
cpython-836b039b7cbcf99dd0864dcdffa30ef66a81d819.tar.gz
cpython-836b039b7cbcf99dd0864dcdffa30ef66a81d819.tar.bz2
Rework the build system for osx applications:
* Don't use xcodebuild for building PythonLauncher, but use a normal unix makefile. This makes it a lot easier to use the same build flags as for the rest of python (e.g. make a universal version of python launcher) * Convert the mac makefile-s to makefile.in-s and use configure to set makefile variables instead of forwarding them as command-line arguments * Add a C version of pythonw, that we you can use '#!/usr/local/bin/pythonw' * Build IDLE.app using bundlebuilder instead of BuildApplet, that will allow easier modification of the bundle contents later on.
Diffstat (limited to 'Mac/OSX/Tools/pythonw.c')
-rw-r--r--Mac/OSX/Tools/pythonw.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/Mac/OSX/Tools/pythonw.c b/Mac/OSX/Tools/pythonw.c
new file mode 100644
index 0000000..e70a76f
--- /dev/null
+++ b/Mac/OSX/Tools/pythonw.c
@@ -0,0 +1,17 @@
+/*
+ * This wrapper program executes a python executable hidden inside an
+ * application bundle inside the Python framework. This is needed to run
+ * GUI code: some GUI API's don't work unless the program is inside an
+ * application bundle.
+ */
+#include <unistd.h>
+#include <err.h>
+
+static char Python[] = PYTHONWEXECUTABLE;
+
+int main(int argc, char **argv) {
+ argv[0] = Python;
+ execv(Python, argv);
+ err(1, "execv: %s", Python);
+ /* NOTREACHED */
+}