… | |
… | |
30 | AC_PROG_CXX |
30 | AC_PROG_CXX |
31 | AC_PROG_CPP |
31 | AC_PROG_CPP |
32 | AC_PROG_INSTALL |
32 | AC_PROG_INSTALL |
33 | |
33 | |
34 | AC_AIX |
34 | AC_AIX |
|
|
35 | AC_GNU_SOURCE |
35 | AC_ISC_POSIX |
36 | AC_ISC_POSIX |
36 | AC_LANG(C++) |
37 | AC_LANG(C++) |
37 | |
38 | |
38 | dnl check wether we can link with gcc -lsupc++ |
39 | dnl check wether we can link with gcc -lsupc++ |
39 | if test x$GCC = xyes && test x$GXX = xyes; then |
40 | if test x$GCC = xyes && test x$GXX = xyes; then |
… | |
… | |
68 | CXXFLAGS="-O" |
69 | CXXFLAGS="-O" |
69 | fi |
70 | fi |
70 | CFLAGS="$CXXFLAGS" |
71 | CFLAGS="$CXXFLAGS" |
71 | fi |
72 | fi |
72 | |
73 | |
73 | AC_DEFINE(_GNU_SOURCE, 1, Use all glibc features.) |
|
|
74 | |
|
|
75 | case $host in |
74 | case $host in |
76 | *-*-solaris* ) |
75 | *-*-solaris* ) |
77 | AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris) |
76 | AC_DEFINE(_XOPEN_SOURCE, 500, Needed to get declarations for msg_control and msg_controllen on Solaris) |
78 | ;; |
77 | ;; |
79 | esac |
78 | esac |
80 | |
|
|
81 | dnl if test x$GXX = xyes; then |
|
|
82 | dnl CXXFLAGS="$CXXFLAGS" dnl I once had -fno-exceptions, but I am using them now... |
|
|
83 | dnl fi |
|
|
84 | |
79 | |
85 | dnl# FreeBSD needs to link libxpg4 |
80 | dnl# FreeBSD needs to link libxpg4 |
86 | AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) |
81 | AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])]) |
87 | |
82 | |
88 | dnl# solaris needs to link libnsl and socket |
83 | dnl# solaris needs to link libnsl and socket |
… | |
… | |
480 | |
475 | |
481 | dnl# -------------------------------------------------------------------------- |
476 | dnl# -------------------------------------------------------------------------- |
482 | dnl# CHECKING FOR HEADER FILES |
477 | dnl# CHECKING FOR HEADER FILES |
483 | dnl# -------------------------------------------------------------------------- |
478 | dnl# -------------------------------------------------------------------------- |
484 | AC_CHECK_HEADERS( \ |
479 | AC_CHECK_HEADERS( \ |
485 | assert.h \ |
|
|
486 | fcntl.h \ |
|
|
487 | stdarg.h \ |
|
|
488 | stdlib.h \ |
|
|
489 | string.h \ |
|
|
490 | termios.h \ |
|
|
491 | unistd.h \ |
|
|
492 | sys/byteorder.h \ |
480 | sys/byteorder.h \ |
493 | sys/ioctl.h \ |
481 | sys/ioctl.h \ |
494 | sys/select.h \ |
|
|
495 | sys/sockio.h \ |
482 | sys/sockio.h \ |
496 | sys/strredir.h \ |
483 | sys/strredir.h \ |
497 | sys/time.h \ |
|
|
498 | stdint.h \ |
484 | stdint.h \ |
499 | wchar.h \ |
485 | wchar.h \ |
500 | cwchar \ |
486 | cwchar \ |
501 | clocale \ |
|
|
502 | ) |
487 | ) |
503 | |
488 | |
504 | dnl# check to allow both <termios.h> and <sys/ioctl.h> |
489 | dnl# check to allow both <termios.h> and <sys/ioctl.h> |
505 | AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl, |
490 | AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl, |
506 | [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h> |
491 | [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h> |
507 | #include <sys/ioctl.h> |
492 | #include <sys/ioctl.h> |
508 | #ifdef HAVE_TERMIOS_H |
|
|
509 | #include <termios.h> |
493 | #include <termios.h> |
510 | #endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])]) |
494 | ]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])]) |
511 | |
495 | |
512 | AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer, |
496 | AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer, |
513 | [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])]) |
497 | [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])]) |
514 | if test x$rxvt_cv_xpointer = xyes; then |
498 | if test x$rxvt_cv_xpointer = xyes; then |
515 | AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef) |
499 | AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef) |
… | |
… | |
533 | dnl# -------------------------------------------------------------------------- |
517 | dnl# -------------------------------------------------------------------------- |
534 | dnl# CHECKING FOR MISSING TYPEDEFS |
518 | dnl# CHECKING FOR MISSING TYPEDEFS |
535 | dnl# -------------------------------------------------------------------------- |
519 | dnl# -------------------------------------------------------------------------- |
536 | dnl# Missing typedefs and replacements |
520 | dnl# Missing typedefs and replacements |
537 | AC_TYPE_MODE_T |
521 | AC_TYPE_MODE_T |
538 | dnl> AC_CHECK_TYPE(umode_t, int) |
|
|
539 | dnl> AC_CHECK_TYPE(off_t, long) |
|
|
540 | AC_TYPE_PID_T |
522 | AC_TYPE_PID_T |
541 | AC_TYPE_UID_T |
523 | AC_TYPE_UID_T |
542 | |
524 | AC_TYPE_INT16_T |
543 | AC_CHECK_SIZEOF(short, 2) |
525 | AC_TYPE_UINT16_T |
544 | AC_CHECK_SIZEOF(int, 4) |
526 | AC_TYPE_INT32_T |
545 | dnl AC_CHECK_SIZEOF(long, 4) |
527 | AC_TYPE_UINT32_T |
546 | AC_CHECK_SIZEOF(long long, 8) |
|
|
547 | AC_CHECK_SIZEOF(int *, 4) |
|
|
548 | |
|
|
549 | dnl# see usage below |
|
|
550 | AC_DEFUN([RXVT_CHECK_SIZE], |
|
|
551 | [AC_CACHE_CHECK([for $2], $1, |
|
|
552 | [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdint.h>]], [[$2 dummy;]])],[$1=yes],[dnl |
|
|
553 | if test "$ac_cv_sizeof_char" -ge $3; then |
|
|
554 | $1="$4 char" |
|
|
555 | else |
|
|
556 | if test "$ac_cv_sizeof_short" -ge $3; then |
|
|
557 | $1="$4 short" |
|
|
558 | else |
|
|
559 | if test "$ac_cv_sizeof_int" -ge $3; then |
|
|
560 | $1="$4 int" |
|
|
561 | else |
|
|
562 | if test "$ac_cv_sizeof_long" -ge $3; then |
|
|
563 | $1="$4 long" |
|
|
564 | else |
|
|
565 | if test "$ac_cv_sizeof_long_long" -ge $3; then |
|
|
566 | $1="$4 long long" |
|
|
567 | else |
|
|
568 | $1="$4 $5" # we _must_ have a (possibly wrong) default |
|
|
569 | fi |
|
|
570 | fi |
|
|
571 | fi |
|
|
572 | fi |
|
|
573 | fi])])] |
|
|
574 | if test x"$$1" != xyes; then |
|
|
575 | $6="typedef $$1 $2;" |
|
|
576 | else |
|
|
577 | if test x"$4" = x; then |
|
|
578 | $6="/* typedef $5 $2; */" |
|
|
579 | else |
|
|
580 | $6="/* typedef $4 $5 $2; */" |
|
|
581 | fi |
|
|
582 | fi dnl |
|
|
583 | ) |
|
|
584 | dnl# |
|
|
585 | dnl# Look for types the system may know about anyway. |
|
|
586 | dnl# |
|
|
587 | RXVT_CHECK_SIZE(rxvt_cv_int16_t, int16_t, 2, , short, rxvt_int16_typedef) |
|
|
588 | AC_SUBST(rxvt_int16_typedef) |
|
|
589 | RXVT_CHECK_SIZE(rxvt_cv_uint16_t, uint16_t, 2, unsigned, short, rxvt_uint16_typedef) |
|
|
590 | AC_SUBST(rxvt_uint16_typedef) |
|
|
591 | RXVT_CHECK_SIZE(rxvt_cv_int32_t, int32_t, 4, , int, rxvt_int32_typedef) |
|
|
592 | AC_SUBST(rxvt_int32_typedef) |
|
|
593 | RXVT_CHECK_SIZE(rxvt_cv_uint32_t, uint32_t, 4, unsigned, int, rxvt_uint32_typedef) |
|
|
594 | AC_SUBST(rxvt_uint32_typedef) |
|
|
595 | dnl RXVT_CHECK_SIZE(rxvt_cv_int64_t, int64_t, 8, , long long, rxvt_int64_typedef) |
|
|
596 | dnl AC_SUBST(rxvt_int64_typedef) |
|
|
597 | dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef) |
|
|
598 | dnl AC_SUBST(rxvt_uint64_typedef) |
|
|
599 | dnl# |
|
|
600 | dnl# Now look for another we use |
|
|
601 | dnl# |
|
|
602 | if test "$ac_cv_sizeof_int_p" -eq 8; then |
|
|
603 | rxvt_intp_define="#define intp_t int64_t" |
|
|
604 | rxvt_u_intp_define="#define u_intp_t u_int64_t" |
|
|
605 | else |
|
|
606 | if test "$ac_cv_sizeof_int_p" -eq 4; then |
|
|
607 | rxvt_intp_define="#define intp_t int32_t" |
|
|
608 | rxvt_u_intp_define="#define u_intp_t u_int32_t" |
|
|
609 | else |
|
|
610 | if test "$ac_cv_sizeof_int_p" -eq 2; then |
|
|
611 | rxvt_intp_define="#define intp_t int16_t" |
|
|
612 | rxvt_u_intp_define="#define u_intp_t u_int16_t" |
|
|
613 | else |
|
|
614 | rxvt_intp_define="#error set intp_t" |
|
|
615 | rxvt_u_intp_define="#error set u_intp_t" |
|
|
616 | fi |
|
|
617 | fi |
|
|
618 | fi |
|
|
619 | AC_SUBST(rxvt_intp_define) |
|
|
620 | AC_SUBST(rxvt_u_intp_define) |
|
|
621 | |
528 | |
622 | dnl# -------------------------------------------------------------------------- |
529 | dnl# -------------------------------------------------------------------------- |
623 | dnl# CHECKING FOR LIBRARY FUNCTIONS |
530 | dnl# CHECKING FOR LIBRARY FUNCTIONS |
624 | dnl# -------------------------------------------------------------------------- |
531 | dnl# -------------------------------------------------------------------------- |
625 | AC_CHECK_FUNCS(unsetenv) |
532 | AC_CHECK_FUNCS(unsetenv) |
… | |
… | |
872 | $1="/* #include <$2> */" |
779 | $1="/* #include <$2> */" |
873 | fi dnl |
780 | fi dnl |
874 | AC_SUBST($1)]) |
781 | AC_SUBST($1)]) |
875 | |
782 | |
876 | RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch) |
783 | RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch) |
877 | RXVT_DEFINE_TO_INCLUDE(include_stdarg_h, cstdarg, ac_cv_header_stdarg_h, yes, notset, dontmatch) |
|
|
878 | RXVT_DEFINE_TO_INCLUDE(include_stdlib_h, cstdlib, ac_cv_header_stdlib_h, yes, notset, dontmatch) |
|
|
879 | RXVT_DEFINE_TO_INCLUDE(include_unistd_h, unistd.h, ac_cv_header_unistd_h, yes, notset, dontmatch) |
|
|
880 | RXVT_DEFINE_TO_INCLUDE(include_string_h, cstring, ac_cv_header_string_h, yes, notset, dontmatch) |
|
|
881 | RXVT_DEFINE_TO_INCLUDE(include_fcntl_h, fcntl.h, ac_cv_header_fcntl_h, yes, notset, dontmatch) |
|
|
882 | RXVT_DEFINE_TO_INCLUDE(include_util_h, util.h, ac_cv_header_util_h, yes, notset, dontmatch) |
|
|
883 | RXVT_DEFINE_TO_INCLUDE(include_assert_h, assert.h, ac_cv_header_assert_h, yes, notset, dontmatch) |
|
|
884 | RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch) |
784 | RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch) |
885 | RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch) |
|
|
886 | RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch) |
785 | RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch) |
887 | RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch) |
|
|
888 | RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes) |
|
|
889 | |
786 | |
890 | AC_CONFIG_FILES([Makefile \ |
787 | AC_CONFIG_FILES([Makefile \ |
891 | doc/Makefile \ |
788 | doc/Makefile \ |
892 | src/Makefile \ |
789 | src/Makefile \ |
893 | src/rxvtlib.h \ |
790 | src/rxvtlib.h \ |