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