Ignore:
Timestamp:
Dec 28, 2016 3:40:07 AM (8 years ago)
Author:
nanang
Message:

Re #1900: More merged from trunk (r5512 mistakenly contains merged changes in third-party dir only).

Location:
pjproject/branches/projects/uwp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/uwp

  • pjproject/branches/projects/uwp/aconfigure.ac

    r5199 r5513  
    1 AC_INIT(pjproject,2.x) 
     1AC_INIT([pjproject],[2.x]) 
    22 
    33host_orig="$host" 
     
    2020                 pjsip/build/os-auto.mak 
    2121                 third_party/build/os-auto.mak 
    22                  third_party/build/portaudio/os-auto.mak  
    2322                 ]) 
    2423 
     
    4039AC_PROG_CC 
    4140AC_PROG_CXX 
    42 AC_LANG_C 
     41AC_LANG([C]) 
    4342 
    4443AC_PROG_RANLIB 
     
    182181dnl # --disable-floating-point option 
    183182AC_ARG_ENABLE(floating-point, 
    184               AC_HELP_STRING([--disable-floating-point], 
     183              AS_HELP_STRING([--disable-floating-point], 
    185184                             [Disable floating point where possible]), 
    186185              [if test "$enable_floating_point" = "no"; then 
     
    267266                  #endif 
    268267                 ]) 
     268 
     269AC_CHECK_FUNC(localtime_r,[AC_DEFINE(PJ_HAS_LOCALTIME_R,1)]) 
     270 
    269271AC_MSG_RESULT([Setting PJ_OS_NAME to $target]) 
    270272AC_DEFINE_UNQUOTED(PJ_OS_NAME,["$target"]) 
     
    342344                                   [socklen_t xxx = 0;])], 
    343345                  [AC_DEFINE(PJ_HAS_SOCKLEN_T,1) 
     346                   AC_MSG_RESULT(yes)], 
     347                  AC_MSG_RESULT(no)) 
     348 
     349dnl # Determine if IPV6_V6ONLY is available 
     350AC_MSG_CHECKING([if IPV6_V6ONLY is available]) 
     351AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h> 
     352                                     #include <netinet/in.h>]], 
     353                                   [int opt = IPV6_V6ONLY;])], 
     354                  [AC_DEFINE(PJ_SOCK_HAS_IPV6_V6ONLY,1) 
    344355                   AC_MSG_RESULT(yes)], 
    345356                  AC_MSG_RESULT(no)) 
     
    411422dnl #  
    412423AC_SUBST(ac_os_objs) 
     424AC_SUBST(ac_linux_poll) 
    413425AC_MSG_CHECKING([ioqueue backend]) 
    414426AC_ARG_ENABLE(epoll, 
    415               AC_HELP_STRING([--enable-epoll], 
     427              AS_HELP_STRING([--enable-epoll], 
    416428                             [Use /dev/epoll ioqueue on Linux (experimental)]), 
    417429              [ 
    418430                ac_os_objs=ioqueue_epoll.o 
    419431                AC_MSG_RESULT([/dev/epoll]) 
     432                AC_DEFINE(PJ_HAS_LINUX_EPOLL,1) 
     433                ac_linux_poll=epoll 
    420434              ], 
    421435              [ 
    422436                ac_os_objs=ioqueue_select.o 
    423                 AC_MSG_RESULT([select()])  
     437                AC_MSG_RESULT([select()]) 
     438                ac_linux_poll=select 
    424439              ]) 
    425440 
    426441AC_SUBST(ac_shared_libraries) 
    427442AC_ARG_ENABLE(shared, 
    428               AC_HELP_STRING([--enable-shared], 
     443              AS_HELP_STRING([--enable-shared], 
    429444                             [Build shared libraries]), 
    430445              [if test "$enable_shared" = "yes"; then 
     
    451466                ;; 
    452467        esac 
     468        # QoS 
     469        case $target in 
     470          *darwin*) 
     471                ;; 
     472          *) 
     473                ac_os_objs="$ac_os_objs sock_qos_bsd.o" 
     474                ;; 
     475        esac 
    453476        # UUID 
    454         if test "$ac_has_uuid_lib" = "1" -a "$ac_has_uuid_h" = "1"; then 
    455                 ac_os_objs="$ac_os_objs guid_uuid.o" 
    456         else 
    457                 ac_os_objs="$ac_os_objs guid_simple.o" 
    458         fi 
     477        case $target in 
     478          *android*) 
     479                ac_os_objs="$ac_os_objs guid_android.o" 
     480                ;; 
     481          *) 
     482                if test "$ac_has_uuid_lib" = "1" -a "$ac_has_uuid_h" = "1"; then 
     483                        ac_os_objs="$ac_os_objs guid_uuid.o" 
     484                else 
     485                        ac_os_objs="$ac_os_objs guid_simple.o" 
     486                fi 
     487                ;; 
     488        esac 
    459489        ;; 
    460490esac 
     
    462492case $target in 
    463493  *darwin*) 
    464         ac_os_objs="$ac_os_objs os_core_darwin.o" 
     494        ac_os_objs="$ac_os_objs sock_qos_darwin.o os_core_darwin.o" 
    465495        ;; 
    466496esac 
     
    474504AC_SUBST(ac_external_speex,0) 
    475505AC_ARG_WITH(external-speex, 
    476     AC_HELP_STRING([--with-external-speex], 
     506    AS_HELP_STRING([--with-external-speex], 
    477507                   [Use external Speex development files, not the one in "third_party" directory. When this option is set, make sure that Speex is accessible to use (hint: use CFLAGS and LDFLAGS env var to set the include/lib paths)]), 
    478508    [ 
     
    496526AC_SUBST(ac_external_gsm,0) 
    497527AC_ARG_WITH(external-gsm, 
    498     AC_HELP_STRING([--with-external-gsm], 
     528    AS_HELP_STRING([--with-external-gsm], 
    499529                   [Use external GSM codec library, not the one in "third_party" directory. When this option is set, 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)]), 
    500530    [ 
     
    532562AC_SUBST(ac_external_srtp,0) 
    533563AC_ARG_WITH(external-srtp, 
    534     AC_HELP_STRING([--with-external-srtp], 
     564    AS_HELP_STRING([--with-external-srtp], 
    535565                   [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)]), 
    536566    [ 
     
    559589fi 
    560590 
     591 
     592dnl # Use external libyuv installation 
     593AC_SUBST(ac_external_yuv,0) 
     594AC_ARG_WITH(external-yuv, 
     595    AS_HELP_STRING([--with-external-yuv], 
     596                   [Use external libyuv development files, not the one in "third_party" directory. When this option is set, make sure that libyuv is accessible to use (hint: use CFLAGS and LDFLAGS env var to set the include/lib paths)]), 
     597    [ 
     598        if test "x$with_external_yuv" != "xno"; then 
     599                # Test libyuv installation 
     600                AC_MSG_CHECKING([if external libyuv devkit is installed]) 
     601                AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <libyuv.h>]], 
     602                                                  [RGB24ToI420(0,0,0,0,0,0,0,0,0,0);])], 
     603                                  [AC_MSG_RESULT(yes!!) 
     604                                   ac_external_yuv="1" 
     605                                   ], 
     606                                  [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])]) 
     607        fi 
     608    ] 
     609    ) 
     610 
     611 
     612dnl # Use external webrtc installation 
     613AC_SUBST(ac_external_webrtc,0) 
     614AC_ARG_WITH(external-webrtc, 
     615    AS_HELP_STRING([--with-external-webrtc], 
     616                   [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)]), 
     617    [ 
     618        if test "x$with_external_webrtc" != "xno"; then 
     619                # Test webrtc installation 
     620                AC_MSG_CHECKING([if external webrtc devkit is installed]) 
     621                AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <webrtc/modules/audio_processing/aec/aec_core.h> 
     622                                                     #include <webrtc/modules/audio_processing/aec/include/echo_cancellation.h> 
     623                ]], 
     624                                                  [WebRtcAec_Create();])], 
     625                                  [AC_MSG_RESULT(yes!!) 
     626                                   ac_external_webrtc="1" 
     627                                   ], 
     628                                  [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])]) 
     629        fi 
     630    ] 
     631    ) 
     632 
     633 
    561634dnl # Resample implementation 
    562635AC_SUBST(ac_pjmedia_resample,libresample) 
    563636AC_ARG_ENABLE(resample, 
    564               AC_HELP_STRING([--disable-resample], 
     637              AS_HELP_STRING([--disable-resample], 
    565638                             [Disable resampling implementations]), 
    566639              [if test "$enable_resample" = "no"; then 
     
    573646AC_SUBST(ac_pjmedia_snd) 
    574647AC_ARG_ENABLE(sound, 
    575               AC_HELP_STRING([--disable-sound], 
     648              AS_HELP_STRING([--disable-sound], 
    576649                             [Exclude sound (i.e. use null sound)]), 
    577650              [if test "$enable_sound" = "no"; then 
     
    584657AC_SUBST(ac_external_pa,0) 
    585658AC_ARG_WITH(external-pa, 
    586     AC_HELP_STRING([--with-external-pa], 
     659    AS_HELP_STRING([--with-external-pa], 
    587660                   [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 (hint: use CFLAGS and LDFLAGS env var to set the include/lib paths)]), 
    588661    [ 
     
    652725  *) 
    653726        dnl # Check if ALSA is available 
    654         ac_pjmedia_snd=pa_unix 
     727        ac_pjmedia_snd=alsa 
     728        AC_SUBST(ac_pa_use_alsa,1) 
    655729        AC_CHECK_HEADER(alsa/version.h, 
    656                         [AC_SUBST(ac_pa_use_alsa,1) 
    657                          AC_SUBST(ac_pjmedia_snd,alsa) 
    658                          LIBS="$LIBS -lasound" 
    659                         ], 
    660                         [AC_SUBST(ac_pa_use_alsa,0)]) 
     730                        [LIBS="$LIBS -lasound"], 
     731                        [ac_pa_use_alsa=0]) 
    661732        AC_MSG_RESULT([Checking sound device backend... unix]) 
    662733 
     
    664735        AC_SUBST(ac_pa_use_oss,1) 
    665736        AC_ARG_ENABLE(oss, 
    666                       AC_HELP_STRING([--disable-oss], 
     737                      AS_HELP_STRING([--disable-oss], 
    667738                                     [Disable OSS audio (default: not disabled)]), 
    668739                      [ 
     
    678749AC_SUBST(ac_pjmedia_video) 
    679750 
     751# Disable video on mingw 
     752case $target in 
     753 *mingw*) 
     754        enable_video="no" 
     755        ;; 
     756esac 
     757 
    680758dnl # --disable-video option 
    681759AC_ARG_ENABLE(video, 
    682               AC_HELP_STRING([--disable-video], 
     760              AS_HELP_STRING([--disable-video], 
    683761                             [Disable video feature]), 
    684762              [if test "$enable_video" = "no"; then 
     
    726804        ac_android_cflags="$ac_android_cflags -DPJMEDIA_VIDEO_DEV_HAS_ANDROID=1" 
    727805        ;; 
    728   *-apple-darwin_ios*) 
    729         ac_pjmedia_video=iphone_os 
    730         AC_SUBST(ac_pjmedia_video_has_ios) 
    731         AC_SUBST(ac_ios_cflags) 
     806  *darwin*) 
     807        ac_pjmedia_video=darwin_os 
     808        AC_SUBST(ac_pjmedia_video_has_darwin) 
     809        AC_SUBST(ac_pjmedia_video_has_ios_opengl) 
     810        AC_SUBST(ac_darwin_cflags) 
    732811        SAVED_LIBS="$LIBS" 
    733812        LIBS="-framework AVFoundation -framework CoreGraphics -framework QuartzCore -framework CoreVideo -framework CoreMedia" 
    734         AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [])],[ac_pjmedia_video_has_ios=yes],[ac_pjmedia_video_has_ios=no]) 
     813        AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [])], 
     814                       [ac_pjmedia_video_has_darwin=yes], 
     815                       [ac_pjmedia_video_has_darwin=no]) 
     816        LIBS="-framework OpenGLES" 
     817        AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [])], 
     818                       [ac_pjmedia_video_has_ios_opengl=yes], 
     819                       [ac_pjmedia_video_has_ios_opengl=no]) 
    735820        LIBS="$SAVED_LIBS" 
    736         if test "$ac_pjmedia_video_has_ios" = "yes"; then 
    737           ac_ios_cflags="-DPJMEDIA_VIDEO_DEV_HAS_IOS=1 -DPJMEDIA_VIDEO_DEV_HAS_IOS_OPENGL=1" 
    738           LIBS="$LIBS -framework OpenGLES -framework AVFoundation -framework CoreGraphics -framework QuartzCore -framework CoreVideo -framework CoreMedia" 
     821        if test "$ac_pjmedia_video_has_darwin" = "yes"; then 
     822          ac_darwin_cflags="-DPJMEDIA_VIDEO_DEV_HAS_DARWIN=1" 
     823          LIBS="$LIBS -framework AVFoundation -framework CoreGraphics -framework QuartzCore -framework CoreVideo -framework CoreMedia" 
    739824          AC_MSG_RESULT([Checking if AVFoundation framework is available... yes]) 
    740825        else 
    741826          AC_MSG_RESULT([Checking if AVFoundation framework is available... no]) 
    742827        fi 
    743         ;; 
    744   *darwin*) 
    745         ac_pjmedia_video=mac_os 
    746         AC_SUBST(ac_pjmedia_video_has_qt) 
    747         AC_SUBST(ac_qt_cflags) 
    748         SAVED_LIBS="$LIBS" 
    749         LIBS="-framework QTKit" 
    750         AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [])],[ac_pjmedia_video_has_qt=yes],[ac_pjmedia_video_has_qt=no]) 
    751         LIBS="$SAVED_LIBS" 
    752         if test "$ac_pjmedia_video_has_qt" = "yes"; then 
    753           ac_qt_cflags="-DPJMEDIA_VIDEO_DEV_HAS_QT=1" 
    754           LIBS="$LIBS -framework QTKit -framework QuartzCore -framework OpenGL" 
    755           AC_MSG_RESULT([Checking if QTKit framework is available... yes]) 
     828        if test "$ac_pjmedia_video_has_ios_opengl" = "yes"; then 
     829          ac_darwin_cflags+=" -DPJMEDIA_VIDEO_DEV_HAS_IOS_OPENGL=1" 
     830          LIBS="$LIBS -framework OpenGLES" 
     831          AC_MSG_RESULT([Checking if OpenGLES framework is available... yes]) 
    756832        else 
    757           AC_MSG_RESULT([Checking if QTKit framework is available... no]) 
     833          AC_MSG_RESULT([Checking if OpenGLES framework is available... no]) 
    758834        fi 
    759         ;; 
     835        if false; then 
     836          # QTKit is deprecated, see ticket #1931. 
     837          ac_pjmedia_video=mac_os 
     838          AC_SUBST(ac_pjmedia_video_has_qt) 
     839          AC_SUBST(ac_qt_cflags) 
     840          SAVED_LIBS="$LIBS" 
     841          LIBS="-framework QTKit" 
     842          AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [])],[ac_pjmedia_video_has_qt=yes],[ac_pjmedia_video_has_qt=no]) 
     843          LIBS="$SAVED_LIBS" 
     844          if test "$ac_pjmedia_video_has_qt" = "yes"; then 
     845            ac_qt_cflags="-DPJMEDIA_VIDEO_DEV_HAS_QT=1" 
     846            LIBS="$LIBS -framework QTKit -framework QuartzCore -framework OpenGL" 
     847            AC_MSG_RESULT([Checking if QTKit framework is available... yes]) 
     848          else 
     849            AC_MSG_RESULT([Checking if QTKit framework is available... no]) 
     850          fi 
     851        fi 
     852        ;; 
    760853 esac 
    761854fi 
    762855 
    763856AC_ARG_ENABLE(ext_sound, 
    764               AC_HELP_STRING([--enable-ext-sound], 
     857              AS_HELP_STRING([--enable-ext-sound], 
    765858                             [PJMEDIA will not provide any sound device backend]), 
    766859              [if test "$enable_ext_sound" = "yes"; then 
     
    773866AC_SUBST(ac_no_small_filter) 
    774867AC_ARG_ENABLE(small-filter, 
    775               AC_HELP_STRING([--disable-small-filter], 
     868              AS_HELP_STRING([--disable-small-filter], 
    776869                             [Exclude small filter in resampling]), 
    777870              [if test "$enable_small_filter" = "no"; then 
     
    784877AC_SUBST(ac_no_large_filter) 
    785878AC_ARG_ENABLE(large-filter, 
    786               AC_HELP_STRING([--disable-large-filter], 
     879              AS_HELP_STRING([--disable-large-filter], 
    787880                             [Exclude large filter in resampling]), 
    788881              [if test "$enable_large_filter" = "no"; then 
     
    795888AC_SUBST(ac_no_speex_aec) 
    796889AC_ARG_ENABLE(speex-aec, 
    797               AC_HELP_STRING([--disable-speex-aec], 
     890              AS_HELP_STRING([--disable-speex-aec], 
    798891                             [Exclude Speex Acoustic Echo Canceller/AEC]), 
    799892              [if test "$enable_speex_aec" = "no"; then 
     
    806899AC_SUBST(ac_no_g711_codec) 
    807900AC_ARG_ENABLE(g711-codec, 
    808               AC_HELP_STRING([--disable-g711-codec], 
     901              AS_HELP_STRING([--disable-g711-codec], 
    809902                             [Exclude G.711 codecs from the build]), 
    810903              [if test "$enable_g711_codec" = "no"; then 
     
    819912AC_SUBST(ac_no_l16_codec) 
    820913AC_ARG_ENABLE(l16-codec, 
    821               AC_HELP_STRING([--disable-l16-codec], 
     914              AS_HELP_STRING([--disable-l16-codec], 
    822915                             [Exclude Linear/L16 codec family from the build]), 
    823916              [if test "$enable_l16_codec" = "no"; then 
     
    832925AC_SUBST(ac_no_gsm_codec) 
    833926AC_ARG_ENABLE(gsm-codec, 
    834               AC_HELP_STRING([--disable-gsm-codec], 
     927              AS_HELP_STRING([--disable-gsm-codec], 
    835928                             [Exclude GSM codec in the build]), 
    836929              [if test "$enable_gsm_codec" = "no"; then 
     
    844937AC_SUBST(ac_no_g722_codec) 
    845938AC_ARG_ENABLE(g722-codec, 
    846               AC_HELP_STRING([--disable-g722-codec], 
     939              AS_HELP_STRING([--disable-g722-codec], 
    847940                             [Exclude G.722 codec in the build]), 
    848941              [if test "$enable_g722_codec" = "no"; then 
     
    856949AC_SUBST(ac_no_g7221_codec) 
    857950AC_ARG_ENABLE(g7221-codec, 
    858               AC_HELP_STRING([--disable-g7221-codec], 
     951              AS_HELP_STRING([--disable-g7221-codec], 
    859952                             [Exclude G.7221 codec in the build]), 
    860953              [if test "$enable_g7221_codec" = "no"; then 
     
    868961AC_SUBST(ac_no_speex_codec) 
    869962AC_ARG_ENABLE(speex-codec, 
    870               AC_HELP_STRING([--disable-speex-codec], 
     963              AS_HELP_STRING([--disable-speex-codec], 
    871964                             [Exclude Speex codecs in the build]), 
    872965              [if test "$enable_speex_codec" = "no"; then 
     
    880973AC_SUBST(ac_no_ilbc_codec) 
    881974AC_ARG_ENABLE(ilbc-codec, 
    882               AC_HELP_STRING([--disable-ilbc-codec], 
     975              AS_HELP_STRING([--disable-ilbc-codec], 
    883976                             [Exclude iLBC codec in the build]), 
    884977              [if test "$enable_ilbc_codec" = "no"; then 
     
    891984dnl # Include libsamplerate 
    892985AC_ARG_ENABLE(libsamplerate, 
    893            AC_HELP_STRING([--enable-libsamplerate], 
     986           AS_HELP_STRING([--enable-libsamplerate], 
    894987                    [Link with libsamplerate when available.]), 
    895988           [ 
     
    905998AC_SUBST(ac_resample_dll) 
    906999AC_ARG_ENABLE(resample_dll, 
    907               AC_HELP_STRING([--enable-resample-dll], 
     1000              AS_HELP_STRING([--enable-resample-dll], 
    9081001                             [Build libresample as shared library]), 
    9091002              [if test "$enable_resample_dll" = "yes"; then 
     
    9161009dnl # SDL alt prefix 
    9171010AC_ARG_WITH(sdl, 
    918     AC_HELP_STRING([--with-sdl=DIR], 
     1011    AS_HELP_STRING([--with-sdl=DIR], 
    9191012                   [Specify alternate libSDL prefix]), 
    9201013    [], 
     
    9291022dnl # SDL 
    9301023AC_ARG_ENABLE(sdl, 
    931               AC_HELP_STRING([--disable-sdl], 
     1024              AS_HELP_STRING([--disable-sdl], 
    9321025                             [Disable SDL (default: not disabled)]), 
    9331026              [ 
     
    9611054 
    9621055AC_ARG_WITH(ffmpeg, 
    963     AC_HELP_STRING([--with-ffmpeg=DIR], 
     1056    AS_HELP_STRING([--with-ffmpeg=DIR], 
    9641057                   [Specify alternate FFMPEG prefix]), 
    9651058    [], 
     
    9741067dnl # FFMPEG stuffs 
    9751068AC_ARG_ENABLE(ffmpeg, 
    976               AC_HELP_STRING([--disable-ffmpeg], 
     1069              AS_HELP_STRING([--disable-ffmpeg], 
    9771070                             [Disable ffmpeg (default: not disabled)]), 
    9781071              [ 
     
    10001093                        AC_MSG_CHECKING([ffmpeg packages]) 
    10011094                        av_pkg="" 
    1002                         if $PKG_CONFIG --exists libdevice; then 
     1095                        if $PKG_CONFIG --exists libavdevice; then 
    10031096                                ac_ffmpeg_cflags="$ac_ffmpeg_cflags -DPJMEDIA_HAS_LIBAVDEVICE=1" 
    1004                                 av_pkg="$av_pkg libdevice" 
     1097                                av_pkg="$av_pkg libavdevice" 
    10051098                        fi 
    10061099                        if $PKG_CONFIG --exists libavformat; then 
     
    10191112                                ac_ffmpeg_cflags="$ac_ffmpeg_cflags -DPJMEDIA_HAS_LIBAVUTIL=1" 
    10201113                                av_pkg="$av_pkg libavutil" 
    1021                         fi 
    1022                         if $PKG_CONFIG --exists libavcore; then 
    1023                                 ac_ffmpeg_cflags="$ac_ffmpeg_cflags -DPJMEDIA_HAS_LIBAVCORE=1" 
    1024                                 av_pkg="$av_pkg libavcore" 
    10251114                        fi 
    10261115                         
     
    10901179                fi 
    10911180                 
     1181                AC_CHECK_TYPES(enum AVPixelFormat, 
     1182                               [], 
     1183                               [ac_ffmpeg_cflags="$ac_ffmpeg_cflags -DPJMEDIA_USE_OLD_FFMPEG=1"], 
     1184                               [[#include <libavformat/avformat.h>]] 
     1185                             ) 
     1186                                      
    10921187                LIBS="$LIBS $ac_ffmpeg_ldflags" 
    10931188                export PKG_CONFIG_PATH=$SAVED_PKG_CONFIG_PATH 
     
    10971192dnl # Video for Linux 2 
    10981193AC_ARG_ENABLE(v4l2, 
    1099               AC_HELP_STRING([--disable-v4l2], 
     1194              AS_HELP_STRING([--disable-v4l2], 
    11001195                             [Disable Video4Linux2 (default: not disabled)]), 
    11011196              [ 
     
    11181213dnl # OpenH264 alt prefix 
    11191214AC_ARG_WITH(openh264, 
    1120             AC_HELP_STRING([--with-openh264=DIR], 
     1215            AS_HELP_STRING([--with-openh264=DIR], 
    11211216                           [Specify alternate OpenH264 prefix]), 
    11221217            [], 
     
    11331228AC_SUBST(ac_openh264_ldflags) 
    11341229AC_ARG_ENABLE(openh264, 
    1135               AC_HELP_STRING([--disable-openh264], 
     1230              AS_HELP_STRING([--disable-openh264], 
    11361231                             [Disable OpenH264 (default: not disabled)]), 
    11371232              [ 
     
    11811276              ]) 
    11821277 
    1183 dnl # libyuv alt prefix 
    1184 AC_ARG_WITH(libyuv, 
    1185             AC_HELP_STRING([--with-libyuv=DIR], 
    1186                            [Specify alternate libyuv prefix]), 
    1187             [], 
    1188             [with_libyuv=no] 
    1189             ) 
    1190  
    1191 dnl # Do not use default libyuv installation if we are cross-compiling 
    1192 if test "x$ac_cross_compile" != "x" -a "x$with_libyuv" = "xno"; then 
    1193     enable_libyuv=no 
    1194 fi             
    1195                
    1196 dnl # Include libyuv 
    1197 AC_SUBST(ac_libyuv_cflags) 
    1198 AC_SUBST(ac_libyuv_ldflags) 
    1199 AC_ARG_ENABLE(libyuv, 
    1200               AC_HELP_STRING([--disable-libyuv], 
    1201                              [Exclude libyuv in the build]), 
    1202               [if test "$enable_libyuv" = "no"; then 
    1203                 AC_MSG_RESULT([Checking if libyuv is disabled...yes]) 
    1204                fi], 
    1205               [ 
    1206                   if test "x$with_libyuv" != "xno" -a "x$with_libyuv" != "x"; then 
    1207                         LIBYUV_PREFIX=$with_libyuv 
    1208                         LIBYUV_CFLAGS="-I$LIBYUV_PREFIX/include" 
    1209                          
    1210                         case $target in 
    1211                             *-apple-darwin_ios*) 
    1212                                 LIBYUV_LDFLAGS="-L$LIBYUV_PREFIX/out_ios/Release-iphoneos" 
    1213                                 case $ARCH in 
    1214                                     *arm*) 
    1215                                     LIBYUV_LIBS="-lyuv_neon" 
    1216                                     ;; 
    1217                                 *) 
    1218                                     ;; 
    1219                                 esac 
    1220                                 ;;                       
    1221                             *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux* | *android*) 
    1222                                 LIBYUV_LDFLAGS="-L$LIBYUV_PREFIX/out/Release" 
    1223                                 ;; 
    1224                             *) 
    1225                                 LIBYUV_CFLAGS="" 
    1226                                 LIBYUV_LDFLAGS="" 
    1227                                 ;; 
    1228                         esac                     
    1229                          
    1230                         AC_MSG_RESULT([Using libyuv prefix... $with_libyuv]) 
    1231                   else 
    1232                         LIBYUV_CFLAGS="" 
    1233                         LIBYUV_LDFLAGS=""  
    1234                   fi 
    1235                                    
    1236                   LIBYUV_LIBS="$LIBYUV_LIBS -lyuv" 
    1237                    
    1238                   SAVED_LIBS="$LIBS" 
    1239                   SAVED_LDFLAGS="$LDFLAGS" 
    1240                   SAVED_CFLAGS="$CFLAGS" 
    1241                    
    1242                   LIBS="$LIBYUV_LIBS $LIBS" 
    1243                   LDFLAGS="$LIBYUV_LDFLAGS $LDFLAGS" 
    1244                   CFLAGS="$LIBYUV_CFLAGS $CFLAGS" 
    1245                    
    1246                   AC_CHECK_LIB(yuv, 
    1247                                I420Scale, 
    1248                                [ ac_libyuv_cflags="-DPJMEDIA_HAS_LIBYUV=1 $LIBYUV_CFLAGS" 
    1249                                  ac_libyuv_ldflags="$LIBYUV_LDFLAGS $LIBYUV_LIBS" 
    1250                                ], 
    1251                                [ LIBS="$SAVED_LIBS" 
    1252                                  LDFLAGS="$SAVED_LDFLAGS" 
    1253                                  CFLAGS="$SAVED_CFLAGS" 
    1254                                ], 
    1255                                [] 
    1256                                ) 
    1257               ]) 
    1258  
    1259  
    1260 dnl # WebRtc alt prefix 
    1261 AC_ARG_WITH(webrtc, 
    1262             AC_HELP_STRING([--with-webrtc=DIR], 
    1263                            [Specify alternate WebRtc prefix]), 
    1264             [], 
    1265             [with_webrtc=no] 
    1266             ) 
    1267  
    1268 dnl # Do not use default webrtc installation if we are cross-compiling 
    1269 if test "x$ac_cross_compile" != "x" -a "x$with_webrtc" = "xno"; then 
    1270     enable_webrtc=no 
    1271 fi             
    1272                
    1273 dnl # WebRtc 
    1274 AC_SUBST(ac_webrtc_cflags) 
    1275 AC_SUBST(ac_webrtc_ldflags) 
    1276 AC_ARG_ENABLE(webrtc, 
    1277               AC_HELP_STRING([--disable-webrtc], 
    1278                              [Exclude webrtc in the build]), 
    1279               [if test "$enable_webrtc" = "no"; then 
    1280                 AC_MSG_RESULT([Checking if webrtc is disabled...yes]) 
    1281                fi], 
    1282               [ 
    1283                   if test "x$with_webrtc" != "xno" -a "x$with_webrtc" != "x"; then 
    1284                         WEBRTC_PREFIX=$with_webrtc 
    1285                         WEBRTC_CFLAGS="-I$WEBRTC_PREFIX/src" 
    1286                          
    1287                         case $target in 
    1288                             *-apple-darwin_ios*) 
    1289                                 case $ARCH in 
    1290                                     *arm*) 
    1291                                     WEBRTC_CFLAGS="-DPJMEDIA_WEBRTC_AEC_USE_MOBILE=1 $WEBRTC_CFLAGS" 
    1292                                     WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out_ios/Release-iphoneos" 
    1293                                     WEBRTC_LIBS="-laudio_processing_neon -lcommon_audio_neon" 
    1294                                     ;; 
    1295                                 *) 
    1296                                     ;; 
    1297                                 esac 
    1298                                 ;;                       
    1299                             *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux* | *android*) 
    1300                                 WEBRTC_LDFLAGS="-L$WEBRTC_PREFIX/src/out/Release" 
    1301                                 WEBRTC_LIBS="-laudio_processing_sse2"  
    1302                                 ;; 
    1303                             *) 
    1304                                 ;; 
    1305                         esac                     
    1306                          
    1307                         AC_MSG_RESULT([Using webrtc prefix... $with_webrtc]) 
    1308                   else 
    1309                         WEBRTC_CFLAGS="" 
    1310                         WEBRTC_LDFLAGS=""  
    1311                   fi 
    1312                                    
    1313                   WEBRTC_LIBS="$WEBRTC_LIBS -laudio_processing -lcommon_audio -lsystem_wrappers" 
    1314                    
    1315                   SAVED_LIBS="$LIBS" 
    1316                   SAVED_LDFLAGS="$LDFLAGS" 
    1317                   SAVED_CFLAGS="$CFLAGS" 
    1318                    
    1319                   LIBS="$WEBRTC_LIBS $LIBS" 
    1320                   LDFLAGS="$WEBRTC_LDFLAGS $LDFLAGS" 
    1321                   CFLAGS="$WEBRTC_CFLAGS $CFLAGS" 
    1322                    
    1323                   AC_CHECK_LIB(audio_processing, 
    1324                                WebRtcAec_Process, 
    1325                                [ ac_webrtc_cflags="-DPJMEDIA_HAS_WEBRTC_AEC=1 $WEBRTC_CFLAGS" 
    1326                                  ac_webrtc_ldflags="$WEBRTC_LDFLAGS $WEBRTC_LIBS" 
    1327                                ], 
    1328                                [ LIBS="$SAVED_LIBS" 
    1329                                  LDFLAGS="$SAVED_LDFLAGS" 
    1330                                  CFLAGS="$SAVED_CFLAGS" 
    1331                                ], 
    1332                                [] 
    1333                                ) 
    1334               ]) 
    13351278 
    13361279dnl ######################################################## 
     
    13381281dnl # 
    13391282AC_ARG_ENABLE(ipp, 
    1340     AC_HELP_STRING([--enable-ipp], 
     1283    AS_HELP_STRING([--enable-ipp], 
    13411284                   [Enable Intel IPP support. Specify the Intel IPP package and samples location using IPPROOT and IPPSAMPLES env var or with --with-ipp and --with-ipp-samples options]), 
    13421285    [], 
     
    13451288 
    13461289AC_ARG_WITH(ipp, 
    1347     AC_HELP_STRING([--with-ipp=DIR], 
     1290    AS_HELP_STRING([--with-ipp=DIR], 
    13481291                   [Specify the Intel IPP location]), 
    13491292    [], 
     
    13521295 
    13531296AC_ARG_WITH(ipp-samples, 
    1354     AC_HELP_STRING([--with-ipp-samples=DIR], 
     1297    AS_HELP_STRING([--with-ipp-samples=DIR], 
    13551298                   [Specify the Intel IPP samples location]), 
    13561299    [], 
     
    13591302 
    13601303AC_ARG_WITH(ipp-arch, 
    1361     AC_HELP_STRING([--with-ipp-arch=ARCH], 
     1304    AS_HELP_STRING([--with-ipp-arch=ARCH], 
    13621305                   [Specify the Intel IPP ARCH suffix, e.g. "64" or "em64t. Default is blank for IA32"]), 
    13631306    [], 
     
    15771520dnl # SSL alt prefix 
    15781521AC_ARG_WITH(ssl, 
    1579     AC_HELP_STRING([--with-ssl=DIR], 
     1522    AS_HELP_STRING([--with-ssl=DIR], 
    15801523                   [Specify alternate libssl prefix]), 
    15811524    [], 
     
    15901533dnl # Include SSL support 
    15911534AC_SUBST(ac_no_ssl) 
     1535AC_SUBST(ac_ssl_has_aes_gcm,0) 
     1536AC_SUBST(ac_ssl_has_ec,0) 
     1537AC_SUBST(ac_ssl_has_sigalg,0) 
    15921538AC_ARG_ENABLE(ssl, 
    1593               AC_HELP_STRING([--disable-ssl], 
     1539              AS_HELP_STRING([--disable-ssl], 
    15941540                             [Exclude SSL support the build (default: autodetect)]) 
    15951541              , 
     
    16151561                if test "x$openssl_h_present" = "x1" -a "x$libssl_present" = "x1" -a "x$libcrypto_present" = "x1"; then 
    16161562                        AC_MSG_RESULT([OpenSSL library found, SSL support enabled]) 
     1563                         
     1564                        # Check if SRTP should be compiled with OpenSSL 
     1565                        # support, to enable cryptos such as AES GCM 
     1566                        AC_CHECK_LIB(crypto,EVP_aes_128_gcm,[ac_ssl_has_aes_gcm=1]) 
     1567                        if test "x$ac_ssl_has_aes_gcm" = "x1"; then 
     1568                                AC_MSG_RESULT([OpenSSL has AES GCM support, SRTP will use OpenSSL]) 
     1569                        else 
     1570                                AC_MSG_RESULT([OpenSSL AES GCM support not found, SRTP will only support AES CM cryptos]) 
     1571                        fi 
     1572 
     1573                        # Check if OpenSSL supports setting curve algorithm 
     1574                        # and has elliptic curve 
     1575                         
     1576                        AC_MSG_CHECKING([OpenSSL setting curve functions]) 
     1577                        AC_SUBST(set_curve_present,0) 
     1578                        AC_SUBST(ec_curve_present,0) 
     1579                        AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <openssl/ssl.h> 
     1580                                                  ]], 
     1581                                                  [ SSL_set1_curves(NULL, NULL, 0);] 
     1582                                                 )], 
     1583                                 [ set_curve_present=1 
     1584                                   AC_MSG_RESULT(ok) 
     1585                                  ], 
     1586                                 [ 
     1587                                   AC_MSG_RESULT(no) 
     1588                                 ]) 
     1589 
     1590                        AC_CHECK_LIB(ssl,EC_curve_nid2nist,[ec_curve_present=1]) 
     1591                        if test "x$set_curve_present" = "x1" -a "x$ec_curve_present" = "x1"; then 
     1592                                [ac_ssl_has_ec=1] 
     1593                                AC_MSG_RESULT([OpenSSL has elliptic curve support]) 
     1594                        else 
     1595                                AC_MSG_RESULT([OpenSSL elliptic curve algorithm unsupported]) 
     1596                        fi 
     1597 
     1598                        AC_MSG_CHECKING([OpenSSL setting sigalg]) 
     1599                        AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <openssl/ssl.h> 
     1600                                                  ]], 
     1601                                                  [SSL_set1_sigalgs_list(NULL, NULL);] 
     1602                                                 )], 
     1603                                 [ ac_ssl_has_sigalg=1 
     1604                                   AC_MSG_RESULT(ok) 
     1605                                  ], 
     1606                                 [ 
     1607                                   AC_MSG_RESULT(no) 
     1608                                 ]) 
     1609 
    16171610                        # PJSIP_HAS_TLS_TRANSPORT setting follows PJ_HAS_SSL_SOCK 
    16181611                        #AC_DEFINE(PJSIP_HAS_TLS_TRANSPORT, 1) 
     
    16251618dnl # Obsolete option --with-opencore-amrnb 
    16261619AC_ARG_WITH(opencore-amrnb, 
    1627     AC_HELP_STRING([--with-opencore-amrnb=DIR], 
     1620    AS_HELP_STRING([--with-opencore-amrnb=DIR], 
    16281621                   [This option is obsolete and replaced by --with-opencore-amr=DIR]), 
    16291622    [AC_MSG_ERROR(This option is obsolete and replaced by --with-opencore-amr=DIR)], 
    1630     [] 
     1623    [true;] 
    16311624    ) 
    16321625 
    16331626dnl # opencore-amr alt prefix 
    16341627AC_ARG_WITH(opencore-amr, 
    1635     AC_HELP_STRING([--with-opencore-amr=DIR], 
     1628    AS_HELP_STRING([--with-opencore-amr=DIR], 
    16361629                   [Specify alternate libopencore-amr prefix]), 
    16371630    [], 
     
    16461639dnl # vo-amrwbenc alt prefix 
    16471640AC_ARG_WITH(opencore-amrwbenc, 
    1648     AC_HELP_STRING([--with-opencore-amrwbenc=DIR], 
     1641    AS_HELP_STRING([--with-opencore-amrwbenc=DIR], 
    16491642                   [Specify alternate libvo-amrwbenc prefix]), 
    16501643    [], 
     
    16621655AC_SUBST(ac_no_opencore_amrwb) 
    16631656AC_ARG_ENABLE(opencore_amr, 
    1664               AC_HELP_STRING([--disable-opencore-amr], 
     1657              AS_HELP_STRING([--disable-opencore-amr], 
    16651658                             [Exclude OpenCORE AMR support from the build (default: autodetect)]) 
    16661659              , 
     
    17171710dnl # SILK prefix 
    17181711AC_ARG_WITH(silk, 
    1719     AC_HELP_STRING([--with-silk=DIR], 
     1712    AS_HELP_STRING([--with-silk=DIR], 
    17201713                   [Specify alternate SILK prefix]), 
    17211714    [], 
     
    17311724AC_SUBST(ac_no_silk) 
    17321725AC_ARG_ENABLE(silk, 
    1733               AC_HELP_STRING([--disable-silk], 
     1726              AS_HELP_STRING([--disable-silk], 
    17341727                             [Exclude SILK support from the build (default: autodetect)]) 
    17351728              , 
     
    17621755              ]) 
    17631756 
     1757dnl # Do not use default OPUS installation if we are cross-compiling 
     1758if test "x$ac_cross_compile" != "x" -a "x$with_opus" = "xno"; then 
     1759    enable_opus=no 
     1760fi 
     1761 
     1762dnl # OPUS prefix 
     1763AC_ARG_WITH(opus, 
     1764    AS_HELP_STRING([--with-opus=DIR], 
     1765                   [Specify alternate OPUS prefix]), 
     1766    [], 
     1767    [with_opus=no] 
     1768    ) 
     1769 
     1770dnl # Include OPUS support 
     1771AC_SUBST(ac_no_opus) 
     1772AC_ARG_ENABLE(opus, 
     1773              AS_HELP_STRING([--disable-opus], 
     1774                             [Exclude OPUS support from the build (default: autodetect)]) 
     1775              , 
     1776              [ 
     1777                if test "$enable_opus" = "no"; then 
     1778                 [ac_no_opus=1] 
     1779                 AC_DEFINE(PJMEDIA_HAS_OPUS_CODEC,0) 
     1780                 AC_MSG_RESULT([Checking if OPUS support is disabled... yes]) 
     1781                fi 
     1782              ], 
     1783              [ 
     1784                AC_MSG_RESULT([checking for OPUS installations..]) 
     1785                if test "x$with_opus" != "xno" -a "x$with_opus" != "x"; then 
     1786                    CFLAGS="$CFLAGS -I$with_opus/include" 
     1787                    CPPFLAGS="$CPPFLAGS -I$with_opus/include" 
     1788                    LDFLAGS="$LDFLAGS -L$with_opus/lib" 
     1789                    AC_MSG_RESULT([Using OPUS prefix... $with_opus]) 
     1790                fi 
     1791                AC_SUBST(opus_h_present) 
     1792                AC_SUBST(opus_present) 
     1793                AC_CHECK_HEADER(opus/opus.h,[opus_h_present=1]) 
     1794                AC_CHECK_LIB(opus,opus_repacketizer_get_size,[opus_present=1 && LIBS="-lopus $LIBS"]) 
     1795                if test "x$opus_h_present" = "x1" -a "x$opus_present" = "x1"; then 
     1796                        AC_MSG_RESULT([OPUS library found, OPUS support enabled]) 
     1797                        AC_DEFINE(PJMEDIA_HAS_OPUS_CODEC,1) 
     1798                else 
     1799                        [ac_no_opus=1] 
     1800                        AC_MSG_RESULT([OPUS library not found, OPUS support disabled]) 
     1801                        AC_DEFINE(PJMEDIA_HAS_OPUS_CODEC,0) 
     1802                fi 
     1803              ]) 
     1804 
     1805dnl # Include libyuv 
     1806AC_SUBST(ac_no_yuv) 
     1807AC_ARG_ENABLE(libyuv, 
     1808              AS_HELP_STRING([--disable-libyuv], 
     1809                             [Exclude libyuv in the build]), 
     1810              [if test "$enable_libyuv" = "no"; then 
     1811                [ac_no_yuv=1] 
     1812                AC_DEFINE(PJMEDIA_HAS_LIBYUV,0) 
     1813                AC_MSG_RESULT([Checking if libyuv is disabled...yes]) 
     1814               fi], 
     1815              AC_MSG_RESULT([Checking if libyuv is disabled...no])) 
     1816 
     1817 
     1818dnl # Include webrtc 
     1819AC_SUBST(ac_no_webrtc) 
     1820AC_SUBST(ac_webrtc_instset) 
     1821AC_SUBST(ac_webrtc_cflags) 
     1822AC_SUBST(ac_webrtc_ldflags) 
     1823AC_ARG_ENABLE(libwebrtc, 
     1824              AS_HELP_STRING([--disable-libwebrtc], 
     1825                             [Exclude libwebrtc in the build]), 
     1826              [if test "$enable_libwebrtc" = "no"; then 
     1827                [ac_no_webrtc=1] 
     1828                AC_DEFINE(PJMEDIA_HAS_LIBWEBRTC,0) 
     1829                AC_MSG_RESULT([Checking if libwebrtc is disabled...yes]) 
     1830               fi], 
     1831              [ 
     1832                  AC_MSG_RESULT([Checking if libwebrtc is disabled...no]) 
     1833                  case $target in 
     1834                      *-apple-darwin_ios*) 
     1835                        case $target in 
     1836                            arm64*) 
     1837                                ac_webrtc_instset=neon 
     1838                                ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64" 
     1839                                ;; 
     1840                            *arm*) 
     1841                                ac_webrtc_instset=neon 
     1842                                ;; 
     1843                            *) 
     1844                                ac_webrtc_instset=sse2 
     1845                                ;; 
     1846                        esac 
     1847                        ;; 
     1848                      *android*) 
     1849                        case $TARGET_ABI in 
     1850                            armeabi-v7a) 
     1851                                ac_webrtc_instset=neon 
     1852                                ac_webrtc_cflags="-mfloat-abi=softfp -mfpu=neon" 
     1853                                ;; 
     1854                            armeabi) 
     1855                                ac_webrtc_instset=neon 
     1856                                ac_webrtc_cflags="-mthumb -mfloat-abi=softfp -mfpu=neon -march=armv7" 
     1857                                ;; 
     1858                            arm64*) 
     1859                                ac_webrtc_instset=neon 
     1860                                ac_webrtc_cflags="-DWEBRTC_ARCH_ARM64" 
     1861                                ;; 
     1862                            mips64*) 
     1863                                ac_webrtc_instset=generic 
     1864                                ;; 
     1865                            mips*) 
     1866                                ac_webrtc_instset=mips 
     1867                                ;; 
     1868                            *) 
     1869                                ac_webrtc_instset=sse2 
     1870                                ;; 
     1871                        esac 
     1872                        ;; 
     1873                     *mingw* | *cygw* | *win32* | *w32* | *darwin* | *linux*) 
     1874                        ac_webrtc_instset=sse2 
     1875                        ;; 
     1876                     *) 
     1877                        ;; 
     1878                esac     
     1879              ]) 
     1880 
    17641881 
    17651882dnl ########################################## 
     
    18321949 
    18331950AC_SUBST(target) 
    1834 AC_SUBST(ac_linux_poll,select) 
    18351951AC_SUBST(ac_host,unix) 
    18361952AC_SUBST(ac_main_obj) 
     
    18461962 
    18471963ac_build_mak_vars=`echo $ac_build_mak_vars | sed 's/\\\\n/\n/g'` 
    1848 AC_OUTPUT() 
     1964AC_OUTPUT 
    18491965 
    18501966 
Note: See TracChangeset for help on using the changeset viewer.