dnl# $Id$ AC_INIT(src/feature.h) AM_INIT_AUTOMAKE(Eterm, 0.9.1) dnl# Set some basic variables DATE="`date '+%d %B %Y'`" AC_SUBST(DATE) AUTHORS="Michael Jennings (mej@eterm.org) " AC_SUBST(AUTHORS) AC_DEFINE_UNQUOTED(AUTHORS, "$AUTHORS") dnl# Supply default CFLAGS, if not specified by `CFLAGS=flags ./configure' if test ! -z "${CFLAGS}" -o ! -z "${CCOPTS}"; then CFLAGS_GIVEN=1 else CFLAGS_GIVEN=0 fi if test -z "${CFLAGS}"; then if test -z "${CCOPTS}"; then CCOPTS="-O" fi CFLAGS="$CCOPTS" fi AC_ARG_WITH(cc, [ --with-cc=compiler force Eterm to build with a particular compiler (like pgcc, egcs, etc.)], CC=$withval, if test -z "$CC"; then CC=check fi ) if test "$CC" = "check"; then dnl# Check for Pentium compiler AC_CHECK_PROG(PGCC, pgcc, pgcc) if test ! -z "$PGCC"; then CC=$PGCC else unset CC fi fi AC_PROG_CC AC_PROG_CPP dnl# These must be run after AC_PROG_CC but before any other macros that use dnl# the C compiler AC_AIX AC_ISC_POSIX AC_MINIX dnl# At least make the attempt to support CygWin32 AC_CYGWIN AC_ARG_PROGRAM AM_PROG_LIBTOOL dnl# Where are we? AC_MSG_CHECKING(for distribution root) DIST_ROOT=`pwd` AC_SUBST(DIST_ROOT) AC_MSG_RESULT($DIST_ROOT) AC_GCC_TRADITIONAL dnl # If using gcc, use -O2. If -g works with it, use that too if test "${CFLAGS_GIVEN}" -ne 1; then if test "$GCC" = "yes"; then if test "$ac_cv_prog_cc_g" = "yes"; then CCOPTS='-g -O2' else CCOPTS='-O2' fi CFLAGS="$CCOPTS" fi fi AC_PROG_INSTALL dnl# Check for host system type AC_CANONICAL_HOST dnl# Check the sanity of what we've done so far AM_SANITY_CHECK dnl# Most people don't want the developer-only clutter AM_MAINTAINER_MODE dnl# If it's there, what the hell? AM_WITH_DMALLOC dnl# Look for needed programs AC_CHECK_PROG(SED, sed, sed, false) AC_CHECK_PROG(RM, rm, rm, true) AC_CHECK_PROG(CP, cp, cp, false) AC_CHECK_PROG(CHMOD, chmod, chmod, true) AC_CHECK_PROG(TAR, tar, tar, tar) AC_CHECK_PROG(MKDIR, mkdir, mkdir, false) AC_CHECK_PROG(CTAGS, ctags, ctags, true) AC_CHECK_PROG(AR, ar, ar, false) AC_CHECK_PROG(MV, mv, mv, true) AC_CHECK_PROG(TIC, tic, tic, true) AC_LN_S AC_PATH_PROG(PERL, perl, /usr/bin/perl, $PATH:/usr/bin:/bin:/usr/local/bin:/usr/ccs/bin:/usr/contrib/bin) AC_PATH_PROG(AWK, awk, /usr/bin/awk, $PATH:/usr/bin:/bin:/usr/local/bin:/usr/ccs/bin:/usr/contrib/bin) export PERL AWK AC_CHECK_SIZEOF(int, 4) AC_CHECK_SIZEOF(long, 4) AC_CHECK_SIZEOF(void *, 4) AC_CHECK_SIZEOF(long long, 8) dnl AC_C_BIGENDIAN AC_C_CONST AC_C_INLINE AC_PATH_XTRA if test "$ac_cv_lib_socket_connect" = "yes" ; then SUBLIBS="-lsocket" fi if test "$ac_cv_lib_nsl_gethostbyname" = "yes" ; then SUBLIBS="$SUBLIBS -lnsl" fi dnl# Checks for header files. AC_HEADER_SYS_WAIT AC_CHECK_HEADERS(fcntl.h termios.h \ sys/ioctl.h sys/select.h sys/time.h \ sys/sockio.h sys/byteorder.h \ utmpx.h unistd.h bsd/signal.h regex.h \ regexp.h stdarg.h X11/Xmu/Atoms.h) AC_HEADER_TIME dnl# Missing typedefs and replacements AC_TYPE_MODE_T AC_CHECK_TYPE(off_t, long) AC_TYPE_PID_T AC_TYPE_UID_T dnl# Checks for library functions. AC_TYPE_SIGNAL AC_CHECK_FUNCS(atexit _exit unsetenv setutent seteuid memmove putenv strsep setresuid setresgid memmem usleep snprintf) dps_snprintf_oflow() dnl# Check for the need for -lutil on BSD systems AC_CHECK_FUNC(login, AC_DEFINE(HAVE_LOGIN) , AC_CHECK_LIB(util, login, LIBS="$LIBS -lutil" ; AC_DEFINE(HAVE_LOGIN) )) AC_CHECK_FUNC(logout, AC_DEFINE(HAVE_LOGOUT) , AC_CHECK_LIB(util, logout, LIBS="$LIBS -lutil" ; AC_DEFINE(HAVE_LOGOUT) )) AC_CHECK_FUNC(getpwuid, , AC_CHECK_LIB(sun, getpwuid, LIBS="$LIBS -lsun")) dnl# dnl# Utility stuff dnl# dnl# Did they want debugging? AC_MSG_CHECKING(for debugging level) AC_ARG_WITH(debugging, [ --with-debugging[=num] enable debugging output, num is an optional level], if test "$withval" = "yes"; then withval=4 else : fi if test "$withval" != "no"; then echo "$withval" AC_DEFINE_UNQUOTED(DEBUG, $withval) else echo "no debugging" fi, echo "4" AC_DEFINE_UNQUOTED(DEBUG, 4) ) AC_CHECK_FUNC(ptsname, HAVE_PTSNAME=yes ) AC_CHECK_FUNC(grantpt, HAVE_GRANTPT=yes ) AC_CHECK_FUNC(unlockpt, HAVE_UNLOCKPT=yes ) dnl# Check for the appropriate pty mechanism AC_MSG_CHECKING(for pty mechanism) PTY_MECH="" if test -c /dev/ptc ; then AC_DEFINE(HAVE_DEV_PTC) PTY_MECH="AIX $PTY_MECH" fi if test -r /dev/ptmx -a ! -z "$HAVE_PTSNAME" -a ! -z "$HAVE_GRANTPT" -a ! -z "$HAVE_UNLOCKPT"; then AC_DEFINE(HAVE_DEV_PTMX) PTY_MECH="SVR4 $PTY_MECH" fi if test -c /dev/ptyp128 ; then AC_DEFINE(HAVE_SCO_PTYS) PTY_MECH="SCO $PTY_MECH" fi if test "X$PTY_MECH" = "X"; then AC_MSG_RESULT(generic pty's only) else AC_MSG_RESULT($PTY_MECH) fi AC_MSG_CHECKING(for pty group) AC_ARG_WITH(pty-group, [ --with-pty-group[=gid] specify the group that should own pty files], if test "$withval" = "yes"; then PTY_GRP_NAME=`ls -1l /dev/pty* 2>/dev/null | head -n 1 | awk '{print $4}'` if test ! -z "$PTY_GRP_NAME"; then AC_MSG_RESULT($PTY_GRP_NAME) AC_DEFINE_UNQUOTED(PTY_GRP_NAME, "$PTY_GRP_NAME") else AC_MSG_RESULT(unable to determine. This feature will not be enabled.) fi elif test "$withval" = "no"; then AC_MSG_RESULT(none) else AC_MSG_RESULT($withval) AC_DEFINE_UNQUOTED(PTY_GRP_NAME, "$withval") fi , PTY_GRP_NAME=`ls -1l /dev/pty* 2>/dev/null | head -n 1 | awk '{print $4}'` if test ! -z "$PTY_GRP_NAME"; then AC_MSG_RESULT($PTY_GRP_NAME) AC_DEFINE_UNQUOTED(PTY_GRP_NAME, "$PTY_GRP_NAME") else AC_MSG_RESULT(none) fi ) dnl# dnl# FEATURES dnl# AC_MSG_CHECKING(if Pablo support is wanted) AC_ARG_WITH(pablo, [ --with-pablo[=DIR] compile with Pablo I/O Tracing support (using Pablo prefix DIR)], if test "$withval" != "no"; then AC_MSG_RESULT(yes) if test "$withval" != "yes"; then CPPFLAGS="$CPPFLAGS -I${withval}/include" LDFLAGS="$LDFLAGS -L${withval}/lib" fi AC_CHECK_HEADER(IOTrace.h, AC_CHECK_LIB(PabloTraceExt, initIOTrace, AC_DEFINE(IOTRACE) LIBS="$LIBS -lPabloTraceExt -lPabloTrace" echo "Pablo support enabled. Headers in ${withval}/include. Libraries in ${withval}/lib." , echo "*** ERROR: Pablo support was requested but the Pablo libraries could not be" echo "*** found. Please check config.log for further information." echo "*** Pablo support will NOT be included." , -lPabloTrace) , echo "*** ERROR: Pablo support was requested but the Pablo header files could not be" echo "*** found. Please check the value you passed to --with-pablo." echo "*** Pablo support will NOT be included.") else AC_MSG_RESULT(no) fi, AC_MSG_RESULT(no) ) AC_MSG_CHECKING(if profiling macros should be included) AC_ARG_ENABLE(profile, [ --enable-profile compile with code profiling macros enabled], if test "$enableval" = "yes"; then AC_MSG_RESULT(yes) AC_DEFINE(ENABLE_PROFILE) else AC_MSG_RESULT(no) fi, AC_MSG_RESULT(no) ) AC_MSG_CHECKING(for pixmap support) AC_ARG_WITH(imlib, [ --with-imlib[=DIR] compile with Imlib support (Imlib residing in DIR/lib) (default)], if test "$withval" != "no"; then AC_MSG_RESULT(yes) CFLAGS="$CFLAGS -I${withval}/include -L${withval}/lib" GRLIBS="-lImlib" AC_DEFINE(PIXMAP_SUPPORT) AC_DEFINE(BACKING_STORE) else AC_MSG_RESULT(no) GRLIBS="" fi, AC_MSG_RESULT(yes) GRLIBS="-lImlib" AC_DEFINE(PIXMAP_SUPPORT) AC_DEFINE(BACKING_STORE) ) AC_MSG_CHECKING(for transparency support) AC_ARG_ENABLE(trans, [ --enable-trans[=imlib] compile with transparency support (\"=imlib\" will use Imlib instead of Xlib for transparency)], if test "$enableval" = "imlib"; then AC_MSG_RESULT(yes, using Imlib) AC_DEFINE(PIXMAP_OFFSET) AC_DEFINE(IMLIB_TRANS) elif test "$enableval" != "no"; then AC_MSG_RESULT(yes) AC_DEFINE(PIXMAP_OFFSET) else AC_MSG_RESULT(no) fi, AC_MSG_RESULT(yes) AC_DEFINE(PIXMAP_OFFSET) ) AC_MSG_CHECKING(for utmp support) AC_ARG_ENABLE(utmp, [ --enable-utmp compile with utmp support], if test "$enableval" != "no"; then AC_MSG_RESULT(yes) UTMP=1 AC_DEFINE(UTMP_SUPPORT) else AC_MSG_RESULT(no) UTMP=0 fi, AC_MSG_RESULT(yes) AC_DEFINE(UTMP_SUPPORT) UTMP=1 ) if test $UTMP -eq 1; then AC_CHECK_LIB(utempter, addToUtmp, AC_DEFINE(HAVE_UTEMPTER) LIBS="$LIBS -lutempter" ) fi AC_MSG_CHECKING(for backspace key configuration) AC_ARG_WITH(backspace, [ --with-backspace=KEY force backspace to send KEY (KEY is either \"bs\" for ^H or \"del\" for ^?)], if test "$withval" = "bs"; then AC_MSG_RESULT(forcing Backspace to send Ctrl-H) AC_DEFINE(FORCE_BACKSPACE) elif test "$withval" = "del"; then AC_MSG_RESULT(forcing Backspace to send Ctrl-?) AC_DEFINE(FORCE_DELETE) else AC_MSG_RESULT(default) fi, AC_MSG_RESULT(default) ) AC_MSG_CHECKING(for delete key configuration) AC_ARG_WITH(delete, [ --with-delete=SETTING force delete to SETTING (\"server\" to use the X server value always, \"execute\" to send the old default execute escape sequence, or a quoted string to use a specific string)], if test "$withval" = "server"; then AC_MSG_RESULT(X server value) AC_DEFINE(NO_DELETE_KEY) elif test "$withval" = "no"; then AC_MSG_RESULT(X server value) AC_DEFINE(NO_DELETE_KEY) elif test "$withval" = "execute"; then AC_MSG_RESULT(send execute sequence) else AC_MSG_RESULT(forcing Delete to send "$withval") AC_DEFINE_UNQUOTED(KS_DELETE, "$withval") fi, AC_MSG_RESULT(default) AC_DEFINE_UNQUOTED(KS_DELETE, "\177") ) XTERM_HOME="\033\133H" LINUX_HOME="\033\1331~" AC_MSG_CHECKING(for home key configuration) AC_ARG_WITH(home, [ --with-home=SEQUENCE specify which sequence to use for the Home key ("xterm", "linux", or "vt102")], if test "$withval" = "xterm"; then AC_MSG_RESULT(emulate xterm) AC_DEFINE_UNQUOTED(KS_HOME, "$XTERM_HOME") elif test "$withval" = "linux"; then AC_MSG_RESULT(emulate linux console/vt220) AC_DEFINE_UNQUOTED(KS_HOME, "$LINUX_HOME") else AC_MSG_RESULT(default vt102) fi, AC_MSG_RESULT(default) ) XTERM_END="\033\133F" LINUX_END="\033\1334~" AC_MSG_CHECKING(for end key configuration) AC_ARG_WITH(end, [ --with-end=SEQUENCE specify which sequence to use for the End key ("xterm", "linux", or "vt102")], if test "$withval" = "xterm"; then AC_MSG_RESULT(emulate xterm) AC_DEFINE_UNQUOTED(KS_END, "$XTERM_END") elif test "$withval" = "linux"; then AC_MSG_RESULT(emulate linux console/vt220) AC_DEFINE_UNQUOTED(KS_END, "$LINUX_END") else AC_MSG_RESULT(default vt102) fi, AC_MSG_RESULT(default) ) MULTICHAR_ENCODING="" AC_MSG_CHECKING(for multi-charset support) AC_ARG_ENABLE(multi-charset, [ --enable-multi-charset compile with multi-charset support], if test "$enableval" = "yes" -o "$enableval" = "kanji"; then AC_MSG_RESULT(kanji) AC_DEFINE(MULTI_CHARSET) DEF_FONT_IDX=0 MULTICHAR_ENCODING="eucj" FONT0="fixed" FONT1="8x16" FONT2="9x18" FONT3="12x24" FONT4="13x26" MFONT0="k14" MFONT1="jiskan16" MFONT2="jiskan18" MFONT3="jiskan24" MFONT4="jiskan26" elif test "$enableval" = "euc-kr" -o "$enableval" = "euckr"; then AC_MSG_RESULT(euckr) AC_DEFINE(MULTI_CHARSET) DEF_FONT_IDX=1 MULTICHAR_ENCODING="euckr" FONT0="7x14" FONT1="8x16" FONT2="9x18" FONT3="10x20" FONT4="12x24" MFONT0="-*-gulim-medium-r-normal--14-*-*-*-*-140-ksc5601.1987-0" MFONT1="-*-gulim-medium-r-normal--16-*-*-*-*-160-ksc5601.1987-0" MFONT2="-*-gulim-medium-r-normal--18-*-*-*-*-180-ksc5601.1987-0" MFONT3="-*-gulim-medium-r-normal--20-*-*-*-*-200-ksc5601.1987-0" MFONT4="-*-gulim-medium-r-normal--24-*-*-*-*-240-ksc5601.1987-0" elif test "$enableval" = "utf-8" -o "$enableval" = "utf8"; then AC_MSG_RESULT(utf-8) AC_DEFINE(MULTI_CHARSET) DEF_FONT_IDX=2 MULTICHAR_ENCODING="utf8" MFONT0="-misc-fixed-medium-r-normal--7-70-75-75-c-50-iso10646-1" MFONT1="-misc-fixed-medium-r-normal--10-100-75-75-c-60-iso10646-1" MFONT2="-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1" MFONT3="-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1" MFONT4="-misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1" FONT0="5x7" FONT1="6x10" FONT2="fixed" FONT3="8x13" FONT4="9x15" elif test "$enableval" = "no"; then AC_MSG_RESULT(no) DEF_FONT_IDX=2 FONT0="5x7" FONT1="6x10" FONT2="fixed" FONT3="8x13" FONT4="9x15" else AC_ERROR(invalid value for --enable-multi-charset) fi, AC_MSG_RESULT(no) DEF_FONT_IDX=2 MULTICHAR_ENCODING=none MFONT0=none MFONT1=none MFONT2=none MFONT3=none MFONT4=none FONT0="5x7" FONT1="6x10" FONT2="fixed" FONT3="8x13" FONT4="9x15" ) AC_DEFINE_UNQUOTED(DEF_FONT_IDX, $DEF_FONT_IDX) AC_DEFINE_UNQUOTED(FONT0, "$FONT0") AC_DEFINE_UNQUOTED(FONT1, "$FONT1") AC_DEFINE_UNQUOTED(FONT2, "$FONT2") AC_DEFINE_UNQUOTED(FONT3, "$FONT3") AC_DEFINE_UNQUOTED(FONT4, "$FONT4") AC_SUBST(DEF_FONT_IDX) AC_SUBST(FONT0) AC_SUBST(FONT1) AC_SUBST(FONT2) AC_SUBST(FONT3) AC_SUBST(FONT4) export FONT0 FONT1 FONT2 FONT3 FONT4 DEF_FONT_IDX AC_DEFINE_UNQUOTED(MULTICHAR_ENCODING, "$MULTICHAR_ENCODING") AC_DEFINE_UNQUOTED(MFONT0, "$MFONT0") AC_DEFINE_UNQUOTED(MFONT1, "$MFONT1") AC_DEFINE_UNQUOTED(MFONT2, "$MFONT2") AC_DEFINE_UNQUOTED(MFONT3, "$MFONT3") AC_DEFINE_UNQUOTED(MFONT4, "$MFONT4") AC_SUBST(MULTICHAR_ENCODING) AC_SUBST(MFONT0) AC_SUBST(MFONT1) AC_SUBST(MFONT2) AC_SUBST(MFONT3) AC_SUBST(MFONT4) export MFONT0 MFONT1 MFONT2 MFONT3 MFONT4 MULTICHAR_ENCODING AC_MSG_CHECKING(for XIM support) AC_ARG_ENABLE(xim, [ --enable-xim compile with XIM support (default)], if test "$enableval" = "no"; then AC_MSG_RESULT(no) XIM="FALSE" else AC_MSG_RESULT(yes) AC_DEFINE(USE_XIM) XIM="TRUE" fi, AC_MSG_RESULT(yes) AC_DEFINE(USE_XIM) XIM="TRUE" ) AC_MSG_CHECKING(for Greek keyboard support) AC_ARG_ENABLE(greek, [ --enable-greek compile with support for Greek keyboards], if test "$enableval" = "yes"; then AC_MSG_RESULT(yes) AC_DEFINE(GREEK_SUPPORT) else AC_MSG_RESULT(no) fi, AC_MSG_RESULT(no) ) CONFIG_BUFF_SIZE=20480 AC_MSG_CHECKING(for the buffer size of the config file parser) AC_ARG_WITH(config-buffer-size, [ --config-buffer-size specifies the size of the buffer Eterm uses for parsing the config file (default is 20 Kb)], if test "$withval" != "yes" -a "$withval" != "no"; then CONFIG_BUFF_SIZE=$withval fi) AC_MSG_RESULT($CONFIG_BUFF_SIZE bytes) AC_DEFINE_UNQUOTED(CONFIG_BUFF, $CONFIG_BUFF_SIZE) AC_ARG_WITH(terminfo, [ --without-terminfo do not compile the Eterm terminfo file], if test "$withval" = "yes"; then : else TIC=true fi) AC_ARG_WITH(theme-update, [ --with-theme-update existing themes will be forceably removed and new ones installed], if test "$withval" = "yes"; then REMOVE_THEMES=yes else REMOVE_THEMES=no fi, REMOVE_THEMES=no ) AC_SUBST(REMOVE_THEMES) dnl# AC_MSG_CHECKING(which threads library to use) dnl# AC_ARG_WITH(threads, dnl# [ --with-threads[=STYLE] compile with threads support, STYLE is either "posix" or blank dnl# (disabled by default)], dnl# case $withval in dnl# [yes | posix )] dnl# AC_MSG_RESULT(POSIX) dnl# THREADS_LIB=posix dnl# ;; dnl# [* )] dnl# AC_MSG_RESULT(none) dnl# ;; dnl# esac dnl# , AC_MSG_RESULT(none)) dnl# if test "$THREADS_LIB" = "posix"; then dnl# AC_CHECK_LIB(pthread, pthread_create, CFLAGS="$CFLAGS -D_REENTRANT" ; THREADLIBS="-lpthread" dnl# AC_DEFINE(USE_POSIX_THREADS) dnl# AC_DEFINE(MUTEX_SYNCH) dnl# , , -D_REENTRANT -L/usr/lib -L/lib -L/usr/local/lib) dnl# fi dnl# dnl# X LIBRARIES dnl# AC_CHECK_LIB(X11, XOpenDisplay, X_LIBS="$X_LIBS -lX11", [ echo "ERROR: You need libX11 to build Eterm. Verify that you have libX11.a or"; echo " libX11.so installed and that it is located in the X libraries"; echo " directory shown above. If it is in a different directory, try using"; echo " the --x-libraries parameter to configure."; AC_MSG_ERROR([Fatal: libX11 not found.])], $X_LIBS $SUBLIBS) AC_CHECK_LIB(Xext, XextAddDisplay, X_LIBS="-lXext $X_LIBS", [ echo "ERROR: You need libXext to build Eterm. Verify that you have libXext.a or"; echo " libXext.so installed and that it is located in the X libraries"; echo " directory shown above. If it is in a different directory, try using"; echo " the --x-libraries parameter to configure."; AC_MSG_ERROR([Fatal: libXext not found.])], $X_LIBS $SUBLIBS) AC_CHECK_LIB(Xext, XShapeQueryExtension, AC_DEFINE(HAVE_X_SHAPE_EXT), , $X_LIBS $SUBLIBS) # check if we need X_LOCALE definition AC_CHECK_LIB(X11, _Xsetlocale, , AC_DEFINE(NO_XLOCALE), $X_LIBS $SUBLIBS) # For multibyte selection handling if test "$MULTICHAR_ENCODING" != "none"; then AC_CHECK_LIB(Xmu, XmuInternAtom, X_LIBS="-lXmu $X_LIBS", , $X_LIBS $SUBLIBS) fi # check X11R6 for XIM if test "$XIM" = "TRUE"; then AC_CHECK_LIB(X11, XRegisterIMInstantiateCallback, AC_DEFINE(USE_X11R6_XIM), , $X_LIBS $SUBLIBS) fi if test -z "$PIXMAPSED"; then AC_CHECK_PROG(IMLIB_CONFIG, imlib-config, imlib-config, no) if test "$IMLIB_CONFIG" != "no"; then if test "$prefix" = "NONE"; then AC_MSG_CHECKING(imlib-config for prefix) prefix="`$IMLIB_CONFIG --prefix`" AC_MSG_RESULT($prefix) fi AC_MSG_CHECKING(imlib-config for the value of CFLAGS) CFLAGS="$CFLAGS `$IMLIB_CONFIG --cflags`" AC_MSG_RESULT($CFLAGS) AC_MSG_CHECKING(imlib-config for the value of GRLIBS) GRLIBS="$GRLIBS `$IMLIB_CONFIG --libs`" AC_MSG_RESULT($GRLIBS) SAVE_LIBS="$LIBS" LIBS="$GRLIBS" AC_MSG_CHECKING(the sanity of new compile/link flags) AC_TRY_LINK(, , echo "yes", echo "no" ; IMLIB_CONFIG="no" ; AC_WARN(Compile/link failed. Reverting to manual method.) ) LIBS="$SAVE_LIBS" fi if test "$IMLIB_CONFIG" = "no"; then AC_CHECK_LIB(png, png_get_valid, GRLIBS="$GRLIBS -lpng -lz -lm", , $SUBLIBS $X_LIBS -lz -lm) AC_CHECK_LIB(jpeg, jpeg_read_scanlines, GRLIBS="$GRLIBS -ljpeg", , $SUBLIBS $X_LIBS) AC_CHECK_LIB(tiff, TIFFOpen, GRLIBS="$GRLIBS -ltiff", , $SUBLIBS $X_LIBS -lm) AC_CHECK_LIB(gif, DGifOpenFileName, GRLIBS="$GRLIBS -lgif", , $SUBLIBS $X_LIBS) AC_CHECK_LIB(ungif, DGifOpenFileName, GRLIBS="$GRLIBS -lungif", , $SUBLIBS $X_LIBS) AC_CHECK_LIB(Imlib, Imlib_init, , [ echo "WARNING: Imlib was not found or did not correctly link."; echo " Please check config.log to see what the error was."; echo " I will attempt to continue, but things may go wrong."; AC_MSG_WARN([WARNING: libImlib not found. Attempting to continue anyway.])], $GRLIBS $SUBLIBS $X_LIBS) fi fi AC_PREFIX(Eterm) AC_PREFIX(gcc) if test "$prefix" = "NONE"; then prefix=$ac_default_prefix fi if test "$exec_prefix" = "NONE"; then exec_prefix=$prefix fi dnl Stack Tracing toys AC_ARG_ENABLE(stack-trace, [ --disable-stack-trace disable stack trace on abnormal termination], if test "$enableval" = "no"; then AC_DEFINE(NO_STACK_TRACE) NO_STACK_TRACE=1 fi ) if test "$NO_STACK_TRACE" != "1"; then AC_PATH_PROG(DBX, dbx, no) if test "$DBX" != "no"; then AC_DEFINE_UNQUOTED(DBX, "$DBX") fi AC_PATH_PROG(GDB, gdb, no) if test "$GDB" != "no"; then AC_DEFINE_UNQUOTED(GDB, "$GDB") fi AC_PATH_PROG(PSTACK, pstack, no, $PATH:/usr/proc/bin:/usr/sbin) if test "$PSTACK" != "no"; then AC_DEFINE_UNQUOTED(PSTACK, "$PSTACK") fi AC_CHECK_LIB(cl, U_STACK_TRACE, LIBS="$LIBS -lcl") fi AC_MSG_CHECKING(for Linux 2.1 or higher) OS_NAME=`uname -s` if test "$OS_NAME" = "Linux"; then OS_REV=`uname -r` OS_MAJOR=`echo $OS_REV | cut -d. -f1` OS_MINOR=`echo $OS_REV | cut -d. -f2` if test "$OS_MAJOR" -ge "2" -a "$OS_MINOR" -ge "1"; then AC_MSG_RESULT(yes) AC_DEFINE(NEED_LINUX_HACK) else AC_MSG_RESULT(no) fi else AC_MSG_RESULT(no) fi dnl# Enable/disable humor AC_ARG_WITH(sense-of-humor, [ --without-sense-of-humor Specify this if you have no sense of humor], if test "$withval" = "no"; then HUMOR=none fi) if test -z "$HUMOR"; then AC_CHECK_LIB(Kenny, life_signs, , [ echo " Oh my god, they killed Kenny! You bastards!" ]) fi CONFIG_SEARCH_PATH=`eval eval eval eval eval echo "${datadir}/$PACKAGE/themes:${datadir}/$PACKAGE"` AC_DEFINE_UNQUOTED(CONFIG_SEARCH_PATH, "~/.Eterm/themes:~/.Eterm:$CONFIG_SEARCH_PATH") # Do replacements on theme files and such. All variables to be replaced # by this routine MUST be exported before the awk script runs. if test "X$PKGDATADIR" = "X" ; then PKGDATADIR=`eval eval eval eval echo "$datadir/$PACKAGE"` fi export PKGDATADIR AC_DEFINE_UNQUOTED(PKGDATADIR, "$PKGDATADIR") CFLAGS=${CFLAGS--O} LDFLAGS=${LDFLAGS--O} CPPFLAGS="$CPPFLAGS" AC_SUBST(CC) AC_SUBST(CFLAGS) AC_SUBST(CPPFLAGS) AC_SUBST(LDFLAGS) AC_SUBST(LIBS) AC_SUBST(THREADLIBS) AC_SUBST(GRLIBS) basedir=. AM_CONFIG_HEADER(config.h) AC_OUTPUT(Makefile bg/Makefile doc/Makefile utils/Makefile libmej/Makefile pix/Makefile src/Makefile themes/Makefile Eterm.spec) # Mega evals to make sure all the relative variables get resolved. BINDIR=`eval eval eval eval echo ${bindir}` export BINDIR bindir prefix exec_prefix datadir PACKAGE changequote(%&, &%)dnl %& for i in utils/kEsetroot themes/Eterm/theme.cfg themes/auto/theme.cfg themes/cEterm/theme.cfg \ themes/chooser/theme.cfg themes/emacs/theme.cfg themes/irc/theme.cfg themes/mutt/theme.cfg \ themes/trans/theme.cfg ; do echo creating $i $AWK '{if (match($0,/@[A-Za-z0-9_]*@/)) { i=ENVIRON[substr($0,RSTART+1,RLENGTH-2)]; outp=$0; gsub(/@[A-Za-z0-9_]*@/,i,outp); print outp; } else { print $0; } }' $i.in > $i done &% changequote([, ])dnl dnl If we're not building with Imlib support, don't build Esetroot if test -z "$GRLIBS"; then sed -e 's/^bin_PROGRAMS.*$//g' doc/Makefile > doc/Makefile.new mv doc/Makefile.new doc/Makefile fi echo " $PACKAGE $VERSION Configuration: -------------- Source code location: ${srcdir} Compiler: ${CC} ${CFLAGS} Host System Type: ${host} Graphics libraries: ${GRLIBS} X libraries/paths: ${X_LIBS} Install path: ${prefix} See src/feature.h for further configuration information. Now type 'make' to build $PACKAGE $VERSION. "