Chris@4: # Chris@4: # PortAudio V19 Makefile.in Chris@4: # Chris@4: # Dominic Mazzoni Chris@4: # Modifications by Mikael Magnusson Chris@4: # Modifications by Stelios Bounanos Chris@4: # Chris@4: Chris@4: top_srcdir = @top_srcdir@ Chris@4: srcdir = @srcdir@ Chris@4: VPATH = @srcdir@ Chris@4: top_builddir = . Chris@4: PREFIX = @prefix@ Chris@4: prefix = $(PREFIX) Chris@4: exec_prefix = @exec_prefix@ Chris@4: bindir = @bindir@ Chris@4: libdir = @libdir@ Chris@4: includedir = @includedir@ Chris@4: CC = @CC@ Chris@4: CXX = @CXX@ Chris@4: CFLAGS = @CFLAGS@ @DEFS@ Chris@4: LIBS = @LIBS@ Chris@4: AR = @AR@ Chris@4: RANLIB = @RANLIB@ Chris@4: SHELL = @SHELL@ Chris@4: LIBTOOL = @LIBTOOL@ Chris@4: INSTALL = @INSTALL@ Chris@4: INSTALL_DATA = @INSTALL_DATA@ Chris@4: SHARED_FLAGS = @SHARED_FLAGS@ Chris@4: LDFLAGS = @LDFLAGS@ Chris@4: DLL_LIBS = @DLL_LIBS@ Chris@4: CXXFLAGS = @CXXFLAGS@ Chris@4: NASM = @NASM@ Chris@4: NASMOPT = @NASMOPT@ Chris@4: LN_S = @LN_S@ Chris@4: LT_CURRENT=@LT_CURRENT@ Chris@4: LT_REVISION=@LT_REVISION@ Chris@4: LT_AGE=@LT_AGE@ Chris@4: Chris@4: OTHER_OBJS = @OTHER_OBJS@ Chris@4: INCLUDES = @INCLUDES@ Chris@4: Chris@4: PALIB = libportaudio.la Chris@4: PAINC = include/portaudio.h Chris@4: Chris@4: PA_LDFLAGS = $(LDFLAGS) $(SHARED_FLAGS) -rpath $(libdir) -no-undefined \ Chris@4: -export-symbols-regex "(Pa|PaMacCore|PaJack|PaAlsa|PaAsio|PaOSS)_.*" \ Chris@4: -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) Chris@4: Chris@4: COMMON_OBJS = \ Chris@4: src/common/pa_allocation.o \ Chris@4: src/common/pa_converters.o \ Chris@4: src/common/pa_cpuload.o \ Chris@4: src/common/pa_dither.o \ Chris@4: src/common/pa_debugprint.o \ Chris@4: src/common/pa_front.o \ Chris@4: src/common/pa_process.o \ Chris@4: src/common/pa_stream.o \ Chris@4: src/common/pa_trace.o \ Chris@4: src/hostapi/skeleton/pa_hostapi_skeleton.o Chris@4: Chris@4: LOOPBACK_OBJS = \ Chris@4: qa/loopback/src/audio_analyzer.o \ Chris@4: qa/loopback/src/biquad_filter.o \ Chris@4: qa/loopback/src/paqa_tools.o \ Chris@4: qa/loopback/src/test_audio_analyzer.o \ Chris@4: qa/loopback/src/write_wav.o \ Chris@4: qa/loopback/src/paqa.o Chris@4: Chris@4: EXAMPLES = \ Chris@4: bin/pa_devs \ Chris@4: bin/pa_fuzz \ Chris@4: bin/paex_pink \ Chris@4: bin/paex_read_write_wire \ Chris@4: bin/paex_record \ Chris@4: bin/paex_saw \ Chris@4: bin/paex_sine \ Chris@4: bin/paex_write_sine \ Chris@4: bin/paex_write_sine_nonint Chris@4: Chris@4: SELFTESTS = \ Chris@4: bin/paqa_devs \ Chris@4: bin/paqa_errs \ Chris@4: bin/paqa_latency Chris@4: Chris@4: TESTS = \ Chris@4: bin/patest1 \ Chris@4: bin/patest_buffer \ Chris@4: bin/patest_callbackstop \ Chris@4: bin/patest_clip \ Chris@4: bin/patest_dither \ Chris@4: bin/patest_hang \ Chris@4: bin/patest_in_overflow \ Chris@4: bin/patest_latency \ Chris@4: bin/patest_leftright \ Chris@4: bin/patest_longsine \ Chris@4: bin/patest_many \ Chris@4: bin/patest_maxsines \ Chris@4: bin/patest_mono \ Chris@4: bin/patest_multi_sine \ Chris@4: bin/patest_out_underflow \ Chris@4: bin/patest_prime \ Chris@4: bin/patest_ringmix \ Chris@4: bin/patest_sine8 \ Chris@4: bin/patest_sine_channelmaps \ Chris@4: bin/patest_sine_formats \ Chris@4: bin/patest_sine_time \ Chris@4: bin/patest_sine_srate \ Chris@4: bin/patest_start_stop \ Chris@4: bin/patest_stop \ Chris@4: bin/patest_stop_playout \ Chris@4: bin/patest_toomanysines \ Chris@4: bin/patest_two_rates \ Chris@4: bin/patest_underflow \ Chris@4: bin/patest_wire \ Chris@4: bin/pa_minlat Chris@4: Chris@4: # Most of these don't compile yet. Put them in TESTS, above, if Chris@4: # you want to try to compile them... Chris@4: ALL_TESTS = \ Chris@4: $(TESTS) \ Chris@4: bin/patest_sync \ Chris@4: bin/debug_convert \ Chris@4: bin/debug_dither_calc \ Chris@4: bin/debug_dual \ Chris@4: bin/debug_multi_in \ Chris@4: bin/debug_multi_out \ Chris@4: bin/debug_record \ Chris@4: bin/debug_record_reuse \ Chris@4: bin/debug_sine_amp \ Chris@4: bin/debug_sine \ Chris@4: bin/debug_sine_formats \ Chris@4: bin/debug_srate \ Chris@4: bin/debug_test1 Chris@4: Chris@4: OBJS := $(COMMON_OBJS) $(OTHER_OBJS) Chris@4: Chris@4: LTOBJS := $(OBJS:.o=.lo) Chris@4: Chris@4: SRC_DIRS = \ Chris@4: src/common \ Chris@4: src/hostapi/alsa \ Chris@4: src/hostapi/asihpi \ Chris@4: src/hostapi/asio \ Chris@4: src/hostapi/coreaudio \ Chris@4: src/hostapi/dsound \ Chris@4: src/hostapi/jack \ Chris@4: src/hostapi/oss \ Chris@4: src/hostapi/wasapi \ Chris@4: src/hostapi/wdmks \ Chris@4: src/hostapi/wmme \ Chris@4: src/os/unix \ Chris@4: src/os/win Chris@4: Chris@4: SUBDIRS = Chris@4: @ENABLE_CXX_TRUE@SUBDIRS += bindings/cpp Chris@4: Chris@4: all: lib/$(PALIB) all-recursive tests examples selftests Chris@4: Chris@4: tests: bin-stamp $(TESTS) Chris@4: Chris@4: examples: bin-stamp $(EXAMPLES) Chris@4: Chris@4: selftests: bin-stamp $(SELFTESTS) Chris@4: Chris@4: loopback: bin-stamp bin/paloopback Chris@4: Chris@4: # With ASIO enabled we must link libportaudio and all test programs with CXX Chris@4: lib/$(PALIB): lib-stamp $(LTOBJS) $(MAKEFILE) $(PAINC) Chris@4: @WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) $(PA_LDFLAGS) -o lib/$(PALIB) $(LTOBJS) $(DLL_LIBS) Chris@4: @WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) $(PA_LDFLAGS) -o lib/$(PALIB) $(LTOBJS) $(DLL_LIBS) Chris@4: Chris@4: $(ALL_TESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) test/%.c Chris@4: @WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS) Chris@4: @WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS) Chris@4: Chris@4: $(EXAMPLES): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) examples/%.c Chris@4: @WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS) Chris@4: @WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS) Chris@4: Chris@4: $(SELFTESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) qa/%.c Chris@4: @WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS) Chris@4: @WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS) Chris@4: Chris@4: bin/paloopback: lib/$(PALIB) $(MAKEFILE) $(PAINC) $(LOOPBACK_OBJS) Chris@4: @WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS) Chris@4: @WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS) Chris@4: Chris@4: install: lib/$(PALIB) portaudio-2.0.pc Chris@4: $(INSTALL) -d $(DESTDIR)$(libdir) Chris@4: $(LIBTOOL) --mode=install $(INSTALL) lib/$(PALIB) $(DESTDIR)$(libdir) Chris@4: $(INSTALL) -d $(DESTDIR)$(includedir) Chris@4: for include in $(INCLUDES); do \ Chris@4: $(INSTALL_DATA) -m 644 $(top_srcdir)/include/$$include $(DESTDIR)$(includedir)/$$include; \ Chris@4: done Chris@4: $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig Chris@4: $(INSTALL) -m 644 portaudio-2.0.pc $(DESTDIR)$(libdir)/pkgconfig/portaudio-2.0.pc Chris@4: @echo "" Chris@4: @echo "------------------------------------------------------------" Chris@4: @echo "PortAudio was successfully installed." Chris@4: @echo "" Chris@4: @echo "On some systems (e.g. Linux) you should run 'ldconfig' now" Chris@4: @echo "to make the shared object available. You may also need to" Chris@4: @echo "modify your LD_LIBRARY_PATH environment variable to include" Chris@4: @echo "the directory $(libdir)" Chris@4: @echo "------------------------------------------------------------" Chris@4: @echo "" Chris@4: $(MAKE) install-recursive Chris@4: Chris@4: uninstall: Chris@4: $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(PALIB) Chris@4: $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(includedir)/portaudio.h Chris@4: $(MAKE) uninstall-recursive Chris@4: Chris@4: clean: Chris@4: $(LIBTOOL) --mode=clean rm -f $(LTOBJS) $(LOOPBACK_OBJS) $(ALL_TESTS) lib/$(PALIB) Chris@4: $(RM) bin-stamp lib-stamp Chris@4: -$(RM) -r bin lib Chris@4: Chris@4: distclean: clean Chris@4: $(RM) config.log config.status Makefile libtool portaudio-2.0.pc Chris@4: Chris@4: %.o: %.c $(MAKEFILE) $(PAINC) Chris@4: $(CC) -c $(CFLAGS) $< -o $@ Chris@4: Chris@4: %.lo: %.c $(MAKEFILE) $(PAINC) Chris@4: $(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) $< -o $@ Chris@4: Chris@4: %.lo: %.cpp $(MAKEFILE) $(PAINC) Chris@4: $(LIBTOOL) --mode=compile --tag=CXX $(CXX) -c $(CXXFLAGS) $< -o $@ Chris@4: Chris@4: %.o: %.cpp $(MAKEFILE) $(PAINC) Chris@4: $(CXX) -c $(CXXFLAGS) $< -o $@ Chris@4: Chris@4: %.o: %.asm Chris@4: $(NASM) $(NASMOPT) -o $@ $< Chris@4: Chris@4: bin-stamp: Chris@4: -mkdir bin Chris@4: touch $@ Chris@4: Chris@4: lib-stamp: Chris@4: -mkdir lib Chris@4: -mkdir -p $(SRC_DIRS) Chris@4: touch $@ Chris@4: Chris@4: Makefile: Makefile.in config.status Chris@4: $(SHELL) config.status Chris@4: Chris@4: all-recursive: Chris@4: if test -n "$(SUBDIRS)" ; then for dir in "$(SUBDIRS)"; do $(MAKE) -C $$dir all; done ; fi Chris@4: Chris@4: install-recursive: Chris@4: if test -n "$(SUBDIRS)" ; then for dir in "$(SUBDIRS)"; do $(MAKE) -C $$dir install; done ; fi Chris@4: Chris@4: uninstall-recursive: Chris@4: if test -n "$(SUBDIRS)" ; then for dir in "$(SUBDIRS)"; do $(MAKE) -C $$dir uninstall; done ; fi