cannam@124
|
1 #
|
cannam@124
|
2 # Makefile template for PortAudioCpp
|
cannam@124
|
3 # Ludwig Schwardt
|
cannam@124
|
4 # 01/10/2003
|
cannam@124
|
5 #
|
cannam@124
|
6 # Not much to edit here - rather check configure.ac
|
cannam@124
|
7 #
|
cannam@124
|
8
|
cannam@124
|
9 PREFIX = @prefix@
|
cannam@124
|
10 CC = @CC@
|
cannam@124
|
11 CXX = @CXX@
|
cannam@124
|
12 CFLAGS = @CFLAGS@ @DEFS@
|
cannam@124
|
13 CXXFLAGS = @CXXFLAGS@
|
cannam@124
|
14 SHARED_FLAGS = @SHARED_FLAGS@
|
cannam@124
|
15 LIBS = @LIBS@
|
cannam@124
|
16 DLL_LIBS = @DLL_LIBS@
|
cannam@124
|
17 AR = @AR@
|
cannam@124
|
18 RANLIB = @RANLIB@
|
cannam@124
|
19 INSTALL = @INSTALL@
|
cannam@124
|
20
|
cannam@124
|
21 PACPP_ROOT = @PACPP_ROOT@
|
cannam@124
|
22 PORTAUDIO = @PORTAUDIO@
|
cannam@124
|
23 PADLL = @PADLL@
|
cannam@124
|
24 PACPP_DLL = @PACPP_DLL@
|
cannam@124
|
25 PALIB = libportaudio.a
|
cannam@124
|
26 PACPP_LIB = libportaudiocpp.a
|
cannam@124
|
27 PACPP_DLLV = $(PACPP_DLL).0.0.12
|
cannam@124
|
28
|
cannam@124
|
29 SRCDIR = $(PACPP_ROOT)/source/portaudiocpp
|
cannam@124
|
30 BINDIR = $(PACPP_ROOT)/example
|
cannam@124
|
31 LIBDIR = $(PACPP_ROOT)/lib
|
cannam@124
|
32 DOCDIR = $(PACPP_ROOT)/doc
|
cannam@124
|
33
|
cannam@124
|
34 OBJS = \
|
cannam@124
|
35 $(SRCDIR)/BlockingStream.o \
|
cannam@124
|
36 $(SRCDIR)/CallbackInterface.o \
|
cannam@124
|
37 $(SRCDIR)/CallbackStream.o \
|
cannam@124
|
38 $(SRCDIR)/CFunCallbackStream.o \
|
cannam@124
|
39 $(SRCDIR)/CppFunCallbackStream.o \
|
cannam@124
|
40 $(SRCDIR)/Device.o \
|
cannam@124
|
41 $(SRCDIR)/DirectionSpecificStreamParameters.o \
|
cannam@124
|
42 $(SRCDIR)/Exception.o \
|
cannam@124
|
43 $(SRCDIR)/HostApi.o \
|
cannam@124
|
44 $(SRCDIR)/InterfaceCallbackStream.o \
|
cannam@124
|
45 $(SRCDIR)/MemFunCallbackStream.o \
|
cannam@124
|
46 $(SRCDIR)/Stream.o \
|
cannam@124
|
47 $(SRCDIR)/StreamParameters.o \
|
cannam@124
|
48 $(SRCDIR)/System.o \
|
cannam@124
|
49 $(SRCDIR)/SystemDeviceIterator.o \
|
cannam@124
|
50 $(SRCDIR)/SystemHostApiIterator.o
|
cannam@124
|
51
|
cannam@124
|
52 # Not supported yet
|
cannam@124
|
53 # $(SRCDIR)/AsioDeviceAdapter.o
|
cannam@124
|
54
|
cannam@124
|
55 EXAMPLES = \
|
cannam@124
|
56 $(BINDIR)/devs \
|
cannam@124
|
57 $(BINDIR)/sine
|
cannam@124
|
58
|
cannam@124
|
59 .PHONY: all clean docs
|
cannam@124
|
60
|
cannam@124
|
61 all: $(EXAMPLES) $(LIBDIR)/$(PACPP_LIB) $(LIBDIR)/$(PACPP_DLL)
|
cannam@124
|
62
|
cannam@124
|
63 clean:
|
cannam@124
|
64 rm -rf $(SRCDIR)/*.o $(BINDIR)/*.o $(EXAMPLES) $(LIBDIR) $(DOCDIR)/api_reference
|
cannam@124
|
65 rm -rf autom4te.cache config.status config.log
|
cannam@124
|
66
|
cannam@124
|
67 docs:
|
cannam@124
|
68 cd $(DOCDIR); doxygen config.doxy.linux
|
cannam@124
|
69
|
cannam@124
|
70 %.o: %.c
|
cannam@124
|
71 $(CC) -c $(CFLAGS) $< -o $@
|
cannam@124
|
72
|
cannam@124
|
73 %.o: %.cxx
|
cannam@124
|
74 $(CXX) -c $(CXXFLAGS) $< -o $@
|
cannam@124
|
75
|
cannam@124
|
76
|
cannam@124
|
77 $(EXAMPLES): $(BINDIR)/%: $(BINDIR)/%.o $(OBJS)
|
cannam@124
|
78 $(CXX) $^ -o $@ $(LIBS)
|
cannam@124
|
79
|
cannam@124
|
80 $(LIBDIR)/$(PACPP_LIB): $(LIBDIR) $(OBJS)
|
cannam@124
|
81 $(AR) ruv $(LIBDIR)/$(PACPP_LIB) $(OBJS)
|
cannam@124
|
82 $(RANLIB) $(LIBDIR)/$(PACPP_LIB)
|
cannam@124
|
83
|
cannam@124
|
84 $(LIBDIR)/$(PACPP_DLLV): $(LIBDIR) $(OBJS)
|
cannam@124
|
85 $(CXX) $(SHARED_FLAGS) -o $(LIBDIR)/$(PACPP_DLLV) $(OBJS) $(DLL_LIBS)
|
cannam@124
|
86
|
cannam@124
|
87 $(LIBDIR)/$(PACPP_DLL): $(LIBDIR) $(OBJS)
|
cannam@124
|
88 $(CXX) $(SHARED_FLAGS) -o $(LIBDIR)/$(PACPP_DLL) $(OBJS) $(DLL_LIBS)
|
cannam@124
|
89
|
cannam@124
|
90 #install: $(LIBDIR)/$(PACPP_LIB) $(LIBDIR)/$(PACPP_DLLV)
|
cannam@124
|
91 # $(INSTALL) -m 644 $(LIBDIR)/$(PACPP_DLLV) $(PREFIX)/lib/$(PACPP_DLLV)
|
cannam@124
|
92 # $(INSTALL) -m 644 $(LIBDIR)/$(PACPP_LIB) $(PREFIX)/lib/$(PACPP_LIB)
|
cannam@124
|
93 # cd $(PREFIX)/lib && rm -f $(PACPP_DLL) && ln -s $(PACPP_DLLV) $(PACPP_DLL)
|
cannam@124
|
94 # @echo ""
|
cannam@124
|
95 # @echo "------------------------------------------------------------"
|
cannam@124
|
96 # @echo "PortAudioCpp was successfully installed."
|
cannam@124
|
97 # @echo ""
|
cannam@124
|
98 # @echo "On some systems (e.g. Linux) you should run 'ldconfig' now"
|
cannam@124
|
99 # @echo "to make the shared object available. You may also need to"
|
cannam@124
|
100 # @echo "modify your LD_LIBRARY_PATH environment variable to include"
|
cannam@124
|
101 # @echo "the directory $(PREFIX)/lib"
|
cannam@124
|
102 # @echo "------------------------------------------------------------"
|
cannam@124
|
103 # @echo ""
|
cannam@124
|
104
|
cannam@124
|
105 $(LIBDIR):
|
cannam@124
|
106 mkdir $(LIBDIR)
|