shithub: aacdec

ref: cc4fc2b2ab2a843237afdbef1f53def4506494af
dir: /configure.in/

View raw version
dnl
dnl This is the configure.in for faad2 related to unix creation

dnl - libfaad.so
dnl - libmp4ff.a (only static for moment)
dnl - faad
dnl - xmms input mp4/aac plugin
dnl - mpeg4ip plugin (requires mpeg4ip's libmp4v2 to be installed)

AC_INIT
AC_CONFIG_AUX_DIR(.)
AM_INIT_AUTOMAKE(faad2, 2.0)

AC_PROG_LIBTOOL
AC_SUBST(LIBTOOL_DEPS)

dnl Checks for programs.
AC_PROG_CC
AC_PROG_CPP
dnl disable for mpeg4ip plugin
dnl AC_PROG_CXX
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_CHECK_PROGS(RPMBUILD, rpmbuild, rpm)

AM_CONFIG_HEADER(config.h)

AC_ARG_WITH(xmms,[  --with-xmms             compile XMMS-1 plugin],
	     WITHXMMS=$withval, WITHXMMS=no)

AC_ARG_WITH(drm,[  --with-drm              compile libfaad with DRM support],
	     WITHDRM=$withval, WITHDRM=no)

dnl AC_ARG_WITH(mp4v2,[  --with-mp4v2            compile libmp4v2],
dnl		WITHMP4V2=$withval, WITHMP4V2=no)

AC_ARG_WITH(mpeg4ip, [  --with-mpeg4ip          compile mpeg4ip plugin],
		     WITHMPEG4IP=$withval, WITHMPEG4IP=no)

dnl Checks for header files required for mp4.h
AC_HEADER_STDC
AC_CHECK_HEADERS(stdint.h inttypes.h)
AC_CHECK_HEADERS(mathf.h)
AC_CHECK_HEADERS(float.h)
AC_CHECK_FUNCS(strchr memcpy)
AC_CHECK_HEADERS(sys/time.h)
AC_HEADER_TIME

dnl DRMS 
AC_CHECK_HEADERS(errno.h sys/stat.h sys/types.h limits.h)
AC_CHECK_HEADERS(sysfs/libsysfs.h)
AC_CHECK_HEADERS(IOKit/IOKitLib.h,
  [AC_CHECK_LIB(IOKit, main,
    [AC_DEFINE(HAVE_IOKIT_IOKITLIB_H, 1, [Define if you have the IOKit API])
     MP4FF_LIBS="-lIOKit"
     AC_SUBST(MP4FF_LIBS)])])
AC_CHECK_FUNCS(getpwuid)

AC_C_INLINE
AC_C_BIGENDIAN

AC_TYPE_OFF_T

AC_DEFUN(MY_CHECK_TYPEDEF_FROM_INCLUDE,
[
   AC_MSG_CHECKING([for $1])
   AC_TRY_COMPILE([$2],
                  [$1;],
                  libfaad_ok=yes, libfaad_ok=no)
   if test $libfaad_ok = yes; then
      AC_DEFINE($3, 1, [Define if needed])
      AC_MSG_RESULT([yes])
   else
      AC_MSG_RESULT([no])
fi
])


MY_CHECK_TYPEDEF_FROM_INCLUDE([float32_t temp],
        [#include <sys/types.h>,
        #include <sys/float.h>], [HAVE_FLOAT32_T])

AC_CHECK_FUNCS(strsep)

dnl MY_CHECK_TYPEDEF_FROM_INCLUDE([in_port_t temp],
dnl         [#include <sys/types.h>
dnl          #include <netinet/in.h>], [HAVE_IN_PORT_T])
dnl MY_CHECK_TYPEDEF_FROM_INCLUDE([socklen_t temp],
dnl         [#include <sys/types.h>
dnl          #include <sys/socket.h>], HAVE_SOCKLEN_T)
dnl MY_CHECK_TYPEDEF_FROM_INCLUDE([fpos_t foo; foo.__pos = 0;],
dnl         [#include <stdio.h>],
dnl         [HAVE_FPOS_T_POS])


dnl AC_CHECK_PROG(external_mp4v2, mpeg4ip-config, yes, no)
dnl AM_CONDITIONAL(WITH_MP4V2, false)

dnl if test x$external_mp4v2 = xyes; then
dnl   AM_CONDITIONAL(HAVE_MPEG4IP, true)
dnl   MPEG4IP_PLAYER_PLUGIN_DIR=`mpeg4ip-config --player-plugin-dir`  
dnl   AC_SUBST(MPEG4IP_PLAYER_PLUGIN_DIR)
dnl   AC_MSG_NOTICE([*** Building with external mp4v2 ***])
dnl else
dnl   AC_MSG_NOTICE([*** Building with internal mp4v2 ***])
dnl   AM_CONDITIONAL(HAVE_MPEG4IP, false)
dnl   if test x$WITHMP4V2 = xyes; then
dnl      AM_CONDITIONAL(WITH_MP4V2, true)
dnl   fi
dnl fi

AC_CHECK_PROG(external_mp4v2, mpeg4ip-config, yes, no)
AM_CONDITIONAL(HAVE_MPEG4IP_PLUG, false)
if test x$WITHMPEG4IP = xyes; then
   if test x$external_mp4v2 = xyes; then
      AM_CONDITIONAL(HAVE_MPEG4IP_PLUG, true)
      AC_MSG_NOTICE("Building MPEG4IP plugin")
   else
	AC_MSG_NOTICE("MPEG4IP libmp4v2 is required for MPEG4IP plugin")
   fi
fi

if test x$WITHXMMS = xyes; then
  AC_CHECK_PROGS(XMMS_CONFIG, xmms-config,"not_found")
  if test "$XMMS_CONFIG" = "not_found"; then
    AC_MSG_ERROR("*** xmms-config not found - xmms plugin can't be build")
  fi
  AC_CHECK_HEADER(pthread.h,,
           AC_MSG_ERROR(*** pthread headers support not installed or not found))
  AC_CHECK_HEADER(id3.h,,
       AC_MSG_ERROR(*** id3lib headers support not installed or not found))
  AC_CHECK_PROGS(GTK_CONFIG, gtk-config, "not_found")
  if test "$XGTK_CONFIG" = "not_found"; then
    AC_MSG_ERROR("*** gtk-config not found - xmms plugin can't be build without")
  fi

  AM_CONDITIONAL(HAVE_XMMS, true)
dnl  AC_MSG_NOTICE("xmms plugin requires libmp4v2 to be build")
dnl  AM_CONDITIONAL(WITH_MP4V2, true)
dnl  AC_CONFIG_FILES(plugins/xmms/Makefile plugins/xmms/src/Makefile)
else
 AC_MSG_NOTICE(no xmms build configured)
 AM_CONDITIONAL(HAVE_XMMS, false)
fi

if test x$WITHDRM = xyes; then
  AC_DEFINE(DRM, 1, [Define if you want to use libfaad together with Digital Radio Mondiale (DRM)])
fi

AC_CONFIG_FILES(libfaad/Makefile)
AC_CONFIG_FILES(common/Makefile)
AC_CONFIG_FILES(common/mp4ff/Makefile)
AC_CONFIG_FILES(plugins/Makefile)
AC_CONFIG_FILES(plugins/xmms/Makefile)
AC_CONFIG_FILES(plugins/xmms/src/Makefile)
dnl AC_CONFIG_FILES(plugins/mpeg4ip/Makefile)
AC_CONFIG_FILES(faad2.spec)
AC_CONFIG_FILES(frontend/Makefile)
AC_CONFIG_FILES(Makefile)

AC_OUTPUT