📄 configure.in
字号:
dnl Process this file with autoconf to produce a configure scriptAC_INIT(motion.c)VERSION=3.2.7AC_SUBST(VERSION)THREAD_CFLAGS=""THREAD_CHECK="pthread.h"Darwin=""FreeBSD=""LINUXTHREADS="no"AC_ARG_WITH(linuxthreads,[ --with-linuxthreads Use linuxthreads in BSD instead of native phtreads ] ,LINUXTHREADS="$withval")AC_MSG_CHECKING(for Darwin)Darwin=`uname -a | grep "Darwin"`if test "${Darwin}" = ""; then AC_MSG_RESULT(no) AC_MSG_CHECKING(for *BSD) FreeBSD=`uname -a | grep "BSD"` if test "${FreeBSD}" = ""; then AC_MSG_RESULT(no) VIDEO="video.o" else AC_MSG_RESULT(yes) if test "${LINUXTHREADS}" = "no"; then AC_MSG_CHECKING(Linuxthreads) AC_MSG_RESULT(skipping) else THREAD_CHECK="/usr/local/include/pthread/linuxthreads/pthread.h" THREAD_LIB_CHECK="/usr/local/lib/liblthread.so" fi TEMP_CFLAGS="${CFLAGS} -I/usr/local/include" TEMP_LDFLAGS="${LDFLAGS} -L/usr/local/lib" TEMP_LIBS="-L/usr/local/lib" VIDEO="video_freebsd.o" fielse TEMP_CFLAGS="${CFLAGS} -I/sw/include" TEMP_LDFLAGS="${LDFLAGS} -L/sw/lib" TEMP_LIBS="-L/sw/lib" VIDEO="video_freebsd.o" FINK_LIB="-L/sw/lib" Darwin="yes" AC_MSG_RESULT($Darwin)fiAC_SUBST(VIDEO)dnl Checks for programs.AC_PROG_CCTEMP_LIBS="-lm ${TEMP_LIBS}"TEMP_CFLAGS="${TEMP_CFLAGS} ${CFLAGS}"TEMP_LDFLAGS="${TEMP_LDFLAGS} ${LDFLAGS}"if test "${FreeBSD}" != ""; thenAC_MSG_CHECKING(bktr headers in /usr/include/dev/bktr)if test -f /usr/include/dev/bktr/ioctl_meteor.h && test -f /usr/include/dev/bktr/ioctl_bt848.h; then AC_MSG_RESULT(yes)else AC_MSG_RESULT(no) TEMP_CFLAGS="${TEMP_CFLAGS} -DOLD_BKTR"fidnldnl Check to Exclude BKTR dnlBKTR="yes"AC_ARG_WITH(bktr,[ --without-bktr Exclude to use bktr subsystem , that usually useful for devices as network cameras ( ONLY used in *BSD). ] ,BKTR="$withval") if test "${BKTR}" = "no"; then TEMP_CFLAGS="${TEMP_CFLAGS} -DWITHOUT_V4L" fielsednldnl Check to Exclude V4LdnlV4L="yes"AC_ARG_WITH(v4l,[ --without-v4l Exclude using v4l (video4linux) subsystem. Makes Motion so it only supports network cameras. ],V4L="$withval")fiif test "${Darwin}" = "yes"; then V4L="no"fiif test "${V4L}" = "no"; then TEMP_CFLAGS="${TEMP_CFLAGS} -DWITHOUT_V4L"fiif test "${FreeBSD}" != "" && test "${LINUXTHREADS}" != "no" ; thenAC_MSG_CHECKING(for linuxthreads)dnldnl Check for thread headerdnl if test -f "${THREAD_CHECK}"; then HEADERS_THREAD_CFLAGS="-I/usr/local/include/pthread/linuxthreads" THREADS="yes" else THREADS="no" fidnldnl Check for thread libdnl if test -f "${THREAD_LIB_CHECK}" ; then THREADS="yes" LIB_THREAD="-llthread -llgcc_r" else THREADS="no" fidnl Checks for Library linuxthreads for FreeBSDdnldnl linuxthreads on freeBSD, ports collectiondnl /usr/local/include/pthreads/linuxthreads/pthread.hdnl #include <linuxthreads/pthread.h>dnl /usr/local/lib/libpthread.sodnl if test "${THREADS}" = "yes"; then TEMP_CFLAGS="${HEADERS_THREAD_CFLAGS} $TEMP_CFLAGS -DWITH_LINUXTREADS" TEMP_LIBS="$TEMP_LIBS ${LIB_THREAD}" THREAD_CFLAGS="-D_THREAD_SAFE" PTHREAD_SUPPORT="yes" AC_MSG_RESULT($THREADS) else PTHREAD_SUPPORT="no" AC_MSG_RESULT($THREADS) echo echo You do not have linuxthread installed echo fielsednl Checks for Library pthread ( no cross platform )AC_CHECK_LIB(pthread,pthread_create,[ TEMP_LIBS="$TEMP_LIBS -lpthread" PTHREAD_SUPPORT="yes" ],[ echo echo You do not have pthread installed echo ] )fidnldnl Check for the special mmx accelerated jpeg librarydnlJPEG_MMX="no"JPEG_MMX_OK="not_found"AC_ARG_WITH(jpeg-mmx,[ --with-jpeg-mmx[=DIR] Specify the prefix for the install path for jpeg-mmx for optimized jpeg handling (optional). If this is not specified motion will try to find the library /usr/lib/libjpeg-mmx.a /usr/local/lib/libjpeg-mmx.a. ],JPEG_MMX="$withval")dnldnl --without-jpeg-mmx or with-jpeg-mmx=nodnlif test "${JPEG_MMX}" = "no"; then AC_MSG_CHECKING(for libjpeg-mmx) AC_MSG_RESULT(skipping)elif test "${JPEG_MMX}" = "yes"; then dnl AUTODETECT STATIC LIB AC_MSG_CHECKING(for libjpeg-mmx autodetecting) if test -f /usr/lib/libjpeg-mmx.a ; then AC_MSG_RESULT(found) JPEG_MMX_OK="found" JPEG_MMX="/usr/lib" elif test -f /usr/local/lib/libjpeg-mmx.a ; then AC_MSG_RESULT(found) JPEG_MMX_OK="found" JPEG_MMX="/usr/local/lib" else AC_MSG_RESULT(not found) fielse AC_MSG_CHECKING(for libjpeg-mmx in -> [${JPEG_MMX}] <-) if test -f ${JPEG_MMX}/libjpeg-mmx.a ; then AC_MSG_RESULT(found) JPEG_MMX_OK="found" else AC_MSG_RESULT(not found) fifiif test "${JPEG_MMX_OK}" = "found"; then OLD_CFLAGS="$CFLAGS" OLD_LIBS="$LIBS" CFLAGS="$CFLAGS -I${JPEG_MMX}" LIBS="$LIBS -L${JPEG_MMX}" AC_CHECK_LIB(jpeg-mmx, jpeg_start_compress, [ TEMP_LIBS="$TEMP_LIBS -ljpeg-mmx" TEMP_CFLAGS="${TEMP_CFLAGS} -I${JPEG_MMX}" JPEG_SUPPORT="yes"],,) LIBS="$OLD_LIBS" CFLAGS="$OLD_CFLAGS" JPEG_SUPPORT_MMX="yes"fidnldnl Look for _a_ jpeg lib that will work.dnlif test x$JPEG_SUPPORT != xyes ; then dnl Checks for libraries LDFLAGS=$TEMP_LDFLAGS AC_CHECK_LIB(jpeg, jpeg_set_defaults, [ TEMP_LIBS="$TEMP_LIBS -ljpeg" JPEG_SUPPORT="yes" ], [ echo echo You do not have libjpeg installed echo ] )fidnldnl Check for libavcodec and libavformat from ffmpegdnlFFMPEG="yes"FFMPEG_OK="no_found"FFMPEG_OBJ=""AC_ARG_WITH(ffmpeg,[ --with-ffmpeg[=DIR] Specify the prefix for the install path for libavcodec/libavformat (part of ffmpeg) be able to encode mpeg movies realtime. If this is not specified motion will try to find the libraries in /usr and /usr/local. ],FFMPEG="$withval")dnldnl --without-ffmpeg or with-ffmpeg=nodnlif test "${FFMPEG}" = "no"; then AC_MSG_CHECKING(for ffmpeg) AC_MSG_RESULT(skipping)dnldnl with-ffmpeg=<dir> or nothingdnlelse if test "${FFMPEG}" = "yes"; then dnl AUTODETECT STATIC/SHARED LIB AC_MSG_CHECKING(for ffmpeg autodetecting)# weird hack to fix debian problem TO BE REMOVED if test -f /usr/bin/ffmpeg-config; then FFMPEG_LIBS_DEB="`ffmpeg-config --libs avformat`" FFMPEG_CFLAGS_DEB="`ffmpeg-config --cflags`" FFMPEG_OK="found" AC_MSG_RESULT(found for debian) elif test -f /usr/lib64/libavcodec.a -o -f /usr/lib64/libavcodec.so && test -f /usr/lib64/libavformat.a -o -f /usr/lib64/libavformat.so ; then AC_MSG_RESULT(found) FFMPEG_OK="found" FFMPEG="/usr/lib64" elif test -f /usr/lib/libavcodec.a -o -f /usr/lib/libavcodec.so && test -f /usr/lib/libavformat.a -o -f /usr/lib/libavformat.so ; then AC_MSG_RESULT(found) FFMPEG_OK="found" FFMPEG="/usr/lib" elif test -f /usr/local/lib/libavcodec.a -o -f /usr/local/lib/libavcodec.so && test -f /usr/local/lib/libavformat.a -o -f /usr/local/lib/libavformat.so ; then AC_MSG_RESULT(found) FFMPEG_OK="found" FFMPEG="/usr/local/lib" else AC_MSG_RESULT(not found) echo "" echo "**********************************************" echo "* libavcodec.a or libavcodec.so or *" echo "* libavformat.a or libavformat.so not found: *" echo "* ALL FFMPEG FEATURES DISABLED *" echo "* *" echo "* Please read the Motion Guide for help: *" echo "* http://motion.sourceforge.net *" echo "**********************************************" echo "" fi else AC_MSG_CHECKING(for ffmpeg in -> [${FFMPEG}] <-) if test -f ${FFMPEG}/lib/libavcodec.a -o -f ${FFMPEG}/lib/libavcodec.so && test -f ${FFMPEG}/lib/libavformat.a -o -f ${FFMPEG}/lib/libavformat.so ; then AC_MSG_RESULT(found) FFMPEG_OK="found" FFMPEG="${FFMPEG}/lib" elif test -f ${FFMPEG}/libavcodec.a -o -f ${FFMPEG}/libavcodec.so && test -f ${FFMPEG}/libavformat.a -o -f ${FFMPEG}/libavformat.so ; then AC_MSG_RESULT(found) FFMPEG_OK="found" else AC_MSG_RESULT(not found) if test "${FFMPEG}" != "no"; then echo "" echo "**********************************************" echo "* libavcodec.a or libavcodec.so or *" echo "* libavformat.a or libavformat.so not found: *" echo "* ALL FFMPEG FEATURES DISABLED *" echo "* *" echo "* Please read the Motion Guide for help: *" echo "* http://motion.sourceforge.net *" echo "**********************************************" echo "" fi fifi## Now check for ffmpeg headers ( avformat.h ) if ffmpeg libs were found#if test "${FFMPEG_OK}" = "found"; then AC_MSG_CHECKING(for ffmpeg headers) if test "${FFMPEG_CFLAGS_DEB}" != "" ; then FFMPEG_CFLAGS="${FFMPEG_CFLAGS_DEB}" AC_MSG_RESULT(found for debian) elif test -f ${FFMPEG}/include/avformat.h; then AC_MSG_RESULT(found) FFMPEG_CFLAGS="-I${FFMPEG}/include" elif test -f ${FFMPEG}/avformat.h; then AC_MSG_RESULT(found) FFMPEG_CFLAGS="-I${FFMPEG}" elif test -f `AS_DIRNAME([${FFMPEG}])`/include/avformat.h; then AC_MSG_RESULT(found) FFMPEG_CFLAGS="-I`AS_DIRNAME([${FFMPEG}])`/include" elif test -f `AS_DIRNAME([${FFMPEG}])`/include/ffmpeg/avformat.h; then AC_MSG_RESULT(found) FFMPEG_CFLAGS="-I`AS_DIRNAME([${FFMPEG}])`/include/ffmpeg" else AC_MSG_RESULT(not found) FFMPEG_OK="no_found" echo "**********************************************" echo "* avformat.h not found: *" echo "* ALL FFMPEG FEATURES DISABLED *" echo "* *" echo "* Please read the Motion Guide for help: *" echo "* http://motion.sourceforge.net *" echo "**********************************************" echo "" fi## If ffmpeg libs and headers have been found # if test "${FFMPEG_OK}" = "found"; then if test "${FFMPEG_LIBS_DEB}" != ""; then TEMP_LIBS="$TEMP_LIBS ${FFMPEG_LIBS_DEB}"# TEMP_LDFLAGS="${TEMP_LDFLAGS} ${FFMPEG_LIBS_DEB}" else TEMP_LIBS="$TEMP_LIBS -L${FFMPEG} -lavformat -lavcodec -lm -lz" TEMP_LDFLAGS="${TEMP_LDFLAGS} -L${FFMPEG}" fi TEMP_CFLAGS="${TEMP_CFLAGS} -DHAVE_FFMPEG ${FFMPEG_CFLAGS}" FFMPEG_OBJ="ffmpeg.o" AC_SUBST(FFMPEG_OBJ) fifi fiMYSQL="yes"AC_MSG_CHECKING(for MySQL)AC_ARG_WITH(mysql,[ --with-mysql[=DIR] Normally, configure will scan all possible default installation paths for mysql. When its fail, use this command to tell configure where mysql installation root directory is. ],MYSQL="$withval"dnl if not given argument, assume standard)if test "${MYSQL}" = "yes"; then # Autodetect for w in /usr/include /usr/local/include /usr/mysql /usr/local/mysql /usr/local/mysql/include /opt /opt/mysql; do # check for plain setups if test -f $w/mysql.h; then MYSQL_INCDIR=$w break fi # check for "/usr/include/<packagename>" type setups if test -f $w/mysql/mysql.h; then MYSQL_INCDIR=$w/mysql break fi # check for "/usr/<packagename>/include" type setups if test -f $w/mysql/include/mysql.h; then MYSQL_INCDIR=$w/mysql/include break fi done for w in /usr/lib /usr/local/lib /usr/mysql /usr/local/mysql /usr/local/mysql/lib /opt /opt/mysql /usr/lib64; do # check for plain setups if test -f $w/libmysqlclient.a -o -f $w/libmysqlclient.so; then MYSQL_LIBDIR=$w break fi # check for "/usr/lib/<packagename>" type setups if test -f $w/mysql/libmysqlclient.a -o -f $w/mysql/libmysqlclient.so; then MYSQL_LIBDIR=$w/mysql break fi # check for "/usr/<packagename>/lib" type setups if test -f $w/mysql/lib/libmysqlclient.a -o -f $w/mysql/lib/libmysqlclient.so; then MYSQL_LIBDIR=$w/mysql/lib break fi doneelse
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -