blob: 4889afe569ffe79fa47fe729e9bc6ce58dcc9b25 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
|
current: expr.pd_linux expr~.pd_linux fexpr~.pd_linux \
../expr.pd_linux ../expr~.pd_linux ../fexpr~.pd_linux
install: install_linux
clean: clean_linux
PDEXTERN=/usr/local/lib/pd/externs
# ----------------------- NT -----------------------
pd_nt: expr.dll
NTOBJ = vexp.obj vexp_fun.obj vexp_if.obj
PDNTCFLAGS = /W3 /WX /DNT /DPD /nologo
VC="C:\Program Files\Microsoft Visual Studio\Vc98"
PDNTINCLUDE = /I. /I..\..\src /I$(VC)\include
PDNTLDIR = $(VC)\lib
PDNTLIB = $(PDNTLDIR)\libc.lib \
$(PDNTLDIR)\oldnames.lib \
$(PDNTLDIR)\kernel32.lib \
..\..\bin\pd.lib
.c.obj:
cl $(PDNTCFLAGS) $(PDNTINCLUDE) /c $*.c
expr.dll: $(NTOBJ)
link /dll /export:expr_setup /export:expr_tilde_setup \
/export:fexpr_tilde_setup $(NTOBJ) $(PDNTLIB)
ren vexp.dll expr.dll
copy expr.dll ..\expr.dll
copy expr.dll ..\expr~.dll
copy expr.dll ..\fexpr~.dll
copy help-expr.pd ..\help-expr.pd
# ----------------------- IRIX 5.x -----------------------
pd_irix5:
.SUFFIXES: .pd_irix5
SGICFLAGS5 = -o32 -DPD -DSGI -O2
SGIINCLUDE = -I/usr/people/msp/pd/pd/src
.c.pd_irix5:
$(CC) $(SGICFLAGS5) $(SGIINCLUDE) -o $*.o -c $*.c
ld -elf -shared -rdata_shared -o $*.pd_irix5 $*.o
rm $*.o
# ----------------------- IRIX 6.x -----------------------
pd_irix6:
.SUFFIXES: .pd_irix6
SGICFLAGS6 = -DPD -DSGI -n32 \
-OPT:roundoff=3 -OPT:IEEE_arithmetic=3 -OPT:cray_ivdep=true \
-Ofast=ip32
SGICFLAGS5 = -DPD -O2 -DSGI
SGIINCLUDE = -I/usr/people/msp/pd/pd/src
.c.pd_irix6:
$(CC) $(SGICFLAGS6) $(SGIINCLUDE) -o $*.o -c $*.c
ld -elf -shared -rdata_shared -o $*.pd_irix6 $*.o
rm $*.o
# ----------------------- LINUX i386 -----------------------
LINUXOBJ = vexp.pd_linux_o vexp_fun.pd_linux_o vexp_if.pd_linux_o
.SUFFIXES: .pd_linux_o
LINUXCFLAGS = -DPD -O2 -funroll-loops -fomit-frame-pointer -fPIC \
-fno-strict-aliasing -Wall -W -Wshadow -Wstrict-prototypes \
-Wno-unused -Wno-parentheses -Wno-switch
LINUXINCLUDE = -I../../src
.c.pd_linux_o:
$(CC) -g $(LINUXCFLAGS) $(LINUXINCLUDE) -o $*.pd_linux_o -c $*.c
expr.pd_linux: $(LINUXOBJ)
$(CC) -export_dynamic -shared -o expr.pd_linux $(LINUXOBJ) -lc -lm
strip --strip-unneeded expr.pd_linux
expr~.pd_linux: expr.pd_linux
-ln -s expr.pd_linux expr~.pd_linux
fexpr~.pd_linux: expr.pd_linux
-ln -s expr.pd_linux fexpr~.pd_linux
../expr.pd_linux: expr.pd_linux
-ln -s expr~/expr.pd_linux ../expr.pd_linux
../expr~.pd_linux: expr.pd_linux
-ln -s expr~/expr.pd_linux ../expr~.pd_linux
../fexpr~.pd_linux: expr.pd_linux
-ln -s expr~/expr.pd_linux ../fexpr~.pd_linux
install_linux:
install expr.pd_linux $(PDEXTERN)
rm -f $(PDEXTERN)/expr~.pd_linux
rm -f $(PDEXTERN)/fexpr~.pd_linux
cd $(PDEXTERN); \
-ln -s expr.pd_linux expr~.pd_linux
-ln -s expr.pd_linux fexpr~.pd_linux
linux_clean:
rm -f *.pd_linux_o *.o
# ----------------------- MAC OSX -----------------------
MACOSXOBJ3 = vexp.d_ppc_o vexp_fun.d_ppc_o vexp_if.d_ppc_o
MACOSXOBJ = vexp.d_fat_o vexp_fun.d_fat_o vexp_if.d_fat_o
.SUFFIXES: .d_ppc_o .d_fat_o
MACOSXCFLAGS = -DMACOSX -DPD -O2 -Wall -W -Wshadow -Wstrict-prototypes \
-Wno-unused -Wno-parentheses -Wno-switch
MACOSXINCLUDE = -I../../src
d_ppc: expr.d_ppc expr~.d_ppc fexpr~.d_ppc
.c.d_ppc_o:
$(CC) -g $(MACOSXCFLAGS) $(MACOSXINCLUDE) -o $*.d_ppc_o -c $*.c
expr.d_ppc: $(MACOSXOBJ3)
$(CC) -bundle -undefined suppress -flat_namespace \
-o expr.d_ppc $(MACOSXOBJ3) -lm
rm -f ../expr.d_ppc
-ln -s expr~/expr.d_ppc ..
expr~.d_ppc: expr.d_ppc
-ln -s expr.d_ppc expr~.d_ppc
rm -f ../expr~.d_ppc
-ln -s expr~/expr~.d_ppc ..
fexpr~.d_ppc: expr.d_ppc
-ln -s expr.d_ppc fexpr~.d_ppc
rm -f ../fexpr~.d_ppc
-ln -s expr~/fexpr~.d_ppc ..
install_d_fat:
install expr.d_fat $(PDEXTERN)
rm -f $(PDEXTERN)/expr~.d_fat
rm -f $(PDEXTERN)/fexpr~.d_fat
cd $(PDEXTERN); \
-ln -s expr.d_fat expr~.d_fat; \
-ln -s expr.d_fat fexpr~.d_fat
d_fat: expr.d_fat expr~.d_fat fexpr~.d_fat
.c.d_fat_o:
$(CC) -g $(MACOSXCFLAGS) $(MACOSXINCLUDE) -arch i386 -arch ppc \
-o $*.d_fat_o -c $*.c
expr.d_fat: $(MACOSXOBJ)
$(CC) -arch i386 -arch ppc -bundle -undefined suppress -flat_namespace \
-o expr.d_fat $(MACOSXOBJ) -lm
rm -f ../expr.d_fat
-ln -s expr~/expr.d_fat ..
expr~.d_fat: expr.d_fat
-ln -s expr.d_fat expr~.d_fat
rm -f ../expr~.d_fat
-ln -s expr~/expr~.d_fat ..
fexpr~.d_fat: expr.d_fat
-ln -s expr.d_fat fexpr~.d_fat
rm -f ../fexpr~.d_fat
-ln -s expr~/fexpr~.d_fat ..
install_d_ppc:
install expr.d_ppc $(PDEXTERN)
rm -f $(PDEXTERN)/expr~.d_ppc
rm -f $(PDEXTERN)/fexpr~.d_ppc
cd $(PDEXTERN); \
-ln -s expr.d_ppc expr~.d_ppc; \
-ln -s expr.d_ppc fexpr~.d_ppc
clean_d_ppc:
rm -f *.d_ppc_o *.o
|