Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix a typo [thanks Guillaume]
[simgrid.git] / acmacro / gras_arch.m4
index 4b01dff..5258ca6 100644 (file)
@@ -39,10 +39,10 @@ AC_MSG_RESULT($GRAS_CHECK_SIZEOF_RES)
 ])
 
 dnl
-dnl GRAS_TWO_COMPLIMENT([type]): Make sure the type is two-compliment
+dnl GRAS_TWO_COMPLEMENT([type]): Make sure the type is two-complement
 dnl warning, this does not work with char (quite logical)
 dnl
-AC_DEFUN([GRAS_TWO_COMPLIMENT],
+AC_DEFUN([GRAS_TWO_COMPLEMENT],
 [
 AC_MSG_CHECKING(whether $1 is two-compliment)
 AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include "confdefs.h"
@@ -120,6 +120,9 @@ AC_DEFUN([GRAS_STRUCT_BOUNDARY],
   done 
  ])
  AC_MSG_RESULT($GRAS_STRUCT_BOUNDARY_RES)
+ if test x$GRAS_STRUCT_BOUNDARY_RES = x ; then
+   AC_MSG_ERROR([Cannot determine the minimal alignment boundary of $1 in structures])
+ fi
 ])
 
 # GRAS_ARCH(): check the gras_architecture of this plateform
@@ -131,7 +134,7 @@ AC_DEFUN([GRAS_ARCH],
 # Check for the architecture
 AC_C_BIGENDIAN(endian=1,endian=0,AC_MSG_ERROR([GRAS works only for little or big endian systems (yet)]))
 dnl Make sure we don't run on a non-two-compliment arch, since we dunno convert them
-GRAS_TWO_COMPLIMENT(int)
+GRAS_TWO_COMPLEMENT(int)
 AC_DEFINE_UNQUOTED(GRAS_BIGENDIAN,$endian,[define if big endian])
           
 GRAS_SIGNED_SIZEOF(char)              GRAS_STRUCT_BOUNDARY(char)
@@ -174,6 +177,8 @@ case $trace in
   l_C:1/1:_I:2/2:4/4:8/8:8/8:_P:8/8:8/8:_D:4/4:8/8:) gras_arch=1; gras_arch_name=little64;;
   B_C:1/1:_I:2/2:4/4:4/4:8/8:_P:4/4:4/4:_D:4/4:8/8:) gras_arch=2; gras_arch_name=big32;;
   B_C:1/1:_I:2/2:4/4:8/8:8/8:_P:8/8:8/8:_D:4/4:8/8:) gras_arch=3; gras_arch_name=big64;;
+  B_C:1/1:_I:2/2:4/4:4/4:8/8:_P:4/4:4/4:_D:4/4:8/4:) gras_arch=4; gras_arch_name=aix;;
+  B_C:1/1:_I:2/2:4/2:4/2:8/2:_P:4/2:4/2:_D:4/2:8/2:) gras_arch=5; gras_arch_name=arm;;
 esac
 if test x$gras_arch = xunknown ; then
   AC_MSG_RESULT([damnit ($trace)])