--- rxvt-unicode/configure.ac 2006/01/22 04:09:17 1.20 +++ rxvt-unicode/configure.ac 2007/06/09 11:22:10 1.43 @@ -15,10 +15,10 @@ DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` dnl LIBVERSION=`sed -n -e 's/^.*[ \t]LIBVERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` changequote([, ])dnl -AC_SUBST(VERSION)dnl -AC_SUBST(DATE)dnl -AC_SUBST(LSMDATE)dnl -AC_SUBST(LIBVERSION)dnl +AC_SUBST(VERSION)dnl +AC_SUBST(DATE)dnl +AC_SUBST(LSMDATE)dnl +AC_SUBST(LIBVERSION)dnl echo "" echo "configuring for rxvt $VERSION" echo "" @@ -47,7 +47,7 @@ LIBS="$LIBS -lsupc++" LINKER="$CC" AC_LINK_IFELSE( - [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }])], + [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], [AC_MSG_RESULT(ok)], [ AC_MSG_RESULT([no, making everything bigger and slower]) @@ -59,14 +59,13 @@ fi AC_SUBST(LINKER,[$LINKER]) -AC_LANG(C++) dnl# -------------------------------------------------------------------------- dnl# Supply default CXXFLAGS, if not specified by `CXXFLAGS=flags ./configure' dnl# if test -z "$orig_CXXFLAGS"; then if test x$GCC = xyes && test "x$GXX" = xyes; then - CXXFLAGS="-g -O3 -fno-threadsafe-statics -fno-enforce-eh-specs" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [], [CXXFLAGS="-g -O3"]) + CXXFLAGS="-g -O3 -fno-threadsafe-statics -fno-enforce-eh-specs" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="-g -O3"]) else CXXFLAGS="-O" fi @@ -94,22 +93,10 @@ AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])]) AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])]) -dnl# more solaris -AC_CHECK_FUNC(sched_yield, [], [AC_CHECK_LIB(rt, sched_yield, [LIBS="$LIBS -lrt"])]) - -dnl# sched_yield to improve terminal efficiency -AC_MSG_CHECKING(for sched_yield support) -AC_TRY_LINK([#include ],[sched_yield ()], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_SCHED_YIELD, 1, Define if you have sched-h and sched_yield)], - [AC_MSG_RESULT(no)]) - dnl AC_ENABLE_SHARED(no)dnl# libtool dnl AC_ENABLE_STATIC(yes)dnl# libtool dnl AC_PROG_LIBTOOL()dnl# libtool -MALLOC_TYPE=S - support_frills=yes support_inheritpixmap=yes support_tinting=yes @@ -118,9 +105,6 @@ support_selectionscrolling=yes support_mousewheel=yes support_mouseslipwheel=yes -support_utmp=yes -support_wtmp=yes -support_lastlog=yes support_text_blink=yes support_pointer_blank=yes support_scroll_rxvt=yes @@ -129,6 +113,8 @@ support_scroll_plain=yes support_xim=yes support_xpm=yes +support_afterimage=yes +support_afterstep=yes support_xft=yes support_unicode3=no support_combining=yes @@ -154,7 +140,6 @@ NOTE: automatically enabled with --enable-shared], [ if test x$enableval = xno; then - support_24bit=no support_frills=no support_inheritpixmap=no support_tinting=no @@ -174,6 +159,8 @@ support_wtmp=no support_xim=no support_xpm=no + support_afterimage=no + support_afterstep=no support_xft=no support_unicode3=no support_combining=no @@ -184,7 +171,6 @@ codesets= fi if test x$enableval = xyes; then - support_24bit=yes support_frills=yes support_inheritpixmap=yes support_tinting=yes @@ -204,6 +190,8 @@ support_wtmp=yes support_xim=yes support_xpm=yes + support_afterimage=yes + support_afterstep=yes support_xft=yes support_unicode3=yes support_combining=yes @@ -239,28 +227,26 @@ support_styles=$enableval fi]) -AC_ARG_ENABLE(utmp, - [ --enable-utmp enable utmp (utmpx) support], +AC_ARG_ENABLE(xpm-background, + [ --enable-xpm-background enable background pixmaps], [if test x$enableval = xyes -o x$enableval = xno; then - support_utmp=$enableval + support_xpm=$enableval fi]) -AC_ARG_ENABLE(wtmp, - [ --enable-wtmp enable wtmp (wtmpx) support (requires --enable-utmp)], +AC_ARG_ENABLE(afterimage, + [ --enable-afterimage enable integration with libAfterImage for background images], [if test x$enableval = xyes -o x$enableval = xno; then - support_wtmp=$enableval + support_afterimage=$enableval fi]) -AC_ARG_ENABLE(lastlog, - [ --enable-lastlog enable lastlog support (requires --enable-utmp)], - [if test x$enableval = xyes -o x$enableval = xno; then - support_lastlog=$enableval - fi]) +AC_ARG_WITH(afterimage_config, + [ --with-afterimage-config=DIR use libAfterImage config script in DIR], + [afterimage_config="$withval"]) -AC_ARG_ENABLE(xpm-background, - [ --enable-xpm-background enable XPM background pixmaps], +AC_ARG_ENABLE(afterstep, + [ --enable-afterstep enable integration with AfterStep window manager], [if test x$enableval = xyes -o x$enableval = xno; then - support_xpm=$enableval + support_afterstep=$enableval fi]) AC_ARG_ENABLE(transparency, @@ -311,12 +297,6 @@ support_scroll_plain=$enableval fi]) -dnl AC_ARG_ENABLE(half-shadow, -dnl [ --enable-half-shadow use half width/height shadow on rxvt scrollbar], -dnl [if test x$enableval = xyes; then -dnl AC_DEFINE(HALFSHADOW, 1, Define if you want the depth of scrollbars and menus to be less) -dnl fi]) - AC_ARG_WITH(codesets, [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)], [codesets="$withval"]) @@ -327,12 +307,6 @@ support_xim=$enableval fi]) -AC_ARG_ENABLE(ttygid, - [ --enable-ttygid enable tty setting to group named "tty"], - [if test x$enableval = xyes; then - AC_DEFINE(TTY_GID_SUPPORT, 1, Define to change gid of ttys to group tty) - fi]) - AC_ARG_ENABLE(backspace-key, [ --disable-backspace-key disable handling of the backspace key], [if test x$enableval = xno; then @@ -409,12 +383,6 @@ support_frills=$enableval fi]) -AC_ARG_ENABLE(24bit, - [ --enable-24bit enable support for using 24bit visuals if available], - [if test x$enableval = xyes -o x$enableval = xno; then - support_24bit=$enableval - fi]) - AC_ARG_ENABLE(keepscrolling, [ --enable-keepscrolling enable continual scrolling on scrollbar arrow press], [if test x$enableval = xyes -o x$enableval = xno; then @@ -439,25 +407,6 @@ support_mouseslipwheel=$enableval fi]) -AC_ARG_ENABLE(dmalloc, - [ --enable-dmalloc enable Gray Watson's malloc - for debugging use], - [if test x$enableval = xyes; then - MALLOC_TYPE=G - DEBUG=-DDEBUG_MALLOC - DLIB="-L/usr/local/lib -ldmalloc" - DINCLUDE=-I/usr/local/include - fi]) - -AC_ARG_ENABLE(dlmalloc, - [ --enable-dlmalloc enable Doug Lea's malloc - for production use - NOTE: enable only one malloc package], - [if test x$enableval = xyes; then - MALLOC_TYPE=D - DEBUG= - DLIB="-L/usr/local/lib -ldlmalloc" - DINCLUDE= - fi]) - AC_ARG_ENABLE(smart-resize, [ --enable-smart-resize enable smart growth/shrink behaviour], [if test x$enableval = xyes; then @@ -491,7 +440,6 @@ dnl# -------------------------------------------------------------------------- AC_PATH_PROG(MV, mv, mv) -AC_PATH_PROG(RM, rm, rm) AC_PATH_PROG(CP, cp, cp) AC_PATH_PROG(LN, ln, ln) AC_PATH_PROG(SED, sed, sed) @@ -517,7 +465,34 @@ dnl# the only reasonable way to find libXpm is do-it-yourself dnl# only check if we want xpm-background -if test x$support_xpm = xyes; then +LIBAFTERIMAGE_CFLAGS= +AFTERIMAGE_LIBS= +have_afterimage= + +if test x$support_afterimage == xyes; then + AC_MSG_CHECKING(installed libAfterImage) + support_afterimage=no + if test "x$afterimage_config" = "x" ; then + AC_PATH_PROG(afterimage_config, afterimage-config, no) + else + afterimage_config=$afterimage_config/afterimage-config + fi + if $afterimage_config --version > /dev/null 2>&1 ; then + LIBAFTERIMAGE_CFLAGS=`$afterimage_config --cflags` + AFTERIMAGE_LIBS=`$afterimage_config --libs` + if test "x$AFTERIMAGE_LIBS" != "x"; then + support_afterimage=yes + fi + fi + + if test "x$support_afterimage" = "xyes"; then + AC_MSG_RESULT($AFTERIMAGE_LIBS) + else + AC_MSG_RESULT(afterimage-config not found in $afterimage_config - can't use libAfterImage for images.) + fi +fi + +if test x$support_afterimage != xyes -a x$support_xpm = xyes ; then VT_FIND_LIBXPM if test x$no_xpm = xyes; then support_xpm=needsmanualspecification @@ -575,25 +550,27 @@ CFLAGS="$CFLAGS $X_CFLAGS" LIBS=`echo "$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"` AC_CACHE_CHECK([for -rpath dynamic library path recording], rxvt_cv_rpath, -[AC_RUN_IFELSE([AC_LANG_SOURCE([[ +[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include +#include main() { exit(0); (void) XOpenDisplay("foobar"); -}]])],[rxvt_cv_rpath=yes],[rxvt_cv_rpath=no],[dnl - AC_MSG_WARN(You may need to check the LIBS line)])]) +}]])],[rxvt_cv_rpath=yes],[rxvt_cv_rpath=no],[dnl + AC_MSG_WARN(You may need to check the LIBS line)])]) if test x$rxvt_cv_rpath != xyes; then changequote(, )dnl R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-R\1/g' changequote([, ])dnl LIBS=`echo "$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"` AC_CACHE_CHECK([for -R dynamic library path recording], rxvt_cv_R, -[AC_RUN_IFELSE([AC_LANG_SOURCE([[ +[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include +#include main() { exit(0); (void) XOpenDisplay("foobar"); -}]])],[rxvt_cv_R=yes],[rxvt_cv_R=no],[rxvt_cv_R=no])]) +}]])],[rxvt_cv_R=yes],[rxvt_cv_R=no],[rxvt_cv_R=no])]) if test x$rxvt_cv_R != xyes; then LIBS="$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" fi @@ -607,6 +584,20 @@ LIBS=$ac_save_LIBS CFLAGS=$ac_save_CFLAGS +AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, +[AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([ +#define XLIB_ILLEGAL_ACCESS +#include + ],[ + Display *dpy; + dpy->xdefaults = (char *)0; + ])], + [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] +)]) +if test x$rxvt_xlib_illegal_access = xyes; then + AC_DEFINE(XLIB_ILLEGAL_ACCESS, 1, Define ONLY iff Xlib.h supports it) +fi AC_C_CONST AC_C_INLINE @@ -711,11 +702,7 @@ AC_CHECK_FUNCS( \ unsetenv \ setutent \ - seteuid \ - setresuid \ - setreuid \ on_exit \ - nanosleep \ ) UTMP_CHECK @@ -727,7 +714,7 @@ [for ttys_file in dnl /etc/ttys /etc/ttytab; do - if test -f "$ttys_file" ; then + if test -f "$ttys_file" ; then rxvt_cv_path_ttytab=$ttys_file break fi @@ -750,6 +737,7 @@ fi AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include +#include main() { char *p; if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) @@ -803,16 +791,18 @@ PTY_CHECK +TTY_GROUP_CHECK + dnl# -------------------------------------------------------------------------- dnl# now add and remove other stuff dnl# -------------------------------------------------------------------------- if test x$support_xft = xyes; then AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - AC_PATH_PROG(XFT_CONFIG, xft-config, no) if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then LIBS="$LIBS `$PKG_CONFIG xft --libs`" CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`" else + AC_PATH_PROG(XFT_CONFIG, xft-config, no) if test $XFT_CONFIG != no; then LIBS="$LIBS `$XFT_CONFIG --libs`" CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" @@ -853,32 +843,29 @@ if test x$support_frills = xyes; then AC_DEFINE(ENABLE_FRILLS, 1, Define if you want handling for rarely used but handy features) fi -if test x$support_24bit = xyes; then - AC_DEFINE(PREFER_24BIT, 1, Define to use a 24 bit visual if the screen has 24 bit mode, even if the default is 8 bit) -fi if test x$support_mousewheel = xyes; then AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll) fi if test x$support_mouseslipwheel = xyes; then AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling) fi -if test x$support_utmp = xyes; then - AC_DEFINE(UTMP_SUPPORT, 1, Define if you want to have utmp/utmpx support) -fi -if test x$support_wtmp = xyes; then - AC_DEFINE(WTMP_SUPPORT, 1, Define if you want to have wtmp support when utmp/utmpx is enabled) -fi -if test x$support_lastlog = xyes; then - AC_DEFINE(LASTLOG_SUPPORT, 1, Define if you want to have lastlog support when utmp/utmpx is enabled) -fi if test x$support_xim = xyes -o x$multichar_set = xyes; then if test x$rxvt_cv_func_xlocale = xyes; then AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) fi fi -if test x$support_xpm = xyes; then - AC_DEFINE(XPM_BACKGROUND, 1, Define if you want to have sexy-looking background pixmaps. Needs libXpm) +if test x$support_xpm = xyes -o x$support_afterimage = xyes ; then + AC_DEFINE(XPM_BACKGROUND, 1, Define if you want to have sexy-looking background pixmaps. Needs libXpm or libAfterImage) +fi + +if test x$support_afterimage = xyes; then + AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing) +fi + +if test x$support_afterstep = xyes; then + AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager) fi + if test x$support_scroll_rxvt = xyes; then AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) scrolltypes="rxvt" @@ -970,12 +957,6 @@ support_frills=yes fi -dnl> AC_CHECK_FUNCS(gettimeofday putenv select socket) - -CFLAGS=${CFLAGS--O} -LDFLAGS=${LDFLAGS--O} - -CPPFLAGS="$CPPFLAGS" AC_SUBST(DEBUG) AC_SUBST(DINCLUDE) AC_SUBST(CFLAGS) @@ -996,6 +977,9 @@ AC_SUBST(X_LIBS) AC_SUBST(X_EXTRA_LIBS) +AC_SUBST(LIBAFTERIMAGE_CFLAGS) +AC_SUBST(AFTERIMAGE_LIBS) + AC_ARG_PROGRAM dnl# test for "sun" or "__sun__" before include sys_ioctl @@ -1036,35 +1020,21 @@ Source code location: $srcdir Install path: ${prefix}/bin Compiler: $CXX - Compiler flags: $CFLAGS + Compiler flags: $CXXFLAGS Linker: $LINKER" -if test "$MALLOC_TYPE" = S; then - echo " malloc support: system default" -fi -if test "$MALLOC_TYPE" = G; then - echo " malloc support: Gray Watson's dmalloc" -fi -if test "$MALLOC_TYPE" = D; then - echo " malloc support: Doug Lea's malloc" -fi - if test x$support_xpm = xyes; then echo " Xpm library: $XPM_LIBS" fi -if test x$support_utmp != xyes; then - echo " utmp support: disabled" - echo -else - echo " utmp support: enabled - utmp file: $path_utmp - utmpx file: $path_utmpx - wtmp file: $path_wtmp - wtmpx file: $path_wtmpx - lastlog file: $path_lastlog - lastlogx file: $path_lastlogx" +if test x$support_afterimage = xyes; then + echo " AfterImage library: $AFTERIMAGE_LIBS" +fi + +if test x$support_afterstep = xyes; then + echo " With AfterStep integration" fi + if test x$term != x; then echo " set TERM to: $term" fi @@ -1097,17 +1067,6 @@ echo ".----------------------------------------------------------------." fi -echo " *** Optionally check src/feature.h for further options ***" -echo - -echo ".----------------------------------------------------------------." -echo ". NOTE: some features are disabled by default, try ." -echo ". configure --help to get an idea of the optional features, ." -echo ". or read ./README.configure ." -echo ". ." -echo ". The script ./reconf gives a reasonable baseline, try it if ." -echo ". you do not want to read documentation and still want some ." -echo ". useful features. ." -echo ".----------------------------------------------------------------." +echo "*** Optionally check src/feature.h for further, rarely used options ***" echo