blob: eb0509113aaa9a770fe5bc9423f288588eee8b94 [file] [log] [blame]
Alexandre Lision67916dd2014-01-24 13:33:04 -05001# Linux
2
3# Define the desired sound device backend
4# Valid values are:
5# - pa_unix: PortAudio on Unix (OSS or ALSA)
6# - pa_darwinos: PortAudio on MacOSX (CoreAudio)
7# - pa_old_darwinos: PortAudio on MacOSX (old CoreAudio, for OSX 10.2)
8# - pa_win32: PortAudio on Win32 (WMME)
9# - ds: Win32 DirectSound (dsound.c)
10# - null: Null sound device (nullsound.c)
11AC_PJMEDIA_SND=pa_unix
12
13#
14# Codecs
15#
16AC_NO_G711_CODEC=0
17AC_NO_L16_CODEC=0
18AC_NO_GSM_CODEC=0
19AC_NO_SPEEX_CODEC=0
20AC_NO_ILBC_CODEC=0
21AC_NO_G722_CODEC=0
22AC_NO_G7221_CODEC=0
23
24export CODEC_OBJS=
25
26ifeq ($(AC_NO_G711_CODEC),1)
27export CFLAGS += -DPJMEDIA_HAS_G711_CODEC=0
28else
29export CODEC_OBJS +=
30endif
31
32ifeq ($(AC_NO_L16_CODEC),1)
33export CFLAGS += -DPJMEDIA_HAS_L16_CODEC=0
34else
35export CODEC_OBJS += l16.o
36endif
37
38ifeq ($(AC_NO_GSM_CODEC),1)
39export CFLAGS += -DPJMEDIA_HAS_GSM_CODEC=0
40else
41export CODEC_OBJS += gsm.o
42endif
43
44ifeq ($(AC_NO_SPEEX_CODEC),1)
45export CFLAGS += -DPJMEDIA_HAS_SPEEX_CODEC=0
46else
47export CFLAGS += -I$(THIRD_PARTY)/build/speex -I$(THIRD_PARTY)/speex/include
48export CODEC_OBJS += speex_codec.o
49
50ifeq (1,1)
51export PJMEDIA_OBJS += echo_speex.o
52endif
53
54endif
55
56ifeq ($(AC_NO_ILBC_CODEC),1)
57export CFLAGS += -DPJMEDIA_HAS_ILBC_CODEC=0
58else
59export CODEC_OBJS += ilbc.o
60endif
61
62ifeq ($(AC_NO_G722_CODEC),1)
63export CFLAGS += -DPJMEDIA_HAS_G722_CODEC=0
64else
65export CODEC_OBJS += g722.o g722/g722_enc.o g722/g722_dec.o
66endif
67
68ifeq ($(AC_NO_G7221_CODEC),1)
69export CFLAGS += -DPJMEDIA_HAS_G7221_CODEC=0
70else
71export CODEC_OBJS += g7221.o
72export G7221_CFLAGS += -I$(THIRD_PARTY)
73endif
74
75#
76# Resample
77#
78AC_PJMEDIA_RESAMPLE=libresample
79
80ifeq ($(AC_PJMEDIA_RESAMPLE),none)
81# No resample support
82export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_NONE
83endif
84
85ifeq ($(AC_PJMEDIA_RESAMPLE),libresample)
86export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
87endif
88
89ifeq ($(AC_PJMEDIA_RESAMPLE),libsamplerate)
90export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBSAMPLERATE
91endif
92
93ifeq ($(AC_PJMEDIA_RESAMPLE),speex)
94export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_SPEEX
95endif
96
97#
98# SRTP
99#
100#ifeq (@ac_external_srtp@,1)
101ifeq (0,1)
102# External SRTP
103export CFLAGS += -DPJMEDIA_EXTERNAL_SRTP=1
104else
105# Our SRTP in third_party
106export CFLAGS += -I$(THIRD_PARTY)/build/srtp \
107 -I$(THIRD_PARTY)/srtp/crypto/include \
108 -I$(THIRD_PARTY)/srtp/include
109
110endif
111
112#
113# PortAudio
114#
115ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),)
116export CFLAGS += -I$(THIRD_PARTY)/build/portaudio -I$(THIRD_PARTY)/portaudio/include -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_PORTAUDIO_SOUND
117export SOUND_OBJS = pasound.o
118endif
119
120#
121# Win32 DirectSound
122#
123ifeq ($(AC_PJMEDIA_SND),ds)
124export SOUND_OBJS = dsound.o
125export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_WIN32_DIRECT_SOUND
126endif
127
128#
129# Last resort, null sound device
130#
131ifeq ($(AC_PJMEDIA_SND),null)
132export SOUND_OBJS = nullsound.o
133export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_NULL_SOUND
134endif
135
136