--- rxvt-unicode/configure.ac 2007/06/08 20:04:10 1.39 +++ rxvt-unicode/configure.ac 2012/06/10 13:07:56 1.143 @@ -11,14 +11,12 @@ dnl RXVT version changequote(, )dnl -VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` -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` +VERSION=`sed -n -e 's/^.* VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` +DATE=`sed -n -e 's/^.* DATE.*"\(.*\)"$/\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 + echo "" echo "configuring for rxvt $VERSION" echo "" @@ -26,18 +24,17 @@ orig_CXXFLAGS="$CXXFLAGS" dnl# Checks for programs. -dnl AC_MAKE_SET - AC_PROG_CC AC_PROG_CXX -AC_PROG_CPP AC_PROG_INSTALL AC_AIX +AC_GNU_SOURCE AC_ISC_POSIX AC_LANG(C++) -dnl check wether we can link with gcc -lsupc++ +LINKER="$CXX" +dnl check whether we can link with gcc -lsupc++ if test x$GCC = xyes && test x$GXX = xyes; then dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it AC_MSG_CHECKING([for working libsupc++]) @@ -45,14 +42,13 @@ save_LIBS="$LIBS" CXX="$CC" LIBS="$LIBS -lsupc++" - LINKER="$CC" AC_LINK_IFELSE( [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], - [AC_MSG_RESULT(ok)], + [AC_MSG_RESULT(ok) + LINKER="$CC"], [ AC_MSG_RESULT([no, making everything bigger and slower]) LIBS="$save_LIBS" - LINKER="$save_CXX" ] ) CXX="$save_CXX" @@ -64,7 +60,7 @@ 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" + CXXFLAGS="-g -O3 -fno-rtti -fvisibility-inlines-hidden -fno-threadsafe-statics -fno-enforce-eh-specs" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="-g -O3"]) else CXXFLAGS="-O" @@ -72,34 +68,15 @@ CFLAGS="$CXXFLAGS" fi -AC_DEFINE(_GNU_SOURCE, 1, Use all glibc features.) - -case $host in - *-*-solaris* ) - AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris) - AC_DEFINE(_XOPEN_SOURCE, 2, Needed to get declarations for msg_control and msg_controllen on Solaris) - AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris) - ;; -esac - -dnl if test x$GXX = xyes; then -dnl CXXFLAGS="$CXXFLAGS" dnl I once had -fno-exceptions, but I am using them now... -dnl fi - dnl# FreeBSD needs to link libxpg4 -AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) +AC_SEARCH_LIBS(setlocale, xpg4) dnl# solaris needs to link libnsl and socket -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 AC_ENABLE_SHARED(no)dnl# libtool -dnl AC_ENABLE_STATIC(yes)dnl# libtool -dnl AC_PROG_LIBTOOL()dnl# libtool +AC_SEARCH_LIBS(gethostbyname, nsl) +AC_SEARCH_LIBS(socket, socket) support_frills=yes support_inheritpixmap=yes -support_tinting=yes support_fading=yes support_keepscrolling=yes support_selectionscrolling=yes @@ -110,11 +87,9 @@ support_scroll_rxvt=yes support_scroll_next=yes support_scroll_xterm=yes -support_scroll_plain=yes support_xim=yes -support_xpm=yes -support_afterimage=yes -support_afterstep=yes +support_pixbuf=yes +support_startup_notification=yes support_xft=yes support_unicode3=no support_combining=yes @@ -128,21 +103,13 @@ dnl# CHECKING COMMAND LINE OPTIONS dnl# -------------------------------------------------------------------------- -if test "x$enable_shared" = xyes; then - AC_DEFINE(LIBRXVT, 1, Build shared library version - specify via configure only) - INSTALL_LIBRXVT=yes -fi -AC_SUBST(INSTALL_LIBRXVT) - AC_ARG_ENABLE(everything, [ --enable-everything enable standard non-multichoice features - NOTE: this option is order dependent - NOTE: automatically enabled with --enable-shared], + NOTE: this option is order dependent], [ if test x$enableval = xno; then support_frills=no support_inheritpixmap=no - support_tinting=no support_fading=no support_keepscrolling=no support_selectionscrolling=no @@ -154,13 +121,11 @@ support_scroll_rxvt=no support_scroll_next=no support_scroll_xterm=no - support_scroll_plain=no support_utmp=no support_wtmp=no support_xim=no - support_xpm=no - support_afterimage=no - support_afterstep=no + support_pixbuf=no + support_startup_notification=no support_xft=no support_unicode3=no support_combining=no @@ -173,7 +138,6 @@ if test x$enableval = xyes; then support_frills=yes support_inheritpixmap=yes - support_tinting=yes support_fading=yes support_keepscrolling=yes support_selectionscrolling=yes @@ -185,13 +149,11 @@ support_scroll_rxvt=yes support_scroll_next=yes support_scroll_xterm=yes - support_scroll_plain=yes support_utmp=yes support_wtmp=yes support_xim=yes - support_xpm=yes - support_afterimage=yes - support_afterstep=yes + support_pixbuf=yes + support_startup_notification=yes support_xft=yes support_unicode3=yes support_combining=yes @@ -203,6 +165,42 @@ fi ]) +support_assertions=no +AC_ARG_ENABLE(assert, + [ --enable-assert enable assertions], + [if test x$enableval = xyes; then + support_assertions=yes + fi]) +if test x$support_assertions = xno; then + AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging)) +fi + +support_warnings=no +AC_ARG_ENABLE(warnings, + [ --enable-warnings turn on g++ warnings], + [if test x$enableval = xyes; then + support_warnings=yes + fi]) +if test x$GXX = xyes; then + if test $support_warnings = yes; then + save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-unused-value" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"]) + else + CXXFLAGS="$CXXFLAGS -w" + fi +fi + +support_256_color=no +AC_ARG_ENABLE(256-color, + [ --enable-256-color enable 256-color support], + [if test x$enableval = xyes; then + support_256_color=yes + fi]) +if test x$support_256_color = xyes; then + AC_DEFINE(USE_256_COLORS, 1, Define if you want 256-color support) +fi + AC_ARG_ENABLE(unicode3, [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters], [if test x$enableval = xyes -o x$enableval = xno; then @@ -227,24 +225,16 @@ support_styles=$enableval fi]) -AC_ARG_ENABLE(xpm-background, - [ --enable-xpm-background enable background pixmaps], +AC_ARG_ENABLE(pixbuf, + [ --enable-pixbuf enable integration with gdk-pixbuf for background images], [if test x$enableval = xyes -o x$enableval = xno; then - support_xpm=$enableval + support_pixbuf=$enableval fi]) -AC_ARG_ENABLE(afterimage, - [ --enable-afterimage enable integration with libAfterImage for background images], +AC_ARG_ENABLE(startup-notification, + [ --enable-startup-notification enable freedesktop startup notification support], [if test x$enableval = xyes -o x$enableval = xno; then - support_afterimage=$enableval - fi]) - -AC_ARG_WITH(afterimage_config, [ --with-afterimage-config=DIR use libAfterImage config script in DIR], afterimage_config="$withval",afterimage_config=NO) - -AC_ARG_ENABLE(afterstep, - [ --enable-afterstep enable integration with AfterStep window manager], - [if test x$enableval = xyes -o x$enableval = xno; then - support_afterstep=$enableval + support_startup_notification=$enableval fi]) AC_ARG_ENABLE(transparency, @@ -253,12 +243,6 @@ support_inheritpixmap=$enableval fi]) -AC_ARG_ENABLE(tinting, - [ --enable-tinting enable tinting of transparent bg], - [if test x$enableval = xyes -o x$enableval = xno; then - support_tinting=$enableval - fi]) - AC_ARG_ENABLE(fading, [ --enable-fading enable colors fading when off focus], [if test x$enableval = xyes -o x$enableval = xno; then @@ -289,14 +273,8 @@ support_perl=$enableval fi]) -AC_ARG_ENABLE(plain-scroll, - [ --enable-plain-scroll enable plain style scrollbar], - [if test x$enableval = xyes -o x$enableval = xno; then - support_scroll_plain=$enableval - fi]) - AC_ARG_WITH(codesets, - [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)], + [ --with-codesets=CS,... compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)], [codesets="$withval"]) AC_ARG_ENABLE(xim, @@ -331,7 +309,7 @@ RESFALLBACK=Rxvt AC_ARG_ENABLE(fallback, - [ --enable-fallback(=CLASS) fall back on CLASS resources in addition to URxvt ones (default: Rxvt)], + [ --enable-fallback@<:@=CLASS@:>@ fall back on CLASS resources in addition to URxvt ones (default: Rxvt)], [ test x$enableval = xyes && enableval=Rxvt test x$enableval = xno && enableval= @@ -360,7 +338,6 @@ [RXVTNAME="$withval"]) AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name]) -RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"` AC_SUBST(RXVTNAME) AC_ARG_ENABLE(swapscreen, @@ -400,7 +377,7 @@ fi]) AC_ARG_ENABLE(slipwheeling, - [ --enable-slipwheeling enable slip wheel scrolling (requires previous)], + [ --enable-slipwheeling enable slip wheel scrolling (requires --enable-mousewheel)], [if test x$enableval = xyes -o x$enableval = xno; then support_mouseslipwheel=$enableval fi]) @@ -418,7 +395,7 @@ fi]) AC_ARG_ENABLE(pointer-blank, - [ --enable-pointer-blank enable pointer blank when typing or inactive pointer], + [ --enable-pointer-blank enable pointer blanking when typing or inactive], [if test x$enableval = xyes -o x$enableval = xno; then support_pointer_blank=$enableval fi]) @@ -437,158 +414,52 @@ dnl# -------------------------------------------------------------------------- -AC_PATH_PROG(MV, mv, mv) -AC_PATH_PROG(CP, cp, cp) -AC_PATH_PROG(LN, ln, ln) -AC_PATH_PROG(SED, sed, sed) -AC_PATH_PROG(ECHO, echo, echo) -AC_PATH_PROG(CMP, cmp, cmp) -AC_PATH_PROG(TIC, tic) - -dnl# need a neat way to detect SVR4 or its features -dnl# in src/command.c we use these functions: -dnl# grantpt(), unlockpt(), ptsname(), which are defined in -dnl# - but are these also defined for other systems? - -dnl# hack to find if this is SVR4 -- who knows? -dnl## AC_MSG_CHECKING(for SVR4) -dnl## AC_EGREP_CPP(yes, -dnl## [#if defined (SVR4) || defined (_SVR4) || defined (__svr4__) -dnl## yes; -dnl## #endif -dnl## ], [AC_MSG_RESULT(yes); AC_DEFINE(PERHAPS_SVR4)], AC_MSG_RESULT(perhaps not?)) +LIBEV_M4_AVOID_LIBRT=1 +m4_include([libev/libev.m4]) + +dnl# -------------------------------------------------------------------------- + +AC_PATH_PROG(TIC, tic, :) AC_PATH_XTRA -dnl# the only reasonable way to find libXpm is do-it-yourself -dnl# only check if we want xpm-background +STARTUP_NOTIFICATION_CFLAGS= +STARTUP_NOTIFICATION_LIBS= -LIBAFTERIMAGE_CFLAGS= -AFTERIMAGE_LIBS= -have_afterimage= - -if test x$support_afterimage == xyes; then - AC_MSG_CHECKING(installed libAfterImage) - support_afterimage=no - if test "$afterimage_config" = "NO" ; then - if afterimage-config --version > /dev/null 2>&1 ; then - afterimage_config=afterimage-config - else - if test -x /usr/local/bin/afterimage-config; then - afterimage_config=/usr/local/bin/afterimage-config - fi - fi - 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 +if test x$support_startup_notification = xyes; then + support_startup_notification=no + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + AC_MSG_CHECKING(for libstartup-notification) + if test $PKG_CONFIG != no && $PKG_CONFIG --exists libstartup-notification-1.0; then + STARTUP_NOTIFICATION_CFLAGS="`$PKG_CONFIG libstartup-notification-1.0 --cflags`" + STARTUP_NOTIFICATION_LIBS="`$PKG_CONFIG libstartup-notification-1.0 --libs`" + support_startup_notification=yes + fi + + if test x$support_startup_notification = xyes; then + AC_MSG_RESULT(ok) + AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, Define if freedesktop startup notifications should be supported) + else + AC_MSG_RESULT(no) fi fi +AC_SUBST(STARTUP_NOTIFICATION_CFLAGS) +AC_SUBST(STARTUP_NOTIFICATION_LIBS) + dnl# -------------------------------------------------------------------------- dnl# CHECKING FOR HEADER FILES dnl# -------------------------------------------------------------------------- -AC_HEADER_SYS_WAIT AC_CHECK_HEADERS( \ - assert.h \ - fcntl.h \ - stdarg.h \ - stdlib.h \ - string.h \ - termios.h \ - unistd.h \ sys/byteorder.h \ sys/ioctl.h \ - sys/select.h \ sys/sockio.h \ sys/strredir.h \ - sys/time.h \ stdint.h \ wchar.h \ - cwchar \ - clocale \ ) -AC_HEADER_TIME - -dnl# check to allow both and -AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl, -[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -#include -#ifdef HAVE_TERMIOS_H -#include -#endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])]) - -dnl# ELF systems may want to store paths for dynamic libraries. -dnl# Lets see if the compiler can accept "-Rpath" or "-Wl,-Rpath" -dnl# At least one version of SunOS wants "-R path" but it's not checked yet. -if test -n "$GCC"; then - LDARG="-Wl," -else - LDARG="" -fi -changequote(, )dnl -R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-rpath '$LDARG'\1/g' -changequote([, ])dnl - -ac_save_CFLAGS=$CFLAGS -ac_save_LIBS=$LIBS -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([[#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)])]) -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([[#include -#include -main() -{ - exit(0); - (void) XOpenDisplay("foobar"); -}]])],[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 -fi - -AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer, -[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])]) -if test x$rxvt_cv_xpointer = xyes; then - AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef) -fi -LIBS=$ac_save_LIBS -CFLAGS=$ac_save_CFLAGS - -AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_xlib_illegal_access, +AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access, [AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([ #define XLIB_ILLEGAL_ACCESS @@ -597,161 +468,72 @@ Display *dpy; dpy->xdefaults = (char *)0; ])], - [rxvt_xlib_illegal_access=yes],[rxvt_xlib_illegal_access=no] + [rxvt_cv_xlib_illegal_access=yes],[rxvt_cv_xlib_illegal_access=no] )]) -if test x$rxvt_xlib_illegal_access = xyes; then +if test x$rxvt_cv_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 - -dnl> AC_HEADER_STDC dnl# skip this test, Sun always fails anyhow. - dnl# -------------------------------------------------------------------------- dnl# CHECKING FOR MISSING TYPEDEFS dnl# -------------------------------------------------------------------------- dnl# Missing typedefs and replacements AC_TYPE_MODE_T -dnl> AC_CHECK_TYPE(umode_t, int) -dnl> AC_CHECK_TYPE(off_t, long) AC_TYPE_PID_T AC_TYPE_UID_T - -AC_CHECK_SIZEOF(short, 2) -AC_CHECK_SIZEOF(int, 4) -dnl AC_CHECK_SIZEOF(long, 4) -AC_CHECK_SIZEOF(long long, 8) -AC_CHECK_SIZEOF(int *, 4) - -dnl# see usage below -AC_DEFUN([RXVT_CHECK_SIZE], - [AC_CACHE_CHECK([for $2], $1, - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[$2 dummy;]])],[$1=yes],[dnl -if test "$ac_cv_sizeof_char" -ge $3; then - $1="$4 char" -else - if test "$ac_cv_sizeof_short" -ge $3; then - $1="$4 short" - else - if test "$ac_cv_sizeof_int" -ge $3; then - $1="$4 int" - else - if test "$ac_cv_sizeof_long" -ge $3; then - $1="$4 long" - else - if test "$ac_cv_sizeof_long_long" -ge $3; then - $1="$4 long long" - else - $1="$4 $5" # we _must_ have a (possibly wrong) default - fi - fi - fi - fi -fi])])] -if test x"$$1" != xyes; then - $6="typedef $$1 $2;" -else - if test x"$4" = x; then - $6="/* typedef $5 $2; */" - else - $6="/* typedef $4 $5 $2; */" - fi -fi dnl -) -dnl# -dnl# Look for types the system may know about anyway. -dnl# -RXVT_CHECK_SIZE(rxvt_cv_int16_t, int16_t, 2, , short, rxvt_int16_typedef) -AC_SUBST(rxvt_int16_typedef) -RXVT_CHECK_SIZE(rxvt_cv_uint16_t, uint16_t, 2, unsigned, short, rxvt_uint16_typedef) -AC_SUBST(rxvt_uint16_typedef) -RXVT_CHECK_SIZE(rxvt_cv_int32_t, int32_t, 4, , int, rxvt_int32_typedef) -AC_SUBST(rxvt_int32_typedef) -RXVT_CHECK_SIZE(rxvt_cv_uint32_t, uint32_t, 4, unsigned, int, rxvt_uint32_typedef) -AC_SUBST(rxvt_uint32_typedef) -dnl RXVT_CHECK_SIZE(rxvt_cv_int64_t, int64_t, 8, , long long, rxvt_int64_typedef) -dnl AC_SUBST(rxvt_int64_typedef) -dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef) -dnl AC_SUBST(rxvt_uint64_typedef) -dnl# -dnl# Now look for another we use -dnl# -if test "$ac_cv_sizeof_int_p" -eq 8; then - rxvt_intp_define="#define intp_t int64_t" - rxvt_u_intp_define="#define u_intp_t u_int64_t" -else - if test "$ac_cv_sizeof_int_p" -eq 4; then - rxvt_intp_define="#define intp_t int32_t" - rxvt_u_intp_define="#define u_intp_t u_int32_t" - else - if test "$ac_cv_sizeof_int_p" -eq 2; then - rxvt_intp_define="#define intp_t int16_t" - rxvt_u_intp_define="#define u_intp_t u_int16_t" - else - rxvt_intp_define="#error set intp_t" - rxvt_u_intp_define="#error set u_intp_t" - fi - fi -fi -AC_SUBST(rxvt_intp_define) -AC_SUBST(rxvt_u_intp_define) +AC_TYPE_INT16_T +AC_TYPE_UINT16_T +AC_TYPE_INT32_T +AC_TYPE_UINT32_T dnl# -------------------------------------------------------------------------- dnl# CHECKING FOR LIBRARY FUNCTIONS dnl# -------------------------------------------------------------------------- -AC_TYPE_SIGNAL -dnl> AC_FUNC_VPRINTF - -AC_CHECK_FUNCS( \ - unsetenv \ - setutent \ - on_exit \ -) +AC_CHECK_FUNCS(unsetenv) UTMP_CHECK dnl# -------------------------------------------------------------------------- -dnl# find ttys/ttytab -AC_CACHE_CHECK(where ttys/ttytab is located, rxvt_cv_path_ttytab, -[for ttys_file in dnl - /etc/ttys /etc/ttytab; -do - if test -f "$ttys_file" ; then - rxvt_cv_path_ttytab=$ttys_file - break - fi -done -]) -if test x$rxvt_cv_path_ttytab != x; then - AC_DEFINE_UNQUOTED(TTYTAB_FILENAME, "$rxvt_cv_path_ttytab", Define location of ttys/ttytab) -fi - dnl# -------------------------------------------------------------------------- dnl# -------------------------------------------------------------------------- dnl# this is a really hack test for some basic Xlocale stuff -ac_save_LIBS=$LIBS -ac_save_CFLAGS=$CFLAGS +save_LIBS=$LIBS +save_CFLAGS=$CFLAGS CFLAGS="$CFLAGS $X_CFLAGS" LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" -if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then - LIBS=`echo $LIBS | sed "$R_TRANSLATE"` -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) -exit (XSupportsLocale() ? 0 : 1); -else -exit (1);}]])],[dnl - rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl - AC_MSG_WARN(Define NO_XLOCALE in config.h manually)])]) -if test x$rxvt_cv_func_xlocale = xyes; then - AC_DEFINE(HAVE_XLOCALE, 1, Define if Xlocale support works) +if test x$support_xim = xyes; then + AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + #include + int main() { + char *p; + if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) + exit (XSupportsLocale() ? 0 : 1); + else + exit (1); + } + ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])]) + 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) + AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb, + [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #include + + void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3); + + void f() { + XIMCallback cb; + cb.callback = im_destroy_cb; + } + ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)]) + + if test x$rxvt_cv_broken_ximcb = xyes; then + AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.) + fi + fi fi AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale, @@ -760,14 +542,8 @@ if test x$rxvt_cv_func_xsetlocale = xyes; then AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works) fi -LIBS=$ac_save_LIBS -CFLAGS=$ac_save_CFLAGS - -AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])]) -if test x$rxvt_cv_func_setlocale = xyes; then - AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works) -fi +LIBS=$save_LIBS +CFLAGS=$save_CFLAGS AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])]) @@ -777,22 +553,6 @@ SCM_RIGHTS_CHECK -AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb, -[AC_COMPILE_IFELSE([ -#include - -void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3); - -void f() { - XIMCallback cb; - cb.callback = im_destroy_cb; -} -],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)]) - -if test x$rxvt_broken_ximcb = xyes; then - AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.) -fi - PTY_CHECK TTY_GROUP_CHECK @@ -800,26 +560,94 @@ dnl# -------------------------------------------------------------------------- dnl# now add and remove other stuff dnl# -------------------------------------------------------------------------- -if test x$support_xft = xyes; then +support_image=no +if test x$support_inheritpixmap = xyes || test x$support_pixbuf = xyes; then + support_image=yes +fi +if test x$support_xft = xyes || test x$support_image = xyes; then + rxvt_have_xrender=no + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + if test $PKG_CONFIG != no && $PKG_CONFIG --exists xrender; then + X_LIBS="`$PKG_CONFIG xrender --libs` $X_LIBS" + CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xrender --cflags`" + rxvt_have_xrender=yes + + save_LIBS="$LIBS" + LIBS="$LIBS $X_LIBS" + AC_CHECK_HEADER(X11/extensions/Xrender.h,,[rxvt_have_xrender=no]) + AC_CHECK_FUNC(XRenderFindStandardFormat,,[rxvt_have_xrender=no]) + LIBS="$save_LIBS" + fi +fi + +if test x$support_xft = xyes && test x$rxvt_have_xrender = xyes; then AC_PATH_PROG(PKG_CONFIG, pkg-config, no) if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then - LIBS="$LIBS `$PKG_CONFIG xft --libs`" + X_LIBS="`$PKG_CONFIG xft --libs` $X_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`" + X_LIBS="`$XFT_CONFIG --libs` $X_LIBS" CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`" fi fi + if test $PKG_CONFIG != no && $PKG_CONFIG --exists fontconfig; then + X_LIBS="`$PKG_CONFIG fontconfig --libs` $X_LIBS" + CPPFLAGS="$CPPFLAGS `$PKG_CONFIG fontconfig --cflags`" + fi + + save_LIBS="$LIBS" + LIBS="$LIBS $X_LIBS" AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no]) - AC_CHECK_LIB(Xft,XftDrawString32,,[support_xft=no]) + AC_CHECK_LIB(Xft,XftDrawString32,:,[support_xft=no]) + AC_CHECK_HEADERS(fontconfig/fontconfig.h,,[support_xft=no]) + AC_CHECK_LIB(fontconfig,FcPatternGet,:,[support_xft=no]) + LIBS="$save_LIBS" if test x$support_xft = xyes; then AC_DEFINE(XFT, 1, Define to enable xft support) fi fi + +image_lib=none + +PIXBUF_CFLAGS= +PIXBUF_LIBS= + +if test x$support_image = xyes && test x$rxvt_have_xrender = xyes; then + LIBS="$LIBS -lm" + AC_DEFINE(XRENDER, 1, Define to enable xrender support) + + if test x$support_inheritpixmap = xyes; then + AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background) + fi + + if test x$support_pixbuf = xyes; then + support_pixbuf=no + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + AC_MSG_CHECKING(for gdk-pixbuf) + if test $PKG_CONFIG != no && $PKG_CONFIG --exists gdk-pixbuf-2.0; then + PIXBUF_CFLAGS="`$PKG_CONFIG gdk-pixbuf-2.0 --cflags`" + PIXBUF_LIBS="`$PKG_CONFIG gdk-pixbuf-2.0 --libs`" + support_pixbuf=yes + fi + + if test x$support_pixbuf = xyes; then + AC_MSG_RESULT(ok) + image_lib=gdk-pixbuf + AC_DEFINE(HAVE_PIXBUF, 1, Define if you want to use gdk-pixbuf for image processing) + AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps.) + else + AC_MSG_RESULT(no) + fi + fi +fi + +AC_SUBST(PIXBUF_CFLAGS) +AC_SUBST(PIXBUF_LIBS) + if test x$support_styles = xyes; then AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support) fi @@ -832,12 +660,6 @@ if test x$support_fading = xyes; then AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost) fi -if test x$support_tinting = xyes; then - AC_DEFINE(TINTING, 1, Define if you want your background to be tinted) -fi -if test x$support_inheritpixmap = xyes; then - AC_DEFINE(TRANSPARENT, 1, Define if you want your background to use the parent window background) -fi if test x$support_keepscrolling = xno; then AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed) fi @@ -853,26 +675,13 @@ 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_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 -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 +scrolltypes=plain +AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars) if test x$support_scroll_rxvt = xyes; then AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars) - scrolltypes="rxvt" + scrolltypes="$scrolltypes rxvt" fi if test x$support_scroll_next = xyes; then AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars) @@ -882,12 +691,8 @@ AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars) scrolltypes="$scrolltypes xterm" fi -if test x$support_scroll_plain = xyes; then - AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars) - scrolltypes="$scrolltypes plain" -fi if test x$support_pointer_blank = xyes; then - AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing) + AC_DEFINE(POINTER_BLANK, 1, Define if you want to hide the pointer while typing) fi if test x$support_text_blink = xyes; then AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support) @@ -915,8 +720,7 @@ IF_PERL=\# if test x$support_perl = xyes; then - AC_PATH_PROG(PERL, perl5) - AC_PATH_PROG(PERL, perl) + AC_PATH_PROG(PERL, perl5, perl) AC_MSG_CHECKING(for $PERL suitability) if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then @@ -925,13 +729,13 @@ save_LIBS="$LIBS" CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`" LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`" - AC_TRY_LINK([ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include #include -],[ +]], [[ PerlInterpreter *perl = perl_alloc (); -],[rxvt_perl_link=yes],[rxvt_perl_link=no]) +]])],[rxvt_perl_link=yes],[rxvt_perl_link=no]) CXXFLAGS="$save_CXXFLAGS" LIBS="$save_LIBS" @@ -957,64 +761,10 @@ AC_SUBST(IF_PERL) AC_SUBST(PERL_O) -if test x$support_perl = xyes; then - support_frills=yes -fi - -AC_SUBST(DEBUG) -AC_SUBST(DINCLUDE) -AC_SUBST(CFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(LDFLAGS) -AC_SUBST(X_CFLAGS) - -dnl# Attack the libs -if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then - DLIB=`echo $DLIB | sed "$R_TRANSLATE"` - LIBS=`echo $LIBS | sed "$R_TRANSLATE"` - X_LIBS=`echo $X_LIBS | sed "$R_TRANSLATE"` - X_EXTRA_LIBS=`echo $X_EXTRA_LIBS | sed "$R_TRANSLATE"` - XPM_LIBS=`echo $XPM_LIBS | sed "$R_TRANSLATE"` -fi -AC_SUBST(DLIB) -AC_SUBST(LIBS) -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 - -dnl# revert HAVE_BLAH_H into a "#include " -AC_DEFUN([RXVT_DEFINE_TO_INCLUDE], dnl -[if test "$$3" = "$4" -o "$$5" = "$6"; then - $1="#include <$2>" -else - $1="/* #include <$2> */" -fi dnl -AC_SUBST($1)]) - -RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_stdarg_h, cstdarg, ac_cv_header_stdarg_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_stdlib_h, cstdlib, ac_cv_header_stdlib_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_unistd_h, unistd.h, ac_cv_header_unistd_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_string_h, cstring, ac_cv_header_string_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_fcntl_h, fcntl.h, ac_cv_header_fcntl_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_util_h, util.h, ac_cv_header_util_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_assert_h, assert.h, ac_cv_header_assert_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch) -RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes) AC_CONFIG_FILES([Makefile \ doc/Makefile \ src/Makefile \ -src/rxvtlib.h \ ]) AC_OUTPUT @@ -1027,18 +777,6 @@ Compiler flags: $CXXFLAGS Linker: $LINKER" -if test x$support_xpm = xyes; then - echo " Xpm library: $XPM_LIBS" -fi - -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 @@ -1052,17 +790,8 @@ fi echo echo " embedded perl: $support_perl" +echo " image library: $image_lib" echo -if test x$support_xpm = xneedsmanualspecification; then - echo ".----------------------------------------------------------------." - echo ". WARNING: --enable-xpm-background was specified however the ." - echo ". XPM includes files and libraries could not be found. ." - echo ". XPM backgrounds are now being DISABLED! If you want ." - echo ". to use them you should rerun configure with the ." - echo ". appropriate --with-xpm-includes=/path/to/xpm/includes ." - echo ". and --with-xpm-library=/path/to/xpm/library lines. ." - echo ".----------------------------------------------------------------." -fi if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then echo ".----------------------------------------------------------------." echo ". WARNING: --enable-xim was specified however the locale support ."