Skip to content

Instantly share code, notes, and snippets.

@leedm777
Created December 23, 2013 15:28
Show Gist options
  • Save leedm777/8098963 to your computer and use it in GitHub Desktop.
Save leedm777/8098963 to your computer and use it in GitHub Desktop.
Index: aconfigure
===================================================================
--- aconfigure (revision 4699)
+++ aconfigure (working copy)
@@ -650,6 +650,8 @@
ac_pa_cflags
ac_external_pa
ac_pjmedia_snd
+ac_pjmedia_resample
+ac_external_srtp
ac_external_gsm
ac_external_speex
ac_shared_libraries
@@ -742,6 +744,8 @@
enable_shared
with_external_speex
with_external_gsm
+with_external_srtp
+enable_resample
enable_sound
with_external_pa
enable_oss
@@ -1409,6 +1413,7 @@
Disable floating point where possible
--enable-epoll Use /dev/epoll ioqueue on Linux (experimental)
--enable-shared Build shared libraries
+ --disable-resample Disable resampling implementations
--disable-sound Exclude sound (i.e. use null sound)
--disable-oss Disable OSS audio (default: not disabled)
--disable-video Disable video feature
@@ -1423,8 +1428,7 @@
--disable-g7221-codec Exclude G.7221 codec in the build
--disable-speex-codec Exclude Speex codecs in the build
--disable-ilbc-codec Exclude iLBC codec in the build
- --enable-libsamplerate Link with libsamplerate when available. Note that
- PJMEDIA_RESAMPLE_IMP must also be configured
+ --enable-libsamplerate Link with libsamplerate when available.
--enable-resample-dll Build libresample as shared library
--disable-sdl Disable SDL (default: not disabled)
--disable-ffmpeg Disable ffmpeg (default: not disabled)
@@ -1455,6 +1459,11 @@
make sure that the GSM include/lib files are
accessible to use (hint: use CFLAGS and LDFLAGS env
var to set the include/lib paths)
+ --with-external-srtp Use external SRTP development files, not the one in
+ "third_party" directory. When this option is set,
+ make sure that SRTP is accessible to use (hint: use
+ CFLAGS and LDFLAGS env var to set the include/lib
+ paths)
--with-external-pa Use external PortAudio development files, not the
one in "third_party" directory. When this option is
set, make sure that PortAudio is accessible to use
@@ -5788,8 +5797,58 @@
+ac_external_srtp=0
+# Check whether --with-external-srtp was given.
+if test "${with_external_srtp+set}" = set; then :
+ withval=$with_external_srtp;
+ if test "x$with_external_srtp" != "xno"; then
+ # Test SRTP installation
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if external SRTP devkit is installed" >&5
+$as_echo_n "checking if external SRTP devkit is installed... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <srtp/srtp.h>
+
+int
+main ()
+{
+srtp_init();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes!!" >&5
+$as_echo "yes!!" >&6; }
+ ac_external_srtp="1"
+
+else
+ as_fn_error $? "Unable to use SRTP. If SRTP development files are not available in the default locations, use CFLAGS and LDFLAGS env var to set the include/lib paths" "$LINENO" 5
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ fi
+
+
+fi
+
+
+
+ac_pjmedia_resample=libresample
+
+# Check whether --enable-resample was given.
+if test "${enable_resample+set}" = set; then :
+ enableval=$enable_resample; if test "$enable_resample" = "no"; then
+ ac_pjmedia_resample=none
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: Checking if resampling is disabled...yes" >&5
+$as_echo "Checking if resampling is disabled...yes" >&6; }
+ fi
+
+fi
+
+
+
# Check whether --enable-sound was given.
if test "${enable_sound+set}" = set; then :
enableval=$enable_sound; if test "$enable_sound" = "no"; then
@@ -6257,6 +6316,7 @@
fi
+ ac_pjmedia_resample=libsamplerate
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Skipping libsamplerate detection" >&5
$as_echo "Skipping libsamplerate detection" >&6; }
@@ -7454,13 +7514,13 @@
ac_fn_c_check_header_mongrel "$LINENO" "vo-amrwbenc/enc_if.h" "ac_cv_header_vo_amrwbenc_enc_if_h" "$ac_includes_default"
-if test "x$ac_cv_header_vo_amrwbenc_enc_if_h" = xyes; then :
+if test "x$ac_cv_header_vo_amrwbenc_enc_if_h" = x""yes; then :
opencore_amrwb_enc_h_present=1
fi
ac_fn_c_check_header_mongrel "$LINENO" "opencore-amrwb/dec_if.h" "ac_cv_header_opencore_amrwb_dec_if_h" "$ac_includes_default"
-if test "x$ac_cv_header_opencore_amrwb_dec_if_h" = xyes; then :
+if test "x$ac_cv_header_opencore_amrwb_dec_if_h" = x""yes; then :
opencore_amrwb_dec_h_present=1
fi
@@ -7467,7 +7527,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for D_IF_init in -lopencore-amrwb" >&5
$as_echo_n "checking for D_IF_init in -lopencore-amrwb... " >&6; }
-if ${ac_cv_lib_opencore_amrwb_D_IF_init+:} false; then :
+if test "${ac_cv_lib_opencore_amrwb_D_IF_init+set}" = set; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7501,13 +7561,13 @@
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_opencore_amrwb_D_IF_init" >&5
$as_echo "$ac_cv_lib_opencore_amrwb_D_IF_init" >&6; }
-if test "x$ac_cv_lib_opencore_amrwb_D_IF_init" = xyes; then :
+if test "x$ac_cv_lib_opencore_amrwb_D_IF_init" = x""yes; then :
opencore_amrwb_dec_present=1 && LIBS="$LIBS -lopencore-amrwb"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for E_IF_init in -lvo-amrwbenc" >&5
$as_echo_n "checking for E_IF_init in -lvo-amrwbenc... " >&6; }
-if ${ac_cv_lib_vo_amrwbenc_E_IF_init+:} false; then :
+if test "${ac_cv_lib_vo_amrwbenc_E_IF_init+set}" = set; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7541,7 +7601,7 @@
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_vo_amrwbenc_E_IF_init" >&5
$as_echo "$ac_cv_lib_vo_amrwbenc_E_IF_init" >&6; }
-if test "x$ac_cv_lib_vo_amrwbenc_E_IF_init" = xyes; then :
+if test "x$ac_cv_lib_vo_amrwbenc_E_IF_init" = x""yes; then :
opencore_amrwb_enc_present=1 && LIBS="$LIBS -lvo-amrwbenc"
fi
@@ -7600,7 +7660,7 @@
ac_fn_c_check_header_mongrel "$LINENO" "SKP_Silk_SDK_API.h" "ac_cv_header_SKP_Silk_SDK_API_h" "$ac_includes_default"
-if test "x$ac_cv_header_SKP_Silk_SDK_API_h" = xyes; then :
+if test "x$ac_cv_header_SKP_Silk_SDK_API_h" = x""yes; then :
silk_h_present=1
fi
@@ -7607,7 +7667,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SKP_Silk_SDK_get_version in -lSKP_SILK_SDK" >&5
$as_echo_n "checking for SKP_Silk_SDK_get_version in -lSKP_SILK_SDK... " >&6; }
-if ${ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version+:} false; then :
+if test "${ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version+set}" = set; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7641,7 +7701,7 @@
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version" >&5
$as_echo "$ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version" >&6; }
-if test "x$ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version" = xyes; then :
+if test "x$ac_cv_lib_SKP_SILK_SDK_SKP_Silk_SDK_get_version" = x""yes; then :
silk_present=1 && LIBS="$LIBS -lSKP_SILK_SDK"
fi
Index: aconfigure.ac
===================================================================
--- aconfigure.ac (revision 4699)
+++ aconfigure.ac (working copy)
@@ -528,7 +528,38 @@
)
+dnl # Use external SRTP installation
+AC_SUBST(ac_external_srtp,0)
+AC_ARG_WITH(external-srtp,
+ AC_HELP_STRING([--with-external-srtp],
+ [Use external SRTP development files, not the one in "third_party" directory. When this option is set, make sure that SRTP is accessible to use (hint: use CFLAGS and LDFLAGS env var to set the include/lib paths)]),
+ [
+ if test "x$with_external_srtp" != "xno"; then
+ # Test SRTP installation
+ AC_MSG_CHECKING([if external SRTP devkit is installed])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <srtp/srtp.h>
+ ]],
+ [srtp_init();])],
+ [AC_MSG_RESULT(yes!!)
+ ac_external_srtp="1"
+ ],
+ [AC_MSG_ERROR([Unable to use SRTP. If SRTP development files are not available in the default locations, use CFLAGS and LDFLAGS env var to set the include/lib paths])])
+ fi
+ ]
+ )
+
+dnl # Resample implementation
+AC_SUBST(ac_pjmedia_resample,libresample)
+AC_ARG_ENABLE(resample,
+ AC_HELP_STRING([--disable-resample],
+ [Disable resampling implementations]),
+ [if test "$enable_resample" = "no"; then
+ [ac_pjmedia_resample=none]
+ AC_MSG_RESULT([Checking if resampling is disabled...yes])
+ fi]
+ )
+
dnl # Sound device backend selection
AC_SUBST(ac_pjmedia_snd)
AC_ARG_ENABLE(sound,
@@ -831,8 +862,9 @@
dnl # Include libsamplerate
AC_ARG_ENABLE(libsamplerate,
AC_HELP_STRING([--enable-libsamplerate],
- [Link with libsamplerate when available. Note that PJMEDIA_RESAMPLE_IMP must also be configured]),
- [ AC_CHECK_LIB(samplerate,src_new) ],
+ [Link with libsamplerate when available.]),
+ [ AC_CHECK_LIB(samplerate,src_new) ]
+ [ac_pjmedia_resample=libsamplerate],
AC_MSG_RESULT([Skipping libsamplerate detection])
)
Index: build.mak.in
===================================================================
--- build.mak.in (revision 4699)
+++ build.mak.in (working copy)
@@ -26,15 +26,28 @@
# Determine which party libraries to use
export APP_THIRD_PARTY_EXT :=
export APP_THIRD_PARTY_LIBS :=
-export APP_THIRD_PARTY_LIB_FILES := $(PJ_DIR)/third_party/lib/libmilenage-$(LIB_SUFFIX) $(PJ_DIR)/third_party/lib/libsrtp-$(LIB_SUFFIX)
+export APP_THIRD_PARTY_LIB_FILES := $(PJ_DIR)/third_party/lib/libmilenage-$(LIB_SUFFIX)
ifeq ($(PJ_SHARED_LIBRARIES),)
-APP_THIRD_PARTY_LIBS += -lmilenage-$(TARGET_NAME) -lsrtp-$(TARGET_NAME)
+APP_THIRD_PARTY_LIBS += -lmilenage-$(TARGET_NAME)
else
-APP_THIRD_PARTY_LIBS += -lmilenage -lsrtp
-APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libmilenage.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libmilenage.$(SHLIB_SUFFIX) \
- $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX)
+APP_THIRD_PARTY_LIBS += -lmilenage
+APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libmilenage.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libmilenage.$(SHLIB_SUFFIX)
endif
+ifeq (@ac_external_srtp@,1)
+# External SRTP library
+APP_THIRD_PARTY_EXT += -lsrtp
+else
+APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libsrtp-$(LIB_SUFFIX)
+ifeq ($(PJ_SHARED_LIBRARIES),)
+APP_THIRD_PARTY_LIBS += -lsrtp-$(TARGET_NAME)
+else
+APP_THIRD_PARTY_LIBS += -lsrtp
+APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libsrtp.$(SHLIB_SUFFIX)
+endif
+endif
+
+ifeq (@ac_pjmedia_resample@,libresample)
APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libresample-$(LIB_SUFFIX)
ifeq ($(PJ_SHARED_LIBRARIES),)
ifeq (@ac_resample_dll@,1)
@@ -48,6 +61,7 @@
APP_THIRD_PARTY_LIBS += -lresample
APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libresample.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libresample.$(SHLIB_SUFFIX)
endif
+endif
ifneq (@ac_no_gsm_codec@,1)
ifeq (@ac_external_gsm@,1)
Index: pjlib/include/pj/config_site_sample.h
===================================================================
--- pjlib/include/pj/config_site_sample.h (revision 4699)
+++ pjlib/include/pj/config_site_sample.h (working copy)
@@ -297,7 +297,7 @@
/*
* iPhone sample settings.
*/
-#if PJ_CONFIG_IPHONE
+#if defined(PJ_CONFIG_IPHONE) && PJ_CONFIG_IPHONE
/*
* PJLIB settings.
*/
@@ -363,7 +363,7 @@
/*
* Android sample settings.
*/
-#if PJ_CONFIG_ANDROID
+#if defined(PJ_CONFIG_ANDROID) && PJ_CONFIG_ANDROID
#define PJ_ANDROID 1
Index: pjmedia/build/Makefile
===================================================================
--- pjmedia/build/Makefile (revision 4699)
+++ pjmedia/build/Makefile (working copy)
@@ -3,10 +3,6 @@
THIRD_PARTY:=$(PJDIR)/third_party
-SRTP_INC=$(CC_INC)$(THIRD_PARTY)/build/srtp \
- $(CC_INC)$(THIRD_PARTY)/srtp/crypto/include \
- $(CC_INC)$(THIRD_PARTY)/srtp/include
-
include $(PJDIR)/build/common.mak
export LIBDIR := ../lib
@@ -48,8 +44,7 @@
$(CC_INC)../../pjlib-util/include \
$(CC_INC)../../pjmedia/include \
$(CC_INC)../../pjnath/include \
- $(CC_INC)../.. \
- $(SRTP_INC)
+ $(CC_INC)../..
export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
$(HOST_CXXFLAGS) $(CXXFLAGS)
@@ -71,7 +66,7 @@
event.o format.o ffmpeg_util.o \
g711.o jbuf.o master_port.o mem_capture.o mem_player.o \
null_port.o plc_common.o port.o splitcomb.o \
- resample_resample.o resample_libsamplerate.o \
+ resample_resample.o resample_libsamplerate.o resample_speex.o \
resample_port.o rtcp.o rtcp_xr.o rtp.o \
sdp.o sdp_cmp.o sdp_neg.o session.o silencedet.o \
sound_legacy.o sound_port.o stereo_port.o stream_common.o \
Index: pjmedia/build/os-auto.mak.in
===================================================================
--- pjmedia/build/os-auto.mak.in (revision 4699)
+++ pjmedia/build/os-auto.mak.in (working copy)
@@ -129,6 +129,42 @@
#
+# SRTP
+#
+ifeq (@ac_external_srtp@,1)
+# External SRTP
+export CFLAGS += -DPJMEDIA_EXTERNAL_SRTP=1
+else
+# Our SRTP in third_party
+export CFLAGS += -I$(THIRD_PARTY)/build/srtp \
+ -I$(THIRD_PARTY)/srtp/crypto/include \
+ -I$(THIRD_PARTY)/srtp/include
+
+endif
+
+#
+# Resample
+#
+AC_PJMEDIA_RESAMPLE=@ac_pjmedia_resample@
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),none)
+# No resample support
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_NONE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libresample)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libsamplerate)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBSAMPLERATE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),speex)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_SPEEX
+endif
+
+#
# PortAudio
#
ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),)
Index: pjmedia/build/os-darwinos.mak
===================================================================
--- pjmedia/build/os-darwinos.mak (revision 4699)
+++ pjmedia/build/os-darwinos.mak (working copy)
@@ -78,8 +78,44 @@
export G7221_CFLAGS += -I$(THIRD_PARTY)
endif
+#
+# Resample
+#
+AC_PJMEDIA_RESAMPLE=libresample
+ifeq ($(AC_PJMEDIA_RESAMPLE),none)
+# No resample support
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_NONE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libresample)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libsamplerate)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBSAMPLERATE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),speex)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_SPEEX
+endif
+
#
+# SRTP
+#
+#ifeq (@ac_external_srtp@,1)
+ifeq (0,1)
+# External SRTP
+export CFLAGS += -DPJMEDIA_EXTERNAL_SRTP=1
+else
+# Our SRTP in third_party
+export CFLAGS += -I$(THIRD_PARTY)/build/srtp \
+ -I$(THIRD_PARTY)/srtp/crypto/include \
+ -I$(THIRD_PARTY)/srtp/include
+
+endif
+
+#
# PortAudio
#
ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),)
Index: pjmedia/build/os-linux.mak
===================================================================
--- pjmedia/build/os-linux.mak (revision 4699)
+++ pjmedia/build/os-linux.mak (working copy)
@@ -72,8 +72,44 @@
export G7221_CFLAGS += -I$(THIRD_PARTY)
endif
+#
+# Resample
+#
+AC_PJMEDIA_RESAMPLE=libresample
+ifeq ($(AC_PJMEDIA_RESAMPLE),none)
+# No resample support
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_NONE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libresample)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libsamplerate)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBSAMPLERATE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),speex)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_SPEEX
+endif
+
#
+# SRTP
+#
+#ifeq (@ac_external_srtp@,1)
+ifeq (0,1)
+# External SRTP
+export CFLAGS += -DPJMEDIA_EXTERNAL_SRTP=1
+else
+# Our SRTP in third_party
+export CFLAGS += -I$(THIRD_PARTY)/build/srtp \
+ -I$(THIRD_PARTY)/srtp/crypto/include \
+ -I$(THIRD_PARTY)/srtp/include
+
+endif
+
+#
# PortAudio
#
ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),)
Index: pjmedia/build/os-rtems.mak
===================================================================
--- pjmedia/build/os-rtems.mak (revision 4699)
+++ pjmedia/build/os-rtems.mak (working copy)
@@ -6,3 +6,4 @@
export PJMEDIA_OBJS += nullsound.o
export SOUND_OBJS = $(NULLSOUND_OBJS)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
Index: pjmedia/build/os-win32.mak
===================================================================
--- pjmedia/build/os-win32.mak (revision 4699)
+++ pjmedia/build/os-win32.mak (working copy)
@@ -74,8 +74,44 @@
export G7221_CFLAGS += -I$(THIRD_PARTY)
endif
+#
+# Resample
+#
+AC_PJMEDIA_RESAMPLE=libresample
+ifeq ($(AC_PJMEDIA_RESAMPLE),none)
+# No resample support
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_NONE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libresample)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBRESAMPLE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),libsamplerate)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_LIBSAMPLERATE
+endif
+
+ifeq ($(AC_PJMEDIA_RESAMPLE),speex)
+export CFLAGS += -DPJMEDIA_RESAMPLE_IMP=PJMEDIA_RESAMPLE_SPEEX
+endif
+
#
+# SRTP
+#
+#ifeq (@ac_external_srtp@,1)
+ifeq (0,1)
+# External SRTP
+export CFLAGS += -DPJMEDIA_EXTERNAL_SRTP=1
+else
+# Our SRTP in third_party
+export CFLAGS += -I$(THIRD_PARTY)/build/srtp \
+ -I$(THIRD_PARTY)/srtp/crypto/include \
+ -I$(THIRD_PARTY)/srtp/include
+
+endif
+
+#
# PortAudio
#
ifneq ($(findstring pa,$(AC_PJMEDIA_SND)),)
Index: pjmedia/src/pjmedia/transport_srtp.c
===================================================================
--- pjmedia/src/pjmedia/transport_srtp.c (revision 4699)
+++ pjmedia/src/pjmedia/transport_srtp.c (working copy)
@@ -30,7 +30,11 @@
#if defined(PJMEDIA_HAS_SRTP) && (PJMEDIA_HAS_SRTP != 0)
+#if defined(PJMEDIA_EXTERNAL_SRTP) && (PJMEDIA_EXTERNAL_SRTP != 0)
+#include <srtp/srtp.h>
+#else
#include <srtp.h>
+#endif
#define THIS_FILE "transport_srtp.c"
@@ -315,11 +319,15 @@
PJ_UNUSED_ARG(endpt);
+#if defined(PJMEDIA_EXTERNAL_SRTP) && (PJMEDIA_EXTERNAL_SRTP != 0)
+ PJ_UNUSED_ARG(err);
+#else
err = srtp_deinit();
if (err != err_status_ok) {
PJ_LOG(4, (THIS_FILE, "Failed to deinitialize libsrtp: %s",
get_libsrtp_errstr(err)));
}
+#endif
libsrtp_initialized = PJ_FALSE;
}
Index: third_party/build/Makefile
===================================================================
--- third_party/build/Makefile (revision 4699)
+++ third_party/build/Makefile (working copy)
@@ -1,4 +1,4 @@
-DIRS = resample milenage srtp
+DIRS = milenage
include ../../build.mak
include $(PJDIR)/build/common.mak
Index: third_party/build/os-auto.mak.in
===================================================================
--- third_party/build/os-auto.mak.in (revision 4699)
+++ third_party/build/os-auto.mak.in (working copy)
@@ -31,3 +31,12 @@
endif
endif
+ifeq (@ac_external_srtp@,1)
+# External SRTP
+else
+DIRS += srtp
+endif
+
+ifeq (@ac_pjmedia_resample@,libresample)
+DIRS += resample
+endif
Index: third_party/build/os-darwinos.mak
===================================================================
--- third_party/build/os-darwinos.mak (revision 4699)
+++ third_party/build/os-darwinos.mak (working copy)
@@ -3,5 +3,7 @@
DIRS += speex
DIRS += portaudio
DIRS += g7221
+DIRS += srtp
+DIRS += resample
Index: third_party/build/os-linux.mak
===================================================================
--- third_party/build/os-linux.mak (revision 4699)
+++ third_party/build/os-linux.mak (working copy)
@@ -3,5 +3,7 @@
DIRS += speex
DIRS += portaudio
DIRS += g7221
+DIRS += srtp
+DIRS += resample
Index: third_party/build/os-win32.mak
===================================================================
--- third_party/build/os-win32.mak (revision 4699)
+++ third_party/build/os-win32.mak (working copy)
@@ -3,5 +3,7 @@
DIRS += speex
DIRS += portaudio
DIRS += g7221
+DIRS += srtp
+DIRS += resample
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment