diff options
Diffstat (limited to 'pjmedia/build/os-win32.mak')
-rw-r--r-- | pjmedia/build/os-win32.mak | 95 |
1 files changed, 78 insertions, 17 deletions
diff --git a/pjmedia/build/os-win32.mak b/pjmedia/build/os-win32.mak index 78095336..0767ceec 100644 --- a/pjmedia/build/os-win32.mak +++ b/pjmedia/build/os-win32.mak @@ -1,26 +1,87 @@ +# PJMEDIA features exclusion +export CFLAGS += + +# Define the desired sound device backend +# Valid values are: +# - pa_unix: PortAudio on Unix (OSS or ALSA) +# - pa_darwinos: PortAudio on MacOSX (CoreAudio) +# - pa_old_darwinos: PortAudio on MacOSX (old CoreAudio, for OSX 10.2) +# - pa_win32: PortAudio on Win32 (WMME) +# - ds: Win32 DirectSound (dsound.c) +# - null: Null sound device (nullsound.c) +AC_PJMEDIA_SND=pa_win32 + # -# OS specific configuration for Win32 OS target. +# Codecs # +AC_NO_G711_CODEC=0 +AC_NO_L16_CODEC=0 +AC_NO_GSM_CODEC=0 +AC_NO_SPEEX_CODEC=0 +AC_NO_ILBC_CODEC=0 + +export CODEC_OBJS= + +ifeq ($(AC_NO_G711_CODEC),1) +export CFLAGS += -DPJMEDIA_HAS_G711_CODEC=0 +else +export CODEC_OBJS += +endif + +ifeq ($(AC_NO_L16_CODEC),1) +export CFLAGS += -DPJMEDIA_HAS_L16_CODEC=0 +else +export CODEC_OBJS += l16.o +endif + +ifeq ($(AC_NO_GSM_CODEC),1) +export CFLAGS += -DPJMEDIA_HAS_GSM_CODEC=0 +else +export CODEC_OBJS += gsm.o +endif + +ifeq ($(AC_NO_SPEEX_CODEC),1) +export CFLAGS += -DPJMEDIA_HAS_SPEEX_CODEC=0 +else +export CFLAGS += -I$(THIRD_PARTY)/build/speex -I$(THIRD_PARTY)/speex/include +export CODEC_OBJS += speex_codec.o + +#ifeq (@ac_no_speex_aec@,1) +ifeq (0,1) +export PJMEDIA_OBJS += echo_speex.o +endif + +endif + +ifeq ($(AC_NO_ILBC_CODEC),1) +export CFLAGS += -DPJMEDIA_HAS_ILBC_CODEC=0 +else +export CODEC_OBJS += ilbc.o +endif + # -# PJMEDIA_OBJS specified here are object files to be included in PJMEDIA -# (the library) for this specific operating system. Object files common -# to all operating systems should go in Makefile instead. +# PortAudio # -export PJMEDIA_OBJS += $(PA_DIR)/pa_win_hostapis.o $(PA_DIR)/pa_win_util.o \ - $(PA_DIR)/pa_win_wmme.o +ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),) +export CFLAGS += -I$(THIRD_PARTY)/build/portaudio -I$(THIRD_PARTY)/portaudio/include -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_PORTAUDIO_SOUND +export SOUND_OBJS = pasound.o +endif -export OS_CFLAGS += -DPA_NO_ASIO -DPA_NO_DS \ - -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_PORTAUDIO_SOUND +# +# Win32 DirectSound +# +ifeq ($(AC_PJMEDIA_SND),ds) +export SOUND_OBJS = dsound.o +export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_WIN32_DIRECT_SOUND +endif -# Example: -# to activate Null sound, uncomment these two lines below. -#export SOUND_OBJS = $(NULLSOUND_OBJS) -#export OS_CFLAGS += $(CC_DEF)PJMEDIA_HAS_NULL_SOUND +# +# Last resort, null sound device +# +ifeq ($(AC_PJMEDIA_SND),null) +export SOUND_OBJS = nullsound.o +export CFLAGS += -DPJMEDIA_SOUND_IMPLEMENTATION=PJMEDIA_SOUND_NULL_SOUND +endif -# Example: -# to include only GSM and exclude Speex codec, uncomment the "export" line below. -# Note that you'll need to put "#define PJMEDIA_HAS_SPEEX_CODEC 0" in -# <pj/config_site.h> -#export CODEC_OBJS = $(GSM_OBJS) |