blob: 9fb1420d1f62a9bf5f70e24d27ae46e8382dca9f [file] [log] [blame]
Jack Jansen75ed1672001-09-05 22:09:50 +00001PYTHONBUILDDIR=../..
Jack Jansen638e5e32001-09-06 16:33:57 +00002INSTALLDIR=/Library/Frameworks/Python.framework/Versions/Current
3APPINSTALLDIR=/Applications/Python.app
Jack Jansen75ed1672001-09-05 22:09:50 +00004
Jack Jansen638e5e32001-09-06 16:33:57 +00005# Items more-or-less copied from the main Makefile
6DIRMODE=755
7INSTALL=/usr/bin/install -c
8INSTALL_PROGRAM=${INSTALL}
9INSTALL_SCRIPT= ${INSTALL_PROGRAM}
10INSTALL_DATA= ${INSTALL} -m 644
Jack Jansen75ed1672001-09-05 22:09:50 +000011OPT=-g -O3 -Wall -Wstrict-prototypes -no-cpp-precomp -fno-common -dynamic
12INCLUDES=-I$(PYTHONBUILDDIR) -I$(PYTHONBUILDDIR)/Include \
13 -I$(PYTHONBUILDDIR)/Mac/Include
14DEFINES=-DHAVE_CONFIG_H
15
16CFLAGS=$(OPT) $(DEFINES) $(INCLUDES)
17LDFLAGS=-framework System -framework Python -framework Carbon \
18 -framework Foundation
19CC=cc
20LD=cc
Jack Jansenfea15532002-01-27 20:05:20 +000021REZ=/Developer/Tools/Rez
22DEREZ=/Developer/Tools/DeRez
Jack Jansen75ed1672001-09-05 22:09:50 +000023
24OBJECTS=$(PYTHONBUILDDIR)/Mac/Python/macmain.o \
25 $(PYTHONBUILDDIR)/Mac/Python/macgetargv.o
26
27pythonforbundle: $(OBJECTS)
Jack Jansen638e5e32001-09-06 16:33:57 +000028 $(LD) $(LDFLAGS) $(OBJECTS) -o pythonforbundle
29
Jack Jansenc432cba2001-09-09 00:36:52 +000030PYTHON=$(PYTHONBUILDDIR)/python.exe
Jack Jansen638e5e32001-09-06 16:33:57 +000031APPTEMPLATE=$(PYTHONBUILDDIR)/Mac/OSXResources/app
32APPSUBDIRS=MacOS Resources Resources/English.lproj
Jack Jansenfdc8d752002-01-15 23:20:40 +000033RESOURCEDIR=$(PYTHONBUILDDIR)/Mac/Resources
Jack Jansenc432cba2001-09-09 00:36:52 +000034RESOURCEFILE=python.rsrc
35RFCONVERTER=$(PYTHONBUILDDIR)/Mac/Lib/applesingle.py
Jack Jansen638e5e32001-09-06 16:33:57 +000036install: pythonforbundle
37 @for i in $(APPINSTALLDIR) $(APPINSTALLDIR)/Contents; do \
38 if test ! -d $$i; then \
39 echo "Creating directory $$i"; \
40 $(INSTALL) -d -m $(DIRMODE) $$i; \
41 fi;\
42 done
43 @for i in $(APPSUBDIRS); do \
44 if test ! -d $(APPINSTALLDIR)/Contents/$$i; then \
45 echo "Creating directory $(APPINSTALLDIR)/Contents/$$i"; \
46 $(INSTALL) -d -m $(DIRMODE) $(APPINSTALLDIR)/Contents/$$i; \
47 else true; \
48 fi; \
49 done
50 @for d in . $(APPSUBDIRS); \
51 do \
52 a=$(APPTEMPLATE)/$$d; \
53 if test ! -d $$a; then continue; else true; fi; \
54 b=$(APPINSTALLDIR)/Contents/$$d; \
55 for i in $$a/*; \
56 do \
Jack Jansen638e5e32001-09-06 16:33:57 +000057 case $$i in \
58 *CVS) ;; \
59 *.py[co]) ;; \
60 *.orig) ;; \
61 *~) ;; \
62 *) \
63 if test -d $$i; then continue; fi; \
64 if test -x $$i; then \
65 echo $(INSTALL_SCRIPT) $$i $$b; \
66 $(INSTALL_SCRIPT) $$i $$b; \
67 else \
68 echo $(INSTALL_DATA) $$i $$b; \
69 $(INSTALL_DATA) $$i $$b; \
70 fi;; \
71 esac; \
72 done; \
73 done
74 $(INSTALL_PROGRAM) pythonforbundle $(APPINSTALLDIR)/Contents/MacOS/python
Jack Jansenc432cba2001-09-09 00:36:52 +000075 # Create a temporary version of the resources here
Jack Jansenfdc8d752002-01-15 23:20:40 +000076 $(PYTHON) $(RFCONVERTER) -r $(RESOURCEDIR)/dialogs.rsrc dialogs.rsrc
77 $(PYTHON) $(RFCONVERTER) -r $(RESOURCEDIR)/errors.rsrc errors.rsrc
Jack Jansenfea15532002-01-27 20:05:20 +000078 $(DEREZ) -useDF -skip ckid dialogs.rsrc > dialogs.r
79 $(DEREZ) -useDF -skip ckid errors.rsrc > errors.r
80 $(REZ) -useDF -o $(RESOURCEFILE) dialogs.r errors.r
Jack Jansenc432cba2001-09-09 00:36:52 +000081 $(INSTALL_DATA) $(RESOURCEFILE) $(APPINSTALLDIR)/Contents/Resources/$(RESOURCEFILE)
Jack Jansen638e5e32001-09-06 16:33:57 +000082
83LIBDEST=$(INSTALLDIR)/Mac/Lib
84LIBSRC=$(PYTHONBUILDDIR)/Mac/Lib
85LIBSUBDIRS=Carbon lib-scriptpackages lib-scriptpackages/CodeWarrior lib-scriptpackages/Explorer \
86 lib-scriptpackages/Finder lib-scriptpackages/Netscape lib-scriptpackages/StdSuites \
87 mkcwproject mkcwproject/template mkcwproject/template-carbon mkcwproject/template-ppc
Jack Jansenc71efe02002-01-21 22:51:55 +000088TOOLSDEST=$(INSTALLDIR)/Mac/Tools
89TOOLSSRC=$(PYTHONBUILDDIR)/Mac/Tools
90TOOLSSUBDIRS=IDE
Jack Jansen638e5e32001-09-06 16:33:57 +000091installmacsubtree:
Jack Jansenc71efe02002-01-21 22:51:55 +000092 @for i in $(LIBDEST) $(TOOLSDEST); \
Jack Jansen638e5e32001-09-06 16:33:57 +000093 do \
94 if test ! -d $$i; then \
95 echo "Creating directory $$i"; \
96 $(INSTALL) -d -m $(DIRMODE) $$i; \
97 else true; \
98 fi; \
99 done
100 @for d in $(LIBSUBDIRS); \
101 do \
102 a=$(LIBSRC)/$$d; \
103 if test ! -d $$a; then continue; else true; fi; \
104 b=$(LIBDEST)/$$d; \
105 if test ! -d $$b; then \
106 echo "Creating directory $$b"; \
107 $(INSTALL) -d -m $(DIRMODE) $$b; \
108 else true; \
109 fi; \
110 done
111 @for i in $(LIBSRC)/*.py $(LIBSRC)/*.rsrc; \
112 do \
113 if test -x $$i; then \
114 $(INSTALL_SCRIPT) $$i $(LIBDEST); \
115 echo $(INSTALL_SCRIPT) $$i $(LIBDEST); \
116 else \
117 $(INSTALL_DATA) $$i $(LIBDEST); \
118 echo $(INSTALL_DATA) $$i $(LIBDEST); \
119 fi; \
120 done
121 @for d in $(LIBSUBDIRS); \
122 do \
123 a=$(LIBSRC)/$$d; \
124 if test ! -d $$a; then continue; else true; fi; \
125 b=$(LIBDEST)/$$d; \
126 for i in $$a/*; \
127 do \
128 case $$i in \
129 *CVS) ;; \
130 *.py[co]) ;; \
131 *.orig) ;; \
132 *~) ;; \
133 *) \
134 if test -d $$i; then continue; fi; \
135 if test -x $$i; then \
136 echo $(INSTALL_SCRIPT) $$i $$b; \
137 $(INSTALL_SCRIPT) $$i $$b; \
138 else \
139 echo $(INSTALL_DATA) $$i $$b; \
140 $(INSTALL_DATA) $$i $$b; \
141 fi;; \
142 esac; \
143 done; \
144 done
Jack Jansenc71efe02002-01-21 22:51:55 +0000145 @for d in $(TOOLSSUBDIRS); \
146 do \
147 a=$(TOOLSSRC)/$$d; \
148 if test ! -d $$a; then continue; else true; fi; \
149 b=$(TOOLSDEST)/$$d; \
150 if test ! -d $$b; then \
151 echo "Creating directory $$b"; \
152 $(INSTALL) -d -m $(DIRMODE) $$b; \
153 else true; \
154 fi; \
155 done
156 @for d in $(TOOLSSUBDIRS); \
157 do \
158 a=$(TOOLSSRC)/$$d; \
159 if test ! -d $$a; then continue; else true; fi; \
160 b=$(TOOLSDEST)/$$d; \
161 for i in $$a/*; \
162 do \
163 case $$i in \
164 *CVS) ;; \
165 *.py[co]) ;; \
166 *.orig) ;; \
167 *~) ;; \
168 *) \
169 if test -d $$i; then continue; fi; \
170 if test -x $$i; then \
171 echo $(INSTALL_SCRIPT) $$i $$b; \
172 $(INSTALL_SCRIPT) $$i $$b; \
173 else \
174 echo $(INSTALL_DATA) $$i $$b; \
175 $(INSTALL_DATA) $$i $$b; \
176 fi;; \
177 esac; \
178 done; \
179 done
180
Jack Jansen109f0942002-01-18 16:12:27 +0000181 @echo '** Copy the contents of sample_sitecustomize.py (or similar code) into'
182 @echo '**' $(INSTALLDIR)/lib/python2.2/sitecustomize.py
183