* m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int.
authorErez Zadok <ezk@cs.sunysb.edu>
Fri, 7 Oct 2005 21:25:01 +0000 (21:25 +0000)
committerErez Zadok <ezk@cs.sunysb.edu>
Fri, 7 Oct 2005 21:25:01 +0000 (21:25 +0000)
* configure.in: test for <sys/immu.h> header.
Test for pte_t, but only on IRIX6 systems.

* Makefile.am (EXTRA_DIST_M4): distribute new type_pte_t.m4 file.

* m4/macros/type_pte_t.m4: new test for existence of pte_t
typedef, needed on some IRIX-6.5/gcc systems.

ChangeLog
Makefile.am
configure.in
m4/macros/os_cflags.m4
m4/macros/type_pte_t.m4 [new file with mode: 0644]

index 891383c40f595a1c340ff4df2776923254b542af..49a574b113401a90088985af828554a9225fa6eb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2005-10-07  Erez Zadok  <ezk@cs.sunysb.edu>
 
+       * m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int.
+
+       * configure.in: test for <sys/immu.h> header.
+       Test for pte_t, but only on IRIX6 systems.
+
+       * Makefile.am (EXTRA_DIST_M4): distribute new type_pte_t.m4 file.
+
+       * m4/macros/type_pte_t.m4: new test for existence of pte_t
+       typedef, needed on some IRIX-6.5/gcc systems.
+
        * m4/macros/header_templates.m4: add missing templates for
        HAVE_EXTERN_GETDTABLESIZE, HAVE_EXTERN_GETWD, and
        HAVE_EXTERN_UALARM.
index e64c20e7e9bb9edc527c3ccf48c8407764a46d9a..1c697b0e0528027a6d4404cd65bc59755d1e9844 100644 (file)
@@ -129,6 +129,7 @@ EXTRA_DIST_M4 =                             \
        m4/macros/type_lofs_args.m4                     \
        m4/macros/type_mfs_args.m4                      \
        m4/macros/type_pcfs_args.m4                     \
+       m4/macros/type_pte_t.m4                         \
        m4/macros/type_recvfrom_fromlen.m4              \
        m4/macros/type_rfs_args.m4                      \
        m4/macros/type_rpcvers_t.m4                     \
index ff9e8da4c33875f006d7043a1ce5575e553215c7..e3c425cd58aafefe94af29353b4b382184272d12 100644 (file)
@@ -55,7 +55,7 @@ AH_BOTTOM([
 dnl
 dnl AC_CONFIG_AUX_DIR(m4)
 AC_PREREQ(2.52)
-AC_REVISION($Revision: 1.119 $)
+AC_REVISION($Revision: 1.120 $)
 AC_COPYRIGHT([Copyright (c) 1997-2005 Erez Zadok])
 dnl find out system type
 AC_MSG_NOTICE(*** SYSTEM TYPES ***)
@@ -497,6 +497,7 @@ AC_CHECK_HEADERS(                   \
        sys/fsid.h                      \
        sys/fstyp.h                     \
        sys/ioctl.h                     \
+       sys/immu.h                      \
        sys/lock.h                      \
        sys/machine.h                   \
        sys/mbuf.h                      \
@@ -739,6 +740,11 @@ dnl Generic Typedef Checks
 AC_MSG_NOTICE(*** GENERIC TYPEDEFS ***)
 AMU_TYPE_TIME_T
 AMU_TYPE_RPCVERS_T
+case "${host_os}" in
+       irix6* )
+AMU_TYPE_PTE_T
+       ;;
+esac
 AMU_CHECK_FHANDLE
 AMU_CHECK_MTYPE_TYPE
 AMU_CHECK_MTYPE_PRINTF_TYPE
index d2faf8e62c282349e7da306084b0a5a7dc459aa6..c57dec70db2f79af6397ebb9c2147719ada4a57a 100644 (file)
@@ -12,10 +12,6 @@ case "${host_os}" in
                                # do not use 64-bit compiler
                                ac_cv_os_cflags="-n32 -mips3 -Wl,-woff,84"
                                ;;
-                       gcc )   # with gcc 3.4.3 on irix-6.5, we get pte_t
-                               # undefined.  So give it a dummy value.
-                               ac_cv_os_cflags="-Dpte_t=u_int"
-                               ;;
                esac
                ;;
        osf[[1-3]]* )
diff --git a/m4/macros/type_pte_t.m4 b/m4/macros/type_pte_t.m4
new file mode 100644 (file)
index 0000000..162b7b9
--- /dev/null
@@ -0,0 +1,15 @@
+dnl ######################################################################
+dnl check for type of pte_t (for Irix, usually in <sys/immu.h>)
+dnl Note: some gcc's on Irix 6.5 are broken and don't recognize pte_t,
+dnl so I'm defining it here to unsigned int, which is not necessarily correct,
+dnl but at least it gets am-utils to compile.
+AC_DEFUN([AMU_TYPE_PTE_T],
+[AC_CHECK_TYPE(pte_t, ,
+[AC_DEFINE_UNQUOTED(pte_t, unsigned int,
+        [Check if pte_t is defined in <sys/immu.h>])],
+[
+#ifdef HAVE_SYS_IMMU_H
+# include <sys/immu.h>
+#endif /* HAVE_SYS_IMMU_H */
+])])
+dnl ======================================================================