irix-attempt-to-detect-kernel-mem-routines-20040317
authorDerrick Brashear <shadow@dementia.org>
Thu, 18 Mar 2004 05:12:18 +0000 (05:12 +0000)
committerDerrick Brashear <shadow@dementia.org>
Thu, 18 Mar 2004 05:12:18 +0000 (05:12 +0000)
FIXES 3651

first pass at routine to detect kernel mem* routines

====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
FIXES 3651

second try

====================
FIXES 3651

third try

====================
FIXES 3651

this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need

====================
FIXES 3651

this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need

====================
FIXES 3651

this time for sure.
includes the definitions too, this way we can not have macros conflict with
headers we don't need

acconfig.h
src/cf/irix-test.m4 [new file with mode: 0644]
src/cf/osconf.m4
src/config/param.sgi_65.h

index 47ec12f..8a1f21e 100644 (file)
@@ -34,6 +34,7 @@ static /**/const char *const rcsid[] = { (char *)rcsid, "\100(#)" msg }
 #undef EXPORTED_IA32_SYS_CALL_TABLE
 #undef EXPORTED_TASKLIST_LOCK
 #undef INODE_SETATTR_NOT_VOID
+#undef IRIX_HAS_MEM_FUNCS
 #undef RECALC_SIGPENDING_TAKES_VOID
 #undef STRUCT_ADDRESS_SPACE_HAS_GFP_MASK
 #undef STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK
diff --git a/src/cf/irix-test.m4 b/src/cf/irix-test.m4
new file mode 100644 (file)
index 0000000..354d159
--- /dev/null
@@ -0,0 +1,20 @@
+AC_DEFUN(IRIX_SYS_SYSTM_H_HAS_MEM_FUNCS, [
+AC_MSG_CHECKING(for mem* in sys/systm.h)
+save_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS -D_KERNEL -D__STRING_H__"
+AC_CACHE_VAL(ac_cv_irix_sys_systm_h_has_mem_funcs,
+[
+AC_TRY_COMPILE(
+[#include <sys/types.h>
+#include <sys/systm.h>],
+[
+extern void     *memcpy(char *, const void *, size_t);
+],
+ac_cv_irix_sys_systm_h_has_mem_funcs=no,
+ac_cv_irix_sys_systm_h_has_mem_funcs=yes)])
+CPPFLAGS="$save_CPPFLAGS"
+if test "$ac_cv_irix_sys_systm_h_has_mem_funcs" = "yes"; then
+  AC_DEFINE(IRIX_HAS_MEM_FUNCS, 1, [define if irix has memcpy and friends])
+fi
+AC_MSG_RESULT($ac_cv_irix_sys_systm_h_has_mem_funcs)
+])
index 7feca79..32334d7 100644 (file)
@@ -734,6 +734,7 @@ esac
 #
 case $AFS_SYSNAME in
        sgi_6*)
+               IRIX_SYS_SYSTM_H_HAS_MEM_FUNCS
                XFS_SIZE_CHECK="xfs_size_check"
                install_XFS_SIZE_CHECK='$(DESTDIR)${afssrvsbindir}/xfs_size_check'
                dest_XFS_SIZE_CHECK='$(DEST)/root.server/usr/afs/bin/xfs_size_check'
index 239d416..d69c1e1 100644 (file)
 #define AFS_EVENT_LOCK  1      /* osi_Sleep/osi_Wakeup use spinlock. */
 #define AFS_SGI_DUAL_FS_CACHE 1        /* implies supports EFS or XFS cache */
 
+#ifndef IRIX_HAS_MEM_FUNCS
 #define memset(A, B, S) bzero(A, S)
 #define memcpy(B, A, S) bcopy(A, B, S)
 #define memcmp(A, B, S) bcmp(A, B, S)
+#endif
 
 #endif /* KERNEL */