blob: 0c01a32a446ff4073fc37e191235e1f8b5fe0044 (
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
|
# set Name and system
NAME=algocomp
#SYSTEM = nt
SYSTEM = linux
# set paths for windows
# where is VC++ ???
VC="C:\Programme\Microsoft Visual C++ Toolkit 2003"
VCLINK="C:\Programme\Microsoft Visual C++ Toolkit 2003\bin\link"
# where is pd
#PDPATH="E:\Program Files\pd-0.38-3"
PDPATH=C:\Programme\pd-0.38-3
LIBPATH="$(PDPATH)/bin"
install: install_$(SYSTEM)
all: $(SYSTEM)
#all: pd_linux install_linux
# ----------------------- LINUX i386 -----------------------
linux: $(NAME).pd_linux
.SUFFIXES: .pd_linux
LINUXCFLAGS = -DPD -DUNIX -O2 -funroll-loops -fomit-frame-pointer \
-Wall -W -Wshadow -Wstrict-prototypes -Werror \
-Wno-unused -Wno-parentheses -Wno-switch
# where is your m_pd.h ???
LINUXINCLUDE = -I../../src
.c.pd_linux:
cc -O2 -Wall -DPD -fPIC $(LINUXCFLAGS) $(LINUXINCLUDE) -c $*.c
ld -export_dynamic -shared -o $*.pd_linux $*.o -lc
strip --strip-unneeded $*.pd_linux
install_linux:
sudo cp *.pd_linux /usr/lib/pd/extra/
cp *.pd_linux ../../download
# ----------------------- NT -----------------------
nt: $(NAME).dll
.SUFFIXES: .dll
PDNTCFLAGS = /W3 /WX /O2 /G6 /DNT /DPD /nologo
PDNTINCLUDE = /I. /I$(PDPATH)\tcl\include /I$(PDPATH)\src /I$(VC)\include /Iinclude
PDNTLDIR = "C:\Programme\Microsoft Visual C++ Toolkit 2003\Lib"
PDNTLIB = "C:\Programme\Microsoft Visual C++ Toolkit 2003\Lib\libc.lib" \
"C:\Programme\Microsoft Visual C++ Toolkit 2003\Lib\oldnames.lib" \
"C:\Programme\Microsoft Visual C++ Toolkit 2003\Lib\kernel32.lib" \
"$(PDPATH)\bin\pd.lib"
.c.dll: algocomp.c chaotic.c ifs.c selfsimilar.c chaossignals.c pan.c
cl /W3 /WX /O2 /G6 /DNT /DPD /nologo /I. /I"C:\Programme\flextbuild\pd\tcl\include" /I"C:\Programme\flextbuild\pd\src" /I"C:\Programme\Microsoft Visual C++ Toolkit 2003\include" /Iinclude /c $(NAME).c
link /dll /export:$(NAME)_setup $*.obj $(PDNTLIB)
#.c.dll:
# cl $(PDNTCFLAGS) $(PDNTINCLUDE) /c $*.c
# link /dll /export:$(CSYM)_setup $*.obj $(PDNTLIB)
install_nt:
cp $(NAME).dll $(PDPATH)\externs
# -------------------------- XP --------------------------
# $(CXX) $(LDFLAGS) -shared $(patsubst %,-L%,$(LIBPATH)) $^ $(patsubst %,-l%,$(LIBS)) -o $@
pd_xp:
gcc -O2 -Wall -DPD -L$(LIBPATH) -c $(NAME).c
ld -export_dynamic -shared -o $(NAME).dll -lc
install_xp:
# copy $(NAME).dll $(PDPATH)/externs
cp $(NAME).dll $(PDPATH)/externs
clean:
rm -f *.o *.dll *.exp *.obj *.lib
rm -f *.o *.pd_* *.dll so_locations
|