1#   Copyright (C) 2004-2009 Tom Szilagyi
2#
3#   This program is free software; you can redistribute it and/or modify
4#   it under the terms of the GNU General Public License as published by
5#   the Free Software Foundation; either version 2 of the License, or
6#   (at your option) any later version.
7#
8#   This program is distributed in the hope that it will be useful,
9#   but WITHOUT ANY WARRANTY; without even the implied warranty of
10#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11#   GNU General Public License for more details.
12#
13#   You should have received a copy of the GNU General Public License
14#   along with this program; if not, write to the Free Software
15#   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
16#
17#   $Id: Makefile,v 1.18 2009/08/17 11:16:19 tszilagyi Exp $
18
19
20#####################################################################
21# PLEASE CHANGE THIS to your preferred installation location!
22#
23# Change this if you want to install somewhere else. In particular
24# you may wish to remove the middle "local/" part of the path.
25
26INSTALL_PLUGINS_DIR	=	/usr/local/lib/ladspa/
27INSTALL_LRDF_DIR	=	/usr/local/share/ladspa/rdf/
28
29# NO EDITING below this line is required
30# if all you want to do is install and use the plugins.
31#####################################################################
32
33
34
35# GENERAL
36
37CC		=	gcc
38CFLAGS		=	-I. -O3 -Wall -fomit-frame-pointer -fstrength-reduce -funroll-loops -ffast-math -c -fPIC -DPIC
39LDFLAGS		=	-nostartfiles -shared -Wl,-Bsymbolic -lc -lm -lrt
40
41PLUGINS		=	tap_autopan.so \
42			tap_chorusflanger.so \
43			tap_deesser.so \
44			tap_dynamics_m.so \
45			tap_dynamics_st.so \
46			tap_eq.so \
47			tap_eqbw.so \
48			tap_doubler.so \
49			tap_pinknoise.so \
50			tap_pitch.so \
51			tap_reflector.so \
52			tap_reverb.so \
53			tap_rotspeak.so \
54			tap_limiter.so \
55			tap_sigmoid.so \
56			tap_echo.so \
57			tap_tremolo.so \
58			tap_tubewarmth.so \
59			tap_vibrato.so
60
61
62all: $(PLUGINS)
63
64# RULES TO BUILD PLUGINS FROM C CODE
65
66tap_tremolo.so: tap_tremolo.c tap_utils.h ladspa.h
67	$(CC) $(CFLAGS) tap_tremolo.c -o tap_tremolo.o
68	$(CC) $(LDFLAGS) -o tap_tremolo.so tap_tremolo.o
69
70tap_eq.so: tap_eq.c tap_utils.h ladspa.h
71	$(CC) $(CFLAGS) tap_eq.c -o tap_eq.o
72	$(CC) $(LDFLAGS) -o tap_eq.so tap_eq.o
73
74tap_eqbw.so: tap_eqbw.c tap_utils.h ladspa.h
75	$(CC) $(CFLAGS) tap_eqbw.c -o tap_eqbw.o
76	$(CC) $(LDFLAGS) -o tap_eqbw.so tap_eqbw.o
77
78tap_echo.so: tap_echo.c tap_utils.h ladspa.h
79	$(CC) $(CFLAGS) tap_echo.c -o tap_echo.o
80	$(CC) $(LDFLAGS) -o tap_echo.so tap_echo.o
81
82tap_reverb.so: tap_reverb.c tap_reverb.h tap_reverb_presets.h tap_utils.h ladspa.h
83	$(CC) $(CFLAGS) tap_reverb.c -o tap_reverb.o
84	$(CC) $(LDFLAGS) -o tap_reverb.so tap_reverb.o
85
86tap_limiter.so: tap_limiter.c tap_utils.h ladspa.h
87	$(CC) $(CFLAGS) tap_limiter.c -o tap_limiter.o
88	$(CC) $(LDFLAGS) -o tap_limiter.so tap_limiter.o
89
90tap_autopan.so: tap_autopan.c tap_utils.h ladspa.h
91	$(CC) $(CFLAGS) tap_autopan.c -o tap_autopan.o
92	$(CC) $(LDFLAGS) -o tap_autopan.so tap_autopan.o
93
94tap_deesser.so: tap_deesser.c tap_utils.h ladspa.h
95	$(CC) $(CFLAGS) tap_deesser.c -o tap_deesser.o
96	$(CC) $(LDFLAGS) -o tap_deesser.so tap_deesser.o
97
98tap_vibrato.so: tap_vibrato.c tap_utils.h ladspa.h
99	$(CC) $(CFLAGS) tap_vibrato.c -o tap_vibrato.o
100	$(CC) $(LDFLAGS) -o tap_vibrato.so tap_vibrato.o
101
102tap_rotspeak.so: tap_rotspeak.c tap_utils.h ladspa.h
103	$(CC) $(CFLAGS) tap_rotspeak.c -o tap_rotspeak.o
104	$(CC) $(LDFLAGS) -o tap_rotspeak.so tap_rotspeak.o
105
106tap_pitch.so: tap_pitch.c tap_utils.h ladspa.h
107	$(CC) $(CFLAGS) tap_pitch.c -o tap_pitch.o
108	$(CC) $(LDFLAGS) -o tap_pitch.so tap_pitch.o
109
110tap_dynamics_m.so: tap_dynamics_m.c tap_dynamics_presets.h tap_utils.h ladspa.h
111	$(CC) $(CFLAGS) tap_dynamics_m.c -o tap_dynamics_m.o
112	$(CC) $(LDFLAGS) -o tap_dynamics_m.so tap_dynamics_m.o
113
114tap_dynamics_st.so: tap_dynamics_st.c tap_dynamics_presets.h tap_utils.h ladspa.h
115	$(CC) $(CFLAGS) tap_dynamics_st.c -o tap_dynamics_st.o
116	$(CC) $(LDFLAGS) -o tap_dynamics_st.so tap_dynamics_st.o
117
118tap_reflector.so: tap_reflector.c tap_utils.h ladspa.h
119	$(CC) $(CFLAGS) tap_reflector.c -o tap_reflector.o
120	$(CC) $(LDFLAGS) -o tap_reflector.so tap_reflector.o
121
122tap_pinknoise.so: tap_pinknoise.c tap_utils.h ladspa.h
123	$(CC) $(CFLAGS) tap_pinknoise.c -o tap_pinknoise.o
124	$(CC) $(LDFLAGS) -o tap_pinknoise.so tap_pinknoise.o
125
126tap_doubler.so: tap_doubler.c tap_utils.h ladspa.h
127	$(CC) $(CFLAGS) tap_doubler.c -o tap_doubler.o
128	$(CC) $(LDFLAGS) -o tap_doubler.so tap_doubler.o
129
130tap_sigmoid.so: tap_sigmoid.c tap_utils.h ladspa.h
131	$(CC) $(CFLAGS) tap_sigmoid.c -o tap_sigmoid.o
132	$(CC) $(LDFLAGS) -o tap_sigmoid.so tap_sigmoid.o
133
134tap_tubewarmth.so: tap_tubewarmth.c tap_utils.h ladspa.h
135	$(CC) $(CFLAGS) tap_tubewarmth.c -o tap_tubewarmth.o
136	$(CC) $(LDFLAGS) -o tap_tubewarmth.so tap_tubewarmth.o
137
138tap_chorusflanger.so: tap_chorusflanger.c tap_utils.h ladspa.h
139	$(CC) $(CFLAGS) tap_chorusflanger.c -o tap_chorusflanger.o
140	$(CC) $(LDFLAGS) -o tap_chorusflanger.so tap_chorusflanger.o
141
142
143# OTHER TARGETS
144
145install: targets
146	-mkdir -p		$(INSTALL_PLUGINS_DIR)
147	cp *.so 		$(INSTALL_PLUGINS_DIR)
148	-mkdir -p		$(INSTALL_LRDF_DIR)
149	cp tap-plugins.rdf 	$(INSTALL_LRDF_DIR)
150	cp tap_reverb.rdf 	$(INSTALL_LRDF_DIR)
151
152targets:	$(PLUGINS)
153
154always:
155
156clean:
157	-rm -f `find . -name "*.so"`
158	-rm -f `find . -name "*.o"`
159	-rm -f `find . -name "*~"`
160
161