svn commit: samba r13071 - in branches/SAMBA_4_0/source: build/m4 include/system

jpeach at samba.org jpeach at samba.org
Sun Jan 22 23:48:56 GMT 2006


Author: jpeach
Date: 2006-01-22 23:48:56 +0000 (Sun, 22 Jan 2006)
New Revision: 13071

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=13071

Log:
Work around a really annoying compiler warning where header file
ordering causes MIN and MAX to be redefined.

Modified:
   branches/SAMBA_4_0/source/build/m4/rewrite.m4
   branches/SAMBA_4_0/source/include/system/filesys.h


Changeset:
Modified: branches/SAMBA_4_0/source/build/m4/rewrite.m4
===================================================================
--- branches/SAMBA_4_0/source/build/m4/rewrite.m4	2006-01-22 23:34:28 UTC (rev 13070)
+++ branches/SAMBA_4_0/source/build/m4/rewrite.m4	2006-01-22 23:48:56 UTC (rev 13071)
@@ -67,7 +67,28 @@
 #include <sys/param.h>
 #endif])
 
+AC_CACHE_CHECK([for MAX in sys/param.h], samba_cv_sys_param_h_max,
+	AC_TRY_COMPILE([
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif], [int i = MAX(1,2)],
+	samba_cv_sys_param_h_max=yes, samba_cv_sys_param_h_max=no) )
 
+if test x"$samba_cv_sys_param_h_max" = x"yes"; then
+	AC_DEFINE(HAVE_SYS_PARAM_H_MAX, 1, [Whether sys/param.h declares the MAX macro])
+fi
+
+AC_CACHE_CHECK([for MIN in sys/param.h], samba_cv_sys_param_h_min, [
+	AC_TRY_COMPILE([
+#ifdef HAVE_SYS_PARAM_H
+#include <sys/param.h>
+#endif], [int i = MIN(1,2)],
+	samba_cv_sys_param_h_min=yes, samba_cv_sys_param_h_min=no)] )
+
+if test x"$samba_cv_sys_param_h_min" = x"yes"; then
+	AC_DEFINE(HAVE_SYS_PARAM_H_MIN, 1, [Whether sys/param.h declares the MIN macro])
+fi
+
 AC_TYPE_SIGNAL
 AC_TYPE_UID_T
 AC_TYPE_MODE_T

Modified: branches/SAMBA_4_0/source/include/system/filesys.h
===================================================================
--- branches/SAMBA_4_0/source/include/system/filesys.h	2006-01-22 23:34:28 UTC (rev 13070)
+++ branches/SAMBA_4_0/source/include/system/filesys.h	2006-01-22 23:48:56 UTC (rev 13071)
@@ -24,6 +24,17 @@
 #include <sys/stat.h>
 
 #ifdef HAVE_SYS_PARAM_H
+/* On (at least) IRIX and Linux, sys/param.h unconditionally defines the MAX
+ * and MIN macros. Since smb_macros.h might have already defined this, we
+ * choose to use the system versions if they are present. This avoids a MIPSPro
+ * compiler warning whenever this file is included.
+ */
+#if defined(HAVE_SYS_PARAM_H_MIN) && defined(MIN)
+#undef MIN
+#endif
+#if defined(HAVE_SYS_PARAM_H_MAX) && defined(MAX)
+#undef MAX
+#endif
 #include <sys/param.h>
 #endif
 



More information about the samba-cvs mailing list