blob: d11f703a1809e7e4285cad75e669deae95bd1afb [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
21
22OBJECTS=$(PYTHONBUILDDIR)/Mac/Python/macmain.o \
23 $(PYTHONBUILDDIR)/Mac/Python/macgetargv.o
24
25pythonforbundle: $(OBJECTS)
Jack Jansen638e5e32001-09-06 16:33:57 +000026 $(LD) $(LDFLAGS) $(OBJECTS) -o pythonforbundle
27
Jack Jansenc432cba2001-09-09 00:36:52 +000028PYTHON=$(PYTHONBUILDDIR)/python.exe
Jack Jansen638e5e32001-09-06 16:33:57 +000029APPTEMPLATE=$(PYTHONBUILDDIR)/Mac/OSXResources/app
30APPSUBDIRS=MacOS Resources Resources/English.lproj
Jack Jansenfdc8d752002-01-15 23:20:40 +000031RESOURCEDIR=$(PYTHONBUILDDIR)/Mac/Resources
Jack Jansenc432cba2001-09-09 00:36:52 +000032RESOURCEFILE=python.rsrc
33RFCONVERTER=$(PYTHONBUILDDIR)/Mac/Lib/applesingle.py
Jack Jansen638e5e32001-09-06 16:33:57 +000034install: pythonforbundle
35 @for i in $(APPINSTALLDIR) $(APPINSTALLDIR)/Contents; do \
36 if test ! -d $$i; then \
37 echo "Creating directory $$i"; \
38 $(INSTALL) -d -m $(DIRMODE) $$i; \
39 fi;\
40 done
41 @for i in $(APPSUBDIRS); do \
42 if test ! -d $(APPINSTALLDIR)/Contents/$$i; then \
43 echo "Creating directory $(APPINSTALLDIR)/Contents/$$i"; \
44 $(INSTALL) -d -m $(DIRMODE) $(APPINSTALLDIR)/Contents/$$i; \
45 else true; \
46 fi; \
47 done
48 @for d in . $(APPSUBDIRS); \
49 do \
50 a=$(APPTEMPLATE)/$$d; \
51 if test ! -d $$a; then continue; else true; fi; \
52 b=$(APPINSTALLDIR)/Contents/$$d; \
53 for i in $$a/*; \
54 do \
Jack Jansen638e5e32001-09-06 16:33:57 +000055 case $$i in \
56 *CVS) ;; \
57 *.py[co]) ;; \
58 *.orig) ;; \
59 *~) ;; \
60 *) \
61 if test -d $$i; then continue; fi; \
62 if test -x $$i; then \
63 echo $(INSTALL_SCRIPT) $$i $$b; \
64 $(INSTALL_SCRIPT) $$i $$b; \
65 else \
66 echo $(INSTALL_DATA) $$i $$b; \
67 $(INSTALL_DATA) $$i $$b; \
68 fi;; \
69 esac; \
70 done; \
71 done
72 $(INSTALL_PROGRAM) pythonforbundle $(APPINSTALLDIR)/Contents/MacOS/python
Jack Jansenc432cba2001-09-09 00:36:52 +000073 # Create a temporary version of the resources here
Jack Jansenfdc8d752002-01-15 23:20:40 +000074 $(PYTHON) $(RFCONVERTER) -r $(RESOURCEDIR)/dialogs.rsrc dialogs.rsrc
75 $(PYTHON) $(RFCONVERTER) -r $(RESOURCEDIR)/errors.rsrc errors.rsrc
76 DeRez -useDF -skip ckid dialogs.rsrc > dialogs.r
77 DeRez -useDF -skip ckid errors.rsrc > errors.r
78 Rez -useDF -o $(RESOURCEFILE) dialogs.r errors.r
Jack Jansenc432cba2001-09-09 00:36:52 +000079 $(INSTALL_DATA) $(RESOURCEFILE) $(APPINSTALLDIR)/Contents/Resources/$(RESOURCEFILE)
Jack Jansen638e5e32001-09-06 16:33:57 +000080
81LIBDEST=$(INSTALLDIR)/Mac/Lib
82LIBSRC=$(PYTHONBUILDDIR)/Mac/Lib
83LIBSUBDIRS=Carbon lib-scriptpackages lib-scriptpackages/CodeWarrior lib-scriptpackages/Explorer \
84 lib-scriptpackages/Finder lib-scriptpackages/Netscape lib-scriptpackages/StdSuites \
85 mkcwproject mkcwproject/template mkcwproject/template-carbon mkcwproject/template-ppc
86installmacsubtree:
87 @for i in $(LIBDEST); \
88 do \
89 if test ! -d $$i; then \
90 echo "Creating directory $$i"; \
91 $(INSTALL) -d -m $(DIRMODE) $$i; \
92 else true; \
93 fi; \
94 done
95 @for d in $(LIBSUBDIRS); \
96 do \
97 a=$(LIBSRC)/$$d; \
98 if test ! -d $$a; then continue; else true; fi; \
99 b=$(LIBDEST)/$$d; \
100 if test ! -d $$b; then \
101 echo "Creating directory $$b"; \
102 $(INSTALL) -d -m $(DIRMODE) $$b; \
103 else true; \
104 fi; \
105 done
106 @for i in $(LIBSRC)/*.py $(LIBSRC)/*.rsrc; \
107 do \
108 if test -x $$i; then \
109 $(INSTALL_SCRIPT) $$i $(LIBDEST); \
110 echo $(INSTALL_SCRIPT) $$i $(LIBDEST); \
111 else \
112 $(INSTALL_DATA) $$i $(LIBDEST); \
113 echo $(INSTALL_DATA) $$i $(LIBDEST); \
114 fi; \
115 done
116 @for d in $(LIBSUBDIRS); \
117 do \
118 a=$(LIBSRC)/$$d; \
119 if test ! -d $$a; then continue; else true; fi; \
120 b=$(LIBDEST)/$$d; \
121 for i in $$a/*; \
122 do \
123 case $$i in \
124 *CVS) ;; \
125 *.py[co]) ;; \
126 *.orig) ;; \
127 *~) ;; \
128 *) \
129 if test -d $$i; then continue; fi; \
130 if test -x $$i; then \
131 echo $(INSTALL_SCRIPT) $$i $$b; \
132 $(INSTALL_SCRIPT) $$i $$b; \
133 else \
134 echo $(INSTALL_DATA) $$i $$b; \
135 $(INSTALL_DATA) $$i $$b; \
136 fi;; \
137 esac; \
138 done; \
139 done
Jack Jansen109f0942002-01-18 16:12:27 +0000140 @echo '** Copy the contents of sample_sitecustomize.py (or similar code) into'
141 @echo '**' $(INSTALLDIR)/lib/python2.2/sitecustomize.py
142