AC_DEFUN([AM_LANGINFO_CODESET],
[
AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
[AC_TRY_LINK([ [char* cs = nl_langinfo(CODESET);],
am_cv_langinfo_codeset=yes,
am_cv_langinfo_codeset=no)
])
if test $am_cv_langinfo_codeset = yes; then
AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
[Define if you have <langinfo.h> and nl_langinfo(CODESET).])
fi
])AC_DEFUN([CF_ADD_CFLAGS],
[
cf_fix_cppflags=no
cf_new_cflags=
cf_new_cppflags=
cf_new_extra_cppflags=
for cf_add_cflags in $1
do
case $cf_fix_cppflags in
no)
case $cf_add_cflags in -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) case $cf_add_cflags in
-D*)
cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
test "${cf_add_cflags}" != "${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=yes
if test $cf_fix_cppflags = yes ; then
cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
continue
elif test "${cf_tst_cflags}" = "\"'" ; then
cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
continue
fi
;;
esac
case "$CPPFLAGS" in
*$cf_add_cflags) ;;
*) cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
;;
esac
;;
*)
cf_new_cflags="$cf_new_cflags $cf_add_cflags"
;;
esac
;;
yes)
cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
test "${cf_add_cflags}" != "${cf_tst_cflags}" \
&& test -z "${cf_tst_cflags}" \
&& cf_fix_cppflags=no
;;
esac
done
if test -n "$cf_new_cflags" ; then
ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])
CFLAGS="$CFLAGS $cf_new_cflags"
fi
if test -n "$cf_new_cppflags" ; then
ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])
CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
fi
if test -n "$cf_new_extra_cppflags" ; then
ifelse($2,,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)])
EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
fi
AC_SUBST(EXTRA_CPPFLAGS)
])AC_DEFUN([CF_ANSI_CC_CHECK],
[
AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[
cf_cv_ansi_cc=no
cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
for cf_arg in "-DCC_HAS_PROTOS" \
"" \
-qlanglvl=ansi \
-std1 \
-Ae \
"-Aa -D_HPUX_SOURCE" \
-Xc
do
CF_ADD_CFLAGS($cf_arg)
AC_TRY_COMPILE(
[
choke me
],[
int test (int i, double x);
struct s1 {int (*f) (int a);};
struct s2 {int (*f) (double a);};],
[cf_cv_ansi_cc="$cf_arg"; break])
done
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
])
if test "$cf_cv_ansi_cc" != "no"; then
if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
CF_ADD_CFLAGS($cf_cv_ansi_cc)
else
AC_DEFINE(CC_HAS_PROTOS)
fi
fi
])AC_DEFUN([CF_ARG_DISABLE],
[CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])AC_DEFUN([CF_ARG_ENABLE],
[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])AC_DEFUN([CF_ARG_OPTION],
[AC_ARG_ENABLE($1,[$2],[test "$enableval" != ifelse($5,no,yes,no) && enableval=ifelse($5,no,no,yes)
if test "$enableval" != "$5" ; then
ifelse($3,,[ :],[ $3]) ifelse($4,,,[
else
$4])
fi],[enableval=$5 ifelse($4,,,[
$4
]) ])])AC_DEFUN([CF_CHECK_CACHE],
[
if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
ifelse([$1],,[AC_CANONICAL_HOST],[$1])
system_name="$host_os"
else
system_name="`(uname -s -r) 2>/dev/null`"
if test -z "$system_name" ; then
system_name="`(hostname) 2>/dev/null`"
fi
fi
test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
test -z "$system_name" && system_name="$cf_cv_system_name"
test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)
if test ".$system_name" != ".$cf_cv_system_name" ; then
AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))
AC_MSG_ERROR("Please remove config.cache and try again.")
fi
])AC_DEFUN([CF_CHECK_CFLAGS],
[
CF_VERBOSE(checking additions to CFLAGS)
cf_check_cflags="$CFLAGS"
cf_check_cppflags="$CPPFLAGS"
CF_ADD_CFLAGS($1,yes)
if test "$cf_check_cflags" != "$CFLAGS" ; then
AC_TRY_LINK([ [CF_VERBOSE(test-compile failed. Undoing change to \$CFLAGS)
if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
CF_VERBOSE(but keeping change to \$CPPFLAGS)
fi
CFLAGS="$cf_check_flags"])
fi
])AC_DEFUN([CF_CHECK_ERRNO],
[
AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
AC_TRY_COMPILE([
ifelse($2,,int,$2) x = (ifelse($2,,int,$2)) $1,
[cf_cv_dcl_$1=yes],
[cf_cv_dcl_$1=no])
])
if test "$cf_cv_dcl_$1" = no ; then
CF_UPPER(cf_result,decl_$1)
AC_DEFINE_UNQUOTED($cf_result)
fi
CF_CHECK_EXTERN_DATA($1,ifelse($2,,int,$2))
])AC_DEFUN([CF_CHECK_EXTERN_DATA],
[
AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[
AC_TRY_LINK([
extern $2 $1;
],
[$1 = 2],
[cf_cv_have_$1=yes],
[cf_cv_have_$1=no])
])
if test "$cf_cv_have_$1" = yes ; then
CF_UPPER(cf_result,have_$1)
AC_DEFINE_UNQUOTED($cf_result)
fi
])AC_DEFUN([CF_DISABLE_ECHO],[
AC_MSG_CHECKING(if you want to see long compiling messages)
CF_ARG_DISABLE(echo,
[ --disable-echo display "compiling" commands],
[
ECHO_LT='--silent'
ECHO_LD='@echo linking [$]@;'
RULE_CC=' @echo compiling [$]<'
SHOW_CC=' @echo compiling [$]@'
ECHO_CC='@'
],[
ECHO_LT=''
ECHO_LD=''
RULE_CC=' SHOW_CC=' ECHO_CC=''
])
AC_MSG_RESULT($enableval)
AC_SUBST(ECHO_LT)
AC_SUBST(ECHO_LD)
AC_SUBST(RULE_CC)
AC_SUBST(SHOW_CC)
AC_SUBST(ECHO_CC)
])AC_DEFUN([CF_ENABLE_NARROWPROTO],
[
AC_MSG_CHECKING(if you want narrow prototypes for X libraries)
case `$ac_config_guess` in *cygwin*|*freebsd*|*gnu*|*irix5*|*irix6*|*linux-gnu*|*netbsd*|*openbsd*|*qnx*|*sco*|*sgi*) cf_default_narrowproto=yes
;;
*)
cf_default_narrowproto=no
;;
esac
CF_ARG_OPTION(narrowproto,
[ --enable-narrowproto enable narrow prototypes for X libraries],
[enable_narrowproto=$enableval],
[enable_narrowproto=$cf_default_narrowproto],
[$cf_default_narrowproto])
AC_MSG_RESULT($enable_narrowproto)
])
AC_DEFUN([CF_ERRNO],
[
CF_CHECK_ERRNO(errno)
])AC_DEFUN([CF_FUNC_MEMMOVE],
[
AC_CHECK_FUNC(memmove,,[
AC_CHECK_FUNC(bcopy,[
AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[
AC_TRY_RUN([
int main() {
static char data[] = "abcdefghijklmnopqrstuwwxyz";
char temp[40];
bcopy(data, temp, sizeof(data));
bcopy(temp+10, temp, 15);
bcopy(temp+5, temp+15, 10);
${cf_cv_main_return:-return} (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz"));
}
],
[cf_cv_good_bcopy=yes],
[cf_cv_good_bcopy=no],
[cf_cv_good_bcopy=unknown])
])
],[cf_cv_good_bcopy=no])
if test "$cf_cv_good_bcopy" = yes ; then
AC_DEFINE(USE_OK_BCOPY)
else
AC_DEFINE(USE_MY_MEMMOVE)
fi
])])AC_DEFUN([CF_FUNC_TGETENT],
[
cf_TERMVAR=vt100
test -n "$TERMCAP" && cf_TERMVAR="$TERM"
test -z "$cf_TERMVAR" && cf_TERMVAR=vt100
AC_MSG_CHECKING(if we want full tgetent function)
CF_ARG_DISABLE(full-tgetent,
[ --disable-full-tgetent disable check for full tgetent function],
cf_full_tgetent=no,
cf_full_tgetent=yes,yes)
AC_MSG_RESULT($cf_full_tgetent)
if test "$cf_full_tgetent" = yes ; then
cf_test_message="full tgetent"
else
cf_test_message="tgetent"
fi
AC_CACHE_CHECK(for $cf_test_message function,cf_cv_lib_tgetent,[
cf_save_LIBS="$LIBS"
cf_cv_lib_tgetent=no
if test "$cf_full_tgetent" = yes ; then
cf_TERMLIB="termcap termlib ncurses curses"
cf_TERMTST="buffer[[0]] == 0"
else
cf_TERMLIB="termlib ncurses curses"
cf_TERMTST="0"
fi
for cf_termlib in '' $cf_TERMLIB ; do
LIBS="$cf_save_LIBS"
test -n "$cf_termlib" && LIBS="$LIBS -l$cf_termlib"
AC_TRY_RUN([
/* terminfo implementations ignore the buffer argument, making it useless for
* the xterm application, which uses this information to make a new TERMCAP
* environment variable.
*/
int main()
{
char buffer[1024];
buffer[0] = 0;
tgetent(buffer, "$cf_TERMVAR");
${cf_cv_main_return:-return} ($cf_TERMTST); }],
[echo "yes, there is a termcap/tgetent in $cf_termlib" 1>&AC_FD_CC
if test -n "$cf_termlib" ; then
cf_cv_lib_tgetent="-l$cf_termlib"
else
cf_cv_lib_tgetent=yes
fi
break],
[echo "no, there is no termcap/tgetent in $cf_termlib" 1>&AC_FD_CC],
[echo "cross-compiling, cannot verify if a termcap/tgetent is present in $cf_termlib" 1>&AC_FD_CC])
done
LIBS="$cf_save_LIBS"
])
if test "$cf_cv_lib_tgetent" != no ; then
test "$cf_cv_lib_tgetent" != yes && LIBS="$LIBS $cf_cv_lib_tgetent"
AC_DEFINE(USE_TERMCAP)
AC_TRY_COMPILE([
make an error
else
AC_CACHE_CHECK(for partial tgetent function,cf_cv_lib_part_tgetent,[
cf_cv_lib_part_tgetent=no
for cf_termlib in $cf_TERMLIB ; do
LIBS="$cf_save_LIBS -l$cf_termlib"
AC_TRY_LINK([],[tgetent(0, "$cf_TERMVAR")],
[echo "there is a terminfo/tgetent in $cf_termlib" 1>&AC_FD_CC
cf_cv_lib_part_tgetent="-l$cf_termlib"
break])
done
LIBS="$cf_save_LIBS"
])
if test "$cf_cv_lib_part_tgetent" != no ; then
LIBS="$LIBS $cf_cv_lib_part_tgetent"
AC_CHECK_HEADERS(termcap.h)
AC_DEFINE(USE_TERMINFO)
fi
fi
])AC_DEFUN([CF_GCC_ATTRIBUTES],
[
if test "$GCC" = yes
then
cat > conftest.i <<EOF
EOF
if test "$GCC" = yes
then
AC_CHECKING([for $CC __attribute__ directives])
cat > conftest.$ac_ext <<EOF
extern void wow(char *,...) GCC_SCANFLIKE(1,2);
extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
extern void foo(void) GCC_NORETURN;
int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
EOF
for cf_attribute in scanf printf unused noreturn
do
CF_UPPER(cf_ATTRIBUTE,$cf_attribute)
cf_directive="__attribute__(($cf_attribute))"
echo "checking for $CC $cf_directive" 1>&AC_FD_CC
case $cf_attribute in
scanf|printf)
cat >conftest.h <<EOF
EOF
;;
*)
cat >conftest.h <<EOF
EOF
;;
esac
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
cat conftest.h >>confdefs.h
fi
done
else
fgrep define conftest.i >>confdefs.h
fi
rm -rf conftest*
fi
])AC_DEFUN([CF_GCC_VERSION],[
AC_REQUIRE([AC_PROG_CC])
GCC_VERSION=none
if test "$GCC" = yes ; then
AC_MSG_CHECKING(version of $CC)
GCC_VERSION="`${CC} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
test -z "$GCC_VERSION" && GCC_VERSION=unknown
AC_MSG_RESULT($GCC_VERSION)
fi
])AC_DEFUN([CF_GCC_WARNINGS],
[
AC_REQUIRE([CF_GCC_VERSION])
CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
cat > conftest.$ac_ext <<EOF
int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
EOF
if test "$INTEL_COMPILER" = yes
then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
EXTRA_CFLAGS="-Wall"
for cf_opt in \
wd1419 \
wd1682 \
wd1683 \
wd1684 \
wd193 \
wd279 \
wd593 \
wd810 \
wd869 \
wd981
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
fi
done
CFLAGS="$cf_save_CFLAGS"
elif test "$GCC" = yes
then
AC_CHECKING([for $CC warning options])
cf_save_CFLAGS="$CFLAGS"
EXTRA_CFLAGS="-W -Wall"
cf_warn_CONST=""
test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
for cf_opt in \
Wbad-function-cast \
Wcast-align \
Wcast-qual \
Winline \
Wmissing-declarations \
Wmissing-prototypes \
Wnested-externs \
Wpointer-arith \
Wshadow \
Wstrict-prototypes \
Wundef $cf_warn_CONST $1
do
CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
if AC_TRY_EVAL(ac_compile); then
test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
case $cf_opt in Wcast-qual) CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
;;
Winline) case $GCC_VERSION in
[[34]].*)
CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
continue;;
esac
;;
esac
EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
fi
done
CFLAGS="$cf_save_CFLAGS"
fi
rm -f conftest*
AC_SUBST(EXTRA_CFLAGS)
])AC_DEFUN([CF_GNU_SOURCE],
[
AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
AC_TRY_COMPILE([make an error
[cf_cv_gnu_source=no],
[cf_save="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
AC_TRY_COMPILE([make an error
[cf_cv_gnu_source=no],
[cf_cv_gnu_source=yes])
CPPFLAGS="$cf_save"
])
])
test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
])AC_DEFUN([CF_HELP_MESSAGE],
[AC_DIVERT_HELP([$1])])AC_DEFUN([CF_IMAKE_CFLAGS],
[
AC_PATH_PROGS(IMAKE,xmkmf imake)
if test -n "$IMAKE" ; then
case $IMAKE in */imake)
cf_imake_opts="-DUseInstalled=YES" ;;
*/util/xmkmf)
cf_imake_opts="`echo $IMAKE|sed -e s,/config/util/xmkmf,,`" ;;
*)
cf_imake_opts=
;;
esac
if mkdir conftestdir; then
CDPATH=; export CDPATH
cf_makefile=`cd $srcdir;pwd`/Imakefile
cd conftestdir
cat >fix_cflags.sed <<'CF_EOF'
s/\\//g
s/[[ ]][[ ]]*/ /g
s/"//g
:pack
s/\(=[[^ ]][[^ ]]*\) \([[^-]]\)/\1 \2/g
t pack
s/\(-D[[a-zA-Z0-9_]][[a-zA-Z0-9_]]*\)=\([[^\'0-9 ]][[^ ]]*\)/\1='\\"\2\\"'/g
s/^IMAKE[[ ]]/IMAKE_CFLAGS="/
s/ / /g
s/$/"/
CF_EOF
cat >fix_lflags.sed <<'CF_EOF'
s/^IMAKE[[ ]]*/IMAKE_LOADFLAGS="/
s/$/"/
CF_EOF
echo >./Imakefile
test -f $cf_makefile && cat $cf_makefile >>./Imakefile
cat >> ./Imakefile <<'CF_EOF'
findstddefs:
@echo IMAKE ${ALLDEFINES}ifelse($1,,,[ $1]) | sed -f fix_cflags.sed
@echo IMAKE ${EXTRA_LOAD_FLAGS}ifelse($2,,,[ $2]) | sed -f fix_lflags.sed
CF_EOF
if ( $IMAKE $cf_imake_opts 1>/dev/null 2>&AC_FD_CC && test -f Makefile)
then
CF_VERBOSE(Using $IMAKE $cf_imake_opts)
else
cf_config=
for cf_libpath in $X_LIBS $LIBS ; do
case $cf_libpath in -L*)
cf_libpath=`echo .$cf_libpath | sed -e 's/^...//'`
cf_libpath=$cf_libpath/X11/config
if test -d $cf_libpath ; then
cf_config=$cf_libpath
break
fi
;;
esac
done
if test -z "$cf_config" ; then
AC_MSG_WARN(Could not find imake config-directory)
else
cf_imake_opts="$cf_imake_opts -I$cf_config"
if ( $IMAKE -v $cf_imake_opts 2>&AC_FD_CC)
then
CF_VERBOSE(Using $IMAKE $cf_config)
else
AC_MSG_WARN(Cannot run $IMAKE)
fi
fi
fi
eval `make findstddefs 2>/dev/null | grep -v make`
cd ..
rm -rf conftestdir
if test -n "$GCC" ; then
if test -n "$IMAKE_CFLAGS" ; then
cf_nostdinc=""
cf_std_incl=""
cf_cpp_opts=""
for cf_opt in $IMAKE_CFLAGS
do
case "$cf_opt" in
-nostdinc) cf_nostdinc="$cf_opt"
;;
-I/usr/include) cf_std_incl="$cf_opt"
;;
*) cf_cpp_opts="$cf_cpp_opts $cf_opt"
;;
esac
done
if test -z "$cf_nostdinc" ; then
IMAKE_CFLAGS="$cf_cpp_opts $cf_std_incl"
elif test -z "$cf_std_incl" ; then
IMAKE_CFLAGS="$cf_cpp_opts $cf_nostdinc"
else
CF_VERBOSE(suppressed \"$cf_nostdinc\" and \"$cf_std_incl\")
IMAKE_CFLAGS="$cf_cpp_opts"
fi
fi
fi
fi
case $IMAKE_CFLAGS in
*-DPROJECTROOT=/*)
;;
*)
IMAKE_CFLAGS=`echo "$IMAKE_CFLAGS" |sed -e "s,-DPROJECTROOT=[[ ]], ,"`
;;
esac
fi
CF_VERBOSE(IMAKE_CFLAGS $IMAKE_CFLAGS)
CF_VERBOSE(IMAKE_LOADFLAGS $IMAKE_LOADFLAGS)
AC_SUBST(IMAKE_CFLAGS)
AC_SUBST(IMAKE_LOADFLAGS)
])AC_DEFUN([CF_INPUT_METHOD],
[
AC_CACHE_CHECK([if X libraries support input-method],cf_cv_input_method,[
AC_TRY_LINK([
],[
{
XIM xim;
XIMStyles *xim_styles = 0;
XIMStyle input_style;
Widget w = 0;
XSetLocaleModifiers("@im=none");
xim = XOpenIM(XtDisplay(w), NULL, NULL, NULL);
XGetIMValues(xim, XNQueryInputStyle, &xim_styles, NULL);
XCloseIM(xim);
input_style = (XIMPreeditNothing | XIMStatusNothing);
}
],
[cf_cv_input_method=yes],
[cf_cv_input_method=no])])
])AC_DEFUN([CF_INTEL_COMPILER],[
ifelse($2,,INTEL_COMPILER,[$2])=no
if test "$ifelse($1,,[$1],GCC)" = yes ; then
case $host_os in
linux*|gnu*)
AC_MSG_CHECKING(if this is really Intel ifelse($1,GXX,C++,C) compiler)
cf_save_CFLAGS="$ifelse($3,,CFLAGS,[$3])"
ifelse($3,,CFLAGS,[$3])="$ifelse($3,,CFLAGS,[$3]) -no-gcc"
AC_TRY_COMPILE([],[
make an error
],[ifelse($2,,INTEL_COMPILER,[$2])=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
],[])
ifelse($3,,CFLAGS,[$3])="$cf_save_CFLAGS"
AC_MSG_RESULT($ifelse($2,,INTEL_COMPILER,[$2]))
;;
esac
fi
])AC_DEFUN([CF_LASTLOG],
[
AC_CHECK_HEADERS(lastlog.h paths.h)
AC_CACHE_CHECK(for lastlog path,cf_cv_path_lastlog,[
AC_TRY_COMPILE([
[cf_cv_path_lastlog="_PATH_LASTLOG"],
[if test -f /usr/adm/lastlog ; then
cf_cv_path_lastlog=/usr/adm/lastlog
else
cf_cv_path_lastlog=no
fi])
])
test $cf_cv_path_lastlog != no && AC_DEFINE(USE_LASTLOG)
])AC_DEFUN([CF_MSG_LOG],[
echo "${as_me-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
])AC_DEFUN([CF_PATHSEP],
[
case $cf_cv_system_name in
os2*) PATH_SEPARATOR=';' ;;
*) PATH_SEPARATOR=':' ;;
esac
ifelse($1,,,[$1=$PATH_SEPARATOR])
AC_SUBST(PATH_SEPARATOR)
])AC_DEFUN([CF_PATH_PROG],[
AC_REQUIRE([CF_PATHSEP])
test -z "[$]$1" && $1=$2
AC_PATH_PROGS($1,[$]$1 $2 $3,[$]$1)
cf_path_prog=""
cf_path_args=""
IFS="${IFS= }"; cf_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR"
for cf_temp in $ac_cv_path_$1
do
if test -z "$cf_path_prog" ; then
if test "$with_full_paths" = yes ; then
CF_PATH_SYNTAX(cf_temp,break)
cf_path_prog="$cf_temp"
else
cf_path_prog="`basename $cf_temp`"
fi
elif test -z "$cf_path_args" ; then
cf_path_args="$cf_temp"
else
cf_path_args="$cf_path_args $cf_temp"
fi
done
IFS="$cf_save_ifs"
if test -n "$cf_path_prog" ; then
CF_MSG_LOG(defining path for ${cf_path_prog})
AC_DEFINE_UNQUOTED($1_PATH,"$cf_path_prog")
test -n "$cf_path_args" && AC_DEFINE_UNQUOTED($1_ARGS,"$cf_path_args")
fi
])AC_DEFUN([CF_PATH_SYNTAX],[
if test "x$prefix" != xNONE; then
cf_path_syntax="$prefix"
else
cf_path_syntax="$ac_default_prefix"
fi
case ".[$]$1" in .\[$]\(*\)*|.\'*\'*) ;;
..|./*|.\\*) ;;
.[[a-zA-Z]]:[[\\/]]*) ;;
.\[$]{*prefix}*) eval $1="[$]$1"
case ".[$]$1" in .NONE/*)
$1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
;;
esac
;; .no|.NONE/*)
$1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%`
;;
*)
ifelse($2,,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2)
;;
esac
])AC_DEFUN([CF_PKG_CONFIG],
[
AC_MSG_CHECKING(if you want to use pkg-config)
AC_ARG_WITH(pkg-config,
[ --with-pkg-config{=path} enable/disable use of pkg-config],
[cf_pkg_config=$withval],
[cf_pkg_config=yes])
AC_MSG_RESULT($cf_pkg_config)
case $cf_pkg_config in no) PKG_CONFIG=none
;;
yes) AC_PATH_PROG(PKG_CONFIG, pkg-config, none)
;;
*)
PKG_CONFIG=$withval
;;
esac
test -z "$PKG_CONFIG" && PKG_CONFIG=none
if test "$PKG_CONFIG" != none ; then
CF_PATH_SYNTAX(PKG_CONFIG)
fi
AC_SUBST(PKG_CONFIG)
])AC_DEFUN([CF_POSIX_C_SOURCE],
[
cf_POSIX_C_SOURCE=ifelse($1,,199506L,$1)
cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
CF_REMOVE_DEFINE(cf_trim_CFLAGS,$cf_save_CFLAGS,_POSIX_C_SOURCE)
CF_REMOVE_DEFINE(cf_trim_CPPFLAGS,$cf_save_CPPFLAGS,_POSIX_C_SOURCE)
AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_posix_c_source,[
CF_MSG_LOG(if the symbol is already defined go no further)
AC_TRY_COMPILE([make an error
[cf_cv_posix_c_source=no],
[cf_want_posix_source=no
case .$cf_POSIX_C_SOURCE in .[[12]]??*) cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
;;
.2) cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
cf_want_posix_source=yes
;;
.*)
cf_want_posix_source=yes
;;
esac
if test "$cf_want_posix_source" = yes ; then
AC_TRY_COMPILE([make an error
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE")
fi
CF_MSG_LOG(ifdef from value $cf_POSIX_C_SOURCE)
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
CF_MSG_LOG(if the second compile does not leave our definition intact error)
AC_TRY_COMPILE([make an error
[cf_cv_posix_c_source=no])
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
])
])
if test "$cf_cv_posix_c_source" != no ; then
CFLAGS="$cf_trim_CFLAGS"
CPPFLAGS="$cf_trim_CPPFLAGS"
if test "$cf_cv_cc_u_d_options" = yes ; then
cf_temp_posix_c_source=`echo "$cf_cv_posix_c_source" | \
sed -e 's/-D/-U/g' -e 's/=[[^ ]]*//g'`
CPPFLAGS="$CPPFLAGS $cf_temp_posix_c_source"
fi
CPPFLAGS="$CPPFLAGS $cf_cv_posix_c_source"
fi
])AC_DEFUN([CF_POSIX_SAVED_IDS],
[
AC_CHECK_HEADERS( \
sys/param.h \
)
AC_CACHE_CHECK(if POSIX saved-ids are supported,cf_cv_posix_saved_ids,[
AC_TRY_LINK(
[
],[
void *p = (void *) seteuid;
int x = seteuid(geteuid());
/* The BSD's may implement the runtime check - and it fails.
* However, saved-ids work almost like POSIX (close enough for most uses).
*/
make an error
],[cf_cv_posix_saved_ids=yes
],[
AC_TRY_RUN([
int main()
{
void *p = (void *) seteuid;
long code = sysconf(_SC_SAVED_IDS);
${cf_cv_main_return:-return} ((code > 0) ? 0 : 1);
}],
cf_cv_posix_saved_ids=yes,
cf_cv_posix_saved_ids=no,
cf_cv_posix_saved_ids=unknown)
])
])
test "$cf_cv_posix_saved_ids" = yes && AC_DEFINE(HAVE_POSIX_SAVED_IDS)
])
AC_DEFUN([CF_POSIX_WAIT],
[
AC_REQUIRE([AC_HEADER_SYS_WAIT])
AC_CACHE_CHECK(for POSIX wait functions,cf_cv_posix_wait,[
AC_TRY_LINK([
],[
int stat_loc;
pid_t pid = waitpid(-1, &stat_loc, WNOHANG|WUNTRACED);
pid_t pid2 = wait(&stat_loc);
],
[cf_cv_posix_wait=yes],
[cf_cv_posix_wait=no])
])
test "$cf_cv_posix_wait" = yes && AC_DEFINE(USE_POSIX_WAIT)
])AC_DEFUN([CF_PROCFS_CWD],[
AC_CACHE_CHECK(for proc tree with cwd-support,cf_cv_procfs_cwd,[
cf_cv_procfs_cwd=no
for cf_path in /proc /compat/linux/proc /usr/compat/linux/proc
do
if test -d $cf_path && \
test -d $cf_path/$$ && \
( test -d $cf_path/$$/cwd || \
test -L $cf_path/$$/cwd ); then
cf_cv_procfs_cwd=$cf_path
break
fi
done
])
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30
dnl --------------
dnl Check if C (preprocessor) -U and -D options are processed in the order
dnl given rather than by type of option. Some compilers insist on apply all
dnl of the -U options after all of the -D options. Others allow mixing them,
dnl and may predefine symbols that conflict with those we define.
AC_DEFUN([CF_PROG_CC_U_D],
[
AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[
cf_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS"
AC_TRY_COMPILE([],[
#ifndef U_D_OPTIONS
make an undefined-error
#endif
#ifdef D_U_OPTIONS
make a defined-error
#endif
],[
cf_cv_cc_u_d_options=yes],[
cf_cv_cc_u_d_options=no])
CPPFLAGS="$cf_save_CPPFLAGS"
])
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18
dnl -----------
dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX.
AC_DEFUN([CF_PROG_EXT],
[
AC_REQUIRE([CF_CHECK_CACHE])
case $cf_cv_system_name in
os2*)
CFLAGS="$CFLAGS -Zmt"
CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
CXXFLAGS="$CXXFLAGS -Zmt"
# autoconf's macro sets -Zexe and suffix both, which conflict:w
LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
ac_cv_exeext=.exe
;;
esac
AC_EXEEXT
AC_OBJEXT
PROG_EXT="$EXEEXT"
AC_SUBST(PROG_EXT)
test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT")
])AC_DEFUN([CF_REGEX],
[
AC_MSG_CHECKING([for regular-expression headers])
AC_CACHE_VAL(cf_cv_regex,[
AC_TRY_LINK([ regex_t *p;
int x = regcomp(p, "", 0);
int y = regexec(p, "", 0, 0, 0);
regfree(p);
],[cf_cv_regex="regex.h"],[
AC_TRY_LINK([ char *p = compile("", "", "", 0);
int x = step("", "");
],[cf_cv_regex="regexp.h"],[
cf_save_LIBS="$LIBS"
LIBS="-lgen $LIBS"
AC_TRY_LINK([ char *p = compile("", "", "");
int x = step("", "");
],[cf_cv_regex="regexpr.h"],[LIBS="$cf_save_LIBS"])])])
])
AC_MSG_RESULT($cf_cv_regex)
case $cf_cv_regex in
regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;;
regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;;
regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;;
esac
])define([CF_REMOVE_DEFINE],
[
$1=`echo "$2" | \
sed -e 's/-[[UD]]$3\(=[[^ ]]*\)\?[[ ]]/ /g' \
-e 's/-[[UD]]$3\(=[[^ ]]*\)\?[$]//g'`
])AC_DEFUN([CF_SIGWINCH],
[
AC_CACHE_CHECK(if SIGWINCH is defined,cf_cv_define_sigwinch,[
AC_TRY_COMPILE([
],[int x = SIGWINCH],
[cf_cv_define_sigwinch=yes],
[AC_TRY_COMPILE([
],[int x = SIGWINCH],
[cf_cv_define_sigwinch=maybe],
[cf_cv_define_sigwinch=no])
])
])
if test "$cf_cv_define_sigwinch" = maybe ; then
AC_CACHE_CHECK(for actual SIGWINCH definition,cf_cv_fixup_sigwinch,[
cf_cv_fixup_sigwinch=unknown
cf_sigwinch=32
while test $cf_sigwinch != 1
do
AC_TRY_COMPILE([
],[
make an error
int x = SIGWINCH],
[cf_cv_fixup_sigwinch=$cf_sigwinch
break])
cf_sigwinch=`expr $cf_sigwinch - 1`
done
])
if test "$cf_cv_fixup_sigwinch" != unknown ; then
CPPFLAGS="$CPPFLAGS -DSIGWINCH=$cf_cv_fixup_sigwinch"
fi
fi
])AC_DEFUN([CF_SIG_ATOMIC_T],
[
AC_MSG_CHECKING(for signal global datatype)
AC_CACHE_VAL(cf_cv_sig_atomic_t,[
for cf_type in \
"volatile sig_atomic_t" \
"sig_atomic_t" \
"int"
do
AC_TRY_COMPILE([
extern $cf_type x;
$cf_type x;
static void handler(int sig)
{
x = 5;
}],
[signal(SIGINT, handler);
x = 1],
[cf_cv_sig_atomic_t=$cf_type],
[cf_cv_sig_atomic_t=no])
test "$cf_cv_sig_atomic_t" != no && break
done
])
AC_MSG_RESULT($cf_cv_sig_atomic_t)
test "$cf_cv_sig_atomic_t" != no && AC_DEFINE_UNQUOTED(SIG_ATOMIC_T, $cf_cv_sig_atomic_t)
])AC_DEFUN([CF_SIZE_T],
[
AC_MSG_CHECKING(for size_t in <sys/types.h> or <stdio.h>)
AC_CACHE_VAL(cf_cv_type_size_t,[
AC_TRY_COMPILE([
[size_t x],
[cf_cv_type_size_t=yes],
[cf_cv_type_size_t=no])
])
AC_MSG_RESULT($cf_cv_type_size_t)
test $cf_cv_type_size_t = no && AC_DEFINE(size_t, unsigned)
])AC_DEFUN([CF_STRUCT_LASTLOG],
[
AC_CHECK_HEADERS(lastlog.h)
AC_CACHE_CHECK(for struct lastlog,cf_cv_struct_lastlog,[
AC_TRY_RUN([
int main()
{
struct lastlog data;
return (sizeof(data.ll_time) != sizeof(time_t));
}],[
cf_cv_struct_lastlog=yes],[
cf_cv_struct_lastlog=no],[
cf_cv_struct_lastlog=unknown])])
test $cf_cv_struct_lastlog != no && AC_DEFINE(USE_STRUCT_LASTLOG)
])AC_DEFUN([CF_SVR4],
[
AC_CHECK_LIB(elf, elf_begin,[
AC_CACHE_CHECK(if this is an SVR4 system, cf_cv_svr4,[
AC_TRY_COMPILE([
],[
static struct termio d_tio;
d_tio.c_cc[VINTR] = 0;
d_tio.c_cc[VQUIT] = 0;
d_tio.c_cc[VERASE] = 0;
d_tio.c_cc[VKILL] = 0;
d_tio.c_cc[VEOF] = 0;
d_tio.c_cc[VEOL] = 0;
d_tio.c_cc[VMIN] = 0;
d_tio.c_cc[VTIME] = 0;
d_tio.c_cc[VLNEXT] = 0;
],
[cf_cv_svr4=yes],
[cf_cv_svr4=no])
])
])
test "$cf_cv_svr4" = yes && AC_DEFINE(SVR4)
])AC_DEFUN([CF_SYSV],
[
AC_CHECK_HEADERS( \
termios.h \
stdlib.h \
X11/Intrinsic.h \
)
AC_REQUIRE([CF_SYS_ERRLIST])
AC_CACHE_CHECK(if we should define SYSV,cf_cv_sysv,[
AC_TRY_COMPILE([
],[
static STRUCT_TERMIOS d_tio;
d_tio.c_cc[VINTR] = 0;
d_tio.c_cc[VQUIT] = 0;
d_tio.c_cc[VERASE] = 0;
d_tio.c_cc[VKILL] = 0;
d_tio.c_cc[VEOF] = 0;
d_tio.c_cc[VEOL] = 0;
d_tio.c_cc[VMIN] = 0;
d_tio.c_cc[VTIME] = 0;
sys_errlist[0] = ""; /* Cygwin mis-declares this */
],
[cf_cv_sysv=yes],
[cf_cv_sysv=no])
])
test "$cf_cv_sysv" = yes && AC_DEFINE(SYSV)
])AC_DEFUN([CF_SYSV_UTMP],
[
AC_CACHE_CHECK(if $cf_cv_have_utmp is SYSV flavor,cf_cv_sysv_utmp,[
test "$cf_cv_have_utmp" = "utmp" && cf_prefix="ut" || cf_prefix="utx"
AC_TRY_LINK([
struct $cf_cv_have_utmp x;
set${cf_prefix}ent ();
get${cf_prefix}id(&x);
put${cf_prefix}line(&x);
end${cf_prefix}ent();],
[cf_cv_sysv_utmp=yes],
[cf_cv_sysv_utmp=no])
])
test $cf_cv_sysv_utmp = yes && AC_DEFINE(USE_SYSV_UTMP)
])AC_DEFUN([CF_SYS_ERRLIST],
[
CF_CHECK_ERRNO(sys_nerr)
CF_CHECK_ERRNO(sys_errlist)
])AC_DEFUN([CF_TERMIO_C_ISPEED],
[
AC_CACHE_CHECK(for IRIX 6.5 baud-rate redefinitions,cf_cv_termio_c_ispeed,[
AC_TRY_COMPILE([
struct termio foo;
foo.c_ispeed = B38400;
foo.c_ospeed = B9600;
],[cf_cv_termio_c_ispeed=yes
],[cf_cv_termio_c_ispeed=no])
])
test "$cf_cv_termio_c_ispeed" = yes && AC_DEFINE(HAVE_TERMIO_C_ISPEED)
])AC_DEFUN([CF_TTY_GROUP],
[
AC_MSG_CHECKING(for explicit tty group name)
AC_ARG_WITH(tty-group,
[ --with-tty-group=XXX use XXX for the tty-group],
[cf_tty_group=$withval],
[cf_tty_group=auto...])
test -z "$cf_tty_group" && cf_tty_group=auto...
test "$cf_tty_group" = yes && cf_tty_group=auto...
AC_MSG_RESULT($cf_tty_group)
if test "$cf_tty_group" = "auto..." ; then
AC_CACHE_CHECK(for tty group name,cf_cv_tty_group_name,[
cf_uid=`id | sed -e 's/^[^=]*=//' -e 's/(.*$//'`
if test "$cf_uid" != 0 ; then
cf_cv_tty_group_name=
cf_tty_name=`tty`
test "$cf_tty_name" = "not a tty" && cf_tty_name=/dev/tty
test -z "$cf_tty_name" && cf_tty_name=/dev/tty
if test -c "$cf_tty_name"
then
cf_option="-l -L"
ls $cf_option $cf_tty_name >conftest.out
read cf_mode cf_links cf_usr cf_grp cf_size cf_date1 cf_date2 cf_date3 cf_rest <conftest.out
if test -z "$cf_rest" ; then
cf_option="$cf_option -g"
ls $cf_option $cf_tty_name >conftest.out
read cf_mode cf_links cf_usr cf_grp cf_size cf_date1 cf_date2 cf_date3 cf_rest <conftest.out
fi
rm -f conftest.out
cf_cv_tty_group_name=$cf_grp
fi
fi
if test -z "$cf_cv_tty_group_name"
then
case $host_os in osf*) cf_cv_tty_group_name="terminal"
;;
*)
cf_cv_tty_group_name="unknown"
if ( egrep '^tty:' /etc/group 2>/dev/null 1>/dev/null ) then
cf_cv_tty_group_name="tty"
fi
;;
esac
fi
])
cf_tty_group="$cf_cv_tty_group_name"
else
AC_DEFINE(USE_TTY_GROUP)
fi
AC_DEFINE_UNQUOTED(TTY_GROUP_NAME,"$cf_tty_group")
AC_CACHE_CHECK(if we may use the $cf_tty_group group,cf_cv_tty_group,[
cf_tty_name=`tty`
if test "$cf_tty_name" != "not a tty"
then
AC_TRY_RUN([
int main()
{
struct stat sb;
struct group *ttygrp = getgrnam(TTY_GROUP_NAME);
char *name = ttyname(0);
endgrent();
if (ttygrp != 0
&& name != 0
&& stat(name, &sb) == 0
&& sb.st_gid != getgid()
&& sb.st_gid == ttygrp->gr_gid) {
${cf_cv_main_return:-return} (0);
}
${cf_cv_main_return:-return} (1);
}
],
[cf_cv_tty_group=yes],
[cf_cv_tty_group=no],
[cf_cv_tty_group=unknown])
elif test "$cross_compiling" = yes; then
cf_cv_tty_group=unknown
else
cf_cv_tty_group=yes
fi
])
if test $cf_cv_tty_group = no ; then
AC_MSG_WARN(Cannot use $cf_tty_group group)
else
AC_DEFINE(USE_TTY_GROUP)
fi
])AC_DEFUN([CF_TYPE_FD_MASK],
[
AC_REQUIRE([CF_TYPE_FD_SET])
AC_CACHE_CHECK(for declaration of fd_mask,cf_cv_type_fd_mask,[
if test x$cf_cv_type_fd_set = xX11/Xpoll.h ; then
AC_TRY_COMPILE([
[CF_MSG_LOG(if we must define CSRG_BASED)
AC_TRY_COMPILE([
cf_cv_type_fd_mask=CSRG_BASED)])
else
cf_cv_type_fd_mask=$cf_cv_type_fd_set
fi
])
if test x$cf_cv_type_fd_mask = xCSRG_BASED ; then
AC_DEFINE(CSRG_BASED)
fi
])AC_DEFUN([CF_TYPE_FD_SET],
[
AC_CHECK_HEADERS(X11/Xpoll.h)
AC_CACHE_CHECK(for declaration of fd_set,cf_cv_type_fd_set,
[CF_MSG_LOG(sys/types alone)
AC_TRY_COMPILE([
[fd_set x],
[cf_cv_type_fd_set=sys/types.h],
[CF_MSG_LOG(X11/Xpoll.h)
AC_TRY_COMPILE([
[fd_set x],
[cf_cv_type_fd_set=X11/Xpoll.h],
[CF_MSG_LOG(sys/select.h)
AC_TRY_COMPILE([
[fd_set x],
[cf_cv_type_fd_set=sys/select.h],
[cf_cv_type_fd_set=unknown])])])])
if test $cf_cv_type_fd_set = sys/select.h ; then
AC_DEFINE(USE_SYS_SELECT_H)
fi
])
AC_DEFUN([CF_UPPER],
[
$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
])AC_DEFUN([CF_UTEMPTER],
[
AC_CACHE_CHECK(if we can link with utempter library,cf_cv_have_utempter,[
cf_save_LIBS="$LIBS"
LIBS="-lutempter $LIBS"
AC_TRY_LINK([
],[
addToUtmp("/dev/tty", 0, 1);
removeFromUtmp();
],[
cf_cv_have_utempter=yes],[
cf_cv_have_utempter=no])
LIBS="$cf_save_LIBS"
])
if test "$cf_cv_have_utempter" = yes ; then
AC_DEFINE(USE_UTEMPTER)
LIBS="-lutempter $LIBS"
fi
])AC_DEFUN([CF_UTMP],
[
AC_REQUIRE([CF_LASTLOG])
AC_CACHE_CHECK(for utmp implementation,cf_cv_have_utmp,[
cf_cv_have_utmp=no
for cf_header in utmpx utmp ; do
cf_utmp_includes="
"
AC_TRY_COMPILE([$cf_utmp_includes],
[struct $cf_header x;
char *name = x.ut_name; /* utmp.h and compatible definitions */
],
[cf_cv_have_utmp=$cf_header
break],
[
AC_TRY_COMPILE([$cf_utmp_includes],
[struct $cf_header x;
char *name = x.ut_user; /* utmpx.h must declare this */
],
[cf_cv_have_utmp=$cf_header
break
])])
done
])
if test $cf_cv_have_utmp != no ; then
AC_DEFINE(HAVE_UTMP)
test $cf_cv_have_utmp = utmpx && AC_DEFINE(UTMPX_FOR_UTMP)
CF_UTMP_UT_HOST
CF_UTMP_UT_SYSLEN
CF_UTMP_UT_NAME
CF_UTMP_UT_XSTATUS
CF_UTMP_UT_XTIME
CF_UTMP_UT_SESSION
CF_SYSV_UTMP
fi
])AC_DEFUN([CF_UTMP_GROUP],[
AC_REQUIRE([CF_UTMP])
if test $cf_cv_have_utmp != no ; then
AC_CACHE_CHECK(for utmp/utmpx group,cf_cv_utmp_group,[
for cf_utmp_path in /var/adm /var/run
do
for cf_utmp_file in utmpx utmp
do
if test -f $cf_utmp_path/$cf_utmp_file
then
cf_cv_utmp_group=root
cf_option="-l -L"
ls $cf_option $cf_utmp_path/$cf_utmp_file >conftest
read cf_mode cf_links cf_usr cf_grp cf_size cf_date1 cf_date2 cf_date3 cf_rest <conftest
if test -z "$cf_rest" ; then
cf_option="$cf_option -g"
ls $cf_option $cf_utmp_path/$cf_utmp_file >conftest
read cf_mode cf_links cf_usr cf_grp cf_size cf_date1 cf_date2 cf_date3 cf_rest <conftest
fi
rm -f conftest
if test -n "$cf_rest" ; then
cf_test=`echo "${cf_date2}${cf_date3}" | sed -e 's/[[0-9:]]//g'`
if test -z "$cf_test" ; then
cf_cv_utmp_group=$cf_grp;
fi
fi
break
fi
done
test -n "$cf_cv_utmp_group" && break
done
])
else
AC_MSG_ERROR(cannot find utmp group)
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_UTMP_UT_HOST version: 7 updated: 2007/03/13 19:17:11
dnl ---------------
dnl Check if UTMP/UTMPX struct defines ut_host member
AC_DEFUN([CF_UTMP_UT_HOST],
[
if test $cf_cv_have_utmp != no ; then
AC_MSG_CHECKING(if ${cf_cv_have_utmp}.ut_host is declared)
AC_CACHE_VAL(cf_cv_have_utmp_ut_host,[
AC_TRY_COMPILE([
#include <sys/types.h>
#include <${cf_cv_have_utmp}.h>],
[struct $cf_cv_have_utmp x; char *y = &x.ut_host[0]],
[cf_cv_have_utmp_ut_host=yes],
[cf_cv_have_utmp_ut_host=no])
])
AC_MSG_RESULT($cf_cv_have_utmp_ut_host)
test $cf_cv_have_utmp_ut_host != no && AC_DEFINE(HAVE_UTMP_UT_HOST)
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_UTMP_UT_NAME version: 4 updated: 2007/03/13 19:17:11
dnl ---------------
dnl Check if UTMP/UTMPX struct defines ut_name member
AC_DEFUN([CF_UTMP_UT_NAME],
[
if test $cf_cv_have_utmp != no ; then
AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_name is declared,cf_cv_have_utmp_ut_name,[
cf_cv_have_utmp_ut_name=no
cf_utmp_includes="
#include <sys/types.h>
#include <${cf_cv_have_utmp}.h>
#define getutent getutxent
#ifdef USE_LASTLOG
#include <lastlog.h> /* may conflict with utmpx.h on Linux */
#endif
"
for cf_header in ut_name ut_user ; do
AC_TRY_COMPILE([$cf_utmp_includes],
[struct $cf_cv_have_utmp x;
char *name = x.$cf_header;
],
[cf_cv_have_utmp_ut_name=$cf_header
break])
done
])
case $cf_cv_have_utmp_ut_name in #(vi
no) #(vi
AC_MSG_ERROR(Cannot find declaration for ut.ut_name)
;;
ut_user)
AC_DEFINE(ut_name,ut_user)
;;
esac
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_UTMP_UT_SESSION version: 5 updated: 2007/03/13 19:17:11
dnl ------------------
dnl Check if UTMP/UTMPX struct defines ut_session member
AC_DEFUN([CF_UTMP_UT_SESSION],
[
if test $cf_cv_have_utmp != no ; then
AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_session is declared, cf_cv_have_utmp_ut_session,[
AC_TRY_COMPILE([
#include <sys/types.h>
#include <${cf_cv_have_utmp}.h>],
[struct $cf_cv_have_utmp x; long y = x.ut_session],
[cf_cv_have_utmp_ut_session=yes],
[cf_cv_have_utmp_ut_session=no])
])
if test $cf_cv_have_utmp_ut_session != no ; then
AC_DEFINE(HAVE_UTMP_UT_SESSION)
fi
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_UTMP_UT_SYSLEN version: 1 updated: 2008/01/25 17:18:00
dnl -----------------
dnl Check if UTMP/UTMPX struct defines ut_syslen member
AC_DEFUN([CF_UTMP_UT_SYSLEN],
[
if test $cf_cv_have_utmp != no ; then
AC_MSG_CHECKING(if ${cf_cv_have_utmp}.ut_syslen is declared)
AC_CACHE_VAL(cf_cv_have_utmp_ut_syslen,[
AC_TRY_COMPILE([
#include <sys/types.h>
#include <${cf_cv_have_utmp}.h>],
[struct $cf_cv_have_utmp x; int y = x.ut_syslen],
[cf_cv_have_utmp_ut_syslen=yes],
[cf_cv_have_utmp_ut_syslen=no])
])
AC_MSG_RESULT($cf_cv_have_utmp_ut_syslen)
test $cf_cv_have_utmp_ut_syslen != no && AC_DEFINE(HAVE_UTMP_UT_SYSLEN)
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_UTMP_UT_XSTATUS version: 3 updated: 2001/12/27 12:55:07
dnl ------------------
dnl Check for known variants on the UTMP/UTMPX struct's exit-status as reported
AC_DEFUN([CF_UTMP_UT_XSTATUS],
[
if test $cf_cv_have_utmp != no ; then
AC_CACHE_CHECK(for exit-status in $cf_cv_have_utmp,cf_cv_have_utmp_ut_xstatus,[
for cf_result in \
ut_exit.__e_exit \
ut_exit.e_exit \
ut_exit.ut_e_exit \
ut_exit.ut_exit
do
AC_TRY_COMPILE([
[struct $cf_cv_have_utmp x; long y = x.$cf_result = 0],
[cf_cv_have_utmp_ut_xstatus=$cf_result
break],
[cf_cv_have_utmp_ut_xstatus=no])
done
])
if test $cf_cv_have_utmp_ut_xstatus != no ; then
AC_DEFINE(HAVE_UTMP_UT_XSTATUS)
AC_DEFINE_UNQUOTED(ut_xstatus,$cf_cv_have_utmp_ut_xstatus)
fi
fi
])AC_DEFUN([CF_UTMP_UT_XTIME],
[
if test $cf_cv_have_utmp != no ; then
AC_CACHE_CHECK(if ${cf_cv_have_utmp}.ut_xtime is declared, cf_cv_have_utmp_ut_xtime,[
AC_TRY_COMPILE([
[struct $cf_cv_have_utmp x; long y = x.ut_xtime = 0],
[cf_cv_have_utmp_ut_xtime=yes],
[AC_TRY_COMPILE([
[struct $cf_cv_have_utmp x; long y = x.ut_tv.tv_sec],
[cf_cv_have_utmp_ut_xtime=define],
[cf_cv_have_utmp_ut_xtime=no])
])
])
if test $cf_cv_have_utmp_ut_xtime != no ; then
AC_DEFINE(HAVE_UTMP_UT_XTIME)
if test $cf_cv_have_utmp_ut_xtime = define ; then
AC_DEFINE(ut_xtime,ut_tv.tv_sec)
fi
fi
fi
])AC_DEFUN([CF_VERBOSE],
[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG
CF_MSG_LOG([$1])
])AC_DEFUN([CF_WITH_IMAKE_CFLAGS],[
AC_REQUIRE([CF_ENABLE_NARROWPROTO])
AC_MSG_CHECKING(if we should use imake to help)
CF_ARG_DISABLE(imake,
[ --disable-imake disable use of imake for definitions],
[enable_imake=no],
[enable_imake=yes])
AC_MSG_RESULT($enable_imake)
if test "$enable_imake" = yes ; then
CF_IMAKE_CFLAGS(ifelse($1,,,$1))
fi
if test -n "$IMAKE" && test -n "$IMAKE_CFLAGS" ; then
CF_ADD_CFLAGS($IMAKE_CFLAGS)
else
IMAKE_CFLAGS=
IMAKE_LOADFLAGS=
CF_VERBOSE(make fallback definitions)
case $host_os in
*[[0-9]].[[0-9]]*)
UNAME_RELEASE="$host_os"
;;
*)
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
;;
esac
case .$UNAME_RELEASE in
*[[0-9]].[[0-9]]*)
OSMAJORVERSION=`echo "$UNAME_RELEASE" |sed -e 's/^[[^0-9]]*//' -e 's/\..*//'`
OSMINORVERSION=`echo "$UNAME_RELEASE" |sed -e 's/^[[^0-9]]*//' -e 's/^[[^.]]*\.//' -e 's/\..*//' -e 's/[[^0-9]].*//' `
test -z "$OSMAJORVERSION" && OSMAJORVERSION=1
test -z "$OSMINORVERSION" && OSMINORVERSION=0
IMAKE_CFLAGS="-DOSMAJORVERSION=$OSMAJORVERSION -DOSMINORVERSION=$OSMINORVERSION $IMAKE_CFLAGS"
;;
esac
IMAKE_CFLAGS="-DFUNCPROTO=15 $IMAKE_CFLAGS"
if test "$enable_narrowproto" = yes ; then
IMAKE_CFLAGS="-DNARROWPROTO=1 $IMAKE_CFLAGS"
fi
case $host_os in
aix*)
IMAKE_CFLAGS="-DAIXV3 -DAIXV4 $IMAKE_CFLAGS"
;;
irix[[56]].*) IMAKE_CFLAGS="-DSYSV -DSVR4 $IMAKE_CFLAGS"
;;
esac
CF_ADD_CFLAGS($IMAKE_CFLAGS)
AC_SUBST(IMAKE_CFLAGS)
AC_SUBST(IMAKE_LOADFLAGS)
fi
])AC_DEFUN([CF_WITH_PATH],
[AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),,
ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))if ifelse($5,,true,[test -n "$5"]) ; then
CF_PATH_SYNTAX(withval)
fi
$3="$withval"
AC_SUBST($3)])AC_DEFUN([CF_WITH_PCRE],
[
AC_MSG_CHECKING(if you want to use PCRE for regular-expressions)
AC_ARG_WITH(pcre,
[ --with-pcre use PCRE for regular-expressions])
test -z "$with_pcre" && with_pcre=no
AC_MSG_RESULT($with_pcre)
if test "$with_pcre" != no ; then
AC_CHECK_LIB(pcre,pcre_compile,
[AC_CHECK_HEADER(pcreposix.h,
[AC_CHECK_LIB(pcreposix,pcreposix_regcomp,
[AC_DEFINE(HAVE_LIB_PCRE)
AC_DEFINE(HAVE_PCREPOSIX_H)
LIBS="-lpcreposix -lpcre $LIBS"],
AC_MSG_ERROR(Cannot find PCRE POSIX library),
"-lpcre")],
AC_MSG_ERROR(Cannot find PCRE POSIX header))],
AC_MSG_ERROR(Cannot find PCRE library))
fi
])AC_DEFUN([CF_XKB_BELL_EXT],[
AC_CACHE_CHECK(for XKB Bell extension, cf_cv_xkb_bell_ext,[
AC_TRY_LINK([
],[
int x = XkbBI_Info
|XkbBI_MinorError
|XkbBI_MajorError
|XkbBI_TerminalBell
|XkbBI_MarginBell;
],[cf_cv_xkb_bell_ext=yes],[cf_cv_xkb_bell_ext=no])
])
test "$cf_cv_xkb_bell_ext" = yes && AC_DEFINE(HAVE_XKB_BELL_EXT)
])
AC_DEFUN([CF_XOPEN_SOURCE],[
AC_REQUIRE([CF_PROG_CC_U_D])
cf_XOPEN_SOURCE=ifelse($1,,500,$1)
cf_POSIX_C_SOURCE=ifelse($2,,199506L,$2)
case $host_os in aix[[456]]*) CPPFLAGS="$CPPFLAGS -D_ALL_SOURCE"
;;
freebsd*|dragonfly*) cf_POSIX_C_SOURCE=200112L
cf_XOPEN_SOURCE=600
CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
;;
hpux*) CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE"
;;
irix[[56]].*) CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE"
;;
linux*|gnu*|mint*|k*bsd*-gnu) CF_GNU_SOURCE
;;
mirbsd*) ;;
netbsd*) ;;
openbsd*) ;;
osf[[45]]*) CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE"
;;
nto-qnx*) CPPFLAGS="$CPPFLAGS -D_QNX_SOURCE"
;;
sco*) ;;
solaris*) CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__"
;;
*)
AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
AC_TRY_COMPILE([make an error
[cf_cv_xopen_source=no],
[cf_save="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
AC_TRY_COMPILE([make an error
[cf_cv_xopen_source=no],
[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
CPPFLAGS="$cf_save"
])
])
if test "$cf_cv_xopen_source" != no ; then
CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
test "$cf_cv_cc_u_d_options" = yes && \
CPPFLAGS="$CPPFLAGS -U_XOPEN_SOURCE"
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_cv_xopen_source"
fi
CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
;;
esac
])
AC_DEFUN([CF_X_ATHENA],
[AC_REQUIRE([CF_X_TOOLKIT])
cf_x_athena=${cf_x_athena-Xaw}
AC_MSG_CHECKING(if you want to link with Xaw 3d library)
withval=
AC_ARG_WITH(Xaw3d,
[ --with-Xaw3d link with Xaw 3d library])
if test "$withval" = yes ; then
cf_x_athena=Xaw3d
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING(if you want to link with neXT Athena library)
withval=
AC_ARG_WITH(neXtaw,
[ --with-neXtaw link with neXT Athena library])
if test "$withval" = yes ; then
cf_x_athena=neXtaw
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING(if you want to link with Athena-Plus library)
withval=
AC_ARG_WITH(XawPlus,
[ --with-XawPlus link with Athena-Plus library])
if test "$withval" = yes ; then
cf_x_athena=XawPlus
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_CHECK_LIB(Xext,XextCreateExtension,
[LIBS="-lXext $LIBS"])
cf_x_athena_lib=""
CF_X_ATHENA_CPPFLAGS($cf_x_athena)
CF_X_ATHENA_LIBS($cf_x_athena)
])AC_DEFUN([CF_X_ATHENA_CPPFLAGS],
[
cf_x_athena_root=ifelse($1,,Xaw,$1)
cf_x_athena_include=""
for cf_path in default \
/usr/contrib/X11R6 \
/usr/contrib/X11R5 \
/usr/lib/X11R5 \
/usr/local
do
if test -z "$cf_x_athena_include" ; then
cf_save="$CPPFLAGS"
cf_test=X11/$cf_x_athena_root/SimpleMenu.h
if test $cf_path != default ; then
CPPFLAGS="$cf_save -I$cf_path/include"
AC_MSG_CHECKING(for $cf_test in $cf_path)
else
AC_MSG_CHECKING(for $cf_test)
fi
AC_TRY_COMPILE([
[cf_result=yes],
[cf_result=no])
AC_MSG_RESULT($cf_result)
if test "$cf_result" = yes ; then
cf_x_athena_include=$cf_path
break
else
CPPFLAGS="$cf_save"
fi
fi
done
if test -z "$cf_x_athena_include" ; then
AC_MSG_WARN(
[Unable to successfully find Athena header files with test program])
elif test "$cf_x_athena_include" != default ; then
CPPFLAGS="$CPPFLAGS -I$cf_x_athena_include"
fi
])
AC_DEFUN([CF_X_ATHENA_LIBS],
[AC_REQUIRE([CF_X_TOOLKIT])
cf_x_athena_root=ifelse($1,,Xaw,$1)
cf_x_athena_lib=""
for cf_path in default \
/usr/contrib/X11R6 \
/usr/contrib/X11R5 \
/usr/lib/X11R5 \
/usr/local
do
for cf_lib in \
"-l$cf_x_athena_root -lXmu" \
"-l$cf_x_athena_root -lXpm -lXmu" \
"-l${cf_x_athena_root}_s -lXmu_s"
do
if test -z "$cf_x_athena_lib" ; then
cf_save="$LIBS"
cf_test=XawSimpleMenuAddGlobalActions
if test $cf_path != default ; then
LIBS="-L$cf_path/lib $cf_lib $LIBS"
AC_MSG_CHECKING(for $cf_lib in $cf_path)
else
LIBS="$cf_lib $LIBS"
AC_MSG_CHECKING(for $cf_test in $cf_lib)
fi
AC_TRY_LINK([],[$cf_test()],
[cf_result=yes],
[cf_result=no])
AC_MSG_RESULT($cf_result)
if test "$cf_result" = yes ; then
cf_x_athena_lib="$cf_lib"
break
fi
LIBS="$cf_save"
fi
done
done
if test -z "$cf_x_athena_lib" ; then
AC_MSG_ERROR(
[Unable to successfully link Athena library (-l$cf_x_athena_root) with test program])
fi
CF_UPPER(cf_x_athena_LIBS,HAVE_LIB_$cf_x_athena)
AC_DEFINE_UNQUOTED($cf_x_athena_LIBS)
])
AC_DEFUN([CF_X_FREETYPE],
[
AC_REQUIRE([CF_PKG_CONFIG])
cf_extra_freetype_libs=
FREETYPE_CONFIG=none
FREETYPE_PARAMS=
AC_MSG_CHECKING(if you specified -D/-I options for FreeType)
AC_ARG_WITH(freetype-cflags,
[ --with-freetype-cflags -D/-I options for compiling with FreeType],
[cf_cv_x_freetype_incs="$with_freetype_cflags"],
[cf_cv_x_freetype_incs=no])
AC_MSG_RESULT($cf_cv_x_freetype_incs)
AC_MSG_CHECKING(if you specified -L/-l options for FreeType)
AC_ARG_WITH(freetype-libs,
[ --with-freetype-libs -L/-l options to link FreeType],
[cf_cv_x_freetype_libs="$with_freetype_libs"],
[cf_cv_x_freetype_libs=no])
AC_MSG_RESULT($cf_cv_x_freetype_libs)
if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xft; then
FREETYPE_CONFIG=$PKG_CONFIG
FREETYPE_PARAMS=xft
else
AC_PATH_PROG(FREETYPE_XFT_CONFIG, xft-config, none)
if test "$FREETYPE_XFT_CONFIG" != none; then
FREETYPE_CONFIG=$FREETYPE_XFT_CONFIG
else
cf_extra_freetype_libs="-lXft"
AC_PATH_PROG(FREETYPE_OLD_CONFIG, freetype-config, none)
if test "$FREETYPE_OLD_CONFIG" != none; then
FREETYPE_CONFIG=$FREETYPE_OLD_CONFIG
fi
fi
fi
AC_MSG_CHECKING(for FreeType config)
AC_MSG_RESULT($FREETYPE_CONFIG $FREETYPE_PARAMS)
if test "$FREETYPE_CONFIG" != none ; then
if test "$cf_cv_x_freetype_incs" = no ; then
AC_MSG_CHECKING(for $FREETYPE_CONFIG cflags)
cf_cv_x_freetype_incs="`$FREETYPE_CONFIG $FREETYPE_PARAMS --cflags 2>/dev/null`"
AC_MSG_RESULT($cf_cv_x_freetype_incs)
fi
if test "$cf_cv_x_freetype_libs" = no ; then
AC_MSG_CHECKING(for $FREETYPE_CONFIG libs)
cf_cv_x_freetype_libs="$cf_extra_freetype_libs `$FREETYPE_CONFIG $FREETYPE_PARAMS --libs 2>/dev/null`"
AC_MSG_RESULT($cf_cv_x_freetype_libs)
fi
fi
if test "$cf_cv_x_freetype_incs" = no ; then
cf_cv_x_freetype_incs=
fi
if test "$cf_cv_x_freetype_libs" = no ; then
cf_cv_x_freetype_libs=-lXft
fi
AC_MSG_CHECKING(if we can link with FreeType libraries)
cf_save_LIBS="$LIBS"
cf_save_INCS="$CPPFLAGS"
LIBS="$cf_cv_x_freetype_libs $LIBS"
CPPFLAGS="$CPPFLAGS $cf_cv_x_freetype_incs"
AC_TRY_LINK([
XftPattern *pat = XftNameParse ("name");],
[cf_cv_found_freetype=yes],
[cf_cv_found_freetype=no])
AC_MSG_RESULT($cf_cv_found_freetype)
LIBS="$cf_save_LIBS"
CPPFLAGS="$cf_save_INCS"
if test "$cf_cv_found_freetype" = yes ; then
LIBS="$cf_cv_x_freetype_libs $LIBS"
CF_ADD_CFLAGS($cf_cv_x_freetype_incs)
AC_DEFINE(XRENDERFONT)
AC_CHECK_FUNCS( \
XftDrawCharSpec \
XftDrawSetClip \
XftDrawSetClipRectangles \
)
else
AC_MSG_WARN(No libraries found for FreeType)
CPPFLAGS=`echo "$CPPFLAGS" | sed -e s/-DXRENDERFONT//`
fi
AC_SUBST(XRENDERFONT)
AC_SUBST(HAVE_TYPE_FCCHAR32)
AC_SUBST(HAVE_TYPE_XFTCHARSPEC)
])
AC_DEFUN([CF_X_TOOLKIT],
[
AC_REQUIRE([AC_PATH_XTRA])
AC_REQUIRE([CF_CHECK_CACHE])
cf_have_X_LIBS=no
LDFLAGS="$X_LIBS $LDFLAGS"
CF_CHECK_CFLAGS($X_CFLAGS)
AC_CHECK_FUNC(XOpenDisplay,,[
AC_CHECK_LIB(X11,XOpenDisplay,
[LIBS="-lX11 $LIBS"],,
[$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
AC_CHECK_FUNC(XtAppInitialize,,[
AC_CHECK_LIB(Xt, XtAppInitialize,
[AC_DEFINE(HAVE_LIBXT)
cf_have_X_LIBS=Xt
LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"],,
[$X_PRE_LIBS $LIBS $X_EXTRA_LIBS])])
if test $cf_have_X_LIBS = no ; then
AC_MSG_WARN(
[Unable to successfully link X Toolkit library (-lXt) with
test program. You will have to check and add the proper libraries by hand
to makefile.])
fi
])