1
1
* Should fix the issues with 32 bit builds on 64 bit platforms
 * A few windows fixes
 * A few other minor / misc fixes

This commit was SVN r23226.
Этот коммит содержится в:
Jeff Squyres 2010-06-01 14:51:25 +00:00
родитель e734939ddf
Коммит 61f5528ec4
17 изменённых файлов: 505 добавлений и 295 удалений

Просмотреть файл

@ -7,7 +7,7 @@
major=1 major=1
minor=0 minor=0
release=0 release=1
# greek is used for alpha or beta release tags. If it is non-empty, # greek is used for alpha or beta release tags. If it is non-empty,
# it will be appended to the version number. It does not have to be # it will be appended to the version number. It does not have to be
@ -16,7 +16,7 @@ release=0
# requirement is that it must be entirely printable ASCII characters # requirement is that it must be entirely printable ASCII characters
# and have no white space. # and have no white space.
greek= greek=rc1
# If want_svn=1, then the SVN r number will be included in the overall # If want_svn=1, then the SVN r number will be included in the overall
# hwloc version number in some form. # hwloc version number in some form.
@ -33,11 +33,11 @@ want_svn=0
# distribution tarball is being made from an SVN checkout, the value # distribution tarball is being made from an SVN checkout, the value
# of svn_r in this file is replaced with the output of "svnversion". # of svn_r in this file is replaced with the output of "svnversion".
svn_r=r2100 svn_r=r2165
# The date when this release was created # The date when this release was created
date="May 17, 2010" date="May 28, 2010"
# The shared library version of hwloc's public library. This version # The shared library version of hwloc's public library. This version
# is maintained in accordance with the "Library Interface Versions" # is maintained in accordance with the "Library Interface Versions"

Просмотреть файл

@ -4,7 +4,7 @@
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
# Free Software Foundation, Inc. # Free Software Foundation, Inc.
timestamp='2010-03-22' timestamp='2010-05-21'
# This file is (in principle) common to ALL GNU software. # This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software # The presence of a machine in this file suggests that SOME GNU software
@ -124,8 +124,9 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations. # Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in case $maybe_os in
nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | \
kopensolaris*-gnu* | \ kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*) storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os os=-$maybe_os
@ -1307,7 +1308,8 @@ case $os in
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \ | -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -mingw32* | -linux-gnu* | -linux-android* \
| -linux-newlib* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* \ | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \

Просмотреть файл

