… | |
… | |
9 | |
9 | |
10 | AC_CANONICAL_HOST |
10 | AC_CANONICAL_HOST |
11 | |
11 | |
12 | dnl RXVT version |
12 | dnl RXVT version |
13 | changequote(, )dnl |
13 | changequote(, )dnl |
14 | VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` |
14 | VERSION=`sed -n -e 's/^.* VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` |
15 | DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` |
15 | DATE=`sed -n -e 's/^.* DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h` |
16 | changequote([, ])dnl |
16 | changequote([, ])dnl |
17 | AC_SUBST(VERSION)dnl |
17 | AC_SUBST(VERSION)dnl |
18 | AC_SUBST(DATE)dnl |
18 | AC_SUBST(DATE)dnl |
19 | |
19 | |
20 | echo "" |
20 | echo "" |
… | |
… | |
32 | AC_AIX |
32 | AC_AIX |
33 | AC_GNU_SOURCE |
33 | AC_GNU_SOURCE |
34 | AC_ISC_POSIX |
34 | AC_ISC_POSIX |
35 | AC_LANG(C++) |
35 | AC_LANG(C++) |
36 | |
36 | |
|
|
37 | LINKER="$CXX" |
37 | dnl check whether we can link with gcc -lsupc++ |
38 | dnl check whether we can link with gcc -lsupc++ |
38 | if test x$GCC = xyes && test x$GXX = xyes; then |
39 | if test x$GCC = xyes && test x$GXX = xyes; then |
39 | dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it |
40 | dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it |
40 | AC_MSG_CHECKING([for working libsupc++]) |
41 | AC_MSG_CHECKING([for working libsupc++]) |
41 | save_CXX="$CXX" |
42 | save_CXX="$CXX" |
42 | save_LIBS="$LIBS" |
43 | save_LIBS="$LIBS" |
43 | CXX="$CC" |
44 | CXX="$CC" |
44 | LIBS="$LIBS -lsupc++" |
45 | LIBS="$LIBS -lsupc++" |
45 | LINKER="$CC" |
|
|
46 | AC_LINK_IFELSE( |
46 | AC_LINK_IFELSE( |
47 | [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], |
47 | [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }],[])], |
48 | [AC_MSG_RESULT(ok)], |
48 | [AC_MSG_RESULT(ok) |
|
|
49 | LINKER="$CC"], |
49 | [ |
50 | [ |
50 | AC_MSG_RESULT([no, making everything bigger and slower]) |
51 | AC_MSG_RESULT([no, making everything bigger and slower]) |
51 | LIBS="$save_LIBS" |
52 | LIBS="$save_LIBS" |
52 | LINKER="$save_CXX" |
|
|
53 | ] |
53 | ] |
54 | ) |
54 | ) |
55 | CXX="$save_CXX" |
55 | CXX="$save_CXX" |
56 | fi |
56 | fi |
57 | AC_SUBST(LINKER,[$LINKER]) |
57 | AC_SUBST(LINKER,[$LINKER]) |
… | |
… | |
66 | else |
66 | else |
67 | CXXFLAGS="-O" |
67 | CXXFLAGS="-O" |
68 | fi |
68 | fi |
69 | CFLAGS="$CXXFLAGS" |
69 | CFLAGS="$CXXFLAGS" |
70 | fi |
70 | fi |
71 | |
|
|
72 | case $host in |
|
|
73 | *-*-solaris* ) |
|
|
74 | AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris) |
|
|
75 | ;; |
|
|
76 | esac |
|
|
77 | |
71 | |
78 | dnl# FreeBSD needs to link libxpg4 |
72 | dnl# FreeBSD needs to link libxpg4 |
79 | AC_SEARCH_LIBS(setlocale, xpg4) |
73 | AC_SEARCH_LIBS(setlocale, xpg4) |
80 | |
74 | |
81 | dnl# solaris needs to link libnsl and socket |
75 | dnl# solaris needs to link libnsl and socket |
… | |
… | |
94 | support_scroll_rxvt=yes |
88 | support_scroll_rxvt=yes |
95 | support_scroll_next=yes |
89 | support_scroll_next=yes |
96 | support_scroll_xterm=yes |
90 | support_scroll_xterm=yes |
97 | support_xim=yes |
91 | support_xim=yes |
98 | support_pixbuf=yes |
92 | support_pixbuf=yes |
99 | support_afterimage=yes |
93 | support_startup_notification=yes |
100 | support_xft=yes |
94 | support_xft=yes |
101 | support_unicode3=no |
95 | support_unicode3=no |
102 | support_combining=yes |
96 | support_combining=yes |
103 | support_8bitctrls=no |
97 | support_8bitctrls=no |
104 | support_iso14755=yes |
98 | support_iso14755=yes |
… | |
… | |
130 | support_scroll_xterm=no |
124 | support_scroll_xterm=no |
131 | support_utmp=no |
125 | support_utmp=no |
132 | support_wtmp=no |
126 | support_wtmp=no |
133 | support_xim=no |
127 | support_xim=no |
134 | support_pixbuf=no |
128 | support_pixbuf=no |
135 | support_afterimage=no |
129 | support_startup_notification=no |
136 | support_xft=no |
130 | support_xft=no |
137 | support_unicode3=no |
131 | support_unicode3=no |
138 | support_combining=no |
132 | support_combining=no |
139 | support_8bitctrls=no |
133 | support_8bitctrls=no |
140 | support_iso14755=no |
134 | support_iso14755=no |
… | |
… | |
158 | support_scroll_xterm=yes |
152 | support_scroll_xterm=yes |
159 | support_utmp=yes |
153 | support_utmp=yes |
160 | support_wtmp=yes |
154 | support_wtmp=yes |
161 | support_xim=yes |
155 | support_xim=yes |
162 | support_pixbuf=yes |
156 | support_pixbuf=yes |
163 | support_afterimage=yes |
157 | support_startup_notification=yes |
164 | support_xft=yes |
158 | support_xft=yes |
165 | support_unicode3=yes |
159 | support_unicode3=yes |
166 | support_combining=yes |
160 | support_combining=yes |
167 | #support_8bitctrls=yes |
161 | #support_8bitctrls=yes |
168 | support_iso14755=yes |
162 | support_iso14755=yes |
… | |
… | |
170 | support_perl=yes |
164 | support_perl=yes |
171 | codesets=all |
165 | codesets=all |
172 | fi |
166 | fi |
173 | ]) |
167 | ]) |
174 | |
168 | |
175 | ASSERTIONS=no |
169 | support_assertions=no |
176 | AC_ARG_ENABLE(assert, |
170 | AC_ARG_ENABLE(assert, |
177 | [ --enable-assert enable assertions], |
171 | [ --enable-assert enable assertions], |
178 | [if test x$enableval = xyes; then |
172 | [if test x$enableval = xyes; then |
179 | ASSERTIONS=yes |
173 | support_assertions=yes |
180 | fi]) |
174 | fi]) |
181 | if test x$ASSERTIONS = xno; then |
175 | if test x$support_assertions = xno; then |
182 | AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging)) |
176 | AC_DEFINE(NDEBUG, 1, Disable assertions (good for debugging)) |
183 | fi |
177 | fi |
184 | |
178 | |
185 | WARNINGS=no |
179 | support_warnings=no |
186 | AC_ARG_ENABLE(warnings, |
180 | AC_ARG_ENABLE(warnings, |
187 | [ --enable-warnings turn on g++ warnings], |
181 | [ --enable-warnings turn on g++ warnings], |
188 | [if test x$enableval = xyes; then |
182 | [if test x$enableval = xyes; then |
189 | WARNINGS=yes |
183 | support_warnings=yes |
190 | fi]) |
184 | fi]) |
191 | if test x$GXX = xyes; then |
185 | if test x$GXX = xyes; then |
192 | if test $WARNINGS = yes; then |
186 | if test $support_warnings = yes; then |
193 | save_CXXFLAGS="$CXXFLAGS" |
187 | save_CXXFLAGS="$CXXFLAGS" |
194 | CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-non-virtual-dtor" |
188 | CXXFLAGS="$CXXFLAGS -Wall -Wno-sign-compare -Wno-reorder -Wno-unused-value" |
195 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"]) |
189 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [], [CXXFLAGS="$save_CXXFLAGS"]) |
196 | else |
190 | else |
197 | CXXFLAGS="$CXXFLAGS -w" |
191 | CXXFLAGS="$CXXFLAGS -w" |
198 | fi |
192 | fi |
199 | fi |
193 | fi |
… | |
… | |
231 | [if test x$enableval = xyes -o x$enableval = xno; then |
225 | [if test x$enableval = xyes -o x$enableval = xno; then |
232 | support_styles=$enableval |
226 | support_styles=$enableval |
233 | fi]) |
227 | fi]) |
234 | |
228 | |
235 | AC_ARG_ENABLE(afterimage, |
229 | AC_ARG_ENABLE(afterimage, |
236 | [ --enable-afterimage enable integration with libAfterImage for background images], |
230 | [ --enable-afterimage enable integration with libAfterImage for background images (deprecated)], |
237 | [if test x$enableval = xyes -o x$enableval = xno; then |
231 | [if test x$enableval = xyes -o x$enableval = xno; then |
238 | support_afterimage=$enableval |
232 | support_afterimage=$enableval |
239 | fi]) |
233 | fi]) |
240 | |
234 | |
241 | AC_ARG_WITH(afterimage_config, |
235 | AC_ARG_WITH(afterimage_config, |
… | |
… | |
246 | |
240 | |
247 | AC_ARG_ENABLE(pixbuf, |
241 | AC_ARG_ENABLE(pixbuf, |
248 | [ --enable-pixbuf enable integration with gdk-pixbuf for background images], |
242 | [ --enable-pixbuf enable integration with gdk-pixbuf for background images], |
249 | [if test x$enableval = xyes -o x$enableval = xno; then |
243 | [if test x$enableval = xyes -o x$enableval = xno; then |
250 | support_pixbuf=$enableval |
244 | support_pixbuf=$enableval |
|
|
245 | fi]) |
|
|
246 | |
|
|
247 | AC_ARG_ENABLE(startup-notification, |
|
|
248 | [ --enable-startup-notification enable freedesktop startup notification support], |
|
|
249 | [if test x$enableval = xyes -o x$enableval = xno; then |
|
|
250 | support_startup_notification=$enableval |
251 | fi]) |
251 | fi]) |
252 | |
252 | |
253 | AC_ARG_ENABLE(transparency, |
253 | AC_ARG_ENABLE(transparency, |
254 | [ --enable-transparency enable transparent backgrounds], |
254 | [ --enable-transparency enable transparent backgrounds], |
255 | [if test x$enableval = xyes -o x$enableval = xno; then |
255 | [if test x$enableval = xyes -o x$enableval = xno; then |
… | |
… | |
463 | fi |
463 | fi |
464 | |
464 | |
465 | AC_SUBST(PIXBUF_CFLAGS) |
465 | AC_SUBST(PIXBUF_CFLAGS) |
466 | AC_SUBST(PIXBUF_LIBS) |
466 | AC_SUBST(PIXBUF_LIBS) |
467 | |
467 | |
|
|
468 | STARTUP_NOTIFICATION_CFLAGS= |
|
|
469 | STARTUP_NOTIFICATION_LIBS= |
|
|
470 | |
|
|
471 | if test x$support_startup_notification = xyes; then |
|
|
472 | support_startup_notification=no |
|
|
473 | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) |
|
|
474 | AC_MSG_CHECKING(for libstartup-notification) |
|
|
475 | if test $PKG_CONFIG != no && $PKG_CONFIG --exists libstartup-notification-1.0; then |
|
|
476 | STARTUP_NOTIFICATION_CFLAGS="`$PKG_CONFIG libstartup-notification-1.0 --cflags`" |
|
|
477 | STARTUP_NOTIFICATION_LIBS="`$PKG_CONFIG libstartup-notification-1.0 --libs`" |
|
|
478 | support_startup_notification=yes |
|
|
479 | fi |
|
|
480 | |
|
|
481 | if test x$support_startup_notification = xyes; then |
|
|
482 | AC_MSG_RESULT(ok) |
|
|
483 | AC_DEFINE(HAVE_STARTUP_NOTIFICATION, 1, Define if freedesktop startup notifications should be supported) |
|
|
484 | else |
|
|
485 | AC_MSG_RESULT(no) |
|
|
486 | fi |
|
|
487 | fi |
|
|
488 | |
|
|
489 | AC_SUBST(STARTUP_NOTIFICATION_CFLAGS) |
|
|
490 | AC_SUBST(STARTUP_NOTIFICATION_LIBS) |
|
|
491 | |
468 | AFTERIMAGE_CFLAGS= |
492 | AFTERIMAGE_CFLAGS= |
469 | AFTERIMAGE_LIBS= |
493 | AFTERIMAGE_LIBS= |
470 | AFTERIMAGE_VERSION= |
|
|
471 | |
494 | |
472 | if test x$support_afterimage = xyes; then |
495 | if test x$support_afterimage = xyes; then |
473 | support_afterimage=no |
496 | support_afterimage=no |
474 | |
497 | |
475 | if test "x$afterimage_config" = "x" ; then |
498 | if test "x$afterimage_config" = "x" ; then |
476 | AC_PATH_PROG(afterimage_config, afterimage-config, no) |
499 | AC_PATH_PROG(afterimage_config, afterimage-config, no) |
477 | fi |
500 | fi |
478 | if test "x$afterimage_config" != "xno" ; then |
501 | if test "x$afterimage_config" != "xno" ; then |
479 | AC_MSG_CHECKING(for libAfterImage version >= 1.15) |
502 | AC_MSG_CHECKING(for libAfterImage version >= 1.15) |
480 | xAFTERIMAGE_VERSION=`$afterimage_config --version` |
503 | AFTERIMAGE_VERSION=`$afterimage_config --version` |
481 | if test -n "$xAFTERIMAGE_VERSION" ; then |
504 | if test -n "$AFTERIMAGE_VERSION" ; then |
482 | xAFTERIMAGE_CFLAGS=`$afterimage_config --cflags` |
505 | AFTERIMAGE_CFLAGS=`$afterimage_config --cflags` |
483 | xAFTERIMAGE_LIBS=`$afterimage_config --libs` |
506 | AFTERIMAGE_LIBS=`$afterimage_config --libs` |
484 | if test "x$xAFTERIMAGE_LIBS" != "x"; then |
507 | if test "x$AFTERIMAGE_LIBS" != "x"; then |
485 | libai_ver_major=`echo $xAFTERIMAGE_VERSION | cut -f 1 -d .` |
508 | libai_ver_major=`echo $AFTERIMAGE_VERSION | cut -f 1 -d .` |
486 | libai_ver_minor=`echo $xAFTERIMAGE_VERSION | cut -f 2 -d .` |
509 | libai_ver_minor=`echo $AFTERIMAGE_VERSION | cut -f 2 -d .` |
487 | if test $libai_ver_major -gt 1 -o \( $libai_ver_major -eq 1 -a $libai_ver_minor -ge 15 \); then |
510 | if test $libai_ver_major -gt 1 -o \( $libai_ver_major -eq 1 -a $libai_ver_minor -ge 15 \); then |
488 | support_afterimage=yes |
511 | support_afterimage=yes |
489 | AFTERIMAGE_CFLAGS="$xAFTERIMAGE_CFLAGS" |
|
|
490 | AFTERIMAGE_LIBS="$xAFTERIMAGE_LIBS" |
|
|
491 | AFTERIMAGE_VERSION="$xAFTERIMAGE_VERSION" |
|
|
492 | fi |
512 | fi |
493 | fi |
513 | fi |
494 | fi |
514 | fi |
495 | if test "x$support_afterimage" = "xyes"; then |
515 | if test "x$support_afterimage" = "xyes"; then |
496 | AC_MSG_RESULT($AFTERIMAGE_LIBS) |
516 | AC_MSG_RESULT($AFTERIMAGE_LIBS) |
497 | image_lib=libafterimage |
517 | image_lib=libafterimage |
498 | AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing) |
518 | AC_DEFINE(HAVE_AFTERIMAGE, 1, Define if you want to use libAfterImage for image processing) |
499 | AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps.) |
519 | AC_DEFINE(BG_IMAGE_FROM_FILE, 1, Define if you want to have sexy-looking background pixmaps.) |
500 | else |
520 | else |
501 | AC_MSG_RESULT(no) |
521 | AC_MSG_RESULT(no) |
|
|
522 | AFTERIMAGE_CFLAGS= |
|
|
523 | AFTERIMAGE_LIBS= |
502 | fi |
524 | fi |
503 | fi |
525 | fi |
504 | fi |
526 | fi |
505 | |
527 | |
506 | AC_SUBST(AFTERIMAGE_CFLAGS) |
528 | AC_SUBST(AFTERIMAGE_CFLAGS) |
… | |
… | |
514 | sys/ioctl.h \ |
536 | sys/ioctl.h \ |
515 | sys/sockio.h \ |
537 | sys/sockio.h \ |
516 | sys/strredir.h \ |
538 | sys/strredir.h \ |
517 | stdint.h \ |
539 | stdint.h \ |
518 | wchar.h \ |
540 | wchar.h \ |
519 | cwchar \ |
|
|
520 | ) |
541 | ) |
521 | |
542 | |
522 | AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access, |
543 | AC_CACHE_CHECK([for XLIB_ILLEGAL_ACCESS], rxvt_cv_xlib_illegal_access, |
523 | [AC_COMPILE_IFELSE( |
544 | [AC_COMPILE_IFELSE( |
524 | [AC_LANG_PROGRAM([ |
545 | [AC_LANG_PROGRAM([ |
… | |
… | |
563 | save_CFLAGS=$CFLAGS |
584 | save_CFLAGS=$CFLAGS |
564 | CFLAGS="$CFLAGS $X_CFLAGS" |
585 | CFLAGS="$CFLAGS $X_CFLAGS" |
565 | LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" |
586 | LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" |
566 | if test x$support_xim = xyes; then |
587 | if test x$support_xim = xyes; then |
567 | AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, |
588 | AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale, |
568 | [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h> |
589 | [AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
|
|
590 | #include <X11/Xlib.h> |
569 | #include <stdlib.h> |
591 | #include <stdlib.h> |
570 | main() { |
592 | int main() { |
571 | char *p; |
593 | char *p; |
572 | if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) |
594 | if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p) |
573 | exit (XSupportsLocale() ? 0 : 1); |
595 | exit (XSupportsLocale() ? 0 : 1); |
574 | else |
596 | else |
575 | exit (1);}]])],[dnl |
597 | exit (1); |
|
|
598 | } |
576 | rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl |
599 | ]])],[rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[:])]) |
577 | :])]) |
|
|
578 | if test x$rxvt_cv_func_xlocale = xyes; then |
600 | if test x$rxvt_cv_func_xlocale = xyes; then |
579 | AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) |
601 | AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input) |
580 | AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb, |
602 | AC_CACHE_CHECK(for broken XIM callback, rxvt_cv_broken_ximcb, |
581 | [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ |
603 | [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ |
582 | #include <X11/Xlib.h> |
604 | #include <X11/Xlib.h> |
… | |
… | |
603 | fi |
625 | fi |
604 | LIBS=$save_LIBS |
626 | LIBS=$save_LIBS |
605 | CFLAGS=$save_CFLAGS |
627 | CFLAGS=$save_CFLAGS |
606 | |
628 | |
607 | AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale, |
629 | AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale, |
608 | [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])]) |
630 | [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <locale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])]) |
609 | if test x$rxvt_cv_func_setlocale = xyes; then |
631 | if test x$rxvt_cv_func_setlocale = xyes; then |
610 | AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works) |
632 | AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works) |
611 | fi |
633 | fi |
612 | |
634 | |
613 | AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, |
635 | AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo, |