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