@ -62,6 +62,7 @@ EOF])
# the real $top_srcdir, because we may be building in embedded # the real $top_srcdir, because we may be building in embedded
# mode). First, go back to the startdir incase the $srcdir is # mode). First, go back to the startdir incase the $srcdir is
# relative. # relative.
cd "$HWLOC_startdir" cd "$HWLOC_startdir"
cd "$srcdir"/hwloc_config_prefix cd "$srcdir"/hwloc_config_prefix
HWLOC_top_srcdir="`pwd`" HWLOC_top_srcdir="`pwd`"
@ -141,6 +142,53 @@ EOF])
[AC_DEFINE([HWLOC_SYM_TRANSFORM], [0])], [AC_DEFINE([HWLOC_SYM_TRANSFORM], [0])],
[AC_DEFINE([HWLOC_SYM_TRANSFORM], [1])]) [AC_DEFINE([HWLOC_SYM_TRANSFORM], [1])])
#
# Define C flags
#
# hwloc uses C99 style, so ensure that we can figure out which
# compiler flags will drive this.
hwloc_CC_save=$CC
hwloc_CFLAGS_save=$CFLAGS
AC_PROG_CC_C99
AS_IF([test x"$ac_cv_prog_cc_c99" = xno],
[AC_WARN([C99 support is required by hwloc])
$3],
[HWLOC_SETUP_CORE_AFTER_C99($1, $2, $3, $4)])
])
dnl Same order of parameters form HWLOC-SETUP-CORE
AC_DEFUN([HWLOC_SETUP_CORE_AFTER_C99],[
hwloc_CC_c99_flags=`echo $CC | sed -e "s/^$hwloc_CC_save//"`
CC=$hwloc_CC_save
CFLAGS=$hwloc_CFLAGS_save
# GCC specifics.
if test "x$GCC" = "xyes"; then
HWLOC_GCC_CFLAGS="-Wall -Wmissing-prototypes -Wundef"
HWLOC_GCC_CFLAGS="$HWLOC_GCC_CFLAGS -Wpointer-arith -Wcast-align"
fi
# Enample system extensions for O_DIRECTORY, fdopen, fssl, etc.
AC_USE_SYSTEM_EXTENSIONS
AH_VERBATIM([USE_HPUX_SYSTEM_EXTENSIONS],
[/* Enable extensions on HP-UX. */
#ifndef _HPUX_SOURCE
# undef _HPUX_SOURCE
#endif
])
AC_DEFINE([_HPUX_SOURCE], [1], [Are we building for HP-UX?])
AC_LANG_PUSH([C])
# Check to see if we're producing a 32 or 64 bit executable by
# checking the sizeof void*. Note that AC CHECK_SIZEOF even works
# when cross compiling (!), according to the AC 2.64 docs. This
# check is needed because on some systems, you can instruct the
# compiler to specifically build 32 or 64 bit executables -- even
# though the $target may indicate something different.
AC_CHECK_SIZEOF([void *])
# #
# Check OS support # Check OS support
# #
@ -210,57 +258,26 @@ EOF])
# #
AC_MSG_CHECKING([which CPU support to include]) AC_MSG_CHECKING([which CPU support to include])
case ${target} in case ${target} in
i*86-*-*) i*86-*-*|x86_64-*-*)
AC_DEFINE(HWLOC_X86_32_ARCH, 1, [Define to 1 on x86_32]) case ${ac_cv_sizeof_void_p} in
hwloc_x86_32=yes 4)
AC_MSG_RESULT([x86_32]) AC_DEFINE(HWLOC_X86_32_ARCH, 1, [Define to 1 on x86_32])
;; hwloc_x86_32=yes
x86_64-*-*) AC_MSG_RESULT([x86_32])
AC_DEFINE(HWLOC_X86_64_ARCH, 1, [Define to 1 on x86_64]) ;;
hwloc_x86_64=yes 8)
AC_MSG_RESULT([x86_64]) AC_DEFINE(HWLOC_X86_64_ARCH, 1, [Define to 1 on x86_64])
;; hwloc_x86_64=yes
AC_MSG_RESULT([x86_64])
;;
*)
AC_DEFINE(HWLOC_X86_64_ARCH, 1, [Define to 1 on x86_64])
hwloc_x86_64=yes
AC_MSG_RESULT([unknown -- assuming x86_64])
;;
esac
esac esac
#
# Define C flags
#
# hwloc uses C99 style, so ensure that we can figure out which
# compiler flags will drive this.
hwloc_CC_save=$CC
hwloc_CFLAGS_save=$CFLAGS
AC_PROG_CC_C99
AS_IF([test x"$ac_cv_prog_cc_c99" = xno],
[AC_WARN([C99 support is required by hwloc])
$3],
[HWLOC_SETUP_CORE_AFTER_C99($1, $2, $3, $4)])
])
dnl Same order of parameters form HWLOC-SETUP-CORE
AC_DEFUN([HWLOC_SETUP_CORE_AFTER_C99],[
hwloc_CC_c99_flags=`echo $CC | sed -e "s/^$hwloc_CC_save//"`
CC=$hwloc_CC_save
CFLAGS=$hwloc_CFLAGS_save
# GCC specifics.
if test "x$GCC" = "xyes"; then
HWLOC_GCC_CFLAGS="-Wall -Wmissing-prototypes -Wundef"
HWLOC_GCC_CFLAGS="$HWLOC_GCC_CFLAGS -Wpointer-arith -Wcast-align"
fi
# Enample system extensions for O_DIRECTORY, fdopen, fssl, etc.
AC_USE_SYSTEM_EXTENSIONS
AH_VERBATIM([USE_HPUX_SYSTEM_EXTENSIONS],
[/* Enable extensions on HP-UX. */
#ifndef _HPUX_SOURCE
# undef _HPUX_SOURCE
#endif
])
AC_DEFINE([_HPUX_SOURCE], [1], [Are we building for HP-UX?])
AC_LANG_PUSH([C])
_HWLOC_CHECK_DIFF_U _HWLOC_CHECK_DIFF_U
AC_CHECK_SIZEOF([unsigned long]) AC_CHECK_SIZEOF([unsigned long])
@ -445,7 +462,7 @@ AC_DEFUN([HWLOC_SETUP_CORE_AFTER_C99],[
) )
# check for kerrighed, but don't abort if not found # check for kerrighed, but don't abort if not found
HWLOC_PKG_CHECK_MODULES([KERRIGHED], [kerrighed >= 2.0], [], [:]) HWLOC_PKG_CHECK_MODULES([KERRIGHED], [kerrighed >= 2.0], [], [], [:])
AC_PATH_PROGS([HWLOC_MS_LIB], [lib]) AC_PATH_PROGS([HWLOC_MS_LIB], [lib])
AC_ARG_VAR([HWLOC_MS_LIB], [Path to Microsoft's Visual Studio `lib' tool]) AC_ARG_VAR([HWLOC_MS_LIB], [Path to Microsoft's Visual Studio `lib' tool])

Просмотреть файл

@ -186,7 +186,7 @@ EOF
# Cairo support # Cairo support
if test "x$enable_cairo" != "xno"; then if test "x$enable_cairo" != "xno"; then
HWLOC_PKG_CHECK_MODULES([CAIRO], [cairo], [:], [enable_cairo="no"]) HWLOC_PKG_CHECK_MODULES([CAIRO], [cairo], [cairo_fill], [:], [enable_cairo=no])
if test "x$enable_cairo" != "xno"; then if test "x$enable_cairo" != "xno"; then
AC_PATH_XTRA AC_PATH_XTRA
CFLAGS_save=$CFLAGS CFLAGS_save=$CFLAGS
@ -220,7 +220,7 @@ EOF
# XML support # XML support
if test "x$enable_xml" != "xno"; then if test "x$enable_xml" != "xno"; then
HWLOC_PKG_CHECK_MODULES([XML], [libxml-2.0], [:], [enable_xml="no"]) HWLOC_PKG_CHECK_MODULES([XML], [libxml-2.0], [xmlNewDoc], [:], [enable_xml="no"])
fi fi
if test "x$enable_xml" != "xno"; then if test "x$enable_xml" != "xno"; then

Просмотреть файл

@ -123,6 +123,7 @@ AC_DEFUN([HWLOC_PKG_CHECK_MODULES],[
and HWLOC_[]$1[]_LIBS to avoid the need to call pkg-config. and HWLOC_[]$1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.]) See the pkg-config man page for more details.])
# Check for failure of pkg-config
if test $HWLOC_pkg_failed = yes; then if test $HWLOC_pkg_failed = yes; then
_HWLOC_PKG_SHORT_ERRORS_SUPPORTED _HWLOC_PKG_SHORT_ERRORS_SUPPORTED
if test $HWLOC_pkg_short_errors_supported = yes; then if test $HWLOC_pkg_short_errors_supported = yes; then
@ -133,7 +134,7 @@ See the pkg-config man page for more details.])
# Put the nasty error message in config.log where it belongs # Put the nasty error message in config.log where it belongs
echo "$HWLOC_[]$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD echo "$HWLOC_[]$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
ifelse([$4], , [AC_MSG_ERROR(dnl ifelse([$5], , [AC_MSG_ERROR(dnl
[Package requirements ($2) were not met: [Package requirements ($2) were not met:
$HWLOCC_$1_PKG_ERRORS $HWLOCC_$1_PKG_ERRORS
@ -144,9 +145,9 @@ installed software in a non-standard prefix.
_HWLOC_PKG_TEXT _HWLOC_PKG_TEXT
])], ])],
[AC_MSG_RESULT([no]) [AC_MSG_RESULT([no])
$4]) $5])
elif test $HWLOC_pkg_failed = untried; then elif test $HWLOC_pkg_failed = untried; then
ifelse([$4], , [AC_MSG_FAILURE(dnl ifelse([$5], , [AC_MSG_FAILURE(dnl
[The pkg-config script could not be found or is too old. Make sure it [The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the HWLOC_PKG_CONFIG environment variable to the full is in your PATH or set the HWLOC_PKG_CONFIG environment variable to the full
path to pkg-config. path to pkg-config.
@ -154,11 +155,32 @@ path to pkg-config.
_HWLOC_PKG_TEXT _HWLOC_PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])], To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
[$4]) [$5])
else else
HWLOC_[]$1[]_CFLAGS=$HWLOC_pkg_cv_HWLOC_[]$1[]_CFLAGS
HWLOC_[]$1[]_LIBS=$HWLOC_pkg_cv_HWLOC_[]$1[]_LIBS
AC_MSG_RESULT([yes]) AC_MSG_RESULT([yes])
ifelse([$3], , :, [$3])
# If we got good results from pkg-config, check that they
# actually work (i.e., that we can link against the resulting
# $LIBS). The canonical example why we do this is if
# pkg-config returns 64 bit libraries but ./configure was run
# with CFLAGS=-m32 LDFLAGS=-m32. pkg-config gave us valid
# results, but we'll fail if we try to link. So detect that
# failure now.
hwloc_cflags_save=$CFLAGS
hwloc_libs_save=$LIBS
CFLAGS="$CFLAGS $HWLOC_pkg_cv_HWLOC_[]$1[]_CFLAGS"
LIBS="$LIBS $HWLOC_pkg_cv_HWLOC_[]$1[]_LIBS"
AC_CHECK_FUNC([$3], [hwloc_result=yes], [hwloc_result=no])
CFLAGS=$hwloc_cflags_save
LIBS=$hwloc_libs_save
AC_MSG_CHECKING([for final $1 support])
AS_IF([test "$hwloc_result" = "yes"],
[HWLOC_[]$1[]_CFLAGS=$HWLOC_pkg_cv_HWLOC_[]$1[]_CFLAGS
HWLOC_[]$1[]_LIBS=$HWLOC_pkg_cv_HWLOC_[]$1[]_LIBS
AC_MSG_RESULT([yes])
ifelse([$4], , :, [$4])],
[AC_MSG_RESULT([no])
ifelse([$5], , :, [$5])])
fi[]dnl fi[]dnl
])# HWLOC_PKG_CHECK_MODULES ])# HWLOC_PKG_CHECK_MODULES

474
opal/mca/paffinity/hwloc/hwloc/configure поставляемый
Просмотреть файл

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.65 for hwloc 1.0. # Generated by GNU Autoconf 2.65 for hwloc 1.0.1rc1.
# #
# Report bugs to <http://www.open-mpi.org/community/help/>. # Report bugs to <http://www.open-mpi.org/community/help/>.
# #
@ -701,8 +701,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='hwloc' PACKAGE_NAME='hwloc'
PACKAGE_TARNAME='hwloc' PACKAGE_TARNAME='hwloc'
PACKAGE_VERSION='1.0' PACKAGE_VERSION='1.0.1rc1'
PACKAGE_STRING='hwloc 1.0' PACKAGE_STRING='hwloc 1.0.1rc1'
PACKAGE_BUGREPORT='http://www.open-mpi.org/community/help/' PACKAGE_BUGREPORT='http://www.open-mpi.org/community/help/'
PACKAGE_URL='' PACKAGE_URL=''
@ -1541,7 +1541,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures hwloc 1.0 to adapt to many kinds of systems. \`configure' configures hwloc 1.0.1rc1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1616,7 +1616,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of hwloc 1.0:";; short | recursive ) echo "Configuration of hwloc 1.0.1rc1:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1770,7 +1770,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
hwloc configure 1.0 hwloc configure 1.0.1rc1
generated by GNU Autoconf 2.65 generated by GNU Autoconf 2.65
Copyright (C) 2009 Free Software Foundation, Inc. Copyright (C) 2009 Free Software Foundation, Inc.
@ -2412,7 +2412,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by hwloc $as_me 1.0, which was It was created by hwloc $as_me 1.0.1rc1, which was
generated by GNU Autoconf 2.65. Invocation command line was generated by GNU Autoconf 2.65. Invocation command line was
$ $0 $@ $ $0 $@
@ -3346,7 +3346,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='hwloc' PACKAGE='hwloc'
VERSION='1.0' VERSION='1.0.1rc1'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -5349,6 +5349,7 @@ $as_echo "$hwloc_mode" >&6; }
# the real $top_srcdir, because we may be building in embedded # the real $top_srcdir, because we may be building in embedded
# mode). First, go back to the startdir incase the $srcdir is # mode). First, go back to the startdir incase the $srcdir is
# relative. # relative.
cd "$HWLOC_startdir" cd "$HWLOC_startdir"
cd "$srcdir"/ cd "$srcdir"/
HWLOC_top_srcdir="`pwd`" HWLOC_top_srcdir="`pwd`"
@ -5460,132 +5461,6 @@ else
fi fi
#
# Check OS support
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which OS support to include" >&5
$as_echo_n "checking which OS support to include... " >&6; }
case ${target} in
*-*-linux*)
$as_echo "#define HWLOC_LINUX_SYS 1" >>confdefs.h
hwloc_linux=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Linux" >&5
$as_echo "Linux" >&6; }
;;
*-*-irix*)
$as_echo "#define HWLOC_IRIX_SYS 1" >>confdefs.h
hwloc_irix=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: IRIX" >&5
$as_echo "IRIX" >&6; }
;;
*-*-darwin*)
$as_echo "#define HWLOC_DARWIN_SYS 1" >>confdefs.h
hwloc_darwin=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Darwin" >&5
$as_echo "Darwin" >&6; }
;;
*-*-solaris*)
$as_echo "#define HWLOC_SOLARIS_SYS 1" >>confdefs.h
hwloc_solaris=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Solaris" >&5
$as_echo "Solaris" >&6; }
;;
*-*-aix*)
$as_echo "#define HWLOC_AIX_SYS 1" >>confdefs.h
hwloc_aix=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX" >&5
$as_echo "AIX" >&6; }
;;
*-*-osf*)
$as_echo "#define HWLOC_OSF_SYS 1" >>confdefs.h
hwloc_osf=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: OSF" >&5
$as_echo "OSF" >&6; }
;;
*-*-hpux*)
$as_echo "#define HWLOC_HPUX_SYS 1" >>confdefs.h
hwloc_hpux=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: HP-UX" >&5
$as_echo "HP-UX" >&6; }
;;
*-*-mingw*|*-*-cygwin*)
$as_echo "#define HWLOC_WIN_SYS 1" >>confdefs.h
hwloc_windows=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Windows" >&5
$as_echo "Windows" >&6; }
;;
*-*-*freebsd*)
$as_echo "#define HWLOC_FREEBSD_SYS 1" >>confdefs.h
hwloc_freebsd=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: FreeBSD" >&5
$as_echo "FreeBSD" >&6; }
;;
*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Unsupported! ($target)" >&5
$as_echo "Unsupported! ($target)" >&6; }
$as_echo "#define HWLOC_UNSUPPORTED_SYS 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ***********************************************************" >&5
$as_echo "$as_me: WARNING: ***********************************************************" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc does not support this system." >&5
$as_echo "$as_me: WARNING: *** hwloc does not support this system." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc will *attempt* to build (but it may not work)." >&5
$as_echo "$as_me: WARNING: *** hwloc will *attempt* to build (but it may not work)." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc's run-time results may be reduced to showing just one processor." >&5
$as_echo "$as_me: WARNING: *** hwloc's run-time results may be reduced to showing just one processor." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** You have been warned." >&5
$as_echo "$as_me: WARNING: *** You have been warned." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** Pausing to give you time to read this message..." >&5
$as_echo "$as_me: WARNING: *** Pausing to give you time to read this message..." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ***********************************************************" >&5
$as_echo "$as_me: WARNING: ***********************************************************" >&2;}
sleep 10
;;
esac
#
# Check CPU support
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which CPU support to include" >&5
$as_echo_n "checking which CPU support to include... " >&6; }
case ${target} in
i*86-*-*)
$as_echo "#define HWLOC_X86_32_ARCH 1" >>confdefs.h
hwloc_x86_32=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: x86_32" >&5
$as_echo "x86_32" >&6; }
;;
x86_64-*-*)
$as_echo "#define HWLOC_X86_64_ARCH 1" >>confdefs.h
hwloc_x86_64=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: x86_64" >&5
$as_echo "x86_64" >&6; }
;;
esac
# #
# Define C flags # Define C flags
# #
@ -5801,6 +5676,184 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_compiler_gnu=$ac_cv_c_compiler_gnu
# Check to see if we're producing a 32 or 64 bit executable by
# checking the sizeof void*. Note that AC CHECK_SIZEOF even works
# when cross compiling (!), according to the AC 2.64 docs. This
# check is needed because on some systems, you can instruct the
# compiler to specifically build 32 or 64 bit executables -- even
# though the $target may indicate something different.
# The cast to long int works around a bug in the HP C Compiler
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
# This bug is HP SR number 8606223364.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5
$as_echo_n "checking size of void *... " >&6; }
if test "${ac_cv_sizeof_void_p+set}" = set; then :
$as_echo_n "(cached) " >&6
else
if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p" "$ac_includes_default"; then :
else
if test "$ac_cv_type_void_p" = yes; then
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
{ as_fn_set_status 77
as_fn_error "cannot compute sizeof (void *)
See \`config.log' for more details." "$LINENO" 5; }; }
else
ac_cv_sizeof_void_p=0
fi
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5
$as_echo "$ac_cv_sizeof_void_p" >&6; }
cat >>confdefs.h <<_ACEOF
#define SIZEOF_VOID_P $ac_cv_sizeof_void_p
_ACEOF
#
# Check OS support
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which OS support to include" >&5
$as_echo_n "checking which OS support to include... " >&6; }
case ${target} in
*-*-linux*)
$as_echo "#define HWLOC_LINUX_SYS 1" >>confdefs.h
hwloc_linux=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Linux" >&5
$as_echo "Linux" >&6; }
;;
*-*-irix*)
$as_echo "#define HWLOC_IRIX_SYS 1" >>confdefs.h
hwloc_irix=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: IRIX" >&5
$as_echo "IRIX" >&6; }
;;
*-*-darwin*)
$as_echo "#define HWLOC_DARWIN_SYS 1" >>confdefs.h
hwloc_darwin=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Darwin" >&5
$as_echo "Darwin" >&6; }
;;
*-*-solaris*)
$as_echo "#define HWLOC_SOLARIS_SYS 1" >>confdefs.h
hwloc_solaris=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Solaris" >&5
$as_echo "Solaris" >&6; }
;;
*-*-aix*)
$as_echo "#define HWLOC_AIX_SYS 1" >>confdefs.h
hwloc_aix=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX" >&5
$as_echo "AIX" >&6; }
;;
*-*-osf*)
$as_echo "#define HWLOC_OSF_SYS 1" >>confdefs.h
hwloc_osf=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: OSF" >&5
$as_echo "OSF" >&6; }
;;
*-*-hpux*)
$as_echo "#define HWLOC_HPUX_SYS 1" >>confdefs.h
hwloc_hpux=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: HP-UX" >&5
$as_echo "HP-UX" >&6; }
;;
*-*-mingw*|*-*-cygwin*)
$as_echo "#define HWLOC_WIN_SYS 1" >>confdefs.h
hwloc_windows=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Windows" >&5
$as_echo "Windows" >&6; }
;;
*-*-*freebsd*)
$as_echo "#define HWLOC_FREEBSD_SYS 1" >>confdefs.h
hwloc_freebsd=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: FreeBSD" >&5
$as_echo "FreeBSD" >&6; }
;;
*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: Unsupported! ($target)" >&5
$as_echo "Unsupported! ($target)" >&6; }
$as_echo "#define HWLOC_UNSUPPORTED_SYS 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ***********************************************************" >&5
$as_echo "$as_me: WARNING: ***********************************************************" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc does not support this system." >&5
$as_echo "$as_me: WARNING: *** hwloc does not support this system." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc will *attempt* to build (but it may not work)." >&5
$as_echo "$as_me: WARNING: *** hwloc will *attempt* to build (but it may not work)." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** hwloc's run-time results may be reduced to showing just one processor." >&5
$as_echo "$as_me: WARNING: *** hwloc's run-time results may be reduced to showing just one processor." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** You have been warned." >&5
$as_echo "$as_me: WARNING: *** You have been warned." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** Pausing to give you time to read this message..." >&5
$as_echo "$as_me: WARNING: *** Pausing to give you time to read this message..." >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ***********************************************************" >&5
$as_echo "$as_me: WARNING: ***********************************************************" >&2;}
sleep 10
;;
esac
#
# Check CPU support
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which CPU support to include" >&5
$as_echo_n "checking which CPU support to include... " >&6; }
case ${target} in
i*86-*-*|x86_64-*-*)
case ${ac_cv_sizeof_void_p} in
4)
$as_echo "#define HWLOC_X86_32_ARCH 1" >>confdefs.h
hwloc_x86_32=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: x86_32" >&5
$as_echo "x86_32" >&6; }
;;
8)
$as_echo "#define HWLOC_X86_64_ARCH 1" >>confdefs.h
hwloc_x86_64=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: x86_64" >&5
$as_echo "x86_64" >&6; }
;;
*)
$as_echo "#define HWLOC_X86_64_ARCH 1" >>confdefs.h
hwloc_x86_64=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown -- assuming x86_64" >&5
$as_echo "unknown -- assuming x86_64" >&6; }
;;
esac
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether diff accepts -u" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether diff accepts -u" >&5
$as_echo_n "checking whether diff accepts -u... " >&6; } $as_echo_n "checking whether diff accepts -u... " >&6; }
@ -9424,6 +9477,7 @@ fi
# Check for failure of pkg-config
if test $HWLOC_pkg_failed = yes; then if test $HWLOC_pkg_failed = yes; then
if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -9445,11 +9499,43 @@ $as_echo "no" >&6; }
elif test $HWLOC_pkg_failed = untried; then elif test $HWLOC_pkg_failed = untried; then
: :
else else
HWLOC_KERRIGHED_CFLAGS=$HWLOC_pkg_cv_HWLOC_KERRIGHED_CFLAGS
HWLOC_KERRIGHED_LIBS=$HWLOC_pkg_cv_HWLOC_KERRIGHED_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; } $as_echo "yes" >&6; }
:
# If we got good results from pkg-config, check that they
# actually work (i.e., that we can link against the resulting
# $LIBS). The canonical example why we do this is if
# pkg-config returns 64 bit libraries but ./configure was run
# with CFLAGS=-m32 LDFLAGS=-m32. pkg-config gave us valid
# results, but we'll fail if we try to link. So detect that
# failure now.
hwloc_cflags_save=$CFLAGS
hwloc_libs_save=$LIBS
CFLAGS="$CFLAGS $HWLOC_pkg_cv_HWLOC_KERRIGHED_CFLAGS"
LIBS="$LIBS $HWLOC_pkg_cv_HWLOC_KERRIGHED_LIBS"
ac_fn_c_check_func "$LINENO" "" "ac_cv_func_"
if test "x$ac_cv_func_" = x""yes; then :
hwloc_result=yes
else
hwloc_result=no
fi
CFLAGS=$hwloc_cflags_save
LIBS=$hwloc_libs_save
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for final KERRIGHED support" >&5
$as_echo_n "checking for final KERRIGHED support... " >&6; }
if test "$hwloc_result" = "yes"; then :
HWLOC_KERRIGHED_CFLAGS=$HWLOC_pkg_cv_HWLOC_KERRIGHED_CFLAGS
HWLOC_KERRIGHED_LIBS=$HWLOC_pkg_cv_HWLOC_KERRIGHED_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
:
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
:
fi
fi fi
for ac_prog in lib for ac_prog in lib
@ -10968,6 +11054,7 @@ fi
# Check for failure of pkg-config
if test $HWLOC_pkg_failed = yes; then if test $HWLOC_pkg_failed = yes; then
if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -10985,15 +11072,47 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; } $as_echo "no" >&6; }
enable_cairo="no" enable_cairo=no
elif test $HWLOC_pkg_failed = untried; then elif test $HWLOC_pkg_failed = untried; then
enable_cairo="no" enable_cairo=no
else else
HWLOC_CAIRO_CFLAGS=$HWLOC_pkg_cv_HWLOC_CAIRO_CFLAGS
HWLOC_CAIRO_LIBS=$HWLOC_pkg_cv_HWLOC_CAIRO_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; } $as_echo "yes" >&6; }
:
# If we got good results from pkg-config, check that they
# actually work (i.e., that we can link against the resulting
# $LIBS). The canonical example why we do this is if
# pkg-config returns 64 bit libraries but ./configure was run
# with CFLAGS=-m32 LDFLAGS=-m32. pkg-config gave us valid
# results, but we'll fail if we try to link. So detect that
# failure now.
hwloc_cflags_save=$CFLAGS
hwloc_libs_save=$LIBS
CFLAGS="$CFLAGS $HWLOC_pkg_cv_HWLOC_CAIRO_CFLAGS"
LIBS="$LIBS $HWLOC_pkg_cv_HWLOC_CAIRO_LIBS"
ac_fn_c_check_func "$LINENO" "cairo_fill" "ac_cv_func_cairo_fill"
if test "x$ac_cv_func_cairo_fill" = x""yes; then :
hwloc_result=yes
else
hwloc_result=no
fi
CFLAGS=$hwloc_cflags_save
LIBS=$hwloc_libs_save
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for final CAIRO support" >&5
$as_echo_n "checking for final CAIRO support... " >&6; }
if test "$hwloc_result" = "yes"; then :
HWLOC_CAIRO_CFLAGS=$HWLOC_pkg_cv_HWLOC_CAIRO_CFLAGS
HWLOC_CAIRO_LIBS=$HWLOC_pkg_cv_HWLOC_CAIRO_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
:
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
enable_cairo=no
fi
fi fi
if test "x$enable_cairo" != "xno"; then if test "x$enable_cairo" != "xno"; then
if test "$no_x" = yes; then if test "$no_x" = yes; then
@ -11633,6 +11752,7 @@ fi
# Check for failure of pkg-config
if test $HWLOC_pkg_failed = yes; then if test $HWLOC_pkg_failed = yes; then
if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then if $HWLOC_PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@ -11654,11 +11774,43 @@ $as_echo "no" >&6; }
elif test $HWLOC_pkg_failed = untried; then elif test $HWLOC_pkg_failed = untried; then
enable_xml="no" enable_xml="no"
else else
HWLOC_XML_CFLAGS=$HWLOC_pkg_cv_HWLOC_XML_CFLAGS
HWLOC_XML_LIBS=$HWLOC_pkg_cv_HWLOC_XML_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; } $as_echo "yes" >&6; }
:
# If we got good results from pkg-config, check that they
# actually work (i.e., that we can link against the resulting
# $LIBS). The canonical example why we do this is if
# pkg-config returns 64 bit libraries but ./configure was run
# with CFLAGS=-m32 LDFLAGS=-m32. pkg-config gave us valid
# results, but we'll fail if we try to link. So detect that
# failure now.
hwloc_cflags_save=$CFLAGS
hwloc_libs_save=$LIBS
CFLAGS="$CFLAGS $HWLOC_pkg_cv_HWLOC_XML_CFLAGS"
LIBS="$LIBS $HWLOC_pkg_cv_HWLOC_XML_LIBS"
ac_fn_c_check_func "$LINENO" "xmlNewDoc" "ac_cv_func_xmlNewDoc"
if test "x$ac_cv_func_xmlNewDoc" = x""yes; then :
hwloc_result=yes
else
hwloc_result=no
fi
CFLAGS=$hwloc_cflags_save
LIBS=$hwloc_libs_save
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for final XML support" >&5
$as_echo_n "checking for final XML support... " >&6; }
if test "$hwloc_result" = "yes"; then :
HWLOC_XML_CFLAGS=$HWLOC_pkg_cv_HWLOC_XML_CFLAGS
HWLOC_XML_LIBS=$HWLOC_pkg_cv_HWLOC_XML_LIBS
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
:
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
enable_xml="no"
fi
fi fi
fi fi
@ -12534,13 +12686,13 @@ if test "${lt_cv_nm_interface+set}" = set; then :
else else
lt_cv_nm_interface="BSD nm" lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext echo "int some_variable = 0;" > conftest.$ac_ext
(eval echo "\"\$as_me:12537: $ac_compile\"" >&5) (eval echo "\"\$as_me:12689: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err) (eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5 cat conftest.err >&5
(eval echo "\"\$as_me:12540: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval echo "\"\$as_me:12692: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5 cat conftest.err >&5
(eval echo "\"\$as_me:12543: output\"" >&5) (eval echo "\"\$as_me:12695: output\"" >&5)
cat conftest.out >&5 cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin" lt_cv_nm_interface="MS dumpbin"
@ -13742,7 +13894,7 @@ ia64-*-hpux*)
;; ;;
*-*-irix6*) *-*-irix6*)
# Find out which ABI we are using. # Find out which ABI we are using.
echo '#line 13745 "configure"' > conftest.$ac_ext echo '#line 13897 "configure"' > conftest.$ac_ext
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5 (eval $ac_compile) 2>&5
ac_status=$? ac_status=$?
@ -15242,11 +15394,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'` -e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:15245: $lt_compile\"" >&5) (eval echo "\"\$as_me:15397: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err) (eval "$lt_compile" 2>conftest.err)
ac_status=$? ac_status=$?
cat conftest.err >&5 cat conftest.err >&5
echo "$as_me:15249: \$? = $ac_status" >&5 echo "$as_me:15401: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized # The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output. # So say no if there are warnings other than the usual output.
@ -15581,11 +15733,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'` -e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:15584: $lt_compile\"" >&5) (eval echo "\"\$as_me:15736: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err) (eval "$lt_compile" 2>conftest.err)
ac_status=$? ac_status=$?
cat conftest.err >&5 cat conftest.err >&5
echo "$as_me:15588: \$? = $ac_status" >&5 echo "$as_me:15740: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized # The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output. # So say no if there are warnings other than the usual output.
@ -15686,11 +15838,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'` -e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:15689: $lt_compile\"" >&5) (eval echo "\"\$as_me:15841: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err) (eval "$lt_compile" 2>out/conftest.err)
ac_status=$? ac_status=$?
cat out/conftest.err >&5 cat out/conftest.err >&5
echo "$as_me:15693: \$? = $ac_status" >&5 echo "$as_me:15845: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext if (exit $ac_status) && test -s out/conftest2.$ac_objext
then then
# The compiler can only warn and ignore the option if not recognized # The compiler can only warn and ignore the option if not recognized
@ -15741,11 +15893,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'` -e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:15744: $lt_compile\"" >&5) (eval echo "\"\$as_me:15896: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err) (eval "$lt_compile" 2>out/conftest.err)
ac_status=$? ac_status=$?
cat out/conftest.err >&5 cat out/conftest.err >&5
echo "$as_me:15748: \$? = $ac_status" >&5 echo "$as_me:15900: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext if (exit $ac_status) && test -s out/conftest2.$ac_objext
then then
# The compiler can only warn and ignore the option if not recognized # The compiler can only warn and ignore the option if not recognized
@ -18108,7 +18260,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 18111 "configure" #line 18263 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
@ -18204,7 +18356,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 18207 "configure" #line 18359 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
@ -19067,7 +19219,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by hwloc $as_me 1.0, which was This file was extended by hwloc $as_me 1.0.1rc1, which was
generated by GNU Autoconf 2.65. Invocation command line was generated by GNU Autoconf 2.65. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -19137,7 +19289,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
hwloc config.status 1.0 hwloc config.status 1.0.1rc1
configured by $0, generated by GNU Autoconf 2.65, configured by $0, generated by GNU Autoconf 2.65,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

Просмотреть файл

@ -447,6 +447,9 @@
/* The size of `unsigned long', as computed by sizeof. */ /* The size of `unsigned long', as computed by sizeof. */
#undef SIZEOF_UNSIGNED_LONG #undef SIZEOF_UNSIGNED_LONG
/* The size of `void *', as computed by sizeof. */
#undef SIZEOF_VOID_P
/* Define to 1 if you have the ANSI C header files. */ /* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS #undef STDC_HEADERS

Просмотреть файл

@ -1303,18 +1303,20 @@ look_sysfscpu(struct hwloc_topology *topology, const char *path)
sprintf(str, "%s/cpu%d/topology/physical_package_id", path, i); sprintf(str, "%s/cpu%d/topology/physical_package_id", path, i);
hwloc_parse_sysfs_unsigned(str, &mysocketid, topology->backend_params.sysfs.root_fd); hwloc_parse_sysfs_unsigned(str, &mysocketid, topology->backend_params.sysfs.root_fd);
sprintf(str, "%s/cpu%d/topology/core_siblings", path, i); if (mysocketid != (unsigned) -1) {
socketset = hwloc_parse_cpumap(str, topology->backend_params.sysfs.root_fd); sprintf(str, "%s/cpu%d/topology/core_siblings", path, i);
if (socketset && hwloc_cpuset_weight(socketset) >= 1) { socketset = hwloc_parse_cpumap(str, topology->backend_params.sysfs.root_fd);
if (hwloc_cpuset_first(socketset) == i) { if (socketset && hwloc_cpuset_weight(socketset) >= 1) {
/* first cpu in this socket, add the socket */ if (hwloc_cpuset_first(socketset) == i) {
socket = hwloc_alloc_setup_object(HWLOC_OBJ_SOCKET, mysocketid); /* first cpu in this socket, add the socket */
socket->cpuset = socketset; socket = hwloc_alloc_setup_object(HWLOC_OBJ_SOCKET, mysocketid);
hwloc_debug_1arg_cpuset("os socket %u has cpuset %s\n", socket->cpuset = socketset;
mysocketid, socketset); hwloc_debug_1arg_cpuset("os socket %u has cpuset %s\n",
hwloc_insert_object_by_cpuset(topology, socket); mysocketid, socketset);
} else hwloc_insert_object_by_cpuset(topology, socket);
hwloc_cpuset_free(socketset); } else
hwloc_cpuset_free(socketset);
}
} }
/* look at the core */ /* look at the core */

