--- rxvt-unicode/configure.ac 2009/12/26 10:24:04 1.106 +++ rxvt-unicode/configure.ac 2011/01/05 17:41:24 1.128 @@ -34,7 +34,7 @@ AC_ISC_POSIX AC_LANG(C++) -dnl check wether we can link with gcc -lsupc++ +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++]) @@ -76,11 +76,11 @@ esac 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"])]) +AC_SEARCH_LIBS(gethostbyname, nsl) +AC_SEARCH_LIBS(socket, socket) support_frills=yes support_inheritpixmap=yes @@ -95,8 +95,8 @@ support_scroll_next=yes support_scroll_xterm=yes support_xim=yes +support_pixbuf=yes support_afterimage=yes -support_afterstep=yes support_xft=yes support_unicode3=no support_combining=yes @@ -131,8 +131,8 @@ support_utmp=no support_wtmp=no support_xim=no + support_pixbuf=no support_afterimage=no - support_afterstep=no support_xft=no support_unicode3=no support_combining=no @@ -159,8 +159,8 @@ support_utmp=yes support_wtmp=yes support_xim=yes + support_pixbuf=yes support_afterimage=yes - support_afterstep=yes support_xft=yes support_unicode3=yes support_combining=yes @@ -198,6 +198,16 @@ 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 @@ -234,11 +244,11 @@ afterimage_config=$withval/afterimage-config fi]) -dnl AC_ARG_ENABLE(afterstep, -dnl [ --enable-afterstep enable integration with AfterStep window manager], -dnl [if test x$enableval = xyes -o x$enableval = xno; then -dnl support_afterstep=$enableval -dnl fi]) +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_pixbuf=$enableval + fi]) AC_ARG_ENABLE(transparency, [ --enable-transparency enable transparent backgrounds], @@ -341,7 +351,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, @@ -399,7 +408,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]) @@ -427,6 +436,35 @@ AC_PATH_XTRA +image_lib=none + +PIXBUF_CFLAGS= +PIXBUF_LIBS= + +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 + support_afterimage=no + 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 + +AC_SUBST(PIXBUF_CFLAGS) +AC_SUBST(PIXBUF_LIBS) + AFTERIMAGE_CFLAGS= AFTERIMAGE_LIBS= AFTERIMAGE_VERSION= @@ -456,12 +494,18 @@ fi if test "x$support_afterimage" = "xyes"; then AC_MSG_RESULT($AFTERIMAGE_LIBS) + image_lib=libafterimage + AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage 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(AFTERIMAGE_CFLAGS) +AC_SUBST(AFTERIMAGE_LIBS) + dnl# -------------------------------------------------------------------------- dnl# CHECKING FOR HEADER FILES dnl# -------------------------------------------------------------------------- @@ -475,13 +519,7 @@ cwchar \ ) -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 - -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 @@ -490,9 +528,9 @@ 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 @@ -529,7 +567,7 @@ AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include #include - main() { + int main() { char *p; if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) exit (XSupportsLocale() ? 0 : 1); @@ -539,8 +577,8 @@ :])]) 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_broken_ximcb, - [AC_COMPILE_IFELSE([ + 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); @@ -549,9 +587,9 @@ XIMCallback cb; cb.callback = im_destroy_cb; } - ],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)]) + ]])],rxvt_cv_broken_ximcb=yes,rxvt_cv_broken_ximcb=no)]) - if test x$rxvt_broken_ximcb = xyes; then + 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 @@ -587,7 +625,23 @@ dnl# -------------------------------------------------------------------------- dnl# now add and remove other stuff dnl# -------------------------------------------------------------------------- -if test x$support_xft = xyes; then +if test x$support_xft = xyes || test x$support_inheritpixmap = 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 X_LIBS="`$PKG_CONFIG xft --libs` $X_LIBS" @@ -600,10 +654,17 @@ 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_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 @@ -623,6 +684,10 @@ AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost) fi if test x$support_inheritpixmap = xyes; then + if test x$rxvt_have_xrender = xyes; then + LIBS="$LIBS -lm" + AC_DEFINE(XRENDER, 1, Define to enable xrender support) + fi AC_DEFINE(ENABLE_TRANSPARENCY, 1, Define if you want your background to use the parent window background) fi if test x$support_keepscrolling = xno; then @@ -640,14 +705,6 @@ 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_afterimage = xyes; then - AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing) - AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps. Needs libAfterImage) -fi - -dnl if test x$support_afterstep = xyes; then -dnl AC_DEFINE(AFTERSTEP_INTEGRATION, 1, Define if you want to integrate with AfterStep window manager) -dnl fi scrolltypes=plain AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars) @@ -665,7 +722,7 @@ scrolltypes="$scrolltypes xterm" 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) @@ -735,20 +792,6 @@ AC_SUBST(IF_PERL) AC_SUBST(PERL_O) -AC_SUBST(CFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(LDFLAGS) -AC_SUBST(X_CFLAGS) - -dnl# Attack the libs -AC_SUBST(LIBS) -AC_SUBST(X_LIBS) -AC_SUBST(X_EXTRA_LIBS) - -AC_SUBST(AFTERIMAGE_CFLAGS) -AC_SUBST(AFTERIMAGE_LIBS) - -AC_ARG_PROGRAM AC_CONFIG_FILES([Makefile \ doc/Makefile \ @@ -778,8 +821,7 @@ fi echo echo " embedded perl: $support_perl" -echo " libafterimage: $support_afterimage" -dnl echo " AfterStep integration: $support_afterstep" +echo " image library: $image_lib" echo if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then echo ".----------------------------------------------------------------."