blob: d45b72e07403d2983101af0e1a88d4a0debdacb7 (
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
|
# Makefile for portaudio ASIO driver version of PD
all: pd gui ..\bin\pd.tk
VC = "C:\Program Files\Microsoft Visual Studio\VC98"
#VC="\Program Files\DevStudio\Vc"
INCLUDE = -I.\ -I..\Tcl\include -I$(VC)\include
LDIR = $(VC)\lib
LIB = /NODEFAULTLIB:libc /NODEFAULTLIB:oldnames /NODEFAULTLIB:kernel \
/NODEFAULTLIB:uuid \
$(LDIR)\libc.lib $(LDIR)\oldnames.lib $(LDIR)\kernel32.lib \
$(LDIR)\wsock32.lib $(LDIR)\winmm.lib ..\bin\pthreadVC.lib
GLIB = $(LIB) ..\lib\tcl83.lib ..\lib\tk83.lib
CFLAGS = /nologo /W3 /DNT /DPD /DPD_INTERNAL /DWIN32 /DWINDOWS /Ox
LFLAGS = /nologo
SYSSRC = s_nt.c s_portaudio.c
SRC = g_canvas.c g_graph.c g_text.c g_rtext.c g_array.c g_template.c g_io.c \
g_scalar.c g_traversal.c g_guiconnect.c g_readwrite.c g_editor.c \
g_all_guis.c g_bang.c g_hdial.c g_hslider.c g_mycanvas.c g_numbox.c \
g_toggle.c g_vdial.c g_vslider.c g_vumeter.c \
m_pd.c m_class.c m_obj.c m_atom.c m_memory.c m_binbuf.c \
m_conf.c m_glob.c m_sched.c \
s_main.c s_inter.c s_unix.c s_file.c s_print.c \
s_loader.c s_path.c s_entry.c \
d_ugen.c d_ctl.c d_arithmetic.c d_osc.c d_filter.c d_dac.c d_misc.c \
d_math.c d_fft.c d_mayer_fft.c d_fftroutine.c d_array.c d_global.c \
d_delay.c d_resample.c \
x_arithmetic.c x_connective.c x_interface.c x_midi.c x_misc.c \
x_time.c x_acoustics.c x_net.c x_qlist.c x_gui.c d_soundfile.c \
$(SYSSRC)
SRCPA = pa_lib.c pa_trace.c pablio_pd.c ringbuffer_pd.c
SRCASIO = pa_asio.cpp
ASIOLIB = $(LDIR)\user32.lib $(LDIR)\gdi32.lib $(LDIR)\winspool.lib $(LDIR)\comdlg32.lib \
$(LDIR)\advapi32.lib $(LDIR)\shell32.lib $(LDIR)\ole32.lib $(LDIR)\oleaut32.lib $(LDIR)\uuid.lib \
$(LDIR)\odbc32.lib $(LDIR)\odbccp32.lib ..\lib\asio\asiolib.lib
PAOBJ = pa_lib.obj pa_trace.obj pablio_pd.obj ringbuffer_pd.obj pa_asio.obj
OBJC = $(SRC:.c=.obj) $(PAOBJ)
GSRC = t_main.c t_tkcmd.c
GOBJ = $(GSRC:.c=.obj)
.PHONY: pd gui
ALLCF = $(CFLAGS) $(INCLUDE) $(INCASIO) $(INCPA) /D_WINDOWS
.c.obj:
cl /c $(ALLCF) /Tc$*.c
pd: ..\bin\pd.exe
gui: ..\bin\pdtcl.dll
..\bin\pd.exe: s_entry.obj ..\bin\pd.lib
link $(LFLAGS) /out:..\bin\pd.exe /INCREMENTAL:NO s_entry.obj \
..\bin\pd.lib $(LIB) $(ASIOLIB)
..\bin\pd.dll ..\bin\pd.lib: $(OBJC) $(OBJASIO)
link $(LFLAGS) /dll /export:sys_main /out:..\bin\pd.dll $(OBJC) \
$(OBJASIO) $(LIB) $(ASIOLIB)
..\bin\pdtcl.dll: t_tkcmd.obj
link $(LFLAGS) /dll /export:Pdtcl_Init /out:..\bin\pdtcl.dll \
t_tkcmd.obj $(GLIB)
..\bin\pd.tk: u_main.tk; copy u_main.tk ..\bin\pd.tk
# explicit rules to compile portaudio sources:
pa_lib.obj: pa_lib.c
cl /c $(ALLCF) pa_lib.c
pa_trace.obj: pa_trace.c
cl /c $(ALLCF) pa_trace.c
pablio_pd.obj: pablio_pd.c
cl /c $(ALLCF) pablio_pd.c
ringbuffer_pd.obj: ringbuffer_pd.c
cl /c $(ALLCF) ringbuffer_pd.c
pa_asio.obj: pa_asio.cpp
cl /c $(ALLCF) pa_asio.cpp
# the following should also clean up "bin" but it doesn't because "bin" holds
# precious stuff from elsewhere.
clean:
del *.obj
|