Просмотреть файл

@ -323,9 +323,9 @@ hwloc_look_windows(struct hwloc_topology *topology)
GROUP_AFFINITY *GroupMask; GROUP_AFFINITY *GroupMask;
/* Ignore non-data caches */ /* Ignore non-data caches */
if (procInfo->Relationship == RelationCache && if (procInfo->Relationship == RelationCache
(procInfo->Cache.Type == CacheUnified && procInfo->Cache.Type != CacheUnified
|| procInfo->Cache.Type == CacheData)) && procInfo->Cache.Type != CacheData)
continue; continue;
id = -1; id = -1;
@ -366,6 +366,7 @@ hwloc_look_windows(struct hwloc_topology *topology)
continue; continue;
default: default:
/* Don't know how to get the mask. */ /* Don't know how to get the mask. */
hwloc_debug("unknown relation %d\n", procInfo->Relationship);
continue; continue;
} }

Просмотреть файл

@ -140,8 +140,10 @@ hwloc_setup_group_from_min_distance_clique(unsigned nbobjs,
unsigned size = 1; /* current object i */ unsigned size = 1; /* current object i */
/* if already grouped, skip */ /* if already grouped, skip */
if (groupids[i]) if (groupids[i]) {
hwloc_cpuset_free(closest_objs_set);
continue; continue;
}
/* find closest nodes */ /* find closest nodes */
for(j=i+1; j<nbobjs; j++) { for(j=i+1; j<nbobjs; j++) {
@ -164,6 +166,7 @@ hwloc_setup_group_from_min_distance_clique(unsigned nbobjs,
(*distances)[j][k] != min_distance) { (*distances)[j][k] != min_distance) {
/* the minimal-distance graph is not complete. abort */ /* the minimal-distance graph is not complete. abort */
hwloc_debug("%s", "found incomplete minimal-distance graph, aborting\n"); hwloc_debug("%s", "found incomplete minimal-distance graph, aborting\n");
hwloc_cpuset_free(closest_objs_set);
return 0; return 0;
} }
@ -539,10 +542,12 @@ hwloc_get_type_order(hwloc_obj_type_t type)
return obj_type_order[type]; return obj_type_order[type];
} }
#if !defined(NDEBUG)
static hwloc_obj_type_t hwloc_get_order_type(int order) static hwloc_obj_type_t hwloc_get_order_type(int order)
{ {
return obj_order_type[order]; return obj_order_type[order];
} }
#endif
int hwloc_compare_types (hwloc_obj_type_t type1, hwloc_obj_type_t type2) int hwloc_compare_types (hwloc_obj_type_t type1, hwloc_obj_type_t type2)
{ {
@ -2093,12 +2098,14 @@ hwloc__check_children(struct hwloc_obj *parent)
continue; continue;
/* check that child cpuset is included in the parent */ /* check that child cpuset is included in the parent */
assert(hwloc_cpuset_isincluded(parent->children[j]->cpuset, remaining_parent_set)); assert(hwloc_cpuset_isincluded(parent->children[j]->cpuset, remaining_parent_set));
#if !defined(NDEBUG)
/* check that children are correctly ordered (see below), empty ones may be anywhere */ /* check that children are correctly ordered (see below), empty ones may be anywhere */
if (!hwloc_cpuset_iszero(parent->children[j]->cpuset)) { if (!hwloc_cpuset_iszero(parent->children[j]->cpuset)) {
int firstchild = hwloc_cpuset_first(parent->children[j]->cpuset); int firstchild = hwloc_cpuset_first(parent->children[j]->cpuset);
int firstparent = hwloc_cpuset_first(remaining_parent_set); int firstparent = hwloc_cpuset_first(remaining_parent_set);
assert(firstchild == firstparent); assert(firstchild == firstparent);
} }
#endif
/* clear previously used parent cpuset bits so that we actually checked above /* clear previously used parent cpuset bits so that we actually checked above
* that children cpusets do not intersect and are ordered properly * that children cpusets do not intersect and are ordered properly
*/ */

Просмотреть файл

@ -1,8 +1,6 @@
Machine (phys=0 local=1025408KB total=1025408KB) Machine (phys=0 local=1025408KB total=1025408KB)
Socket #0 PU #0 (phys=0)
PU #0 (phys=0) PU #1 (phys=1)
PU #1 (phys=1)
depth 0: 1 Machine (type #1) depth 0: 1 Machine (type #1)
depth 1: 1 Socket (type #3) depth 1: 2 PUs (type #6)
depth 2: 2 PUs (type #6)
Topology not from this system Topology not from this system

Просмотреть файл

@ -1,33 +1,28 @@
Machine (phys=0) Machine (phys=0)
Socket #0 L3Cache #0 (4096KB)
L3Cache #0 (4096KB) L2Cache #0 (256KB)
L2Cache #0 (256KB) L1Cache #0 (16KB)
L1Cache #0 (16KB) Core #0 (phys=0)
Core #0 (phys=0) PU #0 (phys=0)
PU #0 (phys=0) L3Cache #1 (4096KB)
Socket #1 L2Cache #1 (256KB)
L3Cache #1 (4096KB) L1Cache #1 (16KB)
L2Cache #1 (256KB) Core #1 (phys=0)
L1Cache #1 (16KB) PU #1 (phys=1)
Core #1 (phys=0) L3Cache #2 (4096KB)
PU #1 (phys=1) L2Cache #2 (256KB)
Socket #2 L1Cache #2 (16KB)
L3Cache #2 (4096KB) Core #2 (phys=0)
L2Cache #2 (256KB) PU #2 (phys=2)
L1Cache #2 (16KB) L3Cache #3 (4096KB)
Core #2 (phys=0) L2Cache #3 (256KB)
PU #2 (phys=2) L1Cache #3 (16KB)
Socket #3 Core #3 (phys=0)
L3Cache #3 (4096KB) PU #3 (phys=3)
L2Cache #3 (256KB)
L1Cache #3 (16KB)
Core #3 (phys=0)
PU #3 (phys=3)
depth 0: 1 Machine (type #1) depth 0: 1 Machine (type #1)
depth 1: 4 Sockets (type #3) depth 1: 4 Caches (type #4)
depth 2: 4 Caches (type #4) depth 2: 4 Caches (type #4)
depth 3: 4 Caches (type #4) depth 3: 4 Caches (type #4)
depth 4: 4 Caches (type #4) depth 4: 4 Cores (type #5)
depth 5: 4 Cores (type #5) depth 5: 4 PUs (type #6)
depth 6: 4 PUs (type #6)
Topology not from this system Topology not from this system

Просмотреть файл

@ -23,16 +23,16 @@ Use OS/physical indexes instead of logical indexes for both input and output.
\fB\-l\fR \fB\-\-logical\fR \fB\-l\fR \fB\-\-logical\fR
Use logical indexes instead of physical/OS indexes for both input and output (default). Use logical indexes instead of physical/OS indexes for both input and output (default).
.TP .TP
\fB\--pi\fR \fB\-\-physical-input\fR \fB\-\-pi\fR \fB\-\-physical\-input\fR
Use OS/physical indexes instead of logical indexes for input. Use OS/physical indexes instead of logical indexes for input.
.TP .TP
\fB\--li\fR \fB\-\-logical-input\fR \fB\-\-li\fR \fB\-\-logical\-input\fR
Use logical indexes instead of physical/OS indexes for input (default). Use logical indexes instead of physical/OS indexes for input (default).
.TP .TP
\fB\--po\fR \fB\-\-physical-input\fR \fB\-\-po\fR \fB\-\-physical\-input\fR
Use OS/physical indexes instead of logical indexes for output. Use OS/physical indexes instead of logical indexes for output.
.TP .TP
\fB\--lo\fR \fB\-\-logical-output\fR \fB\-\-lo\fR \fB\-\-logical\-output\fR
Use logical indexes instead of physical/OS indexes for output (default). Use logical indexes instead of physical/OS indexes for output (default).
.TP .TP
\fB\-\-proclist\fR \fB\-\-proclist\fR

Просмотреть файл

@ -134,7 +134,10 @@ int main(int argc, char *argv[])
hwloc_obj_t obj = hwloc_get_first_largest_obj_inside_cpuset(topology, remaining); hwloc_obj_t obj = hwloc_get_first_largest_obj_inside_cpuset(topology, remaining);
hwloc_obj_type_snprintf(type, sizeof(type), obj, 1); hwloc_obj_type_snprintf(type, sizeof(type), obj, 1);
idx = logicalo ? obj->logical_index : obj->os_index; idx = logicalo ? obj->logical_index : obj->os_index;
printf("%s%s:%u", first ? "" : " ", type, idx); if (idx == (unsigned) -1)
printf("%s%s", first ? "" : " ", type);
else
printf("%s%s:%u", first ? "" : " ", type, idx);
hwloc_cpuset_andnot(remaining, remaining, obj->cpuset); hwloc_cpuset_andnot(remaining, remaining, obj->cpuset);
first = 0; first = 0;
} }

Просмотреть файл

@ -15,7 +15,7 @@ hwloc-distrib \- Build a number of cpu masks distributed on the system
.\" ************************** .\" **************************
.SH OPTIONS .SH OPTIONS
.TP .TP
\fB\-v\fR \fB\-\-single\fR
Singlify each output to a single CPU. Singlify each output to a single CPU.
.TP .TP
\fB\-v\fR \fB\-v\fR
@ -55,19 +55,27 @@ If 4 processes have to be distributed across a machine, their CPU masks
may be obtained with: may be obtained with:
$ hwloc-distrib 4 $ hwloc-distrib 4
0000000f 0x0000000f
00000f00 0x00000f00
000000f0 0x000000f0
0000f000 0x0000f000
To get a single processor of each CPU masks (prevent migration in case To get a single processor of each CPU masks (prevent migration in case
of binding) of binding)
$ hwloc-distrib 4 --single $ hwloc-distrib 4 --single
00000001 0x00000001
00000100 0x00000100
00000010 0x00000010
00001000 0x00001000
Each output line may be converted independently with hwloc-calc and xargs:
$ hwloc-distrib 4 --single | xargs -n 1 hwloc-calc --objects
PU:0
PU:1
PU:2
PU:3
To convert the output into a list of processors that may be passed to To convert the output into a list of processors that may be passed to
dplace -c inside a mpirun command line: dplace -c inside a mpirun command line:

Просмотреть файл

@ -13,7 +13,7 @@ static void usage(FILE *where)
{ {
fprintf(where, "Usage: hwloc-distrib [options] number\n"); fprintf(where, "Usage: hwloc-distrib [options] number\n");
fprintf(where, "Options:\n"); fprintf(where, "Options:\n");
fprintf(where, " --single\tsinglify each output to a single CPU\n"); fprintf(where, " --single\tsinglify each output to a single CPU\n");
fprintf(where, " -v\t\t\tverbose messages\n"); fprintf(where, " -v\t\t\tverbose messages\n");
fprintf(where, " --synthetic \"2 2\"\tsimulate a fake hierarchy\n"); fprintf(where, " --synthetic \"2 2\"\tsimulate a fake hierarchy\n");
#ifdef HWLOC_HAVE_XML #ifdef HWLOC_HAVE_XML

Просмотреть файл

@ -39,7 +39,7 @@ These indexes are prefixed with "p#" instead of "#".
\fB\-c\fR \fB\-\-cpuset\fR \fB\-c\fR \fB\-\-cpuset\fR
Display the cpuset of each object. Display the cpuset of each object.
.TP .TP
\fB\-C\fR \fB\-\-cpuset-only\fR \fB\-C\fR \fB\-\-cpuset\-only\fR
Only display the cpuset of each object; do not display anything else Only display the cpuset of each object; do not display anything else
about the object. about the object.
.TP .TP
@ -67,7 +67,7 @@ topology on the local machine). If <path> is "\-", the standard input
is used. XML support must have been compiled in to hwloc for this is used. XML support must have been compiled in to hwloc for this
option to be usable. option to be usable.
.TP .TP
\fB\-\-fsys-root\fR <path> \fB\-\-fsys\-root\fR <path>
Read topology from the chroot specified by <path> (instead of Read topology from the chroot specified by <path> (instead of
discovering the topology on the local machine). This option is discovering the topology on the local machine). This option is
generally only available on Linux. generally only available on Linux.
@ -77,7 +77,7 @@ Detect topology as seen by process <pid>, i.e. as if process <pid> did the
discovery itself, and show its current binding. Note that this can for instance discovery itself, and show its current binding. Note that this can for instance
change the set of allowed processors. If 0 is given as pid, the current binding for the lstopo process will be shown. change the set of allowed processors. If 0 is given as pid, the current binding for the lstopo process will be shown.
.TP .TP
\fB\-\-top\fR <pid> \fB\-\-top\fR
Show existing processes as misc objects in the output. To avoid uselessly Show existing processes as misc objects in the output. To avoid uselessly
cluttering the output, only processes that are restricted to some part of the cluttering the output, only processes that are restricted to some part of the
machine are shown. On Linux, kernel threads are not shown. machine are shown. On Linux, kernel threads are not shown.