zoneminder/configure.in

129 lines
5.0 KiB
Plaintext

AC_INIT(src/zm.h)
AM_INIT_AUTOMAKE(zm,1.19.0)
AM_CONFIG_HEADER(config.h)
AC_ARG_WITH(mysql,
[ --with-mysql=<path> prefix of MySQL installation. e.g. /usr/local or /usr],
[MYSQL_PREFIX=$with_mysql],
AC_MSG_ERROR([You must call configure with the --with-mysql option.
This tells configure where to find the MySql C library and headers.
e.g. --with-mysql=/usr/local or --with-mysql=/usr])
)
AC_SUBST(MYSQL_PREFIX)
MYSQL_LIBS="-L${MYSQL_PREFIX}/lib/mysql"
MYSQL_CFLAGS="-I${MYSQL_PREFIX}/include"
AC_SUBST(MYSQL_LIBS)
AC_SUBST(MYSQL_CFLAGS)
LDFLAGS="${MYSQL_LIBS} $LDFLAGS"
# Ask user for path to web stuff:.
AC_ARG_WITH(webdir,
[ --with-webdir=<path> prefix of web directory. e.g. /var/www/html or /www/vhtdocs/<site>],
[WEB_PREFIX=$with_webdir],
AC_MSG_ERROR([You must call configure with the --with-webdir option.
This tells configure where to install PHP and web files and scripts.
e.g. --with-webdir=/var/www/html or --with-mysql=/www/vhtdocs/<site>])
)
AC_SUBST(WEB_PREFIX)
# Ask user for path to cgi stuff:.
AC_ARG_WITH(cgidir,
[ --with-cgidir=<path> prefix of cgi directory. e.g. /var/www/cgi-bin or /www/vhtdocs/<site>/cgi-bin],
[CGI_PREFIX=$with_cgidir],
AC_MSG_ERROR([You must call configure with the --with-cgidir option.
This tells configure where to install cgi files and scripts.
e.g. --with-cgidir=/var/www/cgi-bin or --with-mysql=/www/vhtdocs/<site>/cgi-bin])
)
AC_SUBST(CGI_PREFIX)
WEB_USER=apache
# Ask user for web user name:.
AC_ARG_WITH(webuser,
[ --with-webuser=<user> username of web user. e.g. apache or web],
[WEB_USER=$with_webuser],
AC_MSG_WARN([You can call configure with the --with-webuser option.
This tells configure what the user name of the web user is if it is not the default of 'apache'.
e.g. --with-webuser=apache or --with-webuser=web])
)
AC_SUBST(WEB_USER)
WEB_GROUP=apache
# Ask group for web group name:.
AC_ARG_WITH(webgroup,
[ --with-webgroup=<group> groupname of web group. e.g. apache or web],
[WEB_GROUP=$with_webgroup],
AC_MSG_WARN([You can call configure with the --with-webgroup option.
This tells configure what the group name of the web group is if it is not the default of 'apache'.
e.g. --with-webgroup=apache or --with-webgroup=web])
)
AC_SUBST(WEB_GROUP)
FFMPEG_PREFIX=
# Ask group for web group name:.
AC_ARG_WITH(ffmpeg,
[ --with-ffmpeg=<directory> location of ffmpeg build directory for libavcodec etc],
[FFMPEG_PREFIX=$with_ffmpeg],
AC_MSG_WARN([You can call configure with the --with-ffmpeg option.
This tells configure where to find the ffmpeg build directory within which are the libavcodec
files that can be used to build true MPEG streaming into ZoneMinder.
e.g. --with-ffmpeg=/home/ffmpeg-0.4.18])
)
AC_SUBST(FFMPEG_PREFIX)
FFMPEG_LIBS="-L${FFMPEG_PREFIX}/libavcodec -L${FFMPEG_PREFIX}/libavformat"
FFMPEG_CFLAGS="-I${FFMPEG_PREFIX}/libavcodec -I${FFMPEG_PREFIX}/libavformat"
AC_SUBST(FFMPEG_LIBS)
AC_SUBST(FFMPEG_CFLAGS)
LDFLAGS="${FFMPEG_LIBS} $LDFLAGS"
LAME_PREFIX=
# Ask group for web group name:.
AC_ARG_WITH(lame,
[ --with-lame=<directory> location of lame library directory for libmp3lame],
[LAME_PREFIX=$with_lame],
AC_MSG_WARN([You can call configure with the --with-lame option.
This tells configure where to find the Lame library which is used by the ffmpeg libraries
to generate IE compatible MPEG streams. This option is only necessary if you have built the
ffmpeg package with the --enable-mp3lame option and if the normal link cannot find the library.
e.g. --with-lame=/use/local/lib])
)
AC_SUBST(LAME_PREFIX)
LAME_LIBS="-L${LAME_PREFIX}"
#LAME_CFLAGS="-I${LAME_PREFIX}/libavcodec -I${LAME_PREFIX}/libavformat"
AC_SUBST(LAME_LIBS)
#AC_SUBST(LAME_CFLAGS)
LDFLAGS="${LAME_LIBS} $LDFLAGS"
AC_PROG_CC
AC_PROG_CXX
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_HEADER_STDC
AC_LANG_CPLUSPLUS
XLIBS=""
AC_CHECK_DECLS(round,,,[#include <math.h>])
AC_CHECK_DECLS(strsignal,,,[#include <string.h>])
AC_CHECK_LIB(jpeg,jpeg_start_compress,,AC_MSG_ERROR(zm requires libjpeg.a))
AC_CHECK_LIB(z,compress,,AC_MSG_ERROR(zm requires libz.a))
AC_CHECK_LIB(dl,dlsym,,AC_MSG_ERROR(zm requires libdl.a))
AC_CHECK_LIB(mysqlclient,mysql_init,,AC_MSG_ERROR(zm requires libmysqlclient.a))
#AC_CHECK_LIB(avcodec,avcodec_init,XLIBS="$XLIBS -lavcodec",AC_MSG_WARN(libavcodec.a is required for MPEG streaming))
#AC_CHECK_LIB(avformat,av_new_stream,XLIBS="$XLIBS -lavformat",AC_MSG_WARN(libavformat.a is required for MPEG streaming),-lavcodec)
AC_CHECK_LIB(avcodec,avcodec_init,,AC_MSG_WARN(libavcodec.a is required for MPEG streaming))
AC_CHECK_LIB(avformat,av_new_stream,,AC_MSG_WARN(libavformat.a is required for MPEG streaming),-lavcodec)
AC_CHECK_LIB(mp3lame,lame_init,,AC_MSG_WARN(libmp3lame.a may be required for IE compatible MPEG streaming))
AC_SUBST(XLIBS)
AC_SUBST(bindir)
AC_OUTPUT(Makefile src/Makefile web/Makefile scripts/Makefile db/Makefile zmconfig.pl)
AC_CHECK_FILE(zmconfig.txt,,AC_MSG_WARN([Now run 'perl zmconfig.pl' to create your ZoneMinder configuration]))