On Mon, Oct 10, 2005 at 11:26:41PM -0500, Brian Barrett wrote:
> On Oct 10, 2005, at 6:59 PM, Brooks Davis wrote:
> 
> > The configure output ends with:
> >
> > ...
> > config.status: creating test/util/Makefile
> > config.status: creating include/ompi_config.h
> > config.status: creating include/mpi.h
> > config.status: include/mpi.h is unchanged
> > config.status: linking ./opal/mca/timer/base/timer_base_null.h to  
> > opal/mca/timer/base/base_impl.h
> >
> > I've attached gziped copies of the configure output and config.log.
> 
> Ok, this was a silly error on our part - a header file wasn't shipped  
> as part of the distribution tarball.  I committed a patch to the  
> trunk to fix this bug and it should be in the 1.0 as soon as the 1.0  
> release manager gets a chance to review the commit (should be  
> tomorrow).  If you want to try a nightly, they are available here:
> 
>    http://www.open-mpi.org/nightly/
> 
> Of course, the 1.0 nightly for tomorrow morning will not have the fix  
> just yet.

Thanks.  With the following patchs and passing
--disable-pretty-print-stacktrace to configure I was able to get truck
at rev 7709 to build.  I haven't done any testing yet, but that's a good
first step.

The libutil.h check is to get openpty().  The existing code checked for
the libary, but not the header.

The f77_get_fortran_handle_max.m4 change is because FreeBSD's eval
appears to use ints internally so they overflow to negative numbers and
cause problems.  Fortunatly, they roll back over once properly escaped.

-- Brooks

Index: configure.ac
===================================================================
--- configure.ac        (revision 7709)
+++ configure.ac        (working copy)
@@ -1043,7 +1043,7 @@
 ompi_show_title "Header file tests"
 
 AC_CHECK_HEADERS([alloca.h aio.h arpa/inet.h dirent.h \
-    dlfcn.h execinfo.h err.h fcntl.h inttypes.h libgen.h \
+    dlfcn.h execinfo.h err.h fcntl.h inttypes.h libgen.h libutil.h \
     net/if.h netdb.h netinet/in.h netinet/tcp.h \
     poll.h pthread.h pty.h pwd.h sched.h stdint.h \
     string.h strings.h stropts.h sys/fcntl.h sys/ipc.h \
Index: config/f77_get_fortran_handle_max.m4
===================================================================
--- config/f77_get_fortran_handle_max.m4        (revision 7709)
+++ config/f77_get_fortran_handle_max.m4        (working copy)
@@ -34,7 +34,10 @@
         ompi_fint_max=`expr $ompi_fint_max \* 2`
         ompi_sizeof_fint=`expr $ompi_sizeof_fint - 1`
     done
-    ompi_fint_max=`expr $ompi_fint_max - 1`
+    # ompi_fint_max might be negative here due to integer rollover
+    # on some systems.  Escape it just in case.  This doesn't handle
+    # all possible cases, but hopefully it's good enough.
+    ompi_fint_max=`expr \( $ompi_fint_max \) - 1`
 fi
 
 # Get INT_MAX.  Compute a SWAG if we are cross compiling or something
@@ -55,7 +58,10 @@
     ompi_cint_max=`expr $ompi_cint_max \* 2`
     ompi_sizeof_cint=`expr $ompi_sizeof_cint - 1`
 done
-ompi_cint_max=`expr $ompi_cint_max - 1`])
+# ompi_cint_max might be negative here due to integer rollover
+# on some systems.  Escape it just in case.  This doesn't handle
+# all possible cases, but hopefully it's good enough.
+ompi_cint_max=`expr \( $ompi_cint_max \) - 1`])
 
 if test "$ompi_cint_max" = "0" ; then
     # wow - something went really wrong.  Be conservative
Index: orte/mca/iof/base/iof_base_setup.c
===================================================================
--- orte/mca/iof/base/iof_base_setup.c  (revision 7709)
+++ orte/mca/iof/base/iof_base_setup.c  (working copy)
@@ -47,6 +47,9 @@
 #  include <termio.h>
 # endif
 #endif
+#ifdef HAVE_LIBUTIL_H
+#include <libutil.h>
+#endif
 
 #include "mca/iof/base/iof_base_setup.h"
 

-- 
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

Attachment: pgpvl_TL1BdI2.pgp
Description: PGP signature

Reply via email to