You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1040 lines
38 KiB
1040 lines
38 KiB
dnl# $Id$ |
|
|
|
PATH=$PATH:/usr/bin:/bin:/usr/local/bin:/usr/ccs/bin:/usr/contrib/bin:/usr/ucb/bin |
|
export PATH |
|
|
|
test "x$LIBTOOLIZE" = "x" && LIBTOOLIZE=libtoolize |
|
test "x$ACLOCAL" = "x" && ACLOCAL=aclocal |
|
test "x$AUTOCONF" = "x" && AUTOCONF=autoconf |
|
test "x$AUTOHEADER" = "x" && AUTOHEADER=autoheader |
|
test "x$AUTOMAKE" = "x" && AUTOMAKE=automake |
|
|
|
AC_SUBST(LIBTOOLIZE) |
|
AC_SUBST(ACLOCAL) |
|
AC_SUBST(AUTOCONF) |
|
AC_SUBST(AUTOHEADER) |
|
AC_SUBST(AUTOMAKE) |
|
|
|
SAVE_LIBTOOLIZE="$LIBTOOLIZE" |
|
SAVE_ACLOCAL="$ACLOCAL" |
|
SAVE_AUTOCONF="$AUTOCONF" |
|
SAVE_AUTOHEADER="$AUTOHEADER" |
|
SAVE_AUTOMAKE="$AUTOMAKE" |
|
|
|
AC_INIT(src/feature.h) |
|
AM_INIT_AUTOMAKE(Eterm, 0.9.4) |
|
|
|
dnl# Set some basic variables |
|
DATE="`date '+%d %B %Y'`" |
|
AC_SUBST(DATE) |
|
BUILD_DATE="`date`" |
|
AC_DEFINE_UNQUOTED(BUILD_DATE, "$BUILD_DATE", [The date of the build.]) |
|
AUTHORS="Michael Jennings (mej@eterm.org) " |
|
AC_SUBST(AUTHORS) |
|
AC_DEFINE_UNQUOTED(AUTHORS, "$AUTHORS", [Authors]) |
|
|
|
LIBTOOLIZE="${SAVE_LIBTOOLIZE:-libtoolize}" |
|
ACLOCAL="${SAVE_ACLOCAL:-aclocal}" |
|
AUTOCONF="${SAVE_AUTOCONF:-autoconf}" |
|
AUTOHEADER="${SAVE_AUTOHEADER:-autoheader}" |
|
AUTOMAKE="${SAVE_AUTOMAKE:-automake}" |
|
|
|
AC_MSG_CHECKING(for preferred libtoolize) |
|
AC_MSG_RESULT($LIBTOOLIZE) |
|
AC_MSG_CHECKING(for preferred aclocal) |
|
AC_MSG_RESULT($ACLOCAL) |
|
AC_MSG_CHECKING(for preferred autoconf) |
|
AC_MSG_RESULT($AUTOCONF) |
|
AC_MSG_CHECKING(for preferred autoheader) |
|
AC_MSG_RESULT($AUTOHEADER) |
|
AC_MSG_CHECKING(for preferred automake) |
|
AC_MSG_RESULT($AUTOMAKE) |
|
|
|
dnl# Find RCS Ident info from source files |
|
AC_DEFINE_UNQUOTED(ACTIONS_IDENT, "`grep '$''Id:' $srcdir/src/actions.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [actions.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(BUTTONS_IDENT, "`grep '$''Id:' $srcdir/src/buttons.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [buttons.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(COMMAND_IDENT, "`grep '$''Id:' $srcdir/src/command.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [command.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(DRAW_IDENT, "`grep '$''Id:' $srcdir/src/draw.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [draw.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(E_IDENT, "`grep '$''Id:' $srcdir/src/e.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [e.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(EVENTS_IDENT, "`grep '$''Id:' $srcdir/src/events.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [events.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(FONT_IDENT, "`grep '$''Id:' $srcdir/src/font.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [font.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(GRKELOT_IDENT, "`grep '$''Id:' $srcdir/src/grkelot.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [grkelot.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(MAIN_IDENT, "`grep '$''Id:' $srcdir/src/main.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [main.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(MENUS_IDENT, "`grep '$''Id:' $srcdir/src/menus.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [menus.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(MISC_IDENT, "`grep '$''Id:' $srcdir/src/misc.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [misc.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(NETDISP_IDENT, "`grep '$''Id:' $srcdir/src/netdisp.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [netdisp.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(OPTIONS_IDENT, "`grep '$''Id:' $srcdir/src/options.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [options.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(PIXMAP_IDENT, "`grep '$''Id:' $srcdir/src/pixmap.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [pixmap.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(SCREEN_IDENT, "`grep '$''Id:' $srcdir/src/screen.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [screen.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(SCROLLBAR_IDENT, "`grep '$''Id:' $srcdir/src/scrollbar.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [scrollbar.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(STARTUP_IDENT, "`grep '$''Id:' $srcdir/src/startup.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [startup.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(SYSTEM_IDENT, "`grep '$''Id:' $srcdir/src/system.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [system.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(TERM_IDENT, "`grep '$''Id:' $srcdir/src/term.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [term.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(TIMER_IDENT, "`grep '$''Id:' $srcdir/src/timer.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [timer.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(UTMP_IDENT, "`grep '$''Id:' $srcdir/src/utmp.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [utmp.c RCS ID]) |
|
AC_DEFINE_UNQUOTED(WINDOWS_IDENT, "`grep '$''Id:' $srcdir/src/windows.c | sed 's/^.*\$''Id: //;s/ \$.*$//;s/.v / /;s/ Exp//'`", [windows.c RCS ID]) |
|
|
|
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 |
|
AC_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 |
|
|
|
CCASFLAGS="$CCASFLAGS -I.. -I." |
|
CCAS=$CC |
|
AC_SUBST(CCASFLAGS) |
|
AC_SUBST(CCAS) |
|
|
|
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, perl) |
|
AC_PROG_AWK |
|
export PERL AWK |
|
|
|
AC_C_CONST |
|
AC_C_INLINE |
|
AC_C_BIGENDIAN |
|
|
|
AC_PATH_XTRA |
|
|
|
if test ! -z "$X_CFLAGS"; then |
|
if test -z "$CPPFLAGS"; then |
|
CPPFLAGS="$X_CFLAGS" |
|
else |
|
CPPFLAGS="$CPPFLAGS $X_CFLAGS" |
|
fi |
|
fi |
|
if test ! -z "$X_LIBS"; then |
|
if test -z "$LDFLAGS"; then |
|
LDFLAGS="$X_LIBS" |
|
else |
|
LDFLAGS="$LDFLAGS $X_LIBS" |
|
fi |
|
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 malloc.h \ |
|
utmpx.h unistd.h bsd/signal.h regex.h \ |
|
regexp.h stdarg.h X11/Xmu/Atoms.h \ |
|
X11/Sunkeysym.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 strcasestr strcasechr \ |
|
strcasepbrk strrev nl_langinfo) |
|
dps_snprintf_oflow() |
|
AC_CHECK_LIB(m, pow) |
|
|
|
dnl# Portability checks for various functions |
|
AC_SEARCH_LIBS(login, bsd ucb util) |
|
AC_SEARCH_LIBS(logout, util) |
|
AC_SEARCH_LIBS(getpwuid, sun) |
|
|
|
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 integer 0-9], [ |
|
if test "$withval" = "yes"; then |
|
withval=4 |
|
else |
|
: |
|
fi |
|
if test "$withval" != "no"; then |
|
echo "$withval" |
|
AC_DEFINE_UNQUOTED(DEBUG, $withval, [Debugging level to compile in.]) |
|
else |
|
echo "no debugging" |
|
AC_DEFINE_UNQUOTED(DEBUG, 0, [Debugging level to compile in.]) |
|
fi], [echo "4" |
|
AC_DEFINE_UNQUOTED(DEBUG, 4, [Debugging level to compile in.]) |
|
]) |
|
|
|
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, , [Define for /dev/ptc support.]) |
|
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, , [Define for /dev/ptmx support.]) |
|
PTY_MECH="SVR4 $PTY_MECH" |
|
fi |
|
if test -c /dev/ptyp128 ; then |
|
AC_DEFINE(HAVE_SCO_PTYS, , [Define for SCO-style pty support.]) |
|
PTY_MECH="SCO $PTY_MECH" |
|
fi |
|
if test "X$PTY_MECH" = "X"; then |
|
AC_MSG_RESULT(generic 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", [Group name for pty ownership.]) |
|
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", [Group name for pty ownership.]) |
|
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", [Group name for pty ownership.]) |
|
else |
|
AC_MSG_RESULT(none) |
|
fi |
|
]) |
|
AC_MSG_CHECKING(for saved uids) |
|
AC_ARG_WITH(saved-uids, [ --with(out)-saved-uids specify that your OS has (does not have) saved uids, default is to guess], [ |
|
if test "$withval" = "yes"; then |
|
AC_MSG_RESULT(user specified yes) |
|
HAVE_SAVED_UIDS=1 |
|
elif test "$withval" = "no"; then |
|
AC_MSG_RESULT(user specified no) |
|
HAVE_SAVED_UIDS=0 |
|
fi |
|
]) |
|
if test "x$HAVE_SAVED_UIDS" = "x"; then |
|
case `uname -s` in |
|
Linux | linux | GNU*Linux) HAVE_SAVED_UIDS=1 ;; |
|
HP*UX | hp*ux) HAVE_SAVED_UIDS=1 ;; |
|
AIX | aix) HAVE_SAVED_UIDS=1 ;; |
|
Solaris | SunOS | [Ss]un) HAVE_SAVED_UIDS=1 ;; |
|
*BSD) HAVE_SAVED_UIDS=0 ;; |
|
esac |
|
if test "x$HAVE_SAVED_UIDS" = "x"; then |
|
AC_MSG_RESULT(unknown...assuming no support) |
|
HAVE_SAVED_UIDS=0 |
|
elif test $HAVE_SAVED_UIDS -eq 1; then |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(HAVE_SAVED_UIDS, , [Define if the system supports saved UID and GID.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
fi |
|
AC_MSG_CHECKING(if strict ICCCM compliance should be enabled) |
|
AC_ARG_ENABLE(strict-icccm, |
|
[ --enable-strict-icccm compile with strict ICCCM compliant WM icon support], [ |
|
if test "$enableval" = "yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(STRICT_ICCCM, , [Define if WM cannot handle icon pixmaps.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
], AC_MSG_RESULT(no)) |
|
|
|
dnl# |
|
dnl# X LIBRARIES |
|
dnl# |
|
AC_CHECK_LIB(X11, XOpenDisplay, , [ |
|
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.])]) |
|
AC_CHECK_LIB(Xext, XextAddDisplay, , [ |
|
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.])]) |
|
|
|
AC_CHECK_LIB(Xext, XShapeQueryExtension, AC_DEFINE(HAVE_X_SHAPE_EXT, , [Define if X shaped window extension is available.])) |
|
|
|
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, , [Define for Pablo I/O tracing support.]) |
|
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(for Escreen support) |
|
AC_ARG_ENABLE(escreen, |
|
[ --disable-escreen disable Eterm's built-in screen support], [ |
|
if test "$enableval" = "yes"; then |
|
FOUND_SCREEN=1 |
|
AC_DEFINE(NS_HAVE_SCREEN, 1, [Define for support of the screen text windowing system.]) |
|
AC_MSG_RESULT(yes) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
], [ |
|
FOUND_SCREEN=1 |
|
AC_DEFINE(NS_HAVE_SCREEN, 1, [Define for support of the screen text windowing system.]) |
|
AC_MSG_RESULT(yes) |
|
] |
|
) |
|
AC_MSG_CHECKING(for Etwin support) |
|
AC_ARG_ENABLE(etwin, |
|
[ --enable-etwin enable Eterm's built-in twin support], [ |
|
if test "$enableval" = "yes"; then |
|
AC_CHECK_LIB(Tw, Tw_Open, FOUND_LIBTWIN=1, FOUND_LIBTWIN=0, $GRLIBS) |
|
if test "$FOUND_LIBTWIN" -ne "1"; then |
|
AC_WARN(*** Twin support has been disabled because libTw was not found ***) |
|
else |
|
AC_DEFINE(NS_HAVE_TWIN, 1, [Define for support of the twin text windowing system.]) |
|
LIBS="$LIBS -lTw" |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi], AC_MSG_RESULT(no) |
|
) |
|
|
|
if test ! -z "$FOUND_SCREEN" || test ! -z "$FOUND_LIBTWIN"; then |
|
AC_DEFINE(ESCREEN, , [Define for Escreen support.]) |
|
fi |
|
|
|
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, , [Define to enable code profiling macros.]) |
|
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) |
|
if test "$withval" != "yes"; then |
|
CPPFLAGS="$CPPFLAGS -I${withval}/include" |
|
LDFLAGS="$LDFLAGS -L${withval}/lib" |
|
fi |
|
USE_IMLIB=1 |
|
else |
|
AC_MSG_RESULT(no) |
|
GRLIBS="" |
|
USE_IMLIB=0 |
|
AC_WARN(*** Pixmap support has been disabled at your request. This ***) |
|
AC_WARN(*** is generally a bad idea since it really doesn't save ***) |
|
AC_WARN(*** much memory. And the developers almost never test that ***) |
|
AC_WARN(*** configuration. So I'd reconsider if I were you.... ***) |
|
fi], [AC_MSG_RESULT(yes) |
|
USE_IMLIB=1 |
|
]) |
|
if test $USE_IMLIB -eq 1 ; then |
|
AC_CHECK_LIB(dl, dlopen, GRLIBS="-ldl", , $GRLIBS) |
|
AC_CHECK_LIB(ttf, TT_Init_FreeType, GRLIBS="-lttf $GRLIBS", , $GRLIBS) |
|
AC_CHECK_LIB(Imlib2, imlib_create_image, [ |
|
GRLIBS="-lImlib2 $GRLIBS" |
|
AC_DEFINE(HAVE_LIBIMLIB2, , [Define if Imlib2 is present.]) |
|
AC_DEFINE(PIXMAP_SUPPORT, , [Define if pixmap support is desired.]) |
|
AC_DEFINE(BACKING_STORE, , [Define if backing store is desired.]) |
|
], [ |
|
AC_WARN(*** Pixmap support has been disabled because Imlib2 was not found ***) |
|
AC_WARN(*** or could not be linked. Eterm should still work, but it will ***) |
|
AC_WARN(*** not be very happy. Check config.log for more detailed ***) |
|
AC_WARN(*** information on why my attempt to link with Imlib2 failed. ***) |
|
], $GRLIBS) |
|
|
|
fi |
|
|
|
AC_MSG_CHECKING(for transparency support) |
|
AC_ARG_ENABLE(trans, |
|
[ --enable-trans compile with transparency support], [ |
|
if test "$enableval" != "no"; then |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(PIXMAP_OFFSET, , [Define for pseudo-transparency support.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi], [AC_MSG_RESULT(yes) |
|
AC_DEFINE(PIXMAP_OFFSET, , [Define for pseudo-transparency support.]) |
|
]) |
|
|
|
AC_MSG_CHECKING(for MMX support) |
|
HAVE_MMX="" |
|
AC_ARG_ENABLE(mmx, [ --enable-mmx enable MMX assembly routines], [ |
|
test "x$enableval" = "xyes" && HAVE_MMX="yes" |
|
], [ |
|
if test x$build_os = xlinux-gnu; then |
|
grep mmx /proc/cpuinfo >/dev/null 2>&1 && HAVE_MMX="yes" |
|
fi |
|
]) |
|
if test "x$HAVE_MMX" = "xyes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(HAVE_MMX, , [Define for MMX support.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
AM_CONDITIONAL(HAVE_MMX, test "x$HAVE_MMX" = "xyes") |
|
|
|
dnl# |
|
dnl# LibAST |
|
dnl# |
|
LIBAST_MIN=5 |
|
AC_CHECK_PROG(LIBAST_CONFIG, libast-config, libast-config, false) |
|
if test "$LIBAST_CONFIG" = "false"; then |
|
FOUND_LIBAST=0 |
|
else |
|
FOUND_LIBAST=`$LIBAST_CONFIG --version | awk -F. '{print $2}'` |
|
CPPFLAGS="$CPPFLAGS `$LIBAST_CONFIG --cppflags`" |
|
LDFLAGS="$LDFLAGS `$LIBAST_CONFIG --ldflags`" |
|
GRLIBS="$GRLIBS `$LIBAST_CONFIG --libs`" |
|
fi |
|
AC_CHECK_LIB(ast, libast_set_program_name, , FOUND_LIBAST=0, $GRLIBS) |
|
|
|
if test "$FOUND_LIBAST" -lt "$LIBAST_MIN"; then |
|
echo "ERROR: You need LibAST 0.$LIBAST_MIN or higher to build Eterm. If you already have it,"; |
|
echo " you may have it installed in a strange place, or you may need to run"; |
|
echo " /sbin/ldconfig. If you don't have it, I can download it for you."; |
|
echo " Shall I retrieve and build LibAST now (y/n)?"; |
|
read ANS |
|
if test "x$ANS" = "xy" -o "x$ANS" = "xyes" -o "x$ANS" = "xY" -o "x$ANS" = "xYES"; then |
|
# Download from CVS server |
|
CVSROOT=":pserver:anonymous@cvs.enlightenment.sourceforge.net:/cvsroot/enlightenment" |
|
test -f $HOME/.cvspass || touch $HOME/.cvspass |
|
grep $CVSROOT $HOME/.cvspass >/dev/null 2>&1 || cvs -d $CVSROOT login |
|
cvs -z3 -d $CVSROOT co -d libast eterm/libast |
|
(cd libast && ./autogen.sh $ac_configure_args && make install && cd .. && rm -rf libast) |
|
if test $? -ne 0; then |
|
echo 'ERROR: Unable to auto-get libast, sorry.' 1>&2 |
|
exit 1 |
|
fi |
|
FOUND_LIBAST=1 |
|
AC_CHECK_PROG(LIBAST_CONFIG, libast-config, libast-config, false) |
|
test "$LIBAST_CONFIG" = "false" && FOUND_LIBAST=0 |
|
fi |
|
fi |
|
if test "$FOUND_LIBAST" -ge "$LIBAST_MIN"; then |
|
if test ! -z "$LIBAST_CONFIG"; then |
|
#GRLIBS="-last $GRLIBS" |
|
AC_DEFINE(HAVE_LIBAST, , [Define if LibAST is present.]) |
|
test "$prefix" = "NONE" && prefix="`$LIBAST_CONFIG --prefix`" |
|
SUPPORT_FLAGS="`$LIBAST_CONFIG --support`" |
|
for i in $SUPPORT_FLAGS ; do |
|
case $i in |
|
MMX) |
|
AC_DEFINE(LIBAST_MMX_SUPPORT, 1, [Defined as 1 if LibAST has MMX support.]) |
|
;; |
|
X11) |
|
AC_DEFINE(LIBAST_X11_SUPPORT, 1, [Defined as 1 if LibAST has X11 support.]) |
|
;; |
|
Imlib2) |
|
AC_DEFINE(LIBAST_IMLIB2_SUPPORT, 1, [Defined as 1 if LibAST has Imlib2 support.]) |
|
;; |
|
esac |
|
done |
|
fi |
|
else |
|
AC_MSG_ERROR(Fatal: libast not found.) |
|
fi |
|
|
|
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, , [Define for utmp logging support.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
UTMP=0 |
|
fi], [AC_MSG_RESULT(yes) |
|
AC_DEFINE(UTMP_SUPPORT, , [Define for utmp logging support.]) |
|
UTMP=1 |
|
]) |
|
if test $UTMP -eq 1; then |
|
AC_CHECK_LIB(utempter, addToUtmp) |
|
fi |
|
AC_MSG_CHECKING(for backspace key configuration) |
|
AC_ARG_WITH(backspace, |
|
[ --with-backspace=KEY force backspace to send KEY (KEY is \"bs\" for ^H, \"del\" for ^?, \"auto\" to check stty)], [ |
|
if test "$withval" = "bs"; then |
|
AC_MSG_RESULT(forcing Backspace to send Ctrl-H) |
|
AC_DEFINE(FORCE_BACKSPACE, , [Define to force Backspace to send ^H.]) |
|
elif test "$withval" = "del"; then |
|
AC_MSG_RESULT(forcing Backspace to send Ctrl-?) |
|
AC_DEFINE(FORCE_DELETE, , [Define to force Backspace to send ^?.]) |
|
elif test "$withval" = "detect" -o "$withval" = "auto"; then |
|
AC_MSG_RESULT(attempt to auto-detect) |
|
else |
|
AC_MSG_RESULT(default) |
|
AC_DEFINE(FORCE_BACKSPACE, , [Define to force Backspace to send ^H.]) |
|
fi], [AC_MSG_RESULT(default) |
|
AC_DEFINE(FORCE_BACKSPACE, , [Define to force Backspace to send ^H.]) |
|
]) |
|
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, \"del\" for ^?, |
|
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, , [Define to use the X server value for Delete.]) |
|
elif test "$withval" = "no"; then |
|
AC_MSG_RESULT(X server value) |
|
AC_DEFINE(NO_DELETE_KEY, , [Define to use the X server value for Delete.]) |
|
elif test "$withval" = "execute"; then |
|
AC_MSG_RESULT(send execute sequence) |
|
elif test "$withval" = "del"; then |
|
AC_MSG_RESULT(send Ctrl-?) |
|
AC_DEFINE_UNQUOTED(KS_DELETE, "\177", [Define to force Delete to send ^?.]) |
|
else |
|
AC_MSG_RESULT(forcing Delete to send "$withval") |
|
AC_DEFINE_UNQUOTED(KS_DELETE, "$withval", [Define for specific Delete escape sequence.]) |
|
fi], AC_MSG_RESULT(default) |
|
) |
|
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", [Emulate xterm for Home key.]) |
|
elif test "$withval" = "linux"; then |
|
AC_MSG_RESULT(emulate linux console/vt220) |
|
AC_DEFINE_UNQUOTED(KS_HOME, "$LINUX_HOME", [Emulate Linux console for Home key.]) |
|
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", [Emulate xterm for End key.]) |
|
elif test "$withval" = "linux"; then |
|
AC_MSG_RESULT(emulate linux console/vt220) |
|
AC_DEFINE_UNQUOTED(KS_END, "$LINUX_END", [Emulate Linux console for End key.]) |
|
else |
|
AC_MSG_RESULT(default vt102) |
|
fi], AC_MSG_RESULT(default) |
|
) |
|
AC_MSG_CHECKING(if mousewheel support should be enabled) |
|
AC_ARG_WITH(mousewheel, |
|
[ --without-mousewheel disable built-in mousewheel support], [ |
|
if test "$withval" = "no"; then |
|
AC_MSG_RESULT(no) |
|
else |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(MOUSEWHEEL, , [Define for built-in mousewheel support.]) |
|
fi], [AC_MSG_RESULT(yes) |
|
AC_DEFINE(MOUSEWHEEL, , [Define for built-in mousewheel support.]) |
|
]) |
|
|
|
AC_MSG_CHECKING(for automatic encoding) |
|
AC_ARG_ENABLE(auto-encoding, |
|
[ --enable-auto-encoding compile with runtime automatic encoding setting], |
|
if test "$enableval" = "no"; then |
|
AC_MSG_RESULT(no) |
|
else |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(AUTO_ENCODING, 1, [Define for automatic character encoding.]) |
|
fi, AC_MSG_RESULT(yes) |
|
AC_DEFINE(AUTO_ENCODING, 1, [Define for automatic character encoding.]) |
|
) |
|
|
|
MULTICHAR_ENCODING="" |
|
AC_MSG_CHECKING(for multi-charset support) |
|
AC_ARG_ENABLE(multi-charset, |
|
[ --enable-multi-charset compile with multibyte font support], [ |
|
if test "$enableval" = "no"; then |
|
MULTI_CHARSET_TYPE="" |
|
elif test "$enableval" = "yes"; then |
|
MULTI_CHARSET_TYPE="unicode" |
|
else |
|
MULTI_CHARSET_TYPE="$enableval" |
|
fi], [ |
|
if (xlsfonts 2>/dev/null | grep 10646 >&5 2>&5); then |
|
MULTI_CHARSET_TYPE="unicode" |
|
else |
|
MULTI_CHARSET_TYPE="" |
|
fi |
|
]) |
|
|
|
if test "x$MULTI_CHARSET_TYPE" != "x"; then |
|
if test "$MULTI_CHARSET_TYPE" = "kanji"; then |
|
AC_MSG_RESULT(kanji) |
|
AC_DEFINE(MULTI_CHARSET, , [Define for multi-byte character set support.]) |
|
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 "$MULTI_CHARSET_TYPE" = "euc-kr" -o "$MULTI_CHARSET_TYPE" = "euckr"; then |
|
AC_MSG_RESULT(euckr) |
|
AC_DEFINE(MULTI_CHARSET, , [Define for multi-byte character set support.]) |
|
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 "$MULTI_CHARSET_TYPE" = "unicode" -o "$MULTI_CHARSET_TYPE" = "utf-8" -o "$MULTI_CHARSET_TYPE" = "utf8"; then |
|
AC_MSG_RESULT(ISO-10646) |
|
AC_DEFINE(MULTI_CHARSET, , [Define for multi-byte character set support.]) |
|
DEF_FONT_IDX=2 |
|
MULTICHAR_ENCODING="iso-10646" |
|
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 "$MULTI_CHARSET_TYPE" = "big5"; then |
|
AC_MSG_RESULT(big5) |
|
AC_DEFINE(MULTI_CHARSET, , [Define for multi-byte character set support.]) |
|
DEF_FONT_IDX=0 |
|
MULTICHAR_ENCODING="big5" |
|
FONT0="8x16" |
|
FONT1="9x18" |
|
FONT2="10x20" |
|
FONT3="12x24" |
|
FONT4="13x26" |
|
MFONT0="-*-ming-medium-r-normal--16-*-*-*-c-*-big5-0" |
|
MFONT1="-*-ming-medium-r-normal--18-*-*-*-c-*-big5-0" |
|
MFONT2="-*-ming-medium-r-normal--20-*-*-*-c-*-big5-0" |
|
MFONT3="-*-ming-medium-r-normal--24-*-*-*-c-*-big5-0" |
|
MFONT4="-*-ming-medium-r-normal--26-*-*-*-c-*-big5-0" |
|
else |
|
MULTI_CHARSET_TYPE="" |
|
fi |
|
fi |
|
if test "x$MULTI_CHARSET_TYPE" = "x"; then |
|
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" |
|
fi |
|
|
|
AC_DEFINE_UNQUOTED(DEF_FONT_IDX, $DEF_FONT_IDX, [Default font index.]) |
|
AC_DEFINE_UNQUOTED(FONT0, "$FONT0", [Font 0]) |
|
AC_DEFINE_UNQUOTED(FONT1, "$FONT1", [Font 1]) |
|
AC_DEFINE_UNQUOTED(FONT2, "$FONT2", [Font 2]) |
|
AC_DEFINE_UNQUOTED(FONT3, "$FONT3", [Font 3]) |
|
AC_DEFINE_UNQUOTED(FONT4, "$FONT4", [Font 4]) |
|
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", [Multi-byte character encoding style.]) |
|
AC_DEFINE_UNQUOTED(MFONT0, "$MFONT0", [Multibyte Font 0]) |
|
AC_DEFINE_UNQUOTED(MFONT1, "$MFONT1", [Multibyte Font 1]) |
|
AC_DEFINE_UNQUOTED(MFONT2, "$MFONT2", [Multibyte Font 2]) |
|
AC_DEFINE_UNQUOTED(MFONT3, "$MFONT3", [Multibyte Font 3]) |
|
AC_DEFINE_UNQUOTED(MFONT4, "$MFONT4", [Multibyte Font 4]) |
|
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, , [Define for X Input Method support.]) |
|
XIM="TRUE" |
|
fi], [AC_MSG_RESULT(yes) |
|
AC_DEFINE(USE_XIM, , [Define for X Input Method support.]) |
|
XIM="TRUE" |
|
]) |
|
|
|
# check if we need X_LOCALE definition |
|
AC_CHECK_LIB(X11, _Xsetlocale, AC_DEFINE(X_LOCALE, , [X locale.]), AC_DEFINE(NO_XLOCALE, , [No X locale.])) |
|
|
|
# For multibyte selection handling |
|
#if test "$MULTICHAR_ENCODING" != "none"; then |
|
AC_CHECK_LIB(Xmu, XmuInternAtom) |
|
#fi |
|
|
|
# check X11R6 for XIM |
|
if test "$XIM" = "TRUE"; then |
|
AC_CHECK_LIB(X11, XRegisterIMInstantiateCallback, AC_DEFINE(USE_X11R6_XIM, , [Define if we have X11R6 XIM.])) |
|
fi |
|
|
|
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, , [Define for Greek keyboard support.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi], AC_MSG_RESULT(no) |
|
) |
|
|
|
AC_ARG_WITH(terminfo, |
|
[ --without-terminfo do not compile the Eterm terminfo file], [ |
|
if test "$withval" = "no"; then |
|
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, CPPFLAGS="$CPPFLAGS -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 |
|
|
|
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, , [Define to disable stack trace on abnormal termination.]) |
|
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", [Define for dbx support.]) |
|
fi |
|
AC_PATH_PROG(GDB, gdb, no) |
|
if test "$GDB" != "no"; then |
|
AC_DEFINE_UNQUOTED(GDB, "$GDB", [Define for gdb support.]) |
|
fi |
|
AC_PATH_PROG(PSTACK, pstack, no, $PATH:/usr/proc/bin:/usr/sbin) |
|
if test "$PSTACK" != "no"; then |
|
AC_DEFINE_UNQUOTED(PSTACK, "$PSTACK", [Define for pstack support.]) |
|
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, , [Define if uid hack needed to open X display.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
dnl# Enable/disable name reporting escape sequences |
|
AC_MSG_CHECKING(if we should enable name reporting escape sequences) |
|
AC_ARG_ENABLE(name-eporting-escapes, [ --enable-name-reporting-escapes Specify this to enable title/icon name reporting], [ |
|
if test "$enableval" = "yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_DEFINE(ENABLE_NAME_REPORTING_ESCAPES, 1, [Defined to enable title/icon name reporting escape sequences.]) |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
], [AC_MSG_RESULT(no)]) |
|
|
|
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!" |
|
AC_DEFINE(HAVE_HUMOR, 1, [Defined if user has a sense of humor.]) |
|
]) |
|
fi |
|
|
|
CONFIG_SEARCH_PATH=`eval eval eval eval eval echo "${sysconfdir}/$PACKAGE/themes:/etc/$PACKAGE/themes:${datadir}/$PACKAGE/themes"` |
|
CONFIG_SEARCH_PATH=`eval eval eval eval eval echo "$CONFIG_SEARCH_PATH:${sysconfdir}/$PACKAGE:/etc/$PACKAGE:${datadir}/$PACKAGE"` |
|
AC_DEFINE_UNQUOTED(CONFIG_SEARCH_PATH, "~/.Eterm/themes:~/.Eterm:$CONFIG_SEARCH_PATH", [Config file/theme 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", [Package data directory.]) |
|
if test "$GDB" != "no"; then |
|
GDB_CMD_FILE="$PKGDATADIR/gdb.scr" |
|
AC_DEFINE_UNQUOTED(GDB_CMD_FILE, "$GDB_CMD_FILE", [gdb command script.]) |
|
else |
|
GDB_CMD_FILE="" |
|
fi |
|
AC_SUBST(GDB_CMD_FILE) |
|
|
|
CPPFLAGS=`eval eval eval eval eval echo "-I$includedir -I$prefix/include $CPPFLAGS"` |
|
CPPFLAGS=`echo $CPPFLAGS | tr ' ' '\n' | uniq | grep -v NONE | tr '\n' ' '` |
|
CFLAGS=${CFLAGS--O} |
|
LDFLAGS=`eval eval eval eval eval echo "-L$libdir -L$prefix/lib ${LDFLAGS--O}"` |
|
LDFLAGS=`echo $LDFLAGS | tr ' ' '\n' | uniq | grep -v NONE | tr '\n' ' '` |
|
LIBS="$GRLIBS $X_PRE_LIBS $LIBS $X_EXTRA_LIBS" |
|
|
|
AC_SUBST(CC) |
|
AC_SUBST(CFLAGS) |
|
AC_SUBST(CPPFLAGS) |
|
AC_SUBST(LDFLAGS) |
|
AC_SUBST(LIBS) |
|
AC_SUBST(THREADLIBS) |
|
|
|
basedir=. |
|
|
|
AM_CONFIG_HEADER(config.h) |
|
|
|
AC_OUTPUT([Makefile bg/Makefile doc/Makefile utils/Makefile pix/Makefile |
|
src/Makefile themes/Makefile]) |
|
|
|
# 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 |
|
|
|
# The awk-fu below replaces @VAR@ in theme config files with the corresponding |
|
# environment variables, kinda like AC_OUTPUT above. |
|
changequote(%&, &%)dnl |
|
%& |
|
for i in utils/kEsetroot themes/Eterm/theme.cfg themes/auto/theme.cfg themes/Escreen/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; |
|
} |
|
}' $srcdir/$i.in > $srcdir/$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' $srcdir/doc/Makefile > $srcdir/doc/Makefile.new |
|
mv $srcdir/doc/Makefile.new $srcdir/doc/Makefile |
|
fi |
|
|
|
echo " |
|
$PACKAGE $VERSION |
|
Configuration: |
|
-------------- |
|
|
|
Source code location: $srcdir |
|
Host System Type: $host |
|
Preprocessor: $CC $CPPFLAGS |
|
Compiler: $CC $CFLAGS |
|
Linker: $CC $LDFLAGS $LIBS |
|
Install path: $prefix |
|
|
|
See src/feature.h for further configuration information. |
|
|
|
Now type 'make' to build $PACKAGE $VERSION. |
|
"
|
|
|