Changeset 5428 for pjproject


Ignore:
Timestamp:
Aug 25, 2016 1:36:33 AM (8 years ago)
Author:
ming
Message:

Re #1954: Add WebRTC to third party component

  • Add build config for GNU build systems
Location:
pjproject/trunk
Files:
139 added
6 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/aconfigure

    r5416 r5428  
    623623ac_main_obj 
    624624ac_host 
     625ac_webrtc_ldflags 
     626ac_webrtc_cflags 
     627ac_webrtc_instset 
     628ac_no_webrtc 
    625629ac_no_yuv 
    626630opus_present 
     
    643647ac_ssl_has_aes_gcm 
    644648ac_no_ssl 
    645 ac_webrtc_ldflags 
    646 ac_webrtc_cflags 
    647649ac_openh264_ldflags 
    648650ac_openh264_cflags 
     
    683685ac_pjmedia_snd 
    684686ac_pjmedia_resample 
     687ac_external_webrtc 
    685688ac_external_yuv 
    686689ac_srtp_shutdown_present 
     
    782785with_external_srtp 
    783786with_external_yuv 
     787with_external_webrtc 
    784788enable_resample 
    785789enable_sound 
     
    807811with_openh264 
    808812enable_openh264 
    809 with_webrtc 
    810 enable_webrtc 
    811813enable_ipp 
    812814with_ipp 
     
    824826enable_opus 
    825827enable_libyuv 
     828enable_libwebrtc 
    826829' 
    827830      ac_precious_vars='build_alias 
     
    14761479  --disable-v4l2          Disable Video4Linux2 (default: not disabled) 
    14771480  --disable-openh264      Disable OpenH264 (default: not disabled) 
    1478   --disable-webrtc        Exclude webrtc in the build 
    14791481  --enable-ipp            Enable Intel IPP support. Specify the Intel IPP 
    14801482                          package and samples location using IPPROOT and 
     
    14931495 
    14941496  --disable-libyuv        Exclude libyuv in the build 
     1497  --disable-libwebrtc     Exclude libwebrtc in the build 
    14951498 
    14961499Optional Packages: 
     
    15171520                          use CFLAGS and LDFLAGS env var to set the 
    15181521                          include/lib paths) 
     1522  --with-external-webrtc  Use external webrtc development files, not the one 
     1523                          in "third_party" directory. When this option is set, 
     1524                          make sure that webrtc is accessible to use (hint: 
     1525                          use CFLAGS and LDFLAGS env var to set the 
     1526                          include/lib paths) 
    15191527  --with-external-pa      Use external PortAudio development files, not the 
    15201528                          one in "third_party" directory. When this option is 
     
    15251533  --with-ffmpeg=DIR       Specify alternate FFMPEG prefix 
    15261534  --with-openh264=DIR     Specify alternate OpenH264 prefix 
    1527   --with-webrtc=DIR       Specify alternate WebRtc prefix 
    15281535  --with-ipp=DIR          Specify the Intel IPP location 
    15291536  --with-ipp-samples=DIR  Specify the Intel IPP samples location 
     
    61186125 
    61196126 
     6127ac_external_webrtc=0 
     6128 
     6129 
     6130# Check whether --with-external-webrtc was given. 
     6131if test "${with_external_webrtc+set}" = set; then : 
     6132  withval=$with_external_webrtc; 
     6133        if test "x$with_external_webrtc" != "xno"; then 
     6134                # Test webrtc installation 
     6135                { $as_echo "$as_me:${as_lineno-$LINENO}: checking if external webrtc devkit is installed" >&5 
     6136$as_echo_n "checking if external webrtc devkit is installed... " >&6; } 
     6137                cat confdefs.h - <<_ACEOF >conftest.$ac_ext 
     6138/* end confdefs.h.  */ 
     6139#include <webrtc/modules/audio_processing/aec/aec_core.h> 
     6140                                                     #include <webrtc/modules/audio_processing/aec/include/echo_cancellation.h> 
     6141 
     6142int 
     6143main () 
     6144{ 
     6145WebRtcAec_Create(); 
     6146  ; 
     6147  return 0; 
     6148} 
     6149_ACEOF 
     6150if ac_fn_c_try_compile "$LINENO"; then : 
     6151  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes!!" >&5 
     6152$as_echo "yes!!" >&6; } 
     6153                                   ac_external_webrtc="1" 
     6154 
     6155else 
     6156  as_fn_error $? "Unable to use external webrtc. If webrtc development files are not available in the default locations, use CFLAGS and LDFLAGS env var to set the include/lib paths" "$LINENO" 5 
     6157fi 
     6158rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 
     6159        fi 
     6160 
     6161 
     6162fi 
     6163 
     6164 
     6165 
    61206166ac_pjmedia_resample=libresample 
    61216167 
     
    74027448 
    74037449 
    7404  
    7405 # Check whether --with-webrtc was given. 
    7406 if test "${with_webrtc+set}" = set; then : 
    7407   withval=$with_webrtc; 
    7408 else 
    7409   with_webrtc=no 
    7410  
    7411 fi 
    7412  
    7413  
    7414 if test "x$ac_cross_compile" != "x" -a "x$with_webrtc" = "xno"; then 
    7415     enable_webrtc=no 
    7416 fi 
    7417  
    7418  
    7419  
    7420 # Check whether --enable-webrtc was given. 
    7421 if test "${enable_webrtc+set}" = set; then : 
    7422   enableval=$enable_webrtc; if test "$enable_webrtc" = "no"; then 
    7423                 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Checking if webrtc is disabled...yes" >&5 
    7424 $as_echo "Checking if webrtc is disabled...yes" >&6; } 
    7425                fi 
    7426 else 
    7427  
    7428                   if test "x$with_webrtc" != "xno" -a "x$with_webrtc" != "x"; then 
    7429                         WEBRTC_PREFIX=$with_webrtc 
    7430                         WEBRTC_CFLAGS="-I$WEBRTC_PREFIX/src" 
    7431  
    7432                         case $target in 
    7433                             *-apple-darwin_ios*) 
    7434                                 case $ARCH in 
    7435                                     *arm*) 
    7436                                     WEBRTC_CFLAGS="-DPJMEDIA_WEBRTC_AEC_USE_MOBILE=1 $WEBRTC_CFLAGS" 
    7437                                     WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out_ios/Release-iphoneos" 
    7438                                     WEBRTC_LIBS="-laudio_processing_neon -lcommon_audio_neon" 
    7439                                     ;; 
    7440                                 *) 
    7441                                     ;; 
    7442                                 esac 
    7443                                 ;; 
    7444                             *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux* | *android*) 
    7445                                 WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out/Release" 
    7446                                 WEBRTC_LIBS="-laudio_processing_sse2" 
    7447                                 ;; 
    7448                             *) 
    7449                                 ;; 
    7450                         esac 
    7451  
    7452                         { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using webrtc prefix... $with_webrtc" >&5 
    7453 $as_echo "Using webrtc prefix... $with_webrtc" >&6; } 
    7454                   else 
    7455                         WEBRTC_CFLAGS="" 
    7456                         WEBRTC_LDFLAGS="" 
    7457                   fi 
    7458  
    7459                   WEBRTC_LIBS="$WEBRTC_LIBS -laudio_processing -lcommon_audio -lsystem_wrappers" 
    7460  
    7461                   SAVED_LIBS="$LIBS" 
    7462                   SAVED_LDFLAGS="$LDFLAGS" 
    7463                   SAVED_CFLAGS="$CFLAGS" 
    7464  
    7465                   LIBS="$WEBRTC_LIBS $LIBS" 
    7466                   LDFLAGS="$WEBRTC_LDFLAGS $LDFLAGS" 
    7467                   CFLAGS="$WEBRTC_CFLAGS $CFLAGS" 
    7468  
    7469                   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for WebRtcAec_Process in -laudio_processing" >&5 
    7470 $as_echo_n "checking for WebRtcAec_Process in -laudio_processing... " >&6; } 
    7471 if ${ac_cv_lib_audio_processing_WebRtcAec_Process+:} false; then : 
    7472   $as_echo_n "(cached) " >&6 
    7473 else 
    7474   ac_check_lib_save_LIBS=$LIBS 
    7475 LIBS="-laudio_processing 
    7476                                 $LIBS" 
    7477 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 
    7478 /* end confdefs.h.  */ 
    7479  
    7480 /* Override any GCC internal prototype to avoid an error. 
    7481    Use char because int might match the return type of a GCC 
    7482    builtin and then its argument prototype would still apply.  */ 
    7483 #ifdef __cplusplus 
    7484 extern "C" 
    7485 #endif 
    7486 char WebRtcAec_Process (); 
    7487 int 
    7488 main () 
    7489 { 
    7490 return WebRtcAec_Process (); 
    7491   ; 
    7492   return 0; 
    7493 } 
    7494 _ACEOF 
    7495 if ac_fn_c_try_link "$LINENO"; then : 
    7496   ac_cv_lib_audio_processing_WebRtcAec_Process=yes 
    7497 else 
    7498   ac_cv_lib_audio_processing_WebRtcAec_Process=no 
    7499 fi 
    7500 rm -f core conftest.err conftest.$ac_objext \ 
    7501     conftest$ac_exeext conftest.$ac_ext 
    7502 LIBS=$ac_check_lib_save_LIBS 
    7503 fi 
    7504 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_audio_processing_WebRtcAec_Process" >&5 
    7505 $as_echo "$ac_cv_lib_audio_processing_WebRtcAec_Process" >&6; } 
    7506 if test "x$ac_cv_lib_audio_processing_WebRtcAec_Process" = xyes; then : 
    7507    ac_webrtc_cflags="-DPJMEDIA_HAS_WEBRTC_AEC=1 $WEBRTC_CFLAGS" 
    7508                                  ac_webrtc_ldflags="$WEBRTC_LDFLAGS $WEBRTC_LIBS" 
    7509  
    7510 else 
    7511    LIBS="$SAVED_LIBS" 
    7512                                  LDFLAGS="$SAVED_LDFLAGS" 
    7513                                  CFLAGS="$SAVED_CFLAGS" 
    7514  
    7515 fi 
    7516  
    7517  
    7518 fi 
    7519  
    7520  
    75217450# Check whether --enable-ipp was given. 
    75227451if test "${enable_ipp+set}" = set; then : 
     
    84688397  { $as_echo "$as_me:${as_lineno-$LINENO}: result: Checking if libyuv is disabled...no" >&5 
    84698398$as_echo "Checking if libyuv is disabled...no" >&6; } 
     8399fi 
     8400 
     8401 
     8402 
     8403 
     8404 
     8405 
     8406 
     8407# Check whether --enable-libwebrtc was given. 
     8408if test "${enable_libwebrtc+set}" = set; then : 
     8409  enableval=$enable_libwebrtc; if test "$enable_libwebrtc" = "no"; then 
     8410                ac_no_webrtc=1 
     8411                $as_echo "#define PJMEDIA_HAS_LIBWEBRTC 0" >>confdefs.h 
     8412 
     8413                { $as_echo "$as_me:${as_lineno-$LINENO}: result: Checking if libwebrtc is disabled...yes" >&5 
     8414$as_echo "Checking if libwebrtc is disabled...yes" >&6; } 
     8415               fi 
     8416else 
     8417 
     8418                  { $as_echo "$as_me:${as_lineno-$LINENO}: result: Checking if libwebrtc is disabled...no" >&5 
     8419$as_echo "Checking if libwebrtc is disabled...no" >&6; } 
     8420                  case $target in 
     8421                      *-apple-darwin_ios*) 
     8422                        case $target in 
     8423                            *arm*) 
     8424                                ac_webrtc_instset=neon 
     8425                                ;; 
     8426                            *) 
     8427                                ac_webrtc_instset=sse2 
     8428                                ;; 
     8429                        esac 
     8430                        ;; 
     8431                      *android*) 
     8432                        case $TARGET_ABI in 
     8433                            armeabi-v7a) 
     8434                                ac_webrtc_instset=neon 
     8435                                ac_webrtc_cflags="-mfloat-abi=softfp -mfpu=neon" 
     8436                                ;; 
     8437                            armeabi) 
     8438                                ac_webrtc_instset=neon 
     8439                                ac_webrtc_cflags="-mfloat-abi=softfp -mfpu=neon -march=armv7" 
     8440                                ;; 
     8441                            arm64*) 
     8442                                ac_webrtc_instset=neon 
     8443                                ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64" 
     8444                                ;; 
     8445                            mips*) 
     8446                                ac_webrtc_instset=mips 
     8447                                ;; 
     8448                            *) 
     8449                                ac_webrtc_instset=sse2 
     8450                                ;; 
     8451                        esac 
     8452                        ;; 
     8453                     *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux*) 
     8454                        ac_webrtc_instset=sse2 
     8455                        ;; 
     8456                     *) 
     8457                        ;; 
     8458                esac 
     8459 
    84708460fi 
    84718461 
  • pjproject/trunk/aconfigure.ac

    r5416 r5428  
    594594                                   ], 
    595595                                  [AC_MSG_ERROR([Unable to use external libyuv. If libyuv development files are not available in the default locations, use CFLAGS and LDFLAGS env var to set the include/lib paths])]) 
     596        fi 
     597    ] 
     598    ) 
     599 
     600 
     601dnl # Use external webrtc installation 
     602AC_SUBST(ac_external_webrtc,0) 
     603AC_ARG_WITH(external-webrtc, 
     604    AS_HELP_STRING([--with-external-webrtc], 
     605                   [Use external webrtc development files, not the one in "third_party" directory. When this option is set, make sure that webrtc is accessible to use (hint: use CFLAGS and LDFLAGS env var to set the include/lib paths)]), 
     606    [ 
     607        if test "x$with_external_webrtc" != "xno"; then 
     608                # Test webrtc installation 
     609                AC_MSG_CHECKING([if external webrtc devkit is installed]) 
     610                AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <webrtc/modules/audio_processing/aec/aec_core.h> 
     611                                                     #include <webrtc/modules/audio_processing/aec/include/echo_cancellation.h> 
     612                ]], 
     613                                                  [WebRtcAec_Create();])], 
     614                                  [AC_MSG_RESULT(yes!!) 
     615                                   ac_external_webrtc="1" 
     616                                   ], 
     617                                  [AC_MSG_ERROR([Unable to use external webrtc. If webrtc development files are not available in the default locations, use CFLAGS and LDFLAGS env var to set the include/lib paths])]) 
    596618        fi 
    597619    ] 
     
    12441266 
    12451267 
    1246 dnl # WebRtc alt prefix 
    1247 AC_ARG_WITH(webrtc, 
    1248             AS_HELP_STRING([--with-webrtc=DIR], 
    1249                            [Specify alternate WebRtc prefix]), 
    1250             [], 
    1251             [with_webrtc=no] 
    1252             ) 
    1253  
    1254 dnl # Do not use default webrtc installation if we are cross-compiling 
    1255 if test "x$ac_cross_compile" != "x" -a "x$with_webrtc" = "xno"; then 
    1256     enable_webrtc=no 
    1257 fi             
    1258                
    1259 dnl # WebRtc 
    1260 AC_SUBST(ac_webrtc_cflags) 
    1261 AC_SUBST(ac_webrtc_ldflags) 
    1262 AC_ARG_ENABLE(webrtc, 
    1263               AS_HELP_STRING([--disable-webrtc], 
    1264                              [Exclude webrtc in the build]), 
    1265               [if test "$enable_webrtc" = "no"; then 
    1266                 AC_MSG_RESULT([Checking if webrtc is disabled...yes]) 
    1267                fi], 
    1268               [ 
    1269                   if test "x$with_webrtc" != "xno" -a "x$with_webrtc" != "x"; then 
    1270                         WEBRTC_PREFIX=$with_webrtc 
    1271                         WEBRTC_CFLAGS="-I$WEBRTC_PREFIX/src" 
    1272                          
    1273                         case $target in 
    1274                             *-apple-darwin_ios*) 
    1275                                 case $ARCH in 
    1276                                     *arm*) 
    1277                                     WEBRTC_CFLAGS="-DPJMEDIA_WEBRTC_AEC_USE_MOBILE=1 $WEBRTC_CFLAGS" 
    1278                                     WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out_ios/Release-iphoneos" 
    1279                                     WEBRTC_LIBS="-laudio_processing_neon -lcommon_audio_neon" 
    1280                                     ;; 
    1281                                 *) 
    1282                                     ;; 
    1283                                 esac 
    1284                                 ;;                       
    1285                             *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux* | *android*) 
    1286                                 WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out/Release" 
    1287                                 WEBRTC_LIBS="-laudio_processing_sse2"  
    1288                                 ;; 
    1289                             *) 
    1290                                 ;; 
    1291                         esac                     
    1292                          
    1293                         AC_MSG_RESULT([Using webrtc prefix... $with_webrtc]) 
    1294                   else 
    1295                         WEBRTC_CFLAGS="" 
    1296                         WEBRTC_LDFLAGS=""  
    1297                   fi 
    1298                                    
    1299                   WEBRTC_LIBS="$WEBRTC_LIBS -laudio_processing -lcommon_audio -lsystem_wrappers" 
    1300                    
    1301                   SAVED_LIBS="$LIBS" 
    1302                   SAVED_LDFLAGS="$LDFLAGS" 
    1303                   SAVED_CFLAGS="$CFLAGS" 
    1304                    
    1305                   LIBS="$WEBRTC_LIBS $LIBS" 
    1306                   LDFLAGS="$WEBRTC_LDFLAGS $LDFLAGS" 
    1307                   CFLAGS="$WEBRTC_CFLAGS $CFLAGS" 
    1308                    
    1309                   AC_CHECK_LIB(audio_processing, 
    1310                                WebRtcAec_Process, 
    1311                                [ ac_webrtc_cflags="-DPJMEDIA_HAS_WEBRTC_AEC=1 $WEBRTC_CFLAGS" 
    1312                                  ac_webrtc_ldflags="$WEBRTC_LDFLAGS $WEBRTC_LIBS" 
    1313                                ], 
    1314                                [ LIBS="$SAVED_LIBS" 
    1315                                  LDFLAGS="$SAVED_LDFLAGS" 
    1316                                  CFLAGS="$SAVED_CFLAGS" 
    1317                                ], 
    1318                                [] 
    1319                                ) 
    1320               ]) 
    1321  
    13221268dnl ######################################################## 
    13231269dnl # Intel IPP support 
     
    18201766 
    18211767 
     1768dnl # Include webrtc 
     1769AC_SUBST(ac_no_webrtc) 
     1770AC_SUBST(ac_webrtc_instset) 
     1771AC_SUBST(ac_webrtc_cflags) 
     1772AC_SUBST(ac_webrtc_ldflags) 
     1773AC_ARG_ENABLE(libwebrtc, 
     1774              AS_HELP_STRING([--disable-libwebrtc], 
     1775                             [Exclude libwebrtc in the build]), 
     1776              [if test "$enable_libwebrtc" = "no"; then 
     1777                [ac_no_webrtc=1] 
     1778                AC_DEFINE(PJMEDIA_HAS_LIBWEBRTC,0) 
     1779                AC_MSG_RESULT([Checking if libwebrtc is disabled...yes]) 
     1780               fi], 
     1781              [ 
     1782                  AC_MSG_RESULT([Checking if libwebrtc is disabled...no]) 
     1783                  case $target in 
     1784                      *-apple-darwin_ios*) 
     1785                        case $target in 
     1786                            *arm*) 
     1787                                ac_webrtc_instset=neon 
     1788                                ;; 
     1789                            *) 
     1790                                ac_webrtc_instset=sse2 
     1791                                ;; 
     1792                        esac 
     1793                        ;; 
     1794                      *android*) 
     1795                        case $TARGET_ABI in 
     1796                            armeabi-v7a) 
     1797                                ac_webrtc_instset=neon 
     1798                                ac_webrtc_cflags="-mfloat-abi=softfp -mfpu=neon" 
     1799                                ;; 
     1800                            armeabi) 
     1801                                ac_webrtc_instset=neon 
     1802                                ac_webrtc_cflags="-mfloat-abi=softfp -mfpu=neon -march=armv7" 
     1803                                ;; 
     1804                            arm64*) 
     1805                                ac_webrtc_instset=neon 
     1806                                ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64" 
     1807                                ;; 
     1808                            mips*) 
     1809                                ac_webrtc_instset=mips 
     1810                                ;; 
     1811                            *) 
     1812                                ac_webrtc_instset=sse2 
     1813                                ;; 
     1814                        esac 
     1815                        ;; 
     1816                     *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux*) 
     1817                        ac_webrtc_instset=sse2 
     1818                        ;; 
     1819                     *) 
     1820                        ;; 
     1821                esac     
     1822              ]) 
     1823 
     1824 
    18221825dnl ########################################## 
    18231826dnl # 
  • pjproject/trunk/build.mak.in

    r5361 r5428  
    132132APP_THIRD_PARTY_LIBS += -lyuv 
    133133APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libyuv.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libyuv.$(SHLIB_SUFFIX) 
     134endif 
     135endif 
     136endif 
     137 
     138ifneq (@ac_no_webrtc@,1) 
     139ifeq (@ac_external_webrtc@,1) 
     140APP_THIRD_PARTY_EXT += -lwebrtc 
     141else 
     142APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libwebrtc-$(LIB_SUFFIX) 
     143ifeq ($(PJ_SHARED_LIBRARIES),) 
     144APP_THIRD_PARTY_LIBS += -lwebrtc-$(TARGET_NAME) 
     145else 
     146APP_THIRD_PARTY_LIBS += -lwebrtc 
     147APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libwebrtc.$(SHLIB_SUFFIX).$(PJ_VERSION_MAJOR) $(PJ_DIR)/third_party/lib/libwebrtc.$(SHLIB_SUFFIX) 
    134148endif 
    135149endif 
  • pjproject/trunk/configure-android

    r5413 r5428  
    150150  fi 
    151151 
     152  export TARGET_ABI="${TARGET_ABI}" 
    152153  export CC="${ANDROID_TC}/bin/${TARGET_HOST}-gcc" 
    153154  export CXX="${ANDROID_TC}/bin/${TARGET_HOST}-g++" 
  • pjproject/trunk/pjmedia/build/os-auto.mak.in

    r5361 r5428  
    3333OPENH264_LDFLAGS = @ac_openh264_ldflags@ 
    3434 
    35 # WebRtc 
    36 WEBRTC_CFLAGS = @ac_webrtc_cflags@ 
    37 WEBRTC_LDFLAGS = @ac_webrtc_ldflags@ 
    38  
    3935 
    4036# PJMEDIA features exclusion 
     
    4238                 $(SDL_CFLAGS) $(FFMPEG_CFLAGS) $(V4L2_CFLAGS) $(QT_CFLAGS) \ 
    4339                 $(DARWIN_CFLAGS) $(ANDROID_CFLAGS) \ 
    44                  $(OPENH264_CFLAGS) $(WEBRTC_CFLAGS) 
     40                 $(OPENH264_CFLAGS) 
    4541export LDFLAGS += $(SDL_LDFLAGS) $(FFMPEG_LDFLAGS) $(V4L2_LDFLAGS) \ 
    46                   $(OPENH264_LDFLAGS) $(WEBRTC_LDFLAGS) 
     42                  $(OPENH264_LDFLAGS) 
    4743 
    4844# Define the desired sound device backend 
     
    204200endif 
    205201 
     202# 
     203# libwebrtc 
     204# 
     205ifeq (@ac_no_webrtc@,1) 
     206export CFLAGS += -DPJMEDIA_HAS_WEBRTC_AEC=0 
     207else 
     208export CFLAGS += -DPJMEDIA_HAS_WEBRTC_AEC=1 
     209ifneq ($(findstring arm,$(@ac_webrtc_instset@)),) 
     210export CFLAGS += -DPJMEDIA_WEBRTC_AEC_USE_MOBILE=1 
     211endif 
     212 
     213ifeq (@ac_external_webrtc@,0) 
     214export CFLAGS += -I$(THIRD_PARTY)/webrtc/src 
     215endif 
     216endif 
     217 
    206218 
    207219# 
  • pjproject/trunk/third_party/build/os-auto.mak.in

    r5412 r5428  
    6565endif 
    6666endif 
     67 
     68ifneq (@ac_no_webrtc@,1) 
     69ifeq (@ac_external_webrtc@,1) 
     70# External webrtc 
     71else 
     72DIRS += webrtc 
     73WEBRTC_OTHER_CFLAGS = -fexceptions -DWEBRTC_POSIX=1 @ac_webrtc_cflags@ 
     74ifneq ($(findstring sse2,@ac_webrtc_instset@),) 
     75    WEBRTC_SRC = \ 
     76              modules/audio_processing/aec/aec_core_sse2.o               \ 
     77              modules/audio_processing/aec/aec_rdft_sse2.o               \ 
     78              modules/audio_processing/aecm/aecm_core_c.o                \ 
     79              modules/audio_processing/ns/nsx_core_c.o                   \ 
     80              system_wrappers/source/cpu_features.o 
     81else ifneq ($(findstring neon,@ac_webrtc_instset@),) 
     82    WEBRTC_SRC = \ 
     83              modules/audio_processing/aec/aec_core_neon.o               \ 
     84              modules/audio_processing/aec/aec_rdft_neon.o               \ 
     85              modules/audio_processing/aecm/aecm_core_c.o                \ 
     86              modules/audio_processing/aecm/aecm_core_neon.o             \ 
     87              modules/audio_processing/ns/nsx_core_c.o                   \ 
     88              modules/audio_processing/ns/nsx_core_neon.o                \ 
     89              common_audio/signal_processing/cross_correlation_neon.o    \ 
     90              common_audio/signal_processing/downsample_fast_neon.o      \ 
     91              common_audio/signal_processing/min_max_operations_neon.o 
     92    WEBRTC_OTHER_CFLAGS += -DWEBRTC_HAS_NEON 
     93else ifneq ($(findstring mips,@ac_webrtc_instset@),) 
     94    WEBRTC_SRC = \ 
     95              modules/audio_processing/aec/aec_core_mips.o               \ 
     96              modules/audio_processing/aec/aec_rdft_mips.o               \ 
     97              modules/audio_processing/aecm/aecm_core_mips.o             \ 
     98              modules/audio_processing/ns/nsx_core_mips.o                \ 
     99              common_audio/signal_processing/cross_correlation_mips.o    \ 
     100              common_audio/signal_processing/downsample_fast_mips.o      \ 
     101              common_audio/signal_processing/min_max_operations_mips.o 
     102 
     103    WEBRTC_OTHER_CFLAGS += -DMIPS_FPU_LE 
     104endif 
     105endif 
     106endif 
Note: See TracChangeset for help on using the changeset viewer.