1dnl 2dnl AVCodec 3dnl 4 5AC_DEFUN([GMERLIN_CHECK_AVCODEC],[ 6 7AH_TEMPLATE([HAVE_LIBAVCODEC], 8 [Do we have libavcodec installed?]) 9 10have_avcodec=false 11 12AVCODEC_BUILD="3412992" 13 14AC_ARG_ENABLE(libavcodec, 15[AC_HELP_STRING([--disable-libavcodec],[Disable libavcodec (default: autodetect)])], 16[case "${enableval}" in 17 yes) test_avcodec=true ;; 18 no) test_avcodec=false ;; 19esac],[test_avcodec=true]) 20 21 22if test x$test_avcodec = xtrue; then 23ACL_PATH_AVCODEC($AVCODEC_BUILD , have_avcodec="true", have_avcodec="false") 24AVCODEC_REQUIRED=$AVCODEC_VERSION 25 26fi 27 28AM_CONDITIONAL(HAVE_LIBAVCODEC, test x$have_avcodec = xtrue) 29 30AC_SUBST(AVCODEC_REQUIRED) 31AC_SUBST(AVCODEC_LIBS) 32AC_SUBST(AVCODEC_CFLAGS) 33 34if test "x$have_avcodec" = "xtrue"; then 35AC_DEFINE([HAVE_LIBAVCODEC]) 36fi 37 38]) 39 40dnl 41dnl Avformat 42dnl 43 44AC_DEFUN([GMERLIN_CHECK_AVFORMAT],[ 45 46AH_TEMPLATE([HAVE_LIBAVFORMAT], [Do we have libavformat installed?]) 47AH_TEMPLATE([AVFORMAT_HEADER], [libavformat header]) 48 49have_avformat=false 50 51AVFORMAT_BUILD="3415808" 52 53AC_ARG_ENABLE(libavformat, 54[AC_HELP_STRING([--disable-libavformat],[Disable libavformat (default: autodetect)])], 55[case "${enableval}" in 56 yes) test_avformat=true ;; 57 no) test_avformat=false ;; 58esac],[test_avformat=true]) 59 60if test x$test_avformat = xtrue; then 61 62ACL_PATH_AVFORMAT($AVFORMAT_BUILD , have_avformat="true", have_avformat="false") 63AVFORMAT_REQUIRED=$AVFORMAT_VERSION 64 65fi 66 67AM_CONDITIONAL(HAVE_LIBAVFORMAT, test x$have_avformat = xtrue) 68 69AC_SUBST(AVFORMAT_REQUIRED) 70AC_SUBST(AVFORMAT_LIBS) 71AC_SUBST(AVFORMAT_CFLAGS) 72 73if test "x$have_avformat" = "xtrue"; then 74AC_DEFINE([HAVE_LIBAVFORMAT]) 75AC_DEFINE_UNQUOTED(AVFORMAT_HEADER, $AVFORMAT_HEADER) 76fi 77 78]) 79 80 81dnl 82dnl libpostproc 83dnl 84 85AC_DEFUN([GMERLIN_CHECK_LIBPOSTPROC],[ 86 87AH_TEMPLATE([HAVE_LIBPOSTPROC], 88 [Do we have libpostproc installed?]) 89AH_TEMPLATE([POSTPROC_HEADER], [libpostproc header]) 90 91have_libpostproc=false 92 93LIBPOSTPROC_REQUIRED="51.0.0" 94 95AC_ARG_ENABLE(libpostproc, 96[AC_HELP_STRING([--disable-libpostproc],[Disable libpostproc (default: autodetect)])], 97[case "${enableval}" in 98 yes) test_libpostproc=true ;; 99 no) test_libpostproc=false ;; 100esac],[test_libpostproc=true]) 101 102if test x$test_libpostproc = xtrue; then 103 104PKG_CHECK_MODULES(LIBPOSTPROC, libpostproc >= $LIBPOSTPROC_REQUIRED, 105 have_libpostproc="true", have_libpostproc="false") 106fi 107 108if test x$have_libpostproc = xtrue; then 109 110CFLAGS_save=$CFLAGS 111CFLAGS="$CFLAGS $GMERLIN_DEP_CFLAGS $LIBPOSTPROC_CFLAGS" 112found_header="false" 113 114AC_TRY_COMPILE([ 115#include <inttypes.h> 116#include <libpostproc/postprocess.h>],[], [found_header="true";POSTPROC_HEADER="<libpostproc/postprocess.h>" ],) 117 118 119if test $found_header = "false"; then 120AC_TRY_COMPILE([ 121#include <inttypes.h> 122#include <postproc/postprocess.h>],[], [found_header="true";POSTPROC_HEADER="<postproc/postprocess.h>" ],) 123fi 124 125if test $found_header = "false"; then 126AC_TRY_COMPILE([ 127#include <inttypes.h> 128#include <postprocess.h>],[],[found_header="true";POSTPROC_HEADER="<postprocess.h>"]) 129fi 130 131if test $found_header = "false"; then 132have_libpostproc=false 133else 134CFLAGS="-DPOSTPROC_HEADER=$POSTPROC_HEADER $CFLAGS" 135AC_CHECK_TYPES([pp_context_t, pp_context, pp_mode_t, pp_mode], [], [], [[ 136#ifdef POSTPROC_HEADER 137#include POSTPROC_HEADER 138#endif 139]]) 140fi 141 142CFLAGS="$CFLAGS_save" 143 144fi 145 146AC_SUBST(LIBPOSTPROC_REQUIRED) 147AC_SUBST(LIBPOSTPROC_LIBS) 148AC_SUBST(LIBPOSTPROC_CFLAGS) 149 150AM_CONDITIONAL(HAVE_LIBPOSTPROC, test x$have_libpostproc = xtrue) 151 152if test "x$have_libpostproc" = "xtrue"; then 153AC_DEFINE([HAVE_LIBPOSTPROC]) 154AC_DEFINE_UNQUOTED(POSTPROC_HEADER, $POSTPROC_HEADER) 155fi 156 157]) 158 159dnl 160dnl libswscale 161dnl 162 163AC_DEFUN([GMERLIN_CHECK_LIBSWSCALE],[ 164 165AH_TEMPLATE([HAVE_LIBSWSCALE], 166 [Do we have libswscale installed?]) 167AH_TEMPLATE([SWSCALE_HEADER], [libswscale header]) 168 169have_libswscale=false 170 171LIBSWSCALE_REQUIRED="0.5.0" 172 173AC_ARG_ENABLE(libswscale, 174[AC_HELP_STRING([--disable-libswscale],[Disable libswscale (default: autodetect)])], 175[case "${enableval}" in 176 yes) test_libswscale=true ;; 177 no) test_libswscale=false ;; 178esac],[test_libswscale=true]) 179 180if test x$test_libswscale = xtrue; then 181 182PKG_CHECK_MODULES(LIBSWSCALE, libswscale >= $LIBSWSCALE_REQUIRED, 183 have_libswscale="true", have_libswscale="false") 184fi 185 186if test x$have_libswscale = xtrue; then 187 188CFLAGS_save=$CFLAGS 189CFLAGS="$CFLAGS $GMERLIN_DEP_CFLAGS $LIBSWSCALE_CFLAGS" 190found_header="false" 191 192AC_TRY_COMPILE([ 193#include <inttypes.h> 194#include <libswscale/swscale.h>],[], [found_header="true";SWSCALE_HEADER="<libswscale/swscale.h>"],) 195 196if test $found_header = "false"; then 197AC_TRY_COMPILE([ 198#include <inttypes.h> 199#include <swscale/swscale.h>],[], [found_header="true";SWSCALE_HEADER="<swscale/swscale.h>"],) 200fi 201 202if test $found_header = "false"; then 203AC_TRY_COMPILE([ 204#include <inttypes.h> 205#include <swscale.h>],[],[found_header="true";SWSCALE_HEADER="<swscale.h>"]) 206fi 207 208CFLAGS="$CFLAGS_save" 209 210fi 211 212AC_SUBST(LIBSWSCALE_REQUIRED) 213AC_SUBST(LIBSWSCALE_LIBS) 214AC_SUBST(LIBSWSCALE_CFLAGS) 215 216AM_CONDITIONAL(HAVE_LIBSWSCALE, test x$have_libswscale = xtrue) 217 218if test "x$have_libswscale" = "xtrue"; then 219AC_DEFINE([HAVE_LIBSWSCALE]) 220AC_DEFINE_UNQUOTED(SWSCALE_HEADER, $SWSCALE_HEADER) 221fi 222 223]) 224 225dnl 226dnl Check for theora decoder 227dnl 228 229AC_DEFUN([GMERLIN_CHECK_THEORADEC],[ 230 231AH_TEMPLATE([HAVE_THEORADEC], 232 [Do we have theora decoder installed?]) 233 234have_theora="false" 235 236THEORADEC_REQUIRED="1.0.0" 237 238AC_ARG_ENABLE(theoradec, 239[AC_HELP_STRING([--disable-theoradec],[Disable theoradec (default: autodetect)])], 240[case "${enableval}" in 241 yes) test_theoradec=true ;; 242 no) test_theoradec=false ;; 243esac],[test_theoradec=true]) 244 245if test x$test_theoradec = xtrue; then 246 247PKG_CHECK_MODULES(THEORADEC, theoradec, have_theoradec="true", have_theoradec="false") 248fi 249 250AC_SUBST(THEORADEC_REQUIRED) 251AC_SUBST(THEORADEC_LIBS) 252AC_SUBST(THEORADEC_CFLAGS) 253 254AM_CONDITIONAL(HAVE_THEORADEC, test x$have_theoradec = xtrue) 255 256if test "x$have_theoradec" = "xtrue"; then 257AC_DEFINE([HAVE_THEORADEC]) 258fi 259 260]) 261 262dnl 263dnl Check for theora encoder 264dnl 265 266AC_DEFUN([GMERLIN_CHECK_THEORAENC],[ 267 268AH_TEMPLATE([HAVE_THEORAENC], 269 [Do we have theoraenc installed?]) 270 271have_theoraenc="false" 272 273THEORAENC_REQUIRED="1.0.0" 274 275AC_ARG_ENABLE(theoraenc, 276[AC_HELP_STRING([--disable-theoraenc],[Disable theoraenc (default: autodetect)])], 277[case "${enableval}" in 278 yes) test_theoraenc=true ;; 279 no) test_theoraenc=false ;; 280esac],[test_theoraenc=true]) 281 282if test x$test_theoraenc = xtrue; then 283 284PKG_CHECK_MODULES(THEORAENC, theoraenc, have_theoraenc="true", have_theoraenc="false") 285fi 286 287AC_SUBST(THEORAENC_REQUIRED) 288AC_SUBST(THEORAENC_LIBS) 289AC_SUBST(THEORAENC_CFLAGS) 290 291AM_CONDITIONAL(HAVE_THEORAENC, test x$have_theoraenc = xtrue) 292 293if test "x$have_theoraenc" = "xtrue"; then 294AC_DEFINE([HAVE_THEORAENC]) 295fi 296 297]) 298 299 300dnl 301dnl Check for schroedinger 302dnl 303 304AC_DEFUN([GMERLIN_CHECK_SCHROEDINGER],[ 305 306AH_TEMPLATE([HAVE_SCHROEDINGER], 307 [Do we have schroedinger installed?]) 308 309have_schroedinger="false" 310 311SCHROEDINGER_REQUIRED="1.0.5" 312 313AC_ARG_ENABLE(schroedinger, 314[AC_HELP_STRING([--disable-schroedinger],[Disable schroedinger (default: autodetect)])], 315[case "${enableval}" in 316 yes) test_schroedinger=true ;; 317 no) test_schroedinger=false ;; 318esac],[test_schroedinger=true]) 319 320if test x$test_schroedinger = xtrue; then 321 322PKG_CHECK_MODULES(SCHROEDINGER, schroedinger-1.0 >= $SCHROEDINGER_REQUIRED, have_schroedinger="true", have_schroedinger="false") 323fi 324 325AC_SUBST(SCHROEDINGER_REQUIRED) 326AC_SUBST(SCHROEDINGER_LIBS) 327AC_SUBST(SCHROEDINGER_CFLAGS) 328 329AM_CONDITIONAL(HAVE_SCHROEDINGER, test x$have_schroedinger = xtrue) 330 331if test "x$have_schroedinger" = "xtrue"; then 332AC_DEFINE([HAVE_SCHROEDINGER]) 333fi 334 335]) 336 337dnl 338dnl Check for speex 339dnl 340 341AC_DEFUN([GMERLIN_CHECK_SPEEX],[ 342 343AH_TEMPLATE([HAVE_SPEEX], 344 [Do we have speex installed?]) 345 346have_speex="false" 347 348SPEEX_REQUIRED="1.0.4" 349 350AC_ARG_ENABLE(speex, 351[AC_HELP_STRING([--disable-speex],[Disable speex (default: autodetect)])], 352[case "${enableval}" in 353 yes) test_speex=true ;; 354 no) test_speex=false ;; 355esac],[test_speex=true]) 356 357if test x$test_speex = xtrue; then 358 359PKG_CHECK_MODULES(SPEEX, speex >= $SPEEX_REQUIRED, have_speex="true", have_speex="false") 360 361fi 362 363AC_SUBST(SPEEX_REQUIRED) 364AC_SUBST(SPEEX_LIBS) 365AC_SUBST(SPEEX_CFLAGS) 366 367AM_CONDITIONAL(HAVE_SPEEX, test x$have_speex = xtrue) 368 369if test "x$have_speex" = "xtrue"; then 370AC_DEFINE([HAVE_SPEEX]) 371fi 372 373]) 374 375dnl 376dnl Check for mjpegtools 377dnl 378 379AC_DEFUN([GMERLIN_CHECK_MJPEGTOOLS],[ 380 381AH_TEMPLATE([HAVE_MJPEGTOOLS], 382 [Do we have mjpegtools installed?]) 383 384have_mjpegtools="false" 385 386MJPEGTOOLS_REQUIRED="1.9.0" 387 388AC_ARG_ENABLE(mjpegtools, 389[AC_HELP_STRING([--disable-mjpegtools],[Disable mjpegtools (default: autodetect)])], 390[case "${enableval}" in 391 yes) test_mjpegtools=true ;; 392 no) test_mjpegtools=false ;; 393esac],[test_mjpegtools=true]) 394 395if test x$test_mjpegtools = xtrue; then 396 397PKG_CHECK_MODULES(MJPEGTOOLS, mjpegtools >= $MJPEGTOOLS_REQUIRED, have_mjpegtools="true", have_mjpegtools="false") 398 399fi 400 401AC_SUBST(MJPEGTOOLS_REQUIRED) 402AC_SUBST(MJPEGTOOLS_LIBS) 403AC_SUBST(MJPEGTOOLS_CFLAGS) 404 405AM_CONDITIONAL(HAVE_MJPEGTOOLS, test x$have_mjpegtools = xtrue) 406 407if test "x$have_mjpegtools" = "xtrue"; then 408AC_DEFINE([HAVE_MJPEGTOOLS]) 409fi 410 411]) 412 413dnl 414dnl Check for pulseaudio 415dnl 416 417AC_DEFUN([GMERLIN_CHECK_PULSEAUDIO],[ 418 419AH_TEMPLATE([HAVE_PULSEAUDIO], 420 [Do we have pulseaudio installed?]) 421 422have_pulseaudio="false" 423 424PULSEAUDIO_REQUIRED="0.9.6" 425 426AC_ARG_ENABLE(pulseaudio, 427[AC_HELP_STRING([--disable-pulseaudio],[Disable pulseaudio (default: autodetect)])], 428[case "${enableval}" in 429 yes) test_pulseaudio=true ;; 430 no) test_pulseaudio=false ;; 431esac],[test_pulseaudio=true]) 432 433if test x$test_pulseaudio = xtrue; then 434 435PKG_CHECK_MODULES(PULSEAUDIO, libpulse-simple >= $PULSEAUDIO_REQUIRED, have_pulseaudio="true", have_pulseaudio="false") 436 437fi 438 439AC_SUBST(PULSEAUDIO_REQUIRED) 440AC_SUBST(PULSEAUDIO_LIBS) 441AC_SUBST(PULSEAUDIO_CFLAGS) 442 443AM_CONDITIONAL(HAVE_PULSEAUDIO, test x$have_pulseaudio = xtrue) 444 445if test "x$have_pulseaudio" = "xtrue"; then 446AC_DEFINE([HAVE_PULSEAUDIO]) 447fi 448 449]) 450 451dnl 452dnl Ogg 453dnl 454 455AC_DEFUN([GMERLIN_CHECK_OGG],[ 456 457OGG_REQUIRED="1.0" 458 459have_ogg=false 460AH_TEMPLATE([HAVE_OGG], [Ogg libraries are there]) 461 462AC_ARG_ENABLE(ogg, 463[AC_HELP_STRING([--disable-ogg],[Disable ogg (default: autodetect)])], 464[case "${enableval}" in 465 yes) test_ogg=true ;; 466 no) test_ogg=false ;; 467esac],[test_ogg=true]) 468 469if test x$test_ogg = xtrue; then 470 471XIPH_PATH_OGG(have_ogg=true) 472fi 473 474AM_CONDITIONAL(HAVE_OGG, test x$have_ogg = xtrue) 475 476if test x$have_ogg = xtrue; then 477AC_DEFINE(HAVE_OGG) 478fi 479 480AC_SUBST(OGG_REQUIRED) 481 482]) 483 484 485 486dnl 487dnl Vorbis 488dnl 489 490AC_DEFUN([GMERLIN_CHECK_VORBIS],[ 491 492VORBIS_REQUIRED="1.0" 493 494have_vorbis=false 495AH_TEMPLATE([HAVE_VORBIS], [Vorbis libraries are there]) 496 497AC_ARG_ENABLE(vorbis, 498[AC_HELP_STRING([--disable-vorbis],[Disable vorbis (default: autodetect)])], 499[case "${enableval}" in 500 yes) test_vorbis=true ;; 501 no) test_vorbis=false ;; 502esac],[test_vorbis=true]) 503 504if test x$test_vorbis = xtrue; then 505 506XIPH_PATH_VORBIS(have_vorbis=true) 507fi 508 509AM_CONDITIONAL(HAVE_VORBIS, test x$have_vorbis = xtrue) 510 511if test x$have_vorbis = xtrue; then 512AC_DEFINE(HAVE_VORBIS) 513 514OLD_CFLAGS=$CFLAGS 515OLD_LIBS=$LIBS 516 517CFLAGS="$VORBIS_CFLAGS" 518LIBS="$VORBIS_LIBS" 519 520AC_CHECK_FUNCS(vorbis_synthesis_restart) 521 522CFLAGS="$OLD_CFLAGS" 523LIBS="$OLD_LIBS" 524 525 526fi 527 528AC_SUBST(VORBIS_REQUIRED) 529 530]) 531 532dnl 533dnl libmpeg2 534dnl 535 536AC_DEFUN([GMERLIN_CHECK_LIBMPEG2],[ 537 538LIBMPEG2_REQUIRED="0.4.0" 539 540have_libmpeg2=false 541AH_TEMPLATE([HAVE_LIBMPEG2], [libmpeg2 found]) 542 543AC_ARG_ENABLE(libmpeg2, 544[AC_HELP_STRING([--disable-libmpeg2],[Disable libmpeg2 (default: autodetect)])], 545[case "${enableval}" in 546 yes) test_libmpeg2=true ;; 547 no) test_libmpeg2=false ;; 548esac],[test_libmpeg2=true]) 549 550if test x$test_libmpeg2 = xtrue; then 551 552 553PKG_CHECK_MODULES(LIBMPEG2, libmpeg2 >= $LIBMPEG2_REQUIRED, have_libmpeg2=true, have_libmpeg2=false) 554 555fi 556 557AM_CONDITIONAL(HAVE_LIBMPEG2, test x$have_libmpeg2 = xtrue) 558 559if test x$have_libmpeg2 = xtrue; then 560AC_DEFINE(HAVE_LIBMPEG2) 561fi 562 563AC_SUBST(LIBMPEG2_REQUIRED) 564 565]) 566 567dnl 568dnl libtiff 569dnl 570 571AC_DEFUN([GMERLIN_CHECK_LIBTIFF],[ 572 573AH_TEMPLATE([HAVE_LIBTIFF], [Enable tiff codec]) 574 575have_libtiff=false 576TIFF_REQUIRED="3.5.0" 577 578AC_ARG_ENABLE(libtiff, 579[AC_HELP_STRING([--disable-libtiff],[Disable libtiff (default: autodetect)])], 580[case "${enableval}" in 581 yes) test_libtiff=true ;; 582 no) test_libtiff=false ;; 583esac],[test_libtiff=true]) 584 585if test x$test_libtiff = xtrue; then 586 587OLD_LIBS=$LIBS 588 589LIBS="$LIBS -ltiff" 590 591AC_MSG_CHECKING(for libtiff) 592AC_TRY_LINK([#include <tiffio.h>], 593 [TIFF * tiff = (TIFF*)0; 594 int i = 0; 595 /* We ensure the function is here but never call it */ 596 if(i) 597 TIFFReadRGBAImage(tiff, 0, 0, (uint32*)0, 0); 598 return 0;], 599 [have_libtiff=true]) 600 601case $have_libtiff in 602 true) AC_DEFINE(HAVE_LIBTIFF) 603 AC_MSG_RESULT(yes) 604 TIFF_LIBS=$LIBS;; 605 false) AC_MSG_RESULT(no); TIFF_LIBS=""; TIFF_CFLAGS="";; 606esac 607LIBS=$OLD_LIBS 608 609fi 610 611AC_SUBST(TIFF_CFLAGS) 612AC_SUBST(TIFF_LIBS) 613AC_SUBST(TIFF_REQUIRED) 614 615AM_CONDITIONAL(HAVE_LIBTIFF, test x$have_libtiff = xtrue) 616 617if test x$have_libtiff = xtrue; then 618AC_DEFINE(HAVE_LIBTIFF) 619fi 620 621]) 622 623dnl 624dnl libopenjpeg 625dnl 626 627AC_DEFUN([GMERLIN_CHECK_OPENJPEG],[ 628 629AH_TEMPLATE([HAVE_OPENJPEG], [Enable openjpeg codec]) 630 631have_openjpeg=false 632OPENJPEG_REQUIRED="1.3" 633 634AC_ARG_ENABLE(openjpeg, 635[AC_HELP_STRING([--disable-openjpeg],[Disable openjpeg (default: autodetect)])], 636[case "${enableval}" in 637 yes) test_openjpeg=true ;; 638 no) test_openjpeg=false ;; 639esac],[test_openjpeg=true]) 640 641if test x$test_openjpeg = xtrue; then 642 643OLD_CFLAGS=$CFLAGS 644OLD_LIBS=$LIBS 645 646LIBS="$GMERLIN_DEP_LIBS $LIBS -lopenjpeg -lm" 647CFLAGS="$CFLAGS $GMERLIN_DEP_CFLAGS" 648 649AC_MSG_CHECKING(for openjpeg) 650AC_TRY_LINK([#include <openjpeg.h>], 651 [opj_version(); 652 return 0;], 653 [have_openjpeg=true]) 654 655case $have_openjpeg in 656 true) AC_DEFINE(HAVE_OPENJPEG) 657 AC_MSG_RESULT(yes) 658 OPENJPEG_LIBS=$LIBS; 659 OPENJPEG_CFLAGS=$CFLAGS ;; 660 false) AC_MSG_RESULT(no); OPENJPEG_LIBS=""; OPENJPEG_CFLAGS="";; 661esac 662CFLAGS=$OLD_CFLAGS 663LIBS=$OLD_LIBS 664 665fi 666 667AC_SUBST(OPENJPEG_CFLAGS) 668AC_SUBST(OPENJPEG_LIBS) 669AC_SUBST(OPENJPEG_REQUIRED) 670 671AM_CONDITIONAL(HAVE_OPENJPEG, test x$have_openjpeg = xtrue) 672 673if test x$have_openjpeg = xtrue; then 674AC_DEFINE(HAVE_OPENJPEG) 675fi 676 677]) 678 679 680dnl 681dnl libsmbclient 682dnl 683 684AC_DEFUN([GMERLIN_CHECK_SAMBA],[ 685 686AH_TEMPLATE([HAVE_SAMBA], [Samba support]) 687 688have_libsmbclient=false 689 690SAMBA_REQUIRED="3.0.0" 691 692AC_ARG_ENABLE(samba, 693[AC_HELP_STRING([--disable-samba],[Disable samba (default autodetect)])], 694[case "${enableval}" in 695 yes) test_libsmbclient=true ;; 696 no) test_libsmbclient=false ;; 697esac],[test_libsmbclient=true]) 698 699if test x$test_libsmbclient = xtrue; then 700 701OLD_CFLAGS=$CFLAGS 702OLD_LIBS=$LIBS 703 704LIBS="-lsmbclient" 705CFLAGS="" 706 707AC_MSG_CHECKING(for libsmbclient) 708AC_TRY_LINK([#include <libsmbclient.h> 709 #include <stdio.h>], 710 [int i = 0; 711 /* We ensure the function is here but never call it */ 712 if(i) 713 smbc_lseek(0,0,SEEK_SET); 714 return 0;], 715 [have_libsmbclient=true]) 716 717case $have_libsmbclient in 718 true) AC_DEFINE(HAVE_SAMBA) 719 AC_MSG_RESULT(yes) 720 SAMBA_LIBS=$LIBS; 721 SAMBA_CFLAGS=$CFLAGS ;; 722 false) AC_MSG_RESULT(no); SAMBA_LIBS=""; SAMBA_CFLAGS="";; 723esac 724CFLAGS=$OLD_CFLAGS 725LIBS=$OLD_LIBS 726 727fi 728 729AC_SUBST(SAMBA_CFLAGS) 730AC_SUBST(SAMBA_LIBS) 731AC_SUBST(SAMBA_REQUIRED) 732 733AM_CONDITIONAL(HAVE_SAMBA, test x$have_libsmbclient = xtrue) 734 735if test x$have_libsmbclient = xtrue; then 736AC_DEFINE(HAVE_SAMBA) 737fi 738 739]) 740 741dnl 742dnl PNG 743dnl 744 745AC_DEFUN([GMERLIN_CHECK_LIBPNG],[ 746 747AH_TEMPLATE([HAVE_LIBPNG], [Enable png codec]) 748 749have_libpng=false 750PNG_REQUIRED="1.2.2" 751 752AC_ARG_ENABLE(libpng, 753[AC_HELP_STRING([--disable-libpng],[Disable libpng (default: autodetect)])], 754[case "${enableval}" in 755 yes) test_libpng=true ;; 756 no) test_libpng=false ;; 757esac],[test_libpng=true]) 758 759if test x$test_libpng = xtrue; then 760 761OLD_LIBS=$LIBS 762 763LIBS="$LIBS -lpng -lm -lz" 764 765AC_MSG_CHECKING(for libpng) 766AC_TRY_LINK([#include <png.h>], 767 [png_structp png_ptr; 768 png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, 769 (png_voidp)0, 770 NULL, NULL);], 771 [have_libpng=true]) 772 773case $have_libpng in 774 true) AC_DEFINE(HAVE_LIBPNG) 775 AC_MSG_RESULT(yes) 776 PNG_LIBS=$LIBS;; 777 false) AC_MSG_RESULT(no); PNG_LIBS=""; PNG_CFLAGS="";; 778esac 779LIBS=$OLD_LIBS 780 781fi 782 783AC_SUBST(PNG_CFLAGS) 784AC_SUBST(PNG_LIBS) 785AC_SUBST(PNG_REQUIRED) 786 787AM_CONDITIONAL(HAVE_LIBPNG, test x$have_libpng = xtrue) 788 789if test x$have_libpng = xtrue; then 790AC_DEFINE(HAVE_LIBPNG) 791fi 792 793]) 794 795dnl 796dnl FAAD2 797dnl 798 799AC_DEFUN([GMERLIN_CHECK_FAAD2],[ 800 801FAAD2_PREFIX="" 802FAAD2_REQUIRED="2.0" 803have_faad2="false" 804AH_TEMPLATE([HAVE_FAAD2], [Enable FAAD2]) 805AH_TEMPLATE([HAVE_NEAACDEC_H], [Use new header file for faad2]) 806AC_ARG_WITH(faad2-prefix, [ --with-faad2-prefix=PFX Prefix to search for faad2],FAAD2_PREFIX=${withval}) 807 808 809AC_ARG_ENABLE(faad2, 810[AC_HELP_STRING([--disable-faad2],[Disable faad2 (default: autodetect)])], 811[case "${enableval}" in 812 yes) test_faad2=true ;; 813 no) test_faad2=false ;; 814esac],[test_faad2=true]) 815 816if test x$test_faad2 = xtrue; then 817 818OLD_CFLAGS=$CFLAGS 819OLD_LIBS=$LIBS 820 821if test "x$FAAD2_PREFIX" = "x"; then 822CFLAGS="$GMERLIN_DEP_CFLAGS" 823LIBS="$GMERLIN_DEP_LIBS -lfaad -lm" 824else 825CFLAGS="-I$FAAD2_PREFIX/include" 826LIBS="-L$FAAD2_PREFIX/lib -lfaad -lm" 827fi 828 829dnl 830dnl Check for neaacdec.h 831dnl 832 833AC_MSG_CHECKING(for neaacdec.h usability for faad2) 834 835 AC_TRY_RUN([ 836 #include <neaacdec.h> 837 #include <stdio.h> 838 main() 839 { 840 int faad_major; 841 int faad_minor; 842 NeAACDecHandle dec; 843 844 if(sscanf(FAAD2_VERSION, "%d.%d", &faad_major, &faad_minor) < 2) 845 return -1; 846 dec = NeAACDecOpen(); 847 if(!dec) 848 return -1; 849 return 0; 850 } 851 ], 852 [ 853 # program could be run 854 have_faad2="true" 855 AC_MSG_RESULT(yes) 856 FAAD2_CFLAGS=$CFLAGS 857 FAAD2_LIBS=$LIBS 858 AC_DEFINE(HAVE_NEAACDEC_H) 859 ], 860 # program could not be run 861 AC_MSG_RESULT(no) 862) 863 864if test "x$have_faad2" != "xtrue"; then 865 866AC_MSG_CHECKING(for faad.h usability for faad2) 867 868 AC_TRY_RUN([ 869 #include <faad.h> 870 #include <stdio.h> 871 main() 872 { 873 int faad_major; 874 int faad_minor; 875 faacDecHandle dec; 876 877 if(sscanf(FAAD2_VERSION, "%d.%d", &faad_major, &faad_minor) < 2) 878 return -1; 879 dec = faacDecOpen(); 880 if(!dec) 881 return -1; 882 return 0; 883 } 884 ], 885 [ 886 # program could be run 887 have_faad2="true" 888 AC_MSG_RESULT(yes) 889 FAAD2_CFLAGS=$CFLAGS 890 FAAD2_LIBS=$LIBS 891 892 ], 893 # program could not be run 894 AC_MSG_RESULT(no) 895) 896fi 897 898 899CFLAGS=$OLD_CFLAGS 900LIBS=$OLD_LIBS 901 902fi 903 904AC_SUBST(FAAD2_CFLAGS) 905AC_SUBST(FAAD2_LIBS) 906AC_SUBST(FAAD2_REQUIRED) 907AM_CONDITIONAL(HAVE_FAAD2, test x$have_faad2 = xtrue) 908 909if test x$have_faad2 = xtrue; then 910AC_DEFINE(HAVE_FAAD2) 911fi 912 913]) 914 915dnl 916dnl DVDREAD 917dnl 918 919AC_DEFUN([GMERLIN_CHECK_DVDREAD],[ 920 921DVDREAD_REQUIRED="0.9.5" 922AH_TEMPLATE([HAVE_DVDREAD], [Enable libdvdread]) 923have_dvdread="false" 924 925AC_ARG_ENABLE(dvdread, 926[AC_HELP_STRING([--disable-dvdread],[Disable libdvdread (default: autodetect)])], 927[case "${enableval}" in 928 yes) test_dvdread=true ;; 929 no) test_dvdread=false ;; 930esac],[test_dvdread=true]) 931 932if test x$test_dvdread = xtrue; then 933 934OLD_CFLAGS=$CFLAGS 935OLD_LIBS=$LIBS 936 937CFLAGS="$GMERLIN_DEP_CFLAGS" 938LIBS="$GMERLIN_DEP_LIBS -ldvdread" 939 940AC_MSG_CHECKING(for libdvdread >= 0.9.5) 941 942 AC_TRY_RUN([ 943 #include <dvdread/dvd_reader.h> 944 #include <stdio.h> 945 main() 946 { 947#if DVDREAD_VERSION < 905 948 return -1; 949#else 950 return 0; 951#endif 952 } 953 ], 954 [ 955 # program could be run 956 have_dvdread="true" 957 AC_MSG_RESULT(yes) 958 DVDREAD_CFLAGS="" 959 DVDREAD_LIBS="-ldvdread" 960 961 ], 962 # program could not be run 963 AC_MSG_RESULT(no) 964) 965 966if test "x$have_dvdread" = "xtrue"; then 967AC_CHECK_FUNCS(DVDInit DVDFinish) 968fi 969 970CFLAGS=$OLD_CFLAGS 971LIBS=$OLD_LIBS 972 973fi 974 975AC_SUBST(DVDREAD_CFLAGS) 976AC_SUBST(DVDREAD_LIBS) 977AC_SUBST(DVDREAD_REQUIRED) 978AM_CONDITIONAL(HAVE_DVDREAD, test x$have_dvdread = xtrue) 979 980if test x$have_dvdread = xtrue; then 981AC_DEFINE(HAVE_DVDREAD) 982fi 983 984]) 985 986dnl 987dnl FLAC 988dnl 989 990AC_DEFUN([GMERLIN_CHECK_FLAC],[ 991 992FLAC_REQUIRED="1.2.0" 993have_flac="false" 994 995AC_ARG_ENABLE(flac, 996[AC_HELP_STRING([--disable-flac],[Disable flac (default: autodetect)])], 997[case "${enableval}" in 998 yes) test_flac=true ;; 999 no) test_flac=false ;; 1000esac],[test_flac=true]) 1001 1002if test x$test_flac = xtrue; then 1003 1004AH_TEMPLATE([HAVE_FLAC], [Enable FLAC]) 1005 1006AC_MSG_CHECKING(for flac) 1007 1008OLD_CFLAGS=$CFLAGS 1009OLD_LIBS=$LIBS 1010 1011CFLAGS="$GMERLIN_DEP_CFLAGS" 1012LIBS="$GMERLIN_DEP_LIBS -lFLAC -lm" 1013 1014 AC_TRY_RUN([ 1015 #include <FLAC/stream_decoder.h> 1016 #include <stdio.h> 1017 main() 1018 { 1019 FILE * version_file; 1020 int version_major; 1021 int version_minor; 1022 int version_patchlevel; 1023 fprintf(stderr, "FLAC__VERSION_STRING: %s\n", FLAC__VERSION_STRING); 1024 if(sscanf(FLAC__VERSION_STRING, "%d.%d.%d", &version_major, 1025 &version_minor, &version_patchlevel) < 3) 1026 return -1; 1027 if((version_major != 1) || (version_minor < 2)) 1028 return 1; 1029 version_file = fopen("flac_version", "w"); 1030 fprintf(version_file, "%d.%d.%d\n", version_major, 1031 version_minor, version_patchlevel); 1032 fclose(version_file); 1033 return 0; 1034 } 1035 ], 1036 [ 1037 # program could be run 1038 have_flac="true" 1039 AC_MSG_RESULT(yes) 1040 FLAC_CFLAGS=$CFLAGS 1041 FLAC_LIBS=$LIBS 1042 BGAV_FLAC_MAJOR=`cat flac_version | cut -d . -f 1` 1043 BGAV_FLAC_MINOR=`cat flac_version | cut -d . -f 2` 1044 BGAV_FLAC_PATCHLEVEL=`cat flac_version | cut -d . -f 3` 1045 rm -f flac_version 1046 ], 1047 # program could not be run 1048 AC_MSG_RESULT(no) 1049) 1050 1051CFLAGS=$OLD_CFLAGS 1052LIBS=$OLD_LIBS 1053 1054fi 1055 1056AC_SUBST(FLAC_CFLAGS) 1057AC_SUBST(FLAC_LIBS) 1058AC_SUBST(FLAC_REQUIRED) 1059 1060AM_CONDITIONAL(HAVE_FLAC, test x$have_flac = xtrue) 1061 1062if test x$have_flac = xtrue; then 1063AC_DEFINE(HAVE_FLAC) 1064AC_DEFINE_UNQUOTED(BGAV_FLAC_MAJOR, $BGAV_FLAC_MAJOR, Flac major version) 1065AC_DEFINE_UNQUOTED(BGAV_FLAC_MINOR, $BGAV_FLAC_MINOR, Flac minor version) 1066AC_DEFINE_UNQUOTED(BGAV_FLAC_PATCHLEVEL, $BGAV_FLAC_PATCHLEVEL, Flac patchlevel) 1067fi 1068 1069]) 1070 1071dnl 1072dnl Musepack 1073dnl 1074 1075AC_DEFUN([GMERLIN_CHECK_MUSEPACK],[ 1076 1077have_musepack="false" 1078MUSEPACK_REQUIRED="1.1" 1079 1080AC_ARG_ENABLE(musepack, 1081[AC_HELP_STRING([--disable-musepack],[Disable musepack (default: autodetect)])], 1082[case "${enableval}" in 1083 yes) test_musepack=true ;; 1084 no) test_musepack=false ;; 1085esac],[test_musepack=true]) 1086 1087if test x$test_musepack = xtrue; then 1088 1089OLD_CFLAGS=$CFLAGS 1090OLD_LIBS=$LIBS 1091 1092LIBS="$GMERLIN_DEP_LIBS -lmpcdec" 1093CFLAGS="$GMERLIN_DEP_CFLAGS" 1094 1095AH_TEMPLATE([HAVE_MUSEPACK], [Enable Musepack]) 1096AC_MSG_CHECKING(for libmpcdec) 1097 1098 AC_TRY_RUN([ 1099 #include <mpcdec/mpcdec.h> 1100 #include <stdio.h> 1101 main() 1102 { 1103 mpc_streaminfo si; 1104 mpc_streaminfo_init(&si); 1105 return 0; 1106 } 1107 ], 1108 [ 1109 # program could be run 1110 have_musepack="true" 1111 AC_MSG_RESULT(yes) 1112 MUSEPACK_CFLAGS=$CFLAGS 1113 MUSEPACK_LIBS=$LIBS 1114 1115 ], 1116 # program could not be run 1117 AC_MSG_RESULT(no) 1118) 1119 1120CFLAGS=$OLD_CFLAGS 1121LIBS=$OLD_LIBS 1122 1123fi 1124 1125AC_SUBST(MUSEPACK_CFLAGS) 1126AC_SUBST(MUSEPACK_LIBS) 1127AC_SUBST(MUSEPACK_REQUIRED) 1128 1129AM_CONDITIONAL(HAVE_MUSEPACK, test x$have_musepack = xtrue) 1130 1131if test x$have_musepack = xtrue; then 1132AC_DEFINE(HAVE_MUSEPACK) 1133fi 1134 1135]) 1136 1137dnl 1138dnl MAD 1139dnl 1140 1141AC_DEFUN([GMERLIN_CHECK_MAD],[ 1142 1143MAD_REQUIRED="0.15.0" 1144AH_TEMPLATE([HAVE_MAD], [Enable MAD]) 1145have_mad="false" 1146 1147AC_ARG_ENABLE(mad, 1148[AC_HELP_STRING([--disable-mad],[Disable libmad (default: autodetect)])], 1149[case "${enableval}" in 1150 yes) test_mad=true ;; 1151 no) test_mad=false ;; 1152esac],[test_mad=true]) 1153 1154if test x$test_mad = xtrue; then 1155 1156OLD_CFLAGS=$CFLAGS 1157OLD_LIBS=$LIBS 1158 1159LIBS="$GMERLIN_DEP_LIBS -lmad" 1160CFLAGS="$GMERLIN_DEP_CFLAGS" 1161 1162AC_MSG_CHECKING(for libmad 0.15.x) 1163 1164 AC_TRY_RUN([ 1165 #include "mad.h" 1166 #include <stdio.h> 1167 main() 1168 { 1169 struct mad_stream stream; 1170 int version_major = MAD_VERSION_MAJOR; 1171 int version_minor = MAD_VERSION_MINOR; 1172 if((version_major != 0) || (version_minor != 15)) 1173 return -1; 1174 mad_stream_init(&stream); 1175 return 0; 1176 } 1177 ], 1178 [ 1179 # program could be run 1180 have_mad="true" 1181 AC_MSG_RESULT(yes) 1182 MAD_CFLAGS=$CFLAGS 1183 MAD_LIBS=$LIBS 1184 1185 ], 1186 # program could not be run 1187 AC_MSG_RESULT(no) 1188) 1189 1190CFLAGS=$OLD_CFLAGS 1191LIBS=$OLD_LIBS 1192 1193fi 1194 1195AC_SUBST(MAD_CFLAGS) 1196AC_SUBST(MAD_LIBS) 1197AC_SUBST(MAD_REQUIRED) 1198 1199AM_CONDITIONAL(HAVE_MAD, test x$have_mad = xtrue) 1200 1201if test x$have_mad = xtrue; then 1202AC_DEFINE(HAVE_MAD) 1203fi 1204 1205]) 1206 1207dnl 1208dnl liba52 1209dnl 1210 1211AC_DEFUN([GMERLIN_CHECK_LIBA52],[ 1212 1213AH_TEMPLATE([HAVE_LIBA52], [Enable liba52]) 1214have_liba52="false" 1215 1216AC_ARG_ENABLE(liba52, 1217[AC_HELP_STRING([--disable-liba52],[Disable liba52 (default: autodetect)])], 1218[case "${enableval}" in 1219 yes) test_liba52=true ;; 1220 no) test_liba52=false ;; 1221esac],[test_liba52=true]) 1222 1223if test x$test_liba52 = xtrue; then 1224 1225OLD_CFLAGS=$CFLAGS 1226OLD_LIBS=$LIBS 1227 1228LIBS="$GMERLIN_DEP_LIBS -la52 -lm" 1229CFLAGS="$GMERLIN_DEP_CFLAGS" 1230LIBA52_REQUIRED="0.7.4" 1231AC_MSG_CHECKING(for liba52) 1232 1233 AC_TRY_RUN([ 1234 #include <inttypes.h> 1235 #include <a52dec/a52.h> 1236 main() 1237 { 1238 a52_state_t * state = a52_init(0); 1239 return 0; 1240 } 1241 ], 1242 [ 1243 # program could be run 1244 have_liba52="true" 1245 AC_MSG_RESULT(yes) 1246 LIBA52_CFLAGS=$CFLAGS 1247 LIBA52_LIBS=$LIBS 1248 1249 ], 1250 # program could not be run 1251 AC_MSG_RESULT(no) 1252) 1253 1254CFLAGS=$OLD_CFLAGS 1255LIBS=$OLD_LIBS 1256 1257fi 1258 1259AC_SUBST(LIBA52_CFLAGS) 1260AC_SUBST(LIBA52_LIBS) 1261AC_SUBST(LIBA52_REQUIRED) 1262 1263AM_CONDITIONAL(HAVE_LIBA52, test x$have_liba52 = xtrue) 1264 1265if test x$have_liba52 = xtrue; then 1266AC_DEFINE(HAVE_LIBA52) 1267fi 1268 1269]) 1270 1271dnl 1272dnl CDrom support 1273dnl 1274 1275AC_DEFUN([GMERLIN_CHECK_CDIO],[ 1276 1277AH_TEMPLATE([HAVE_CDIO], [ libcdio found ]) 1278 1279have_cdio="false" 1280CDIO_REQUIRED="0.76" 1281 1282AC_ARG_ENABLE(libcdio, 1283[AC_HELP_STRING([--disable-libcdio],[Disable libcdio (default: autodetect)])], 1284[case "${enableval}" in 1285 yes) test_cdio=true ;; 1286 no) test_cdio=false ;; 1287esac],[test_cdio=true]) 1288 1289if test x$test_cdio = xtrue; then 1290PKG_CHECK_MODULES(CDIO, libcdio >= $CDIO_REQUIRED, have_cdio="true", have_cdio="false") 1291fi 1292 1293AM_CONDITIONAL(HAVE_CDIO, test x$have_cdio = xtrue) 1294AC_SUBST(CDIO_REQUIRED) 1295 1296if test "x$have_cdio" = "xtrue"; then 1297AC_DEFINE([HAVE_CDIO]) 1298fi 1299 1300]) 1301 1302dnl 1303dnl libdca 1304dnl 1305 1306AC_DEFUN([GMERLIN_CHECK_DCA],[ 1307 1308AH_TEMPLATE([HAVE_DCA], [ libdca found ]) 1309 1310have_dca="false" 1311have_dts="false" 1312 1313DCA_REQUIRED="0.0.2" 1314 1315AC_ARG_ENABLE(libcda, 1316[AC_HELP_STRING([--disable-libdca],[Disable libdca (default: autodetect)])], 1317[case "${enableval}" in 1318 yes) test_libdca=true ;; 1319 no) test_libdca=false ;; 1320esac],[test_libdca=true]) 1321 1322if test x$test_libdca = xtrue; then 1323PKG_CHECK_MODULES(DCA, libdca >= $DCA_REQUIRED, have_dca="true", have_dca="false") 1324 1325if test "x$have_dca" != "xtrue"; then 1326PKG_CHECK_MODULES(DCA, libdts >= $DCA_REQUIRED, have_dts="true", have_dts="false") 1327 1328dnl 1329dnl Check for old dts.h header 1330dnl 1331 1332OLD_CPPFLAGS=$CPPFLAGS 1333CPPFLAGS="$CFLAGS $GMERLIN_DEP_CFLAGS $DCA_CFLAGS" 1334AC_CHECK_HEADERS([dts.h]) 1335CPPFLAGS=$OLD_CPPFLAGS 1336 1337 1338dnl 1339dnl Some systems need -ldts_pic 1340dnl 1341 1342if test x$have_dts = xtrue; then 1343have_libdts_pic=false 1344OLD_CFLAGS=$CFLAGS 1345OLD_LIBS=$LIBS 1346CFLAGS=$DCA_CFLAGS 1347LIBS=`pkg-config --libs-only-L libdts` 1348LIBS="$LIBS -lm" 1349AC_CHECK_LIB(dts_pic, dts_init, have_libdts_pic=true, have_libdts_pic=false) 1350 1351if test x$have_libdts_pic = xtrue; then 1352DCA_LIBS="$LIBS -ldts_pic" 1353fi 1354 1355CFLAGS=$OLD_CFLAGS 1356LIBS=$OLD_LIBS 1357 1358have_dca="true" 1359 1360fi 1361fi 1362fi 1363 1364AM_CONDITIONAL(HAVE_DCA, test x$have_dca = xtrue) 1365AC_SUBST(DCA_REQUIRED) 1366 1367if test "x$have_dca" = "xtrue"; then 1368AC_DEFINE([HAVE_DCA]) 1369fi 1370 1371]) 1372 1373 1374 1375dnl 1376dnl Ogg 1377dnl 1378 1379AC_DEFUN([GMERLIN_CHECK_OGG],[ 1380 1381OGG_REQUIRED="1.1" 1382have_ogg=false 1383AH_TEMPLATE([HAVE_OGG], [Ogg libraries are there]) 1384 1385AC_ARG_ENABLE(ogg, 1386[AC_HELP_STRING([--disable-ogg],[Disable libogg (default: autodetect)])], 1387[case "${enableval}" in 1388 yes) test_ogg=true ;; 1389 no) test_ogg=false ;; 1390esac],[test_ogg=true]) 1391 1392if test x$test_ogg = xtrue; then 1393XIPH_PATH_OGG(have_ogg=true) 1394fi 1395 1396AM_CONDITIONAL(HAVE_OGG, test x$have_ogg = xtrue) 1397 1398if test x$have_ogg = xtrue; then 1399AC_DEFINE(HAVE_OGG) 1400fi 1401 1402AC_SUBST(OGG_REQUIRED) 1403 1404]) 1405 1406dnl 1407dnl lame 1408dnl 1409 1410AC_DEFUN([GMERLIN_CHECK_LAME],[ 1411LAME_REQUIRED="3.93" 1412have_lame="false" 1413 1414AC_ARG_ENABLE(lame, 1415[AC_HELP_STRING([--disable-lame],[Disable lame (default: autodetect)])], 1416[case "${enableval}" in 1417 yes) test_lame=true ;; 1418 no) test_lame=false ;; 1419esac],[test_lame=true]) 1420 1421if test x$test_lame = xtrue; then 1422 1423OLD_CFLAGS=$CFLAGS 1424OLD_LIBS=$LIBS 1425 1426if test x$have_vorbis = xtrue; then 1427LIBS="$GMERLIN_DEP_LIBS -lmp3lame -lvorbis -lm" 1428else 1429LIBS="$GMERLIN_DEP_LIBS -lmp3lame -lm" 1430fi 1431 1432CFLAGS="$GMERLIN_DEP_CFLAGS" 1433 1434 1435AH_TEMPLATE([HAVE_LAME], [Enable lame]) 1436AC_MSG_CHECKING(for lame) 1437 AC_TRY_RUN([ 1438 #include <lame/lame.h> 1439 #include <stdio.h> 1440 main() 1441 { 1442 int version_major; 1443 int version_minor; 1444 const char * version; 1445 version = get_lame_version(); 1446 fprintf(stderr, "lame version: %s\n", version); 1447 if(sscanf(version, "%d.%d", &version_major, 1448 &version_minor) < 2) 1449 return -1; 1450 if((version_major != 3) || (version_minor < 93)) 1451 return 1; 1452 return 0; 1453 } 1454 ], 1455 [ 1456 # program could be run 1457 have_lame="true" 1458 AC_MSG_RESULT(yes) 1459 LAME_CFLAGS=$CFLAGS 1460 LAME_LIBS=$LIBS 1461 1462 ], 1463 # program could not be run 1464 AC_MSG_RESULT(no) 1465) 1466 1467CFLAGS=$OLD_CFLAGS 1468LIBS=$OLD_LIBS 1469 1470fi 1471 1472AC_SUBST(LAME_CFLAGS) 1473AC_SUBST(LAME_LIBS) 1474AC_SUBST(LAME_REQUIRED) 1475 1476AM_CONDITIONAL(HAVE_LAME, test x$have_lame = xtrue) 1477if test x$have_lame = xtrue; then 1478AC_DEFINE(HAVE_LAME) 1479fi 1480 1481]) 1482 1483dnl 1484dnl faac 1485dnl 1486 1487AC_DEFUN([GMERLIN_CHECK_FAAC],[ 1488 1489have_faac="false" 1490FAAC_REQUIRED="1.24" 1491 1492 1493AC_ARG_ENABLE(faac, 1494[AC_HELP_STRING([--disable-faac],[Disable faac (default: autodetect)])], 1495[case "${enableval}" in 1496 yes) test_faac=true ;; 1497 no) test_faac=false ;; 1498esac],[test_faac=true]) 1499 1500if test x$test_faac = xtrue; then 1501 1502 1503OLD_CFLAGS=$CFLAGS 1504OLD_LIBS=$LIBS 1505 1506AH_TEMPLATE([HAVE_FAAC], [Enable faac]) 1507 1508LIBS="$GMERLIN_DEP_LIBS -lfaac -lm" 1509CFLAGS="$GMERLIN_DEP_CFLAGS" 1510 1511AC_MSG_CHECKING(for faac) 1512AC_TRY_RUN([ 1513 #include <inttypes.h> 1514 #include <faac.h> 1515 main() 1516 { 1517 int samplerate = 44100, num_channels = 2; 1518 unsigned long input_samples, output_bytes; 1519 faacEncHandle enc; 1520 enc = faacEncOpen(samplerate, 1521 num_channels, 1522 &input_samples, 1523 &output_bytes); 1524 1525 return 0; 1526 } 1527 ], 1528 [ 1529 # program could be run 1530 have_faac="true" 1531 AC_MSG_RESULT(yes) 1532 FAAC_CFLAGS=$CFLAGS 1533 FAAC_LIBS=$LIBS 1534 1535 ], 1536 # program could not be run 1537 AC_MSG_RESULT(no) 1538) 1539 1540CFLAGS=$OLD_CFLAGS 1541LIBS=$OLD_LIBS 1542 1543fi 1544 1545AC_SUBST(FAAC_CFLAGS) 1546AC_SUBST(FAAC_LIBS) 1547AC_SUBST(FAAC_REQUIRED) 1548 1549AM_CONDITIONAL(HAVE_FAAC, test x$have_faac = xtrue) 1550 1551if test x$have_faac = xtrue; then 1552AC_DEFINE(HAVE_FAAC) 1553fi 1554 1555]) 1556 1557dnl 1558dnl libjpeg 1559dnl 1560 1561AC_DEFUN([GMERLIN_CHECK_LIBJPEG],[ 1562 1563AH_TEMPLATE([HAVE_LIBJPEG], 1564 [Do we have libjpeg installed?]) 1565 1566have_libjpeg=false 1567JPEG_REQUIRED="6b" 1568 1569AC_ARG_ENABLE(libjpeg, 1570[AC_HELP_STRING([--disable-libjpeg],[Disable libjpeg (default: autodetect)])], 1571[case "${enableval}" in 1572 yes) test_libjpeg=true ;; 1573 no) test_libjpeg=false ;; 1574esac],[test_libjpeg=true]) 1575 1576if test x$test_libjpeg = xtrue; then 1577 1578OLD_LIBS=$LIBS 1579LIBS="$LIBS -ljpeg" 1580 1581AC_MSG_CHECKING(for libjpeg) 1582AC_TRY_LINK([#include <stdio.h> 1583 #include <jpeglib.h>], 1584 [struct jpeg_decompress_struct cinfo; 1585 jpeg_create_decompress(&cinfo);], 1586 [have_libjpeg=true]) 1587case $have_libjpeg in 1588 true) AC_DEFINE(HAVE_LIBJPEG) 1589 AC_MSG_RESULT(yes) 1590 JPEG_LIBS=$LIBS;; 1591 false) AC_MSG_RESULT(no); JPEG_LIBS=""; JPEG_CFLAGS="";; 1592 * ) AC_MSG_RESULT("Somethings wrong: $have_libjpeg") ;; 1593esac 1594 1595LIBS=$OLD_LIBS 1596 1597fi 1598 1599AC_SUBST(JPEG_LIBS) 1600AC_SUBST(JPEG_CFLAGS) 1601AC_SUBST(JPEG_REQUIRED) 1602AM_CONDITIONAL(HAVE_LIBJPEG, test x$have_libjpeg = xtrue) 1603 1604]) 1605 1606dnl 1607dnl Linux DVB 1608dnl 1609 1610AC_DEFUN([GMERLIN_CHECK_LINUXDVB],[ 1611AH_TEMPLATE([HAVE_LINUXDVB], 1612 [Linux DVB Support available]) 1613 1614have_linuxdvb="true" 1615AC_CHECK_HEADERS([linux/dvb/frontend.h linux/dvb/dmx.h], [], 1616[have_linuxdvb="false"; break] ) 1617 1618if test "x$have_linuxdvb" = "xtrue"; then 1619AC_DEFINE(HAVE_LINUXDVB) 1620fi 1621 1622AM_CONDITIONAL(HAVE_LINUXDVB, test x$have_linuxdvb = xtrue) 1623 1624]) 1625 1626dnl 1627dnl OpenGL 1628dnl 1629AC_DEFUN([GMERLIN_CHECK_OPENGL],[ 1630AH_TEMPLATE([HAVE_GL],[OpenGL available]) 1631AH_TEMPLATE([HAVE_GLX],[GLX available]) 1632 1633dnl 1634dnl Search for OpenGL libraries 1635dnl 1636 1637OLD_LIBS=$LIBS 1638 1639have_GL="true" 1640AC_SEARCH_LIBS([glBegin], [GL], [], [have_GL="false"], []) 1641 1642if test "x$have_GL" = "xtrue"; then 1643AC_TRY_RUN([ 1644#include <GL/gl.h> 1645int main() { if(0) glBegin(GL_QUADS); return 0;} 1646],[],[have_GL="false"]) 1647fi 1648 1649GL_LIBS=$LIBS 1650 1651LIBS="$OLD_LIBS" 1652 1653dnl 1654dnl Check for GLX 1655dnl 1656 1657OLD_LIBS=$LIBS 1658 1659have_GLX="true" 1660AC_SEARCH_LIBS([glXCreateContext], [GL glx], [], [have_GLX="false"], []) 1661 1662if test "x$have_GL" = "xtrue"; then 1663AC_TRY_RUN([ 1664#include <GL/glx.h> 1665int main() { if(0) glXChooseFBConfig(NULL, 0, 1666 NULL, NULL); return 0;}],[],[have_GLX="false"]) 1667fi 1668 1669GLX_LIBS=$LIBS 1670 1671LIBS="$OLD_LIBS" 1672 1673if test "x$have_GL" = "xtrue"; then 1674AC_DEFINE(HAVE_GL) 1675 1676if test "x$have_GLX" = "xtrue"; then 1677AC_DEFINE(HAVE_GLX) 1678fi 1679 1680fi 1681 1682AM_CONDITIONAL(HAVE_GL, test x$have_GL = xtrue) 1683AM_CONDITIONAL(HAVE_GLX, test x$have_GLX = xtrue) 1684 1685AC_SUBST(GL_CFLAGS) 1686AC_SUBST(GL_LIBS) 1687AC_SUBST(GLX_CFLAGS) 1688AC_SUBST(GLX_LIBS) 1689 1690]) 1691 1692 1693dnl 1694dnl GLU 1695dnl 1696 1697AC_DEFUN([GMERLIN_CHECK_GLU],[ 1698AH_TEMPLATE([HAVE_GLU],[GLU available]) 1699 1700OLD_CFLAGS=$CFLAGS 1701OLD_LIBS=$LIBS 1702 1703have_GLU="true" 1704AC_SEARCH_LIBS([gluLookAt], [GLU], [], [have_GLU="false"], []) 1705 1706if test "x$have_GLU" = "xtrue"; then 1707AC_TRY_RUN([ 1708#include <GL/glu.h> 1709int main() { if(0) gluLookAt(0, 0, 0, 0, 0, 0, 0, 0, 0); return 0;}],[],[have_GLU="false"]) 1710fi 1711 1712GLU_CFLAGS=$CFLAGS 1713GLU_LIBS=$LIBS 1714 1715CFLAGS="$OLD_CFLAGS" 1716LIBS="$OLD_LIBS" 1717 1718if test "x$have_GLU" = "xtrue"; then 1719AC_DEFINE(HAVE_GLU) 1720fi 1721 1722AM_CONDITIONAL(HAVE_GLU, test x$have_GLU = xtrue) 1723 1724AC_SUBST(GLU_CFLAGS) 1725AC_SUBST(GLU_LIBS) 1726 1727]) 1728 1729dnl 1730dnl inotify 1731dnl 1732 1733AC_DEFUN([GMERLIN_CHECK_INOTIFY],[ 1734have_inotify="false" 1735AH_TEMPLATE([HAVE_INOTIFY], [System supports inotify]) 1736AC_CHECK_FUNC(inotify_init,have_inotify="true";AC_DEFINE(HAVE_INOTIFY)) 1737 1738]) 1739 1740dnl 1741dnl Semaphores 1742dnl 1743 1744AC_DEFUN([GMERLIN_CHECK_SEMAPHORES],[ 1745AH_TEMPLATE([HAVE_POSIX_SEMAPHORES], [System supports POSIX semaphores]) 1746 1747have_posix_semaphores="false" 1748 1749OLD_LIBS=$LIBS 1750LIBS="$LIBS -lpthread" 1751 1752AC_MSG_CHECKING([for POSIX unnamed semaphores]); 1753 1754 AC_TRY_RUN([ 1755 #include <semaphore.h> 1756 1757 #include <stdio.h> 1758 main() 1759 { 1760 int result; 1761 sem_t s; 1762 result = sem_init(&s, 0, 0); 1763 if(result) 1764 return -1; 1765 return 0; 1766 } 1767 ], 1768 [ 1769 # program could be run 1770 have_posix_semaphores="true" 1771 AC_MSG_RESULT(yes) 1772 AC_DEFINE(HAVE_POSIX_SEMAPHORES) 1773 ], 1774 # program could not be run 1775 AC_MSG_RESULT(no) 1776) 1777 1778LIBS=$OLD_LIBS 1779 1780 1781AM_CONDITIONAL(HAVE_POSIX_SEMAPHORES, test x$have_posix_semaphores = xtrue) 1782 1783]) 1784 1785dnl 1786dnl vdpau 1787dnl 1788 1789AC_DEFUN([GMERLIN_CHECK_VDPAU],[ 1790 1791AH_TEMPLATE([HAVE_VDPAU], [Enable tiff codec]) 1792 1793have_vdpau=false 1794 1795AC_ARG_ENABLE(vdpau, 1796[AC_HELP_STRING([--disable-vdpau],[Disable vdpau (default: autodetect)])], 1797[case "${enableval}" in 1798 yes) test_vdpau=true ;; 1799 no) test_vdpau=false ;; 1800esac],[test_vdpau=true]) 1801 1802if test x$test_vdpau = xtrue; then 1803if test x$have_x = xtrue; then 1804 1805OLD_CFLAGS=$CFLAGS 1806OLD_LIBS=$LIBS 1807 1808LIBS="$LIBS -lvdpau" 1809CFLAGS="$CFLAGS" 1810 1811AC_MSG_CHECKING(for vdpau) 1812AC_TRY_LINK([#include <vdpau/vdpau_x11.h>], 1813 [int i = 0; 1814 /* We ensure the function is here but never call it */ 1815 if(i) 1816 vdp_device_create_x11((Display*)0, 0, 1817 (VdpDevice*)0, 1818 (VdpGetProcAddress**)0); 1819 return 0;], 1820 [have_vdpau=true]) 1821 1822case $have_vdpau in 1823 true) AC_MSG_RESULT(yes) 1824 VDPAU_LIBS=$LIBS; 1825 VDPAU_CFLAGS=$CFLAGS ;; 1826 false) AC_MSG_RESULT(no); VDPAU_LIBS=""; VDPAU_CFLAGS="";; 1827esac 1828CFLAGS=$OLD_CFLAGS 1829LIBS=$OLD_LIBS 1830 1831fi 1832fi 1833 1834AC_SUBST(VDPAU_CFLAGS) 1835AC_SUBST(VDPAU_LIBS) 1836AC_SUBST(VDPAU_REQUIRED) 1837 1838AM_CONDITIONAL(HAVE_VDPAU, test x$have_vdpau = xtrue) 1839 1840if test x$have_vdpau = xtrue; then 1841AC_DEFINE(HAVE_VDPAU) 1842fi 1843 1844]) 1845 1846dnl 1847dnl libshout 1848dnl 1849 1850AC_DEFUN([GMERLIN_CHECK_SHOUT],[ 1851 1852AH_TEMPLATE([HAVE_SHOUT], 1853 [Do we have libshout installed?]) 1854 1855have_shout="false" 1856 1857SHOUT_REQUIRED="2.2.2" 1858 1859AC_ARG_ENABLE(libshout, 1860[AC_HELP_STRING([--disable-libshout],[Disable libshout (default: autodetect)])], 1861[case "${enableval}" in 1862 yes) test_shout=true ;; 1863 no) test_shout=false ;; 1864esac],[test_shout=true]) 1865 1866if test x$test_shout = xtrue; then 1867 1868PKG_CHECK_MODULES(SHOUT, shout >= $SHOUT_REQUIRED, have_shout="true", have_shout="false") 1869fi 1870 1871AC_SUBST(SHOUT_REQUIRED) 1872AC_SUBST(SHOUT_LIBS) 1873AC_SUBST(SHOUT_CFLAGS) 1874 1875AM_CONDITIONAL(HAVE_SHOUT, test x$have_shout = xtrue) 1876 1877if test "x$have_shout" = "xtrue"; then 1878AC_DEFINE([HAVE_SHOUT]) 1879fi 1880 1881]) 1882