From ef5b75598e47d09a5ed94b4d1f7bd7f073abf02d Mon Sep 17 00:00:00 2001 From: Shiqing Fan Date: Tue, 19 Jan 2010 17:32:10 +0000 Subject: [PATCH] Update and clean up the main feature test script, using the new macros. This commit was SVN r22453. --- .../win32/CMakeModules/ompi_configure.cmake | 2002 ++++------------- 1 file changed, 445 insertions(+), 1557 deletions(-) diff --git a/contrib/platform/win32/CMakeModules/ompi_configure.cmake b/contrib/platform/win32/CMakeModules/ompi_configure.cmake index eb2495937e..542f322999 100644 --- a/contrib/platform/win32/CMakeModules/ompi_configure.cmake +++ b/contrib/platform/win32/CMakeModules/ompi_configure.cmake @@ -1,5 +1,5 @@ # -# Copyright (c) 2007-2009 High Performance Computing Center Stuttgart, +# Copyright (c) 2007-2010 High Performance Computing Center Stuttgart, # University of Stuttgart. All rights reserved. # Copyright (c) 2008 The University of Tennessee and The University # of Tennessee Research Foundation. All rights @@ -12,68 +12,96 @@ # -INCLUDE (get_c_alignment) -INCLUDE (check_c_inline) -INCLUDE (Check_c_type_exists) -INCLUDE (opal_functions) - INCLUDE (CheckIncludeFileCXX) INCLUDE (CheckIncludeFile) -# usage: CHECK_INCLUDE_FILE (
) -# Example: CHECK_INCLUDE_FILE(strings.h HAVE_STRINGS_H) -# find out how to check data type/size, compiler FLAGS, - INCLUDE (CheckFunctionExists) -# Usage: CHECK_FUNCTION_EXISTS(function variable) -# Example: CHECK_FUNCTION_EXISTS(madvise HAVE_MADVISE) -# Checks whether the given function exists. This is done by linking a small program, which may not result in undefined references. - INCLUDE (CheckSymbolExists) -# Usage: CHECK_SYMBOL_EXISTS(symbol headers variable) -# Example: CHECK_SYMBOL_EXISTS((LC_MESSAGES "locale.h" HAVE_LC_MESSAGES) -# Checks whether the given symbol exists if the specified headers are included. - INCLUDE (CheckLibraryExists) -# Usage: CHECK_LIBRARY_EXISTS(library function location variable) -# Example: CHECK_LIBRARY_EXISTS(volmgt volmgt_running "" HAVE_VOLMGT) -# Checks whether the given library exists and contains the given function. This is done by linking a small program which uses the function and links to the library. In the location parameter an additional link directory (-Ldir) can be given if required. - -INCLUDE (CheckTypeSize) -# Usage: SET(CMAKE_EXTRA_INCLUDE_FILES header) -# CHECK_TYPE_SIZE(type variable) -# SET(CMAKE_EXTRA_INCLUDE_FILES) -# Example: SET(CMAKE_EXTRA_INCLUDE_FILES sys/socket.h) -# CHECK_TYPE_SIZE("struct ucred" STRUCT_UCRED) -# SET(CMAKE_EXTRA_INCLUDE_FILES) -# Checks whether the specified type exists and returns the size of the type. In the variable the size of the type will be returned, additionally a variable HAVE_STRUCT_UCRED will be set to true if the type exists. Please not that you have to set CMAKE_EXTRA_INCLUDE_FILES to the required headers for this type, and you should reset it after calling CHECK_TYPE_SIZE. If you are not really interested in the size of the type, but only whether it exists or not, you can also use STRUCT_UCRED directly, if the type doesn't exist, it will be empty and so also evaluate to FALSE (as will HAVE_STRUCT_UCRED). - +INCLUDE (CheckTypeSize) INCLUDE (CheckStructHasMember) -# Usage: CHECK_STRUCT_HAS_MEMBER (STRUCT MEMBER HEADER VARIABLE) -# Example: CHECK_STRUCT_HAS_MEMBER("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC) -# Check if the given struct or class has the specified member variable - -#INCLUDE (CheckPrototypeExists) -# Usage: CHECK_PROTOTYPE_EXISTS(function headers variable) -# Example: CHECK_PROTOTYPE_EXISTS(mkstemps "stdlib.h;unistd.h" HAVE_MKSTEMPS_PROTO) -# Checks whether the headers provide the declaration for the given function, i.e. it does not check whether using function will lead to undefined references. - - INCLUDE (CheckCXXSourceCompiles) INCLUDE (CheckCSourceCompiles) -# Usage: CHECK_CXX_SOURCE_COMPILES(source variable) -# CHECK_C_SOURCE_COMPILES(source variable) -# Checks whether the code given in source will compile and link. You can set CMAKE_REQUIRED_LIBRARIES, CMAKE_REQUIRED_FLAGS and CMAKE_REQUIRED_INCLUDES accordingly if additional libraries or compiler flags are required. +INCLUDE (ompi_define) +INCLUDE (ompi_base_checks) +INCLUDE (opal_functions) +INCLUDE (get_c_alignment) +INCLUDE (check_c_type_exists) +INCLUDE (check_c_inline) +INCLUDE (check_bool) + +OPTION(OPAL_CONFIG_REGEN "Whether we want to regenerate the configure template file." OFF) + +IF(${OPAL_CONFIG_REGEN} STREQUAL "ON") + SET(WRITE_CONFIG_DONE FALSE CACHE INTERNAL "Whether to regenerate configure template.") +ENDIF(${OPAL_CONFIG_REGEN} STREQUAL "ON") + +IF(NOT WRITE_CONFIG_DONE) + FILE(REMOVE ${OpenMPI_BINARY_DIR}/opal/include/opal_config.h.cmake) + FILE(APPEND ${OpenMPI_BINARY_DIR}/opal/include/opal_config.h.cmake + "/* opal/include/opal_config.h.cmake. Generated by CMake. */ + +/* -*- c -*- + * + * Copyright (c) 2004-2005 The Trustees of Indiana University. + * All rights reserved. + * Copyright (c) 2004-2005 The Trustees of the University of Tennessee. + * All rights reserved. + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, + * University of Stuttgart. All rights reserved. + * Copyright (c) 2004-2005 The Regents of the University of California. + * All rights reserved. + * $COPYRIGHT$ + * + * Additional copyrights may follow + * + * $HEADER$ + * + * Function: - OS, CPU and compiler dependent configuration + */ + +#ifndef OPAL_CONFIG_H +#define OPAL_CONFIG_H +\n\n +") +ENDIF(NOT WRITE_CONFIG_DONE) + + +OMPI_DEF(PACKAGE_NAME "Open MPI" "Define to the full name of this package." 1 1) + +OMPI_DEF(PACKAGE_TARNAME "openmpi" "Define to the one symbol short name of this package." 1 1) + +OMPI_DEF(OPAL_PACKAGE_STRING "Open MPI $ENV{USERNAME}@$ENV{COMPUTERNAME} Distribution" "Package/branding string for Open MPI" 1 1) + +OMPI_DEF(PACKAGE_BUGREPORT "http://www.open-mpi.org/community/help/" "Define to the address where bug reports for this package should be sent." 1 1) + +OMPI_DEF(OMPI_CONFIGURE_HOST $ENV{COMPUTERNAME} "Host on which configuration has been done." 1 1) + +OMPI_DEF(OMPI_CONFIGURE_USER $ENV{USERNAME} "User who has done the configuration." 1 1) + +OMPI_DEF(OMPI_BUILD_USER $ENV{USERNAME} "User who has built the package." 1 1) + +OMPI_DEF(OMPI_BUILD_HOST $ENV{COMPUTERNAME} "Host on which the package has been built." 1 1) + +OMPI_DEF(OPAL_ARCH "${CMAKE_SYSTEM_PROCESSOR} ${CMAKE_SYSTEM}" "OMPI architecture string" 1 1) + + +INCLUDE(ompi_get_version) + +OMPI_DEF(OMPI_RELEASE_DATE ${RELEASE_DATE} "Release date of the package" 1 1) + +OMPI_DEF(OPAL_RELEASE_DATE ${RELEASE_DATE} "Release date of the package" 1 1) + +OMPI_DEF(ORTE_RELEASE_DATE ${RELEASE_DATE} "Release date of the package" 1 1) + +OMPI_DEF(PACKAGE_VERSION ${OPAL_VERSION} "Define to the version of this package." 1 1) + +OMPI_DEF(PACKAGE_STRING "Open MPI ${PACKAGE_VERSION}" "Define to the full name and version of this package." 1 1) -# First, let's check windows features. IF(WIN32) INCLUDE(ompi_check_Microsoft) OMPI_MICROSOFT_COMPILER () ENDIF(WIN32) -# find flex command -INCLUDE (find_flex) -FIND_FLEX() - # Get current time and date. EXECUTE_PROCESS(COMMAND cmd /C time /t OUTPUT_VARIABLE CURRENT_TIME) @@ -86,69 +114,48 @@ STRING (REPLACE "\n" "" CURRENT_DATE ${CURRENT_DATE}) SET (OMPI_CONFIGURE_DATE "${CURRENT_TIME} ${CURRENT_DATE}" CACHE INTERNAL "OMPI_CONFIGURE_DATE") SET (OMPI_BUILD_DATE "${CURRENT_TIME} ${CURRENT_DATE}" CACHE INTERNAL "OMPI_BUILD_DATE") -SET(OMPI_BUILD_CFLAGS "\"/Od /Gm /EHsc /RTC1 /MDd\"") +OMPI_DEF(OMPI_BUILD_CFLAGS "/Od /Gm /EHsc /RTC1 /MDd" "C flags" 1 1) -if(${OpenMPI_SOURCE_DIR} STREQUAL ${OpenMPI_BINARY_DIR}) - SET(OMPI_BUILD_CPPFLAGS "\"-I${OpenMPI_SOURCE_DIR}/ - -I${OpenMPI_SOURCE_DIR}/opal - -I${OpenMPI_SOURCE_DIR}/opal/include - -I${OpenMPI_SOURCE_DIR}/ompi - -I${OpenMPI_SOURCE_DIR}/ompi/include - -I${OpenMPI_SOURCE_DIR}/orte - -I${OpenMPI_SOURCE_DIR}/orte/include - -I${OpenMPI_SOURCE_DIR}/contrib/platform/win32\"") -else(${OpenMPI_SOURCE_DIR} STREQUAL ${OpenMPI_BINARY_DIR}) - SET(OMPI_BUILD_CPPFLAGS "\"-I${OpenMPI_SOURCE_DIR}/ - -I${OpenMPI_SOURCE_DIR}/opal - -I${OpenMPI_SOURCE_DIR}/opal/include - -I${OpenMPI_SOURCE_DIR}/ompi - -I${OpenMPI_SOURCE_DIR}/ompi/include - -I${OpenMPI_SOURCE_DIR}/orte - -I${OpenMPI_SOURCE_DIR}/orte/include - -I${OpenMPI_BINARY_DIR}/ - -I${OpenMPI_BINARY_DIR}/opal - -I${OpenMPI_BINARY_DIR}/opal/include - -I${OpenMPI_BINARY_DIR}/ompi - -I${OpenMPI_BINARY_DIR}/ompi/include - -I${OpenMPI_BINARY_DIR}/orte - -I${OpenMPI_BINARY_DIR}/orte/include - -I${OpenMPI_SOURCE_DIR}/contrib/platform/win32\"") -endif(${OpenMPI_SOURCE_DIR} STREQUAL ${OpenMPI_BINARY_DIR}) +SET(OMPI_BUILD_CPPFLAGS "\"-I${OpenMPI_SOURCE_DIR}/ + -I${OpenMPI_SOURCE_DIR}/opal + -I${OpenMPI_SOURCE_DIR}/opal/include + -I${OpenMPI_SOURCE_DIR}/ompi + -I${OpenMPI_SOURCE_DIR}/ompi/include + -I${OpenMPI_SOURCE_DIR}/orte + -I${OpenMPI_SOURCE_DIR}/orte/include + -I${OpenMPI_BINARY_DIR}/ + -I${OpenMPI_BINARY_DIR}/opal + -I${OpenMPI_BINARY_DIR}/opal/include + -I${OpenMPI_BINARY_DIR}/ompi + -I${OpenMPI_BINARY_DIR}/ompi/include + -I${OpenMPI_BINARY_DIR}/orte + -I${OpenMPI_BINARY_DIR}/orte/include + -I${OpenMPI_SOURCE_DIR}/contrib/platform/win32\"") -SET(OMPI_BUILD_CXXFLAGS "\"/Od /Gm /EHsc /RTC1 /MDd\"") + +OMPI_DEF(OMPI_BUILD_CXXFLAGS "/Od /Gm /EHsc /RTC1 /MDd" "C++ flags" 1 1) SET(OMPI_BUILD_CXXCPPFLAGS ${OMPI_BUILD_CPPFLAGS}) - -SET(OMPI_BUILD_FFLAGS "\"\"") -SET(OMPI_BUILD_FCFLAGS "\"\"") +OMPI_DEF(OMPI_BUILD_FFLAGS " " "F77 flags." 1 1) -SET(OMPI_BUILD_LDFLAGS "\"\"") +OMPI_DEF(OMPI_BUILD_FCFLAGS " " "F90 flags." 1 1) -SET(OMPI_BUILD_LIBS "\"\"") +OMPI_DEF(OMPI_BUILD_LDFLAGS " " "LD flags." 1 1) -SET(OMPI_F77_ABSOLUTE "\"none\"") +OMPI_DEF(OMPI_BUILD_LIBS " " "Link libraries." 1 1) -SET(OMPI_F90_ABSOLUTE "\"none\"") +OMPI_DEF(OMPI_F90_BUILD_SIZE "small" "F90 build size." 1 1) -SET(OMPI_F90_BUILD_SIZE "\"small\"") - -SET(OMPI_BTL_SM_HAVE_KNEM 0) - -# set the im/export decleration here. -# Don't bother with OMPI_IMPORTS -IF(BUILD_SHARED_LIBS) - SET(OMPI_DECLSPEC "__declspec(dllimport)") -ELSE(BUILD_SHARED_LIBS) - SET(OMPI_DECLSPEC "") -ENDIF(BUILD_SHARED_LIBS) +OMPI_DEF(OMPI_BTL_SM_HAVE_KNEM 0 "If btl sm has knem." 0 1) IF(WIN32 AND MSVC) - SET(COMPILER_FAMILYNAME MICROSOFT) - SET(COMPILER_VERSION ${MSVC_VERSION}) - SET(OPAL_BUILD_PLATFORM_COMPILER_FAMILYID 14) - SET(OPAL_BUILD_PLATFORM_COMPILER_VERSION ${MSVC_VERSION}) + OMPI_DEF(COMPILER_FAMILYNAME MICROSOFT "Compiler family name" 1 1) + OMPI_DEF(COMPILER_VERSION ${MSVC_VERSION} "Compiler version" 0 1) + OMPI_DEF(OPAL_BUILD_PLATFORM_COMPILER_FAMILYID 14 "Compiler family ID" 0 1) + OMPI_DEF(OPAL_BUILD_PLATFORM_COMPILER_FAMILYNAME ${COMPILER_FAMILYNAME} "Compiler family name" 0 1) + OMPI_DEF(OPAL_BUILD_PLATFORM_COMPILER_VERSION ${MSVC_VERSION} "Compiler version" 0 1) ENDIF(WIN32 AND MSVC) @@ -156,1075 +163,485 @@ ENDIF(WIN32 AND MSVC) # Options # ################################################################### -# No lower and upper bound required or enforced OPAL_WITH_OPTION_MIN_MAX_VALUE(processor_name 256 16 1024) -# Min length according to information passed in ompi/errhandler/errcode.c OPAL_WITH_OPTION_MIN_MAX_VALUE(error_string 256 64 1024) -# Min length according to MPI-2.1, p. 236 (information passed in ompi/communicator/comm.c: min only 48) OPAL_WITH_OPTION_MIN_MAX_VALUE(object_name 64 64 256) -# Min and Max length according to MPI-2.1, p. 287 is 32; longest key in ROMIO however 33 OPAL_WITH_OPTION_MIN_MAX_VALUE(info_key 36 34 255) -# No lower and upper bound required or enforced! OPAL_WITH_OPTION_MIN_MAX_VALUE(info_val 256 32 1024) -# Min length according to _POSIX_HOST_NAME_MAX=255 (4*HOST_NAME_MAX) OPAL_WITH_OPTION_MIN_MAX_VALUE(port_name 1024 255 2048) -# Min length accroding to MPI-2.1, p. 418 OPAL_WITH_OPTION_MIN_MAX_VALUE(datarep_string 128 64 256) -OPTION(MCA_mtl_DIRECT_CALL "Whether mtl should use direct calls instead of components." OFF) -MARK_AS_ADVANCED(MCA_mtl_DIRECT_CALL) -IF(MCA_mtl_DIRECT_CALL) - SET(MCA_mtl_DIRECT_CALL 1) -ELSE(MCA_mtl_DIRECT_CALL) - SET(MCA_mtl_DIRECT_CALL 0) -ENDIF(MCA_mtl_DIRECT_CALL) +OMPI_DEF_CACHE_VAR(OMPI_EXT_COMPONENTS Example STRING "Specify user defined MPI Extended Interface Components. (not implemented on Windows)" 1 1) -OPTION(MCA_pml_DIRECT_CALL "Whether pml should use direct calls instead of components." OFF) -MARK_AS_ADVANCED(MCA_pml_DIRECT_CALL) -IF(MCA_pml_DIRECT_CALL) - SET(MCA_pml_DIRECT_CALL 1) -ELSE(MCA_pml_DIRECT_CALL) - SET(MCA_pml_DIRECT_CALL 0) -ENDIF(MCA_pml_DIRECT_CALL) +OMPI_DEF_OPT(MCA_mtl_DIRECT_CALL "Whether mtl should use direct calls instead of components." OFF) -OPTION(MPI_PARAM_CHECK - "Whether we want to check MPI parameters always, never, or decide at run-time." OFF) -MARK_AS_ADVANCED(MPI_PARAM_CHECK) -IF(NOT MPI_PARAM_CHECK) - SET (MPI_PARAM_CHECK "ompi_mpi_param_check") -ENDIF(NOT MPI_PARAM_CHECK) +OMPI_DEF_OPT(MCA_pml_DIRECT_CALL "Whether pml should use direct calls instead of components." OFF) -OPTION(OPAL_ENABLE_DEBUG - "Whether we want developer-level debugging code or not." OFF) -IF(OPAL_ENABLE_DEBUG) - SET(OPAL_ENABLE_DEBUG 1) -ELSE(OPAL_ENABLE_DEBUG) - SET(OPAL_ENABLE_DEBUG 0) -ENDIF(OPAL_ENABLE_DEBUG) +OMPI_DEF_OPT(MPI_PARAM_CHECK "Whether we want to check MPI parameters always, never, or decide at run-time." OFF) -OPTION(OPAL_ENABLE_HETEROGENEOUS_SUPPORT - "Enable features required for heterogeneous support." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_HETEROGENEOUS_SUPPORT) -IF(OPAL_ENABLE_HETEROGENEOUS_SUPPORT) - SET(OPAL_ENABLE_HETEROGENEOUS_SUPPORT 1) -ELSE(OPAL_ENABLE_HETEROGENEOUS_SUPPORT) - SET(OPAL_ENABLE_HETEROGENEOUS_SUPPORT 0) -ENDIF(OPAL_ENABLE_HETEROGENEOUS_SUPPORT) +OMPI_DEF_OPT(OPAL_ENABLE_DEBUG "Whether we want developer-level debugging code or not." OFF) -OPTION(OPAL_ENABLE_MEM_DEBUG - "Whether we want the memory debug or not." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_MEM_DEBUG) -IF(OPAL_ENABLE_MEM_DEBUG) - SET(OPAL_ENABLE_MEM_DEBUG 1) -ELSE(OPAL_ENABLE_MEM_DEBUG) - SET(OPAL_ENABLE_MEM_DEBUG 0) -ENDIF(OPAL_ENABLE_MEM_DEBUG) +OMPI_DEF_OPT(OPAL_ENABLE_HETEROGENEOUS_SUPPORT "Enable features required for heterogeneous support." OFF) -OPTION(OPAL_ENABLE_MEM_PROFILE - "Whether we want the memory profiling or not." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_MEM_PROFILE) -IF(OPAL_ENABLE_MEM_PROFILE) - SET(OPAL_ENABLE_MEM_PROFILE 1) -ELSE(OPAL_ENABLE_MEM_PROFILE) - SET(OPAL_ENABLE_MEM_PROFILE 0) -ENDIF(OPAL_ENABLE_MEM_PROFILE) +OMPI_DEF_OPT(OPAL_ENABLE_MEM_DEBUG "Whether we want the memory debug or not." OFF) -OPTION(OMPI_ENABLE_MPI_PROFILING - "Whether we want MPI profiling or not." ON) -MARK_AS_ADVANCED(OMPI_ENABLE_MPI_PROFILING) -IF(OMPI_ENABLE_MPI_PROFILING) - SET(OMPI_ENABLE_MPI_PROFILING 1) - SET(MPIF_H_PMPI_W_FUNCS ", PMPI_WTICK, PMPI_WTIME") -ELSE(OMPI_ENABLE_MPI_PROFILING) - SET(OMPI_ENABLE_MPI_PROFILING 0) - SET(MPIF_H_PMPI_W_FUNCS "") -ENDIF(OMPI_ENABLE_MPI_PROFILING) +OMPI_DEF_OPT(OPAL_ENABLE_MEM_PROFILE "Whether we want the memory profiling or not." OFF) -OPTION(OPAL_ENABLE_MPI_THREADS - "Whether we should enable support for multiple user threads." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_MPI_THREADS) -IF(OPAL_ENABLE_MPI_THREADS) - SET(OPAL_ENABLE_MPI_THREADS 1) -ELSE(OPAL_ENABLE_MPI_THREADS) - SET(OPAL_ENABLE_MPI_THREADS 0) -ENDIF(OPAL_ENABLE_MPI_THREADS) +OMPI_DEF_OPT(OMPI_ENABLE_MPI_PROFILING "Whether we want MPI profiling or not." ON) -OPTION(OPAL_ENABLE_PROGRESS_THREADS - "Whether we should use progress threads rather than polling." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_PROGRESS_THREADS) -IF(OPAL_ENABLE_PROGRESS_THREADS) - SET(OPAL_ENABLE_PROGRESS_THREADS 1) -ELSE(OPAL_ENABLE_PROGRESS_THREADS) - SET(OPAL_ENABLE_PROGRESS_THREADS 0) -ENDIF(OPAL_ENABLE_PROGRESS_THREADS) +OMPI_DEF_OPT(OPAL_ENABLE_MPI_THREADS "Whether we should enable support for multiple user threads." OFF) -OPTION(OPAL_ENABLE_PTY_SUPPORT - "Whether we should use progress threads rather than polling." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_PTY_SUPPORT) -IF(OPAL_ENABLE_PTY_SUPPORT) - SET(OPAL_ENABLE_PTY_SUPPORT 1) -ELSE(OPAL_ENABLE_PTY_SUPPORT) - SET(OPAL_ENABLE_PTY_SUPPORT 0) -ENDIF(OPAL_ENABLE_PTY_SUPPORT) +OMPI_DEF_OPT(OPAL_ENABLE_PROGRESS_THREADS "Whether we should use progress threads rather than polling." OFF) -OPTION ( OMPI_GROUP_SPARSE - "Wether we want sparse process groups." OFF) -MARK_AS_ADVANCED(OMPI_GROUP_SPARSE) -IF(NOT OMPI_GROUP_SPARSE) - SET (OMPI_GROUP_SPARSE 0) -ELSE(NOT OMPI_GROUP_SPARSE) - SET (OMPI_GROUP_SPARSE 1) -ENDIF(NOT OMPI_GROUP_SPARSE) +OMPI_DEF_OPT(OPAL_ENABLE_PTY_SUPPORT "Whether we should use progress threads rather than polling." OFF) -OPTION (OMPI_PROVIDE_MPI_FILE_INTERFACE - "Whether OMPI should provide MPI File interface" ON) -MARK_AS_ADVANCED(OMPI_PROVIDE_MPI_FILE_INTERFACE) -IF(OMPI_PROVIDE_MPI_FILE_INTERFACE) - SET (OMPI_PROVIDE_MPI_FILE_INTERFACE 1) -ELSE(OMPI_PROVIDE_MPI_FILE_INTERFACE) - SET (OMPI_PROVIDE_MPI_FILE_INTERFACE 0) -ENDIF(OMPI_PROVIDE_MPI_FILE_INTERFACE) +OMPI_DEF_OPT ( OMPI_GROUP_SPARSE "Wether we want sparse process groups." OFF) +OMPI_DEF_OPT (OMPI_PROVIDE_MPI_FILE_INTERFACE "Whether OMPI should provide MPI File interface" ON) -OPTION(OMPI_WANT_CXX_BINDINGS - "Whether we want MPI cxx support or not." ON) -MARK_AS_ADVANCED(OMPI_WANT_CXX_BINDINGS) -IF(OMPI_WANT_CXX_BINDINGS) - SET(OMPI_WANT_CXX_BINDINGS 1) -ELSE(OMPI_WANT_CXX_BINDINGS) - SET(OMPI_WANT_CXX_BINDINGS 0) -ENDIF(OMPI_WANT_CXX_BINDINGS) +OMPI_DEF_OPT(OMPI_WANT_CXX_BINDINGS "Whether we want MPI cxx support or not." ON) -OPTION(OMPI_WANT_F77_BINDINGS - "Whether we want MPI F77 support or not." OFF) -MARK_AS_ADVANCED(OMPI_WANT_F77_BINDINGS) -IF(OMPI_WANT_F77_BINDINGS) - SET(OMPI_WANT_F77_BINDINGS 1) -ELSE(OMPI_WANT_F77_BINDINGS) - SET(OMPI_WANT_F77_BINDINGS 0) -ENDIF(OMPI_WANT_F77_BINDINGS) +OMPI_DEF_OPT(OMPI_WANT_F77_BINDINGS "Whether we want MPI F77 support or not." OFF) -OPTION(OMPI_WANT_F90_BINDINGS - "Whether we want MPI F90 support or not." OFF) -MARK_AS_ADVANCED(OMPI_WANT_F90_BINDINGS) -IF(OMPI_WANT_F90_BINDINGS) - SET(OMPI_WANT_F90_BINDINGS 1) -ELSE(OMPI_WANT_F90_BINDINGS) - SET(OMPI_WANT_F90_BINDINGS 0) -ENDIF(OMPI_WANT_F90_BINDINGS) +OMPI_DEF_OPT(OMPI_WANT_F90_BINDINGS "Whether we want MPI F90 support or not." OFF) -OPTION(OMPI_WANT_MPI_CXX_SEEK - "Do we want to try to work around C++ bindings SEEK_* issue?" OFF) -MARK_AS_ADVANCED(OMPI_WANT_MPI_CXX_SEEK) +OMPI_DEF_OPT(OMPI_WANT_MPI_CXX_SEEK "Do we want to try to work around C++ bindings SEEK_* issue?" OFF) -OPTION(OMPI_WANT_PERUSE - "Whether the peruse interface should be enabled." OFF) -MARK_AS_ADVANCED(OMPI_WANT_PERUSE) -IF(NOT OMPI_WANT_PERUSE) - SET(OMPI_WANT_PERUSE 0) -ELSE(NOT OMPI_WANT_PERUSE) - SET(OMPI_WANT_PERUSE 1) -ENDIF(NOT OMPI_WANT_PERUSE) +OMPI_DEF_OPT(OMPI_WANT_PERUSE "Whether the peruse interface should be enabled." OFF) -OPTION( OPAL_WANT_PRETTY_PRINT_STACKTRACE - "Whether we want pretty-print stack trace feature." ON) -MARK_AS_ADVANCED(OPAL_WANT_PRETTY_PRINT_STACKTRACE) +OMPI_DEF_OPT( OPAL_WANT_PRETTY_PRINT_STACKTRACE "Whether we want pretty-print stack trace feature." ON) -OPTION( OPAL_WANT_SMP_LOCKS - "Whether we want to have smp locks in atomic ops or not." ON) -MARK_AS_ADVANCED(OPAL_WANT_SMP_LOCKS) +OMPI_DEF_OPT( OPAL_WANT_SMP_LOCKS "Whether we want to have smp locks in atomic ops or not." ON) -OPTION( OPAL_ENABLE_FT - "Enable fault tolerance general components and logic." ON) -MARK_AS_ADVANCED(OPAL_ENABLE_FT) -IF(NOT OPAL_ENABLE_FT) - SET(OPAL_ENABLE_FT 0) -ELSE(NOT OPAL_ENABLE_FT) - SET(OPAL_ENABLE_FT 1) -ENDIF(NOT OPAL_ENABLE_FT) +OMPI_DEF_OPT( OPAL_ENABLE_FT "Enable fault tolerance general components and logic." ON) -OPTION( OPAL_ENABLE_FT_CR - "Enable fault tolerance checkpoint/restart components and logic." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_FT_CR) +OMPI_DEF_OPT( OPAL_ENABLE_FT_CR "Enable fault tolerance checkpoint/restart components and logic." OFF) -OPTION( OPAL_ENABLE_FT_THREAD - "Enable fault tolerance thread in Open PAL." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_FT_THREAD) -IF(NOT OPAL_ENABLE_FT_THREAD) - SET(OPAL_ENABLE_FT_THREAD 0) -ELSE(NOT OPAL_ENABLE_FT_THREAD) - SET(OPAL_ENABLE_FT_THREAD 1) -ENDIF(NOT OPAL_ENABLE_FT_THREAD) +OMPI_DEF_OPT( OPAL_ENABLE_FT_THREAD "Enable fault tolerance thread in Open PAL." OFF) -OPTION( OPAL_ENABLE_IPV6 - "Enable IPv6 support, but only if the underlying system supports it." ON) -MARK_AS_ADVANCED(OPAL_ENABLE_IPV6) +OMPI_DEF_OPT( OPAL_ENABLE_IPV6 "Enable IPv6 support, but only if the underlying system supports it." ON) -OPTION( OPAL_ENABLE_TRACE - "Enable run-time tracing of internal functions." OFF) -MARK_AS_ADVANCED(OPAL_ENABLE_TRACE) +OMPI_DEF_OPT( OPAL_ENABLE_TRACE "Enable run-time tracing of internal functions." OFF) -OPTION(ORTE_DISABLE_FULL_SUPPORT "Enable full RTE support (Default OFF)." OFF) -MARK_AS_ADVANCED(ORTE_DISABLE_FULL_SUPPORT) -IF(NOT ORTE_DISABLE_FULL_SUPPORT) - SET(ORTE_DISABLE_FULL_SUPPORT 0) -ELSE(NOT ORTE_DISABLE_FULL_SUPPORT) - SET (ORTE_DISABLE_FULL_SUPPORT 1) -ENDIF(NOT ORTE_DISABLE_FULL_SUPPORT) +OMPI_DEF_OPT( ORTE_DISABLE_FULL_SUPPORT "Enable full RTE support (Default OFF)." OFF) -OPTION( ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT - "Whether we want orterun to effect \"--prefix $prefix\" by default." ON) -MARK_AS_ADVANCED(ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT) -IF(NOT ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT) - SET (ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT 0) -ELSE(NOT ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT) - SET (ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT 1) -ENDIF(NOT ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT) +OMPI_DEF_OPT( ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT "Whether we want orterun to effect \"--prefix $prefix\" by default." ON) -OPTION( OMPI_WANT_MPI_INTERFACE_WARNING - "enable warnings in wrong (e.g. deprecated) usage in user-level code (default: disabled)." OFF) -MARK_AS_ADVANCED(OMPI_WANT_MPI_INTERFACE_WARNING) -IF(NOT OMPI_WANT_MPI_INTERFACE_WARNING) - SET (OMPI_WANT_MPI_INTERFACE_WARNING 0) -ELSE(NOT OMPI_WANT_MPI_INTERFACE_WARNING) - SET (OMPI_WANT_MPI_INTERFACE_WARNING 1) -ENDIF(NOT OMPI_WANT_MPI_INTERFACE_WARNING) +OMPI_DEF_OPT( OMPI_WANT_MPI_INTERFACE_WARNING "enable warnings in wrong (e.g. deprecated) usage in user-level code (default: disabled)." OFF) -OPTION(ORTE_WANT_CCP - "Whether we want to have the CCP remote process launch support." ON) +OMPI_DEF_OPT(ORTE_WANT_CCP "Whether we want to have the CCP remote process launch support." ON) -SET (OMPI_EXT_COMPONENTS Example CACHE STRING - "Specify user defined MPI Extended Interface Components." FORCE) +OMPI_DEF_OPT(OPAL_WANT_LIBLTDL "Whether we want to enable DSO build for Windows." OFF) -OPTION(OPAL_WANT_LIBLTDL "Whether we want to enable DSO build for Windows." OFF) -IF(NOT OPAL_WANT_LIBLTDL) - SET(OPAL_WANT_LIBLTDL 0) -ELSE(NOT OPAL_WANT_LIBLTDL) - INCLUDE(find_libltdl) - IF(LIBLTDL_FOUND) - SET (OPAL_WANT_LIBLTDL 1) - ELSE(LIBLTDL_FOUND) - SET(OPAL_WANT_LIBLTDL 0) - ENDIF(LIBLTDL_FOUND) -ENDIF(NOT OPAL_WANT_LIBLTDL) - -OPTION(OMPI_WANT_NETWORK_DIRECT "Whether we want to enable Network Direct support." ON) +OMPI_DEF_OPT(OMPI_WANT_NETWORK_DIRECT "Whether we want to enable Network Direct support." ON) ################################################################### # Check headers # ################################################################### -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (aio.h HAVE_AIO_H) +OMPI_CHECK_INCLUDE_FILE (windows.h HAVE_WINDOWS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (alloca.h HAVE_ALLOCA_H) +OMPI_CHECK_INCLUDE_FILE (winsock2.h HAVE_WINSOCK2_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (arpa/inet.h HAVE_ARPA_INET_H) +OMPI_CHECK_INCLUDE_FILE(wdm.h HAVE_WDM_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (crt_externs.h HAVE_CRT_EXTERNS_H) +OMPI_CHECK_INCLUDE_FILE (aio.h HAVE_AIO_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (dirent.h HAVE_DIRENT_H) +OMPI_CHECK_INCLUDE_FILE (alloca.h HAVE_ALLOCA_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (dlfcn.h HAVE_DLFCN_H) +OMPI_CHECK_INCLUDE_FILE (arpa/inet.h HAVE_ARPA_INET_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (err.h HAVE_ERR_H) +OMPI_CHECK_INCLUDE_FILE (crt_externs.h HAVE_CRT_EXTERNS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (execinfo.h HAVE_EXECINFO_H) +OMPI_CHECK_INCLUDE_FILE (dirent.h HAVE_DIRENT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (fcntl.h HAVE_FCNTL_H) +OMPI_CHECK_INCLUDE_FILE (dlfcn.h HAVE_DLFCN_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (grp.h HAVE_GRP_H) +OMPI_CHECK_INCLUDE_FILE (err.h HAVE_ERR_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (ifaddrs.h HAVE_IFADDRS_H) +OMPI_CHECK_INCLUDE_FILE (execinfo.h HAVE_EXECINFO_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (inttypes.h HAVE_INTTYPES_H) +OMPI_CHECK_INCLUDE_FILE (fcntl.h HAVE_FCNTL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (libcr.h HAVE_LIBCR_H) +OMPI_CHECK_INCLUDE_FILE (grp.h HAVE_GRP_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (libgen.h HAVE_LIBGEN_H) +OMPI_CHECK_INCLUDE_FILE (ifaddrs.h HAVE_IFADDRS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (libutil.h HAVE_LIBUTIL_H) +OMPI_CHECK_INCLUDE_FILE (inttypes.h HAVE_INTTYPES_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (libxcpu.h HAVE_LIBXCPU_H) +OMPI_CHECK_INCLUDE_FILE (libcr.h HAVE_LIBCR_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (mach/mach_time.h HAVE_MACH_MACH_TIME_H) +OMPI_CHECK_INCLUDE_FILE (libgen.h HAVE_LIBGEN_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (mach/mach_vm.h HAVE_MACH_MACH_VM_H) +OMPI_CHECK_INCLUDE_FILE (libutil.h HAVE_LIBUTIL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (malloc.h HAVE_MALLOC_H) +OMPI_CHECK_INCLUDE_FILE (libxcpu.h HAVE_LIBXCPU_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (memory.h HAVE_MEMORY_H) +OMPI_CHECK_INCLUDE_FILE (mach/mach_time.h HAVE_MACH_MACH_TIME_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (netdb.h HAVE_NETDB_H) +OMPI_CHECK_INCLUDE_FILE (mach/mach_vm.h HAVE_MACH_MACH_VM_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (netinet/in.h HAVE_NETINET_IN_H) +OMPI_CHECK_INCLUDE_FILE (malloc.h HAVE_MALLOC_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (netinet/tcp.h HAVE_NETINET_TCP_H) +OMPI_CHECK_INCLUDE_FILE (memory.h HAVE_MEMORY_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (net/if.h HAVE_NET_IF_H) +OMPI_CHECK_INCLUDE_FILE (netdb.h HAVE_NETDB_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (pmapi.h HAVE_PMAPI_H) +OMPI_CHECK_INCLUDE_FILE (netinet/in.h HAVE_NETINET_IN_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (poll.h HAVE_POLL_H) +OMPI_CHECK_INCLUDE_FILE (netinet/tcp.h HAVE_NETINET_TCP_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (pthread.h HAVE_PTHREAD_H) +OMPI_CHECK_INCLUDE_FILE (net/if.h HAVE_NET_IF_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (pty.h HAVE_PTY_H) +OMPI_CHECK_INCLUDE_FILE (pmapi.h HAVE_PMAPI_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (pwd.h HAVE_PWD_H) +OMPI_CHECK_INCLUDE_FILE (poll.h HAVE_POLL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (regex.h HAVE_REGEX_H) +OMPI_CHECK_INCLUDE_FILE (pthread.h HAVE_PTHREAD_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sched.h HAVE_SCHED_H) +OMPI_CHECK_INCLUDE_FILE (pty.h HAVE_PTY_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (signal.h HAVE_SIGNAL_H) +OMPI_CHECK_INCLUDE_FILE (pwd.h HAVE_PWD_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (stdarg.h HAVE_STDARG_H) +OMPI_CHECK_INCLUDE_FILE (regex.h HAVE_REGEX_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (stdbool.h HAVE_STDBOOL_H) +OMPI_CHECK_INCLUDE_FILE (sched.h HAVE_SCHED_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (stdint.h HAVE_STDINT_H) +OMPI_CHECK_INCLUDE_FILE (signal.h HAVE_SIGNAL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (stdlib.h HAVE_STDLIB_H) +OMPI_CHECK_INCLUDE_FILE (stdarg.h HAVE_STDARG_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (strings.h HAVE_STRINGS_H) +OMPI_CHECK_INCLUDE_FILE (stdbool.h HAVE_STDBOOL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (string.h HAVE_STRING_H) +OMPI_CHECK_INCLUDE_FILE (stdint.h HAVE_STDINT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (stropts.h HAVE_STROPTS_H) +OMPI_CHECK_INCLUDE_FILE (stdlib.h HAVE_STDLIB_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (syslog.h HAVE_SYSLOG_H) +OMPI_CHECK_INCLUDE_FILE (strings.h HAVE_STRINGS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/bproc_common.h HAVE_SYS_BPROC_COMMON_H) +OMPI_CHECK_INCLUDE_FILE (string.h HAVE_STRING_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/bproc.h HAVE_SYS_BPROC_H) +OMPI_CHECK_INCLUDE_FILE (stropts.h HAVE_STROPTS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/devpoll.h HAVE_SYS_DEVPOLL_H) +OMPI_CHECK_INCLUDE_FILE (syslog.h HAVE_SYSLOG_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/epoll.h HAVE_SYS_EPOLL_H) +OMPI_CHECK_INCLUDE_FILE (sys/bproc_common.h HAVE_SYS_BPROC_COMMON_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/event.h HAVE_SYS_EVENT_H) +OMPI_CHECK_INCLUDE_FILE (sys/bproc.h HAVE_SYS_BPROC_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/fcntl.h HAVE_SYS_FCNTL_H) +OMPI_CHECK_INCLUDE_FILE (sys/devpoll.h HAVE_SYS_DEVPOLL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/ioctl.h HAVE_SYS_IOCTL_H) +OMPI_CHECK_INCLUDE_FILE (sys/epoll.h HAVE_SYS_EPOLL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/ipc.h HAVE_SYS_IPC_H) +OMPI_CHECK_INCLUDE_FILE (sys/event.h HAVE_SYS_EVENT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/mman.h HAVE_SYS_MMAN_H) +OMPI_CHECK_INCLUDE_FILE (sys/fcntl.h HAVE_SYS_FCNTL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/param.h HAVE_SYS_PARAM_H) +OMPI_CHECK_INCLUDE_FILE (sys/ioctl.h HAVE_SYS_IOCTL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/queue.h HAVE_SYS_QUEUE_H) +OMPI_CHECK_INCLUDE_FILE (sys/ipc.h HAVE_SYS_IPC_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/resource.h HAVE_SYS_RESOURCE_H) +OMPI_CHECK_INCLUDE_FILE (sys/mman.h HAVE_SYS_MMAN_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/select.h HAVE_SYS_SELECT_H) +OMPI_CHECK_INCLUDE_FILE (sys/param.h HAVE_SYS_PARAM_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/socket.h HAVE_SYS_SOCKET_H) +OMPI_CHECK_INCLUDE_FILE (sys/queue.h HAVE_SYS_QUEUE_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/sockio.h HAVE_SYS_SOCKIO_H) +OMPI_CHECK_INCLUDE_FILE (sys/resource.h HAVE_SYS_RESOURCE_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/statvfs.h HAVE_SYS_STATVFS_H) +OMPI_CHECK_INCLUDE_FILE (sys/select.h HAVE_SYS_SELECT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/stat.h HAVE_SYS_STAT_H) +OMPI_CHECK_INCLUDE_FILE (sys/socket.h HAVE_SYS_SOCKET_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/sysctl.h HAVE_SYS_SYSCTL_H) +OMPI_CHECK_INCLUDE_FILE (sys/sockio.h HAVE_SYS_SOCKIO_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/time.h HAVE_SYS_TIME_H) +OMPI_CHECK_INCLUDE_FILE (sys/statvfs.h HAVE_SYS_STATVFS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/tree.h HAVE_SYS_TREE_H) +OMPI_CHECK_INCLUDE_FILE (sys/stat.h HAVE_SYS_STAT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/types.h HAVE_SYS_TYPES_H) +OMPI_CHECK_INCLUDE_FILE (sys/sysctl.h HAVE_SYS_SYSCTL_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/uio.h HAVE_SYS_UIO_H) +OMPI_CHECK_INCLUDE_FILE (sys/time.h HAVE_SYS_TIME_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/utsname.h HAVE_SYS_UTSNAME_H) +OMPI_CHECK_INCLUDE_FILE (sys/tree.h HAVE_SYS_TREE_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (sys/wait.h HAVE_SYS_WAIT_H) +OMPI_CHECK_INCLUDE_FILE (sys/types.h HAVE_SYS_TYPES_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (termios.h HAVE_TERMIOS_H) +OMPI_CHECK_INCLUDE_FILE (sys/uio.h HAVE_SYS_UIO_H) -#/* Define if timeradd is defined in */ -CHECK_INCLUDE_FILE (sys/time.h HAVE_TIMERADD) +OMPI_CHECK_INCLUDE_FILE (sys/utsname.h HAVE_SYS_UTSNAME_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (time.h HAVE_TIME_H) +OMPI_CHECK_INCLUDE_FILE (sys/wait.h HAVE_SYS_WAIT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (ucontext.h HAVE_UCONTEXT_H) +OMPI_CHECK_INCLUDE_FILE (termios.h HAVE_TERMIOS_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (ulimit.h HAVE_ULIMIT_H) +OMPI_CHECK_INCLUDE_FILE (sys/time.h HAVE_TIMERADD) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (unistd.h HAVE_UNISTD_H) +OMPI_CHECK_INCLUDE_FILE (time.h HAVE_TIME_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (util.h HAVE_UTIL_H) +OMPI_CHECK_INCLUDE_FILE (ucontext.h HAVE_UCONTEXT_H) -#/* Define to 1 if you have the header file. */ -CHECK_INCLUDE_FILE (utmp.h HAVE_UTMP_H) +OMPI_CHECK_INCLUDE_FILE (ulimit.h HAVE_ULIMIT_H) -#/* The MX library have support for the mx_extensions.h */ -CHECK_INCLUDE_FILE (mx_extension.h MX_HAVE_EXTENSIONS_H) +OMPI_CHECK_INCLUDE_FILE (unistd.h HAVE_UNISTD_H) -#/* Define to 1 if you have the ANSI C header files. */ -CHECK_INCLUDE_FILE(stddef.h STDC_HEADERS) -IF(STDC_HEADERS) -SET(OPAL_STDC_HEADERS 1) -ENDIF(STDC_HEADERS) +OMPI_CHECK_INCLUDE_FILE (util.h HAVE_UTIL_H) + +OMPI_CHECK_INCLUDE_FILE (utmp.h HAVE_UTMP_H) + +OMPI_CHECK_INCLUDE_FILE (mx_extension.h MX_HAVE_EXTENSIONS_H) + +OMPI_CHECK_INCLUDE_FILE(stddef.h OPAL_STDC_HEADERS) ################################################################### # Check functions # ################################################################### -#/* Define to 1 if you have the `asprintf' function. */ -CHECK_FUNCTION_EXISTS (asprintf HAVE_ASPRINTF) +OMPI_CHECK_FUNCTION_EXISTS (asprintf HAVE_ASPRINTF) -#/* Define to 1 if you have the `backtrace' function. */ -CHECK_FUNCTION_EXISTS (backtrace HAVE_BACKTRACE) +OMPI_CHECK_FUNCTION_EXISTS (backtrace HAVE_BACKTRACE) -#/* Define to 1 if you have the `ceil' function. */ -CHECK_FUNCTION_EXISTS (ceil HAVE_CEIL) +OMPI_CHECK_FUNCTION_EXISTS (ceil HAVE_CEIL) -#/* Define to 1 if you have the `cnos_pm_barrier' function. */ -CHECK_FUNCTION_EXISTS (cnos_pm_barrier HAVE_CNOS_PM_BARRIER) +OMPI_CHECK_FUNCTION_EXISTS (cnos_pm_barrier HAVE_CNOS_PM_BARRIER) -#/* Define to 1 if you have the `dirname' function. */ -CHECK_FUNCTION_EXISTS (dirname HAVE_DIRNAME) +OMPI_CHECK_FUNCTION_EXISTS (dirname HAVE_DIRNAME) -#/* Define to 1 if you have the `dlsym' function. */ -CHECK_FUNCTION_EXISTS (dlsym AVE_DLSYM) +OMPI_CHECK_FUNCTION_EXISTS (dlsym HAVE_DLSYM) -#/* Define if your system supports the epoll system calls */ -CHECK_FUNCTION_EXISTS (epoll HAVE_EPOLL) +OMPI_CHECK_FUNCTION_EXISTS (epoll HAVE_EPOLL) -#/* Define to 1 if you have the `epoll_ctl' function. */ -CHECK_FUNCTION_EXISTS (epoll_ctl HAVE_EPOLL_CTL) +OMPI_CHECK_FUNCTION_EXISTS (epoll_ctl HAVE_EPOLL_CTL) -#/* Define to 1 if you have the `execve' function. */ -CHECK_FUNCTION_EXISTS (execve HAVE_EXECVE) +OMPI_CHECK_FUNCTION_EXISTS (execve HAVE_EXECVE) -#/* Define to 1 if you have the `fcntl' function. */ -CHECK_FUNCTION_EXISTS (fcntl HAVE_FCNTL) +OMPI_CHECK_FUNCTION_EXISTS (fcntl HAVE_FCNTL) -#/* Define to 1 if you have the `fork' function. */ -CHECK_FUNCTION_EXISTS (fork HAVE_FORK) +OMPI_CHECK_FUNCTION_EXISTS (fork HAVE_FORK) -#/* Define to 1 if you have the `getpwuid' function. */ -CHECK_FUNCTION_EXISTS (getpwuid HAVE_GETPWUID) +OMPI_CHECK_FUNCTION_EXISTS (getpwuid HAVE_GETPWUID) -#/* Define to 1 if you have the `gettimeofday' function. */ -CHECK_FUNCTION_EXISTS (gettimeofday HAVE_GETTIMEOFDAY) +OMPI_CHECK_FUNCTION_EXISTS (gettimeofday HAVE_GETTIMEOFDAY) -#/* Define to 1 if you have the `htonl' function. */ -CHECK_FUNCTION_EXISTS (htonl HAVE_HTONL) +OMPI_CHECK_FUNCTION_EXISTS (htonl HAVE_HTONL) -#/* Define to 1 if you have the `htons' function. */ -CHECK_FUNCTION_EXISTS (htons HAVE_HTONS) +OMPI_CHECK_FUNCTION_EXISTS (htons HAVE_HTONS) -#/* Define to 1 if you have the `ibv_fork_init' function. */ -CHECK_FUNCTION_EXISTS (ibv_fork_init HAVE_IBV_FORK_INIT) +OMPI_CHECK_FUNCTION_EXISTS (ibv_fork_init HAVE_IBV_FORK_INIT) -#/* Define to 1 if you have the `ibv_get_device_list' function. */ -CHECK_FUNCTION_EXISTS (ibv_get_device_list HAVE_IBV_GET_DEVICE_LIST) +OMPI_CHECK_FUNCTION_EXISTS (ibv_get_device_list HAVE_IBV_GET_DEVICE_LIST) -#/* Define to 1 if you have the `ibv_resize_cq' function. */ -CHECK_FUNCTION_EXISTS (ibv_resize_cq HAVE_IBV_RESIZE_CQ) +OMPI_CHECK_FUNCTION_EXISTS (ibv_resize_cq HAVE_IBV_RESIZE_CQ) -#/* Define to 1 if you have the `isatty' function. */ -CHECK_FUNCTION_EXISTS (isatty HAVE_ISATTY) +OMPI_CHECK_FUNCTION_EXISTS (isatty HAVE_ISATTY) -#/* Define to 1 if you have the `killrank' function. */ -CHECK_FUNCTION_EXISTS (killrank HAVE_KILLRANK) +OMPI_CHECK_FUNCTION_EXISTS (killrank HAVE_KILLRANK) -#/* Define to 1 if you have the `kqueue' function. */ -CHECK_FUNCTION_EXISTS (kqueue KQUEUE) +OMPI_CHECK_FUNCTION_EXISTS (kqueue KQUEUE) -#/* Define to 1 if you have the `mach_vm_read' function. */ -CHECK_FUNCTION_EXISTS (mach_vm_read HAVE_MACH_MACH_VM_READ) +OMPI_CHECK_FUNCTION_EXISTS (mach_vm_read HAVE_MACH_MACH_VM_READ) -#/* Define to 1 if you have the `mach_vm_region' function. */ -CHECK_FUNCTION_EXISTS (mach_vm_region HAVE_MACH_VM_REGION) +OMPI_CHECK_FUNCTION_EXISTS (mach_vm_region HAVE_MACH_VM_REGION) -#/* Define to 1 if you have the `mallopt' function. */ -CHECK_FUNCTION_EXISTS (mallopt HAVE_MALLOPT) +OMPI_CHECK_FUNCTION_EXISTS (mallopt HAVE_MALLOPT) -#/* Define to 1 if you have the `mmap' function. */ -CHECK_FUNCTION_EXISTS (mmap HAVE_MMAP) +OMPI_CHECK_FUNCTION_EXISTS (mmap HAVE_MMAP) -#/* Define to 1 if you have the `ntohl' function. */ -CHECK_FUNCTION_EXISTS (ntohl HAVE_NTOHL) +OMPI_CHECK_FUNCTION_EXISTS (ntohl HAVE_NTOHL) -#/* Define to 1 if you have the `ntohs' function. */ -CHECK_FUNCTION_EXISTS (ntohs HAVE_NTOHS) +OMPI_CHECK_FUNCTION_EXISTS (ntohs HAVE_NTOHS) -#/* Define to 1 if you have the `openpty' function. */ -CHECK_FUNCTION_EXISTS (openpty HAVE_OPENPTY) +OMPI_CHECK_FUNCTION_EXISTS (openpty HAVE_OPENPTY) -#/* Define to 1 if you have the `pipe' function. */ -CHECK_FUNCTION_EXISTS (pipe HAVE_PIPE) +OMPI_CHECK_FUNCTION_EXISTS (pipe HAVE_PIPE) -#/* Define to 1 if you have the `pm_cycles' function. */ -CHECK_FUNCTION_EXISTS (pm_cycles HAVE_PM_CYCLES) +OMPI_CHECK_FUNCTION_EXISTS (pm_cycles HAVE_PM_CYCLES) -#/* Define to 1 if you have the `poll' function. */ -CHECK_FUNCTION_EXISTS (poll HAVE_POLL) +OMPI_CHECK_FUNCTION_EXISTS (poll HAVE_POLL) -#/* Define to 1 if you have the `posix_memalign' function. */ -CHECK_FUNCTION_EXISTS (posix_memalign HAVE_POSIX_MEMALIGN) +OMPI_CHECK_FUNCTION_EXISTS (posix_memalign HAVE_POSIX_MEMALIGN) -#/* Define to 1 if you have the `printstack' function. */ -CHECK_FUNCTION_EXISTS (printstack HAVE_PRINTSTACK) +OMPI_CHECK_FUNCTION_EXISTS (printstack HAVE_PRINTSTACK) -#/* Define to 1 if you have the `ptsname' function. */ -CHECK_FUNCTION_EXISTS (ptsname HAVE_PTSNAME) +OMPI_CHECK_FUNCTION_EXISTS (ptsname HAVE_PTSNAME) -#/* Define to 1 if you have the `regcmp' function. */ -CHECK_FUNCTION_EXISTS (regcmp HAVE_REGCMP) +OMPI_CHECK_FUNCTION_EXISTS (regcmp HAVE_REGCMP) -#/* Define to 1 if you have the `regexec' function. */ -CHECK_FUNCTION_EXISTS (regexec HAVE_REGEXEC) +OMPI_CHECK_FUNCTION_EXISTS (regexec HAVE_REGEXEC) -#/* Define to 1 if you have the `regfree' function. */ -CHECK_FUNCTION_EXISTS (regfree HAVE_REGFREE) +OMPI_CHECK_FUNCTION_EXISTS (regfree HAVE_REGFREE) -#/* Define to 1 if you have the `sched_yield' function. */ -CHECK_FUNCTION_EXISTS (sched_yield HAVE_SCHED_YIELD) +OMPI_CHECK_FUNCTION_EXISTS (sched_yield HAVE_SCHED_YIELD) -#/* Define to 1 if you have the `select' function. */ -CHECK_FUNCTION_EXISTS (select HAVE_SELECT) +OMPI_CHECK_FUNCTION_EXISTS (select HAVE_SELECT) -#/* Define to 1 if you have the `setsid' function. */ -CHECK_FUNCTION_EXISTS (setsid HAVE_SETSID) +OMPI_CHECK_FUNCTION_EXISTS (setsid HAVE_SETSID) -#/* Define to 1 if you have the `sigtimedwait' function. */ -CHECK_FUNCTION_EXISTS (sigtimedwait HAVE_SIGTIMEDWAIT) +OMPI_CHECK_FUNCTION_EXISTS (sigtimedwait HAVE_SIGTIMEDWAIT) -#/* Define to 1 if you have the `snprintf' function. */ -CHECK_FUNCTION_EXISTS (snprintf HAVE_SNPRINTF) +OMPI_CHECK_FUNCTION_EXISTS (snprintf HAVE_SNPRINTF) -#/* Define to 1 if you have the `strsignal' function. */ -CHECK_FUNCTION_EXISTS (strsignal HAVE_STRSIGNAL) +OMPI_CHECK_FUNCTION_EXISTS (strsignal HAVE_STRSIGNAL) -#/* Define to 1 if you have the `syscall' function. */ -CHECK_FUNCTION_EXISTS (syscall HAVE_SYSCALL) +OMPI_CHECK_FUNCTION_EXISTS (syscall HAVE_SYSCALL) -#/* Define to 1 if you have the `sysconf' function. */ -CHECK_FUNCTION_EXISTS (sysconf HAVE_SYSCONF) +OMPI_CHECK_FUNCTION_EXISTS (sysconf HAVE_SYSCONF) -#/* Define to 1 if you have the `syslog' function. */ -CHECK_FUNCTION_EXISTS (syslog HAVE_SYSLOG) +OMPI_CHECK_FUNCTION_EXISTS (syslog HAVE_SYSLOG) -#/* Define to 1 if you have the `tcgetpgrp' function. */ -CHECK_FUNCTION_EXISTS (tcgetpgrp HAVE_TCGETPGRP) +OMPI_CHECK_FUNCTION_EXISTS (tcgetpgrp HAVE_TCGETPGRP) -#/* Define to 1 if you have the `vasprintf' function. */ -CHECK_FUNCTION_EXISTS (vasprintf HAVE_VASPRINTF) +OMPI_CHECK_FUNCTION_EXISTS (vasprintf HAVE_VASPRINTF) -#/* Define to 1 if you have the `vm_read_overwrite' function. */ -CHECK_FUNCTION_EXISTS (vm_read_overwrite HAVE_VM_READ_OVERWRITE) +OMPI_CHECK_FUNCTION_EXISTS (vm_read_overwrite HAVE_VM_READ_OVERWRITE) -#/* Define to 1 if you have the `vsnprintf' function. */ -CHECK_FUNCTION_EXISTS (vsnprintf HAVE_VSNPRINTF) +OMPI_CHECK_FUNCTION_EXISTS (vsnprintf HAVE_VSNPRINTF) -#/* Define to 1 if you have the `waitpid' function. */ -CHECK_FUNCTION_EXISTS (waitpid HAVE_WAITPIN) +OMPI_CHECK_FUNCTION_EXISTS (waitpid HAVE_WAITPIN) -#/* Define to 1 if you have the `_NSGetEnviron' function. */ -CHECK_FUNCTION_EXISTS (_NSGetEnviron HAVE__NSGETENVIRON) +OMPI_CHECK_FUNCTION_EXISTS (_NSGetEnviron HAVE__NSGETENVIRON) -#/* Define to 1 if you have the `__mmap' function. */ -CHECK_FUNCTION_EXISTS (__mmap HAVE___MMAP) +OMPI_CHECK_FUNCTION_EXISTS (__mmap HAVE___MMAP) -#/* Define to 1 if you have the `__munmap' function. */ -CHECK_FUNCTION_EXISTS (__munmap HAVE___MUNMAP) +OMPI_CHECK_FUNCTION_EXISTS (__munmap HAVE___MUNMAP) -################################################################### -# Check libraries # -################################################################### +CHECK_C_TYPE_EXISTS(socklen_t SOCKLEN_T "winsock2.h;ws2tcpip.h") +CHECK_C_TYPE_EXISTS("struct sockaddr_in" STRUCT_SOCKADDR_IN "winsock2.h") -################################################################### -# Check symbols # -################################################################### +CHECK_C_TYPE_EXISTS("struct sockaddr_in6" STRUCT_SOCKADDR_IN6 "ws2tcpip.h") -#/* Define if F_SETFD is defined in */ -CHECK_SYMBOL_EXISTS (F_SETFD fcntl.h HAVE_SETFD) +CHECK_C_TYPE_EXISTS("struct sockaddr_storage" STRUCT_SOCKADDR_STORAGE "winsock2.h;ws2tcpip.h") -#/* Define if TAILQ_FOREACH is defined in */ -CHECK_SYMBOL_EXISTS (TAILQ_FOREACH "sys/queue.h" HAVE_TAILQFOREACH) +OMPI_CHECK_SYMBOL_EXISTS (F_SETFD fcntl.h HAVE_SETFD) -#/* Define to 1 if you have the declaration of `IBV_EVENT_CLIENT_REREGISTER', -# and to 0 if you don't. */ -CHECK_SYMBOL_EXISTS (IBV_EVENT_CLIENT_REREGISTER "" HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER) +OMPI_CHECK_SYMBOL_EXISTS (TAILQ_FOREACH "sys/queue.h" HAVE_TAILQFOREACH) -#/* Define to 1 if you have the declaration of `AF_UNSPEC', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (AF_UNSPEC winsock2.h HAVE_DECL_AF_UNSPEC) +OMPI_CHECK_SYMBOL_EXISTS (IBV_EVENT_CLIENT_REREGISTER "" HAVE_DECL_IBV_EVENT_CLIENT_REREGISTER) -#/* Define to 1 if you have the declaration of `PF_UNSPEC', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (PF_UNSPEC winsock2.h HAVE_DECL_PF_UNSPEC) +OMPI_CHECK_SYMBOL_EXISTS (AF_UNSPEC winsock2.h HAVE_DECL_AF_UNSPEC) -#/* Define to 1 if you have the declaration of `AF_INET6', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (AF_INET6 winsock2.h HAVE_DECL_AF_INET6) +OMPI_CHECK_SYMBOL_EXISTS (PF_UNSPEC winsock2.h HAVE_DECL_PF_UNSPEC) -#/* Define to 1 if you have the declaration of `PF_INET6', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (PF_INET6 winsock2.h HAVE_DECL_PF_INET6) +OMPI_CHECK_SYMBOL_EXISTS (AF_INET6 winsock2.h HAVE_DECL_AF_INET6) -# -#/* Define to 1 if you have the declaration of `RLIMIT_NPROC', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (RLIMIT_NPROC "" HAVE_DECL_RLIMIT_NPROC) +OMPI_CHECK_SYMBOL_EXISTS (PF_INET6 winsock2.h HAVE_DECL_PF_INET6) -#/* Define to 1 if you have the declaration of `sbrk', and to 0 if you don't. -# */ -CHECK_SYMBOL_EXISTS (sbrk "" HAVE_DECL_SBRK) +OMPI_CHECK_SYMBOL_EXISTS (RLIMIT_NPROC "" HAVE_DECL_RLIMIT_NPROC) -#/* Define to 1 if you have the declaration of `__func__', and to 0 if you -# don't. */ -CHECK_SYMBOL_EXISTS (__func__ "" HAVE_DECL___FUNC__) -IF(NOT HAVE_DECL___FUNC__) - SET(HAVE_DECL___FUNC__ 0) -ENDIF(NOT HAVE_DECL___FUNC__) +OMPI_CHECK_SYMBOL_EXISTS (sbrk "" HAVE_DECL_SBRK) -#/* Define to 1 if `srr0' is member of `ppc_thread_state_t'. */ -CHECK_STRUCT_HAS_MEMBER(ppc_thread_state_t srr0 mach/ppc/thread_status.h HAVE_PPC_THREAD_STATE_T_SRR0) +OMPI_CHECK_SYMBOL_EXISTS (__func__ "" HAVE_DECL___FUNC__) -#/* Define to 1 if `si_band' is member of `siginfo_t'. */ -CHECK_STRUCT_HAS_MEMBER(siginfo_t si_band sys/siginfo.h HAVE_SIGINFO_T_SI_BAND) +OMPI_CHECK_STRUCT_HAS_MEMBER(ppc_thread_state_t srr0 mach/ppc/thread_status.h HAVE_PPC_THREAD_STATE_T_SRR0) -#/* Define to 1 if `si_fd' is member of `siginfo_t'. */ -CHECK_STRUCT_HAS_MEMBER(siginfo_t si_fd sys/siginfo.h HAVE_SIGINFO_T_SI_FD) +OMPI_CHECK_STRUCT_HAS_MEMBER(siginfo_t si_band sys/siginfo.h HAVE_SIGINFO_T_SI_BAND) -#/* Define to 1 if `d_type' is member of `struct dirent'. */ -CHECK_STRUCT_HAS_MEMBER("struct dirent" d_type dirent.h HAVE_STRUCT_DIRENT_D_TYPE) +OMPI_CHECK_STRUCT_HAS_MEMBER(siginfo_t si_fd sys/siginfo.h HAVE_SIGINFO_T_SI_FD) + +OMPI_CHECK_STRUCT_HAS_MEMBER("struct dirent" d_type dirent.h HAVE_STRUCT_DIRENT_D_TYPE) ################################################################### # Check data type # ################################################################### -#/* The size of `bool', as computed by sizeof. */ -INCLUDE(check_sizeof_bool) -CHECK_SIZEOF_BOOL() -#/* The size of `char', as computed by sizeof. */ -CHECK_TYPE_SIZE(char CHAR) -SET(SIZEOF_CHAR ${CHAR} CACHE INTERNAL "sizeof 'char'") +OMPI_CHECK_TYPES(char CHAR none c) -#/* The size of `double', as computed by sizeof. */ -CHECK_TYPE_SIZE(double DOUBLE) -SET(SIZEOF_DOUBLE ${DOUBLE} CACHE INTERNAL "sizeof 'double'") +OMPI_CHECK_TYPES(wchar WCHAR none c) -#/* The size of `float', as computed by sizeof. */ -CHECK_TYPE_SIZE(float FLOAT) -SET(SIZEOF_FLOAT ${FLOAT} CACHE INTERNAL "sizeof 'float'") +OMPI_CHECK_TYPES(double DOUBLE none c) -#/* The size of `int', as computed by sizeof. */ -CHECK_TYPE_SIZE(int INT) -SET(SIZEOF_INT ${INT} CACHE INTERNAL "sizeof int") +OMPI_CHECK_TYPES(float FLOAT none c) -#/* The size of `long', as computed by sizeof. */ -CHECK_TYPE_SIZE(long LONG) -SET(SIZEOF_LONG ${LONG} CACHE INTERNAL "sizeof 'long'") +OMPI_CHECK_TYPES(int INT none c) -#/* The size of `long double', as computed by sizeof. */ -CHECK_TYPE_SIZE("long double" LONG_DOUBLE) -SET(SIZEOF_LONG_DOUBLE ${LONG_DOUBLE} CACHE INTERNAL "sizeof 'long double'") +OMPI_CHECK_BOOL() -#/* The size of `long long', as computed by sizeof. */ -CHECK_TYPE_SIZE("long long" LONG_LONG) -SET(SIZEOF_LONG_LONG ${LONG_LONG} CACHE INTERNAL "sizeof 'long long'") +OMPI_CHECK_TYPES(short SHORT none c) -#/* The size of `unsigned int', as computed by sizeof. */ -CHECK_TYPE_SIZE ("unsigned int" UNSIGNED_INT) -SET(SIZEOF_UNSIGNED_INT ${UNSIGNED_INT} CACHE INTERNAL "sizeof 'unsigned int'") +OMPI_CHECK_TYPES(long LONG none c) -#/* The size of `unsigned short', as computed by sizeof. */ -CHECK_TYPE_SIZE ("unsigned short" UNSIGNED_SHORT) -SET(SIZEOF_UNSIGNED_SHORT ${UNSIGNED_SHORT} CACHE INTERNAL "sizeof 'unsigned short'") +OMPI_CHECK_TYPES("long double" LONG_DOUBLE none c) -#/* The size of `unsigned long long', as computed by sizeof. */ -CHECK_TYPE_SIZE ("unsigned long long" UNSIGNED_LONG_LONG) -SET(SIZEOF_UNSIGNED_LONG_LONG ${UNSIGNED_LONG_LONG} CACHE INTERNAL "sizeof 'unsigned long long'") +OMPI_CHECK_TYPES("long long" LONG_LONG none c) -#/* The size of `unsigned long double', as computed by sizeof. */ -CHECK_TYPE_SIZE("unsigned long double" UNSIGNED_LONG_DOUBLE) -SET(SIZEOF_UNSIGNED_LONG_DOUBLE ${UNSIGNED_LONG_DOUBLE} CACHE INTERNAL "sizeof 'unsigned long double'") +OMPI_CHECK_TYPES ("unsigned int" UNSIGNED_INT none c) -#/* The size of `unsigned char', as computed by sizeof. */ -CHECK_TYPE_SIZE ("unsigned char" UNSIGNED_CHAR) -SET(SIZEOF_UNSIGNED_CHAR ${UNSIGNED_CHAR} CACHE INTERNAL "sizeof 'unsigned char'") +OMPI_CHECK_TYPES ("unsigned short" UNSIGNED_SHORT none c) -#/* The size of `short', as computed by sizeof. */ -CHECK_TYPE_SIZE(short SHORT) -SET(SIZEOF_SHORT ${SHORT} CACHE INTERNAL "sizeof 'short'") +OMPI_CHECK_TYPES ("unsigned long long" UNSIGNED_LONG_LONG none c) -#/* The size of `float _Complex', as computed by sizeof. */ -CHECK_TYPE_SIZE("float _Complex" FLOAT_COMPLEX) -SET(SIZEOF_FLOAT_COMPLEX ${SHORT} CACHE INTERNAL "sizeof 'float _Complex'") +OMPI_CHECK_TYPES("unsigned long double" UNSIGNED_LONG_DOUBLE none c) -#/* The size of `double _Complex', as computed by sizeof. */ -CHECK_TYPE_SIZE("double _Complex" DOUBLE_COMPLEX) -SET(SIZEOF_DOUBLE_COMPLEX ${SHORT} CACHE INTERNAL "sizeof 'double _Complex'") +OMPI_CHECK_TYPES ("unsigned char" UNSIGNED_CHAR none c) -#/* The size of `long double _Complex', as computed by sizeof. */ -CHECK_TYPE_SIZE("long double _Complex" LONG_DOUBLE_COMPLEX) -SET(SIZEOF_LONG_DOUBLE_COMPLEX ${SHORT} CACHE INTERNAL "sizeof 'long double _Complex'") +OMPI_CHECK_TYPES("float _Complex" FLOAT_COMPLEX none c) -#/* The size of `size_t', as computed by sizeof. */ -CHECK_TYPE_SIZE(size_t SIZE_T) -IF (NOT SIZEOF_SIZE_T) - # size_t is not defind, define it as unsigned int. - MESSAGE(STATUS "Define it as 'unsigned int'.") - SET (SIZE_T "unsigned int") - SET (SIZEOF_SIZE_T ${SIZEOF_UNSIGNED_INT} CACHE INTERNAL "sizeof 'size_t'") -ELSEIF (SIZE_T) - SET(SIZEOF_SIZE_T ${SIZE_T} CACHE INTERNAL "sizeof 'size_t'") -ENDIF (NOT SIZEOF_SIZE_T) +OMPI_CHECK_TYPES("double _Complex" DOUBLE_COMPLEX none c) -#/* The size of `ssize_t', as computed by sizeof. */ -CHECK_TYPE_SIZE(ssize_t SSIZE_T) -SET(SIZEOF_SSIZE_T ${SSIZE_T} CACHE INTERNAL "sizeof sszie_t") +OMPI_CHECK_TYPES("long double _Complex" LONG_DOUBLE_COMPLEX none c) -#/* The size of `void *', as computed by sizeof. */ -CHECK_TYPE_SIZE("void *" VOID_P) -SET(SIZEOF_VOID_P ${VOID_P} CACHE INTERNAL "sizeof 'void *'") +OMPI_CHECK_TYPES(size_t SIZE_T none c) -#/* The size of `pid_t', as computed by sizeof. */ -CHECK_TYPE_SIZE(pid_t PID_T) -IF (NOT SIZEOF_PID_T) - MESSAGE(STATUS "Define it as int.") - SET (PID_T "int" CACHE INTERNAL "define 'pid_t'") - SET (SIZEOF_PID_T ${SIZEOF_INT} CACHE INTERNAL "sizeof 'pid_t'") -ELSEIF (HAVE_PID_T) - SET(SIZEOF_PID_T ${PID_T} CACHE INTERNAL "sizeof 'pid_t'") -ENDIF (NOT SIZEOF_PID_T) +OMPI_CHECK_TYPES(ssize_t SSIZE_T none c) -#/* The size of `ptrdiff_t', as computed by sizeof. */ -CHECK_TYPE_SIZE(ptrdiff_t PTRDIFF_T) -SET(SIZEOF_PTRDIFF_T ${PTRDIFF_T} CACHE INTERNAL "sizeof 'ptrdiff_t'") +OMPI_CHECK_TYPES("void *" VOID_P none c) -#/* Define to 1 if the system has the type `mode_t'. */ -CHECK_TYPE_SIZE (mode_t MODE_T) +OMPI_CHECK_TYPES(pid_t PID_T "int" c) -#/* Define to 1 if the system has the type `int8_t'. */ -CHECK_TYPE_SIZE (int8_t INT8_T) -IF (NOT SIZEOF_INT8_T) - MESSAGE(STATUS "Define it as 'char'.") - C_GET_ALIGNMENT(char c INT8) - #SET (int8_t "char" CACHE INTERNAL "define 'int8_t'") - SET (SIZEOF_INT8_T ${SIZEOF_UNSIGNED_CHAR} CACHE INTERNAL "sizeof 'int8_t'") -ELSEIF (HAVE_INT8_T) - C_GET_ALIGNMENT(int8_t c INT8) - SET (SIZEOF_INT8_T ${INT8_T} CACHE INTERNAL "sizeof 'int8_t'") -ENDIF (NOT SIZEOF_INT8_T) +OMPI_CHECK_TYPES(ptrdiff_t PTRDIFF_T "int" c) -#/* Define to 1 if the system has the type `int16_t'. */ -CHECK_TYPE_SIZE (int16_t INT16_T) -IF (NOT SIZEOF_INT16_T) - # int16_t is not defind, define it as short. - MESSAGE(STATUS "Define it as 'short'.") - C_GET_ALIGNMENT(short c INT16) - #SET (int16_t "short" CACHE INTERNAL "define 'int16_t'") - SET (SIZEOF_INT16_T ${SIZEOF_SHORT} CACHE INTERNAL "sizeof 'int16_t'") -ELSEIF (HAVE_INT16_T) - C_GET_ALIGNMENT(int16_t c INT16) - SET (SIZEOF_INT16_T ${INT16_T} CACHE INTERNAL "sizeof 'int16_t'") -ENDIF (NOT SIZEOF_INT16_T) +OMPI_CHECK_TYPES (mode_t MODE_T none c) -#/* Define to 1 if the system has the type `int32_t'. */ -CHECK_TYPE_SIZE (int32_t INT32_T) -IF (NOT SIZEOF_INT32_T) - MESSAGE(STATUS "Define it as 'int'.") - C_GET_ALIGNMENT(int c INT32) - #SET (int32_t "int" CACHE INTERNAL "define 'int32_t'") - SET (SIZEOF_INT32_T ${SIZEOF_INT} CACHE INTERNAL "sizeof 'int32_t'") -ELSEIF (HAVE_INT32_T) - C_GET_ALIGNMENT(int32_t c INT32) - SET (SIZEOF_INT32_T ${INT32_T} CACHE INTERNAL "sizeof 'int32_t'") -ENDIF (NOT SIZEOF_INT32_T) +OMPI_CHECK_TYPES (int8_t INT8_T none c) -#/* Define to 1 if the system has the type `int64_t'. */ -CHECK_TYPE_SIZE (int64_t INT64_T) -IF (NOT SIZEOF_INT64_T) - MESSAGE(STATUS "Define it as 'long long'.") - C_GET_ALIGNMENT("long long" c INT64) - #SET (int64_t "long long" CACHE INTERNAL "define 'int64_t'") - SET (SIZEOF_INT64_T ${SIZEOF_LONG_LONG} CACHE INTERNAL "sizeof 'int64_t'") -ELSEIF (HAVE_INT64_T) - C_GET_ALIGNMENT(int64_t c INT64) - SET (SIZEOF_INT64_T ${INT64_T} CACHE INTERNAL "sizeof 'int64_t'") -ENDIF (NOT SIZEOF_INT64_T) +OMPI_CHECK_TYPES (int16_t INT16_T none c) -#/* Define to 1 if the system has the type `int128_t'. */ -CHECK_TYPE_SIZE (int128_t INT128_T) -IF (NOT SIZEOF_INT128_T) - MESSAGE(STATUS "Define it as 'long double'.") - C_GET_ALIGNMENT("long double" c INT128) - #SET (u_int8_t "unsigned char" CACHE INTERNAL "define 'uint8_t'") - SET (SIZEOF_INT128_T ${SIZEOF_LONG_DOUBLE} CACHE INTERNAL "sizeof 'int128_t'") -ELSEIF (HAVE_INT8_T) - C_GET_ALIGNMENT(int128_t c INT128) - SET (SIZEOF_INT128_T ${INT128_T} CACHE INTERNAL "sizeof 'int128_t'") -ENDIF (NOT SIZEOF_INT128_T) +OMPI_CHECK_TYPES (int32_t INT32_T none c) -#/* Define to 1 if the system has the type `uint8_t'. */ -CHECK_TYPE_SIZE (uint8_t UINT8_T) -IF (NOT SIZEOF_UINT8_T) - MESSAGE(STATUS "Define it as 'unsigned char'.") - #SET (u_int8_t "unsigned char" CACHE INTERNAL "define 'uint8_t'") - SET (SIZEOF_UINT8_T ${SIZEOF_UNSIGNED_CHAR} CACHE INTERNAL "sizeof 'uint8_t'") -ELSEIF (HAVE_UINT8_T) - SET (SIZEOF_UINT8_T ${UINT8_T} CACHE INTERNAL "sizeof 'uint8_t'") -ENDIF (NOT SIZEOF_UINT8_T) +OMPI_CHECK_TYPES (int64_t INT64_T none c) -#/* Define to 1 if the system has the type `uint16_t'. */ -CHECK_TYPE_SIZE (uint16_t UINT16_T) -IF (NOT SIZEOF_UINT16_T) - MESSAGE(STATUS "Define it as 'unsigned short'.") - #SET (u_int16_t "unsigned short" CACHE INTERNAL "define 'uint16_t'") - SET (SIZEOF_UINT16_T ${UNSIGNED_SHORT} CACHE INTERNAL "sizeof 'uint16_t'") -ELSEIF (HAVE_UINT16_T) - SET (SIZEOF_UINT16_T ${UINT16_T} CACHE INTERNAL "sizeof 'uint16_t'") -ENDIF (NOT SIZEOF_UINT16_T) +OMPI_CHECK_TYPES (int128_t INT128_T none c) -#/* Define to 1 if the system has the type `uint32_t'. */ -CHECK_TYPE_SIZE (uint32_t UINT32_T) -IF (NOT SIZEOF_UINT32_T) - MESSAGE(STATUS "Define it as 'unsigned int'.") - #SET (u_int32_t "unsigned int" CACHE INTERNAL "define 'uint32_t'") - SET (SIZEOF_UINT32_T ${SIZEOF_UNSIGNED_INT} CACHE INTERNAL "sizeof 'uint32_t'") -ELSEIF (HAVE_UINT32_T) - SET (SIZEOF_UINT32_T ${UINT32_T} CACHE INTERNAL "sizeof 'uint32_t'") -ENDIF (NOT SIZEOF_UINT32_T) +OMPI_CHECK_TYPES (intptr_t INTPTR_T none c) -#/* Define to 1 if the system has the type `uint64_t'. */ -CHECK_TYPE_SIZE (uint64_t UINT64_T) -IF (NOT SIZEOF_UINT64_T) - MESSAGE(STATUS "Define it as 'unsigned long long'.") - #SET (u_int64_t "unsigned long long" CACHE INTERNAL "define 'uint64_t'") - SET (SIZEOF_UINT64_T ${SIZEOF_UNSIGNED_LONG_LONG} CACHE INTERNAL "sizeof 'uint64_t'") -ELSEIF (HAVE_UINT64_T) - SET (SIZEOF_UINT64_T ${UINT64_T} CACHE INTERNAL "sizeof 'uint64_t'") -ENDIF (NOT SIZEOF_UINT64_T) +OMPI_CHECK_TYPES (uint8_t UINT8_T none c) -#/* Define to 1 if the system has the type `uint128_t'. */ -CHECK_TYPE_SIZE (uint128_t UINT128_T) -IF (NOT SIZEOF_UINT128_T) - MESSAGE(STATUS "Define it as 'unsigned long double'.") - #SET (u_int8_t "unsigned char" CACHE INTERNAL "define 'uint8_t'") - SET (SIZEOF_UINT128_T ${SIZEOF_UNSIGNED_LONG_DOUBLE} CACHE INTERNAL "sizeof 'uint128_t'") -ELSEIF (HAVE_UINT8_T) - SET (SIZEOF_UINT128_T ${UINT128_T} CACHE INTERNAL "sizeof 'uint128_t'") -ENDIF (NOT SIZEOF_UINT128_T) +OMPI_CHECK_TYPES (uint16_t UINT16_T none c) -#/* Define to 1 if the system has the type `struct sockaddr_in'. */ -CHECK_TYPE_SIZE ("struct sockaddr_in" STRUCT_SOCKADDR_IN) +OMPI_CHECK_TYPES (uint32_t UINT32_T none c) -#/* Define to 1 if the system has the type `struct sockaddr_in6'. */ -CHECK_TYPE_SIZE ("struct sockaddr_in6" STRUCT_SOCKADDR_IN6) +OMPI_CHECK_TYPES (uint64_t UINT64_T none c) -#/* Define to 1 if the system has the type `struct sockaddr_storage'. */ -CHECK_TYPE_SIZE ("struct sockaddr_storage" STRUCT_SOCKADDR_STORAGE) +OMPI_CHECK_TYPES (uint128_t UINT128_T none c) -#/* Define to 1 if the system has the type `uintptr_t'. */ -CHECK_TYPE_SIZE (uintptr_t UINTPTR_T) +OMPI_CHECK_TYPES (uintptr_t UINTPTR_T none c) -#/* Alignment of type char */ -C_GET_ALIGNMENT (char c CHAR) - -#/* Alignment of type bool */ -C_GET_ALIGNMENT (bool cxx BOOL) - -#/* Alignment of type double */ -C_GET_ALIGNMENT (double c DOUBLE) - -#/* Alignment of type float */ -C_GET_ALIGNMENT (float c FLOAT) - -#/* Alignment of type int */ -C_GET_ALIGNMENT (int c INT) - -#/* Alignment of type long */ -C_GET_ALIGNMENT (long c LONG) - -#/* Alignment of type long double */ -C_GET_ALIGNMENT ("long double" c LONG_DOUBLE) - -#/* Alignment of type long long */ -C_GET_ALIGNMENT ("long long" c LONG_LONG) - -#/* Alignment of type short */ -C_GET_ALIGNMENT (short c SHORT) - -IF(HAVE_FLOAT_COMPLEX) - C_GET_ALIGNMENT("float _Complex" c FLOAT_COMPLEX) -ENDIF(HAVE_FLOAT_COMPLEX) - -IF(HAVE_DOUBLE_COMPLEX) - C_GET_ALIGNMENT("double _Complex" c DOUBLE_COMPLEX) -ENDIF(HAVE_DOUBLE_COMPLEX) - -IF(HAVE_LONG_DOUBLE_COMPLEX) - C_GET_ALIGNMENT("long double _Complex" c LONG_DOUBLE_COMPLEX) -ENDIF(HAVE_LONG_DOUBLE_COMPLEX) - -#/* Alignment of type void * */ -C_GET_ALIGNMENT ("void *" c VOID_P) - -#/* Alignment of type wchar_t */ -C_GET_ALIGNMENT (wchar_t c WCHAR_T) - -#/* Alignment of type _Bool */ -C_GET_ALIGNMENT(_Bool, c BOOL) - -#/* Whether the C compiler supports "bool" without any other help (such as -# ) */ -INCLUDE(c_check_bool) -IF (COMPILER_SUPPORT_BOOL) - SET (OPAL_NEED_C_BOOL 0) -ELSE (COMPILER_SUPPORT_BOOL) - SET (OPAL_NEED_C_BOOL 1) -ENDIF (COMPILER_SUPPORT_BOOL) - -#/* Define to `__inline__' or `__inline' if that's what the C compiler -# calls it, or to nothing if 'inline' is not supported under any name. */ -CHECK_C_INLINE() -IF(HAVE_INLINE) - SET(inline 1) -ENDIF(HAVE_INLINE) - -################################################################### -# Check C++ types # -################################################################### - -# -#/* Whether C++ compiler supports DEC style inline assembly */ -#/* #undef OMPI_CXX_DEC_INLINE_ASSEMBLY */ -# -#/* Whether C++ compiler supports GCC style inline assembly */ -#/* #undef OMPI_CXX_GCC_INLINE_ASSEMBLY */ -# -#/* Whether C++ compiler supports __builtin_expect */ -#/* #undef OMPI_CXX_HAVE_BUILTIN_EXPECT */ -# -#/* Whether C++ compiler supports __builtin_prefetch */ -#/* #undef OMPI_CXX_HAVE_BUILTIN_PREFETCH */ -# -#/* Whether a const_cast on a 2-d array will work with the C++ compiler */ -#/* #undef OMPI_CXX_SUPPORTS_2D_CONST_CAST */ -# -#/* Whether C++ compiler supports XLC style inline assembly */ -#/* #undef OMPI_CXX_XLC_INLINE_ASSEMBLY */ -# -#/* Whether C compiler supports DEC style inline assembly */ -#/* #undef OPAL_C_DEC_INLINE_ASSEMBLY */ -# -#/* Whether C compiler supports GCC style inline assembly */ -#/* #undef OPAL_C_GCC_INLINE_ASSEMBLY */ -# -#/* Whether C compiler supports __builtin_expect */ -#/* #undef OPAL_C_HAVE_BUILTIN_EXPECT */ -# -#/* Whether C compiler supports __builtin_prefetch */ -#/* #undef OPAL_C_HAVE_BUILTIN_PREFETCH */ -# -#/* Whether C compiler supports -fvisibility */ -#/* #undef OPAL_C_HAVE_VISIBILITY */ -SET(OPAL_C_HAVE_VISIBILITY 1) -# -#/* Whether C compiler supports XLC style inline assembly */ -#/* #undef OPAL_C_XLC_INLINE_ASSEMBLY */ -# - -SET(OMPI_HAVE_CXX_EXCEPTION_SUPPORT 0) ################################################################### # Check Fortran 77 types # ################################################################### INCLUDE(setup_F77) INCLUDE(f77_check) +INCLUDE(f77_check_real16_c_equiv) -# This allows us to mark bogus types, but still have them be a valid -# [sentinel] value -SET(ompi_fortran_bogus_type_t "int") +OMPI_DEF_VAR(OMPI_F77_DOUBLE_UNDERSCORE "Whether fortran symbols have a trailing double underscore or not." 0 1) +OMPI_DEF_VAR(OMPI_F77_SINGLE_UNDERSCORE "Whether fortran symbols have a trailing single underscore or not." 0 1) +OMPI_DEF_VAR(OMPI_F77_CAPS "Whether fortran symbols are all caps or not." 0 1) +OMPI_DEF_VAR(OMPI_F77_PLAIN "Whether fortran symbols have no trailing underscore or not." 0 1) + +IF(WIN32) + OMPI_DEF(ompi_fortran_bogus_type_t "int" "A bogus type that allows us to have sentinel type values that are still valid." 0 1) +ENDIF(WIN32) # We want to set the #define's for all of these, so invoke the macros # regardless of whether we have F77 support or not. @@ -1264,7 +681,6 @@ OMPI_F77_CHECK("COMPLEX*8" "no" "" "8") OMPI_F77_CHECK("COMPLEX*16" "no" "" "16") OMPI_F77_CHECK("COMPLEX*32" "no" "" "32") -include(f77_check_real16_c_equiv) OMPI_F77_CHECK_REAL16_C_EQUIV() # Regardless of whether we have fortran bindings, or even a fortran @@ -1306,668 +722,140 @@ ELSE(NOT WANT_MPI_PROFILING OR OMPI_PROFILING_COMPILE_SEPARATELY AND OMPI_WANT_ SET(WANT_MPI_F77_BINDINGS_LAYER 0) ENDIF(NOT WANT_MPI_PROFILING OR OMPI_PROFILING_COMPILE_SEPARATELY AND OMPI_WANT_F77_BINDINGS) -IF(WANT_MPI_PROFILINGAND AND OMPI_WANT_F77_BINDINGS) +IF(WANT_MPI_PROFILING AND OMPI_WANT_F77_BINDINGS) SET(WANT_MPI_F77_BINDINGS_LAYER 1) -ELSE(WANT_MPI_PROFILINGAND AND OMPI_WANT_F77_BINDINGS) +ELSE(WANT_MPI_PROFILING AND OMPI_WANT_F77_BINDINGS) SET(WANT_MPI_F77_BINDINGS_LAYER 0) -ENDIF(WANT_MPI_PROFILINGAND AND OMPI_WANT_F77_BINDINGS) +ENDIF(WANT_MPI_PROFILING AND OMPI_WANT_F77_BINDINGS) + -#/* Max handle value for fortran MPI handles, effectively min(INT_MAX, max -# fortran INTEGER value) */ -#/* #undef OMPI_FORTRAN_HANDLE_MAX */ -# Need to be fixed. IF(WIN32) - SET (OMPI_FORTRAN_HANDLE_MAX "2147483647") -ENDIF(WIN32) -# -#/* Fortran value for LOGICAL .TRUE. value */ -#/* #undef OMPI_FORTRAN_VALUE_TRUE */ -# Need to be fixed. -IF(WIN32) - SET (OMPI_FORTRAN_VALUE_TRUE 0) + + OMPI_DEF(OMPI_HAVE_CXX_EXCEPTION_SUPPORT 0 "Whether or not we have compiled with C++ exceptions support" 0 1) + + OMPI_DEF(OPAL_C_HAVE_VISIBILITY 1 "Whether C compiler supports -fvisibility." 0 1) + + OMPI_DEF(OMPI_FORTRAN_HANDLE_MAX "2147483647" + "Max handle value for fortran MPI handles,\n effectively min(INT_MAX, max fortran INTEGER value)." 0 1) + + OMPI_DEF(OMPI_FORTRAN_VALUE_TRUE 0 "Fortran value for LOGICAL .TRUE. value." 0 1) + + OMPI_DEF(restrict " " "Define to equivalent of C99 restrict keyword, or to nothing if this is not supported.\n Do not define if restrict is supported directly." 0 1) + + OMPI_DEF(MCA_timer_IMPLEMENTATION_HEADER "opal/mca/timer/windows/timer_windows.h" "Header to include for timer implementation." 1 1) + + OMPI_DEF(OPAL_ASSEMBLY_ARCH "OMPI_WINDOWS" "Architecture type of assembly to use for atomic operations." 0 1) + + OMPI_DEF(OPAL_HAVE_POSIX_THREADS 0 "Do we have POSIX threads." 0 1) + + OMPI_DEF(OPAL_HAVE_WEAK_SYMBOLS 0 "Wehther we have weak symbols or not" 0 1) + + OMPI_DEF(OPAL_HAVE_SOLARIS_THREADS 0 "Do we have native Solaris threads." 0 1) + + OMPI_DEF(MCA_memcpy_IMPLEMENTATION_HEADER "opal/mca/memcpy/base/memcpy_base_default.h" "Header to include for memcpy implementation." 1 1) + + OMPI_DEF(OMPI_MPI_OFFSET_TYPE "long long" "Type of MPI_Offset." 0 1) + + OMPI_DEF(HAVE_DECL___FUNC__ 0 "Define to 1 if you have the declaration of `__func__', and to 0 if you don't." 0 1) + + OMPI_DEF_CACHE(MCA_mtl_DIRECT_CALL_COMPONENT " " STRING "Name of component to use for direct calls, if MCA_mtl_DIRECT_CALL is 1." 1 1) + + OMPI_DEF_CACHE(MCA_mtl_DIRECT_CALL_HEADER " " STRING "Header mtl includes to be direct called." 1 1) + + OMPI_DEF_CACHE(MCA_pml_DIRECT_CALL_COMPONENT " " STRING "Name of component to use for direct calls, if MCA_pml_DIRECT_CALL is 1." 1 1) + + OMPI_DEF_CACHE(MCA_pml_DIRECT_CALL_HEADER " " STRING "Header pml includes to be direct called." 1 1) + + CHECK_C_INLINE() + ENDIF(WIN32) -################################################################### -# Check Fortran 90 types # -################################################################### +GET_FILENAME_COMPONENT(C_COMPILER_NAME ${CMAKE_C_COMPILER} NAME_WE) -#/* OMPI underlying F90 compiler */ -#/* #undef OMPI_F90 */ - -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_COMPLEX */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_COMPLEX16 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_COMPLEX32 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_COMPLEX8 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_DOUBLE_COMPLEX */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_DOUBLE_PRECISION */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER1 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER16 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER2 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER4 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_INTEGER8 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_LOGICAL */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_REAL */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_REAL16 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_REAL2 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_REAL4 */ -# -#/* Whether we have Fortran 90 $ofc_fortran_type or not */ -#/* #undef OMPI_HAVE_F90_REAL8 */ -# +OMPI_DEF(OPAL_CC ${C_COMPILER_NAME} "OMPI underlying C compiler name." 1 1) -########################################################################################### -# end -########################################################################################### +OMPI_DEF(OPAL_CC_ABSOLUTE ${CMAKE_C_COMPILER} "OMPI underlying C compiler absolute path." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_CFLAGS " " "Additional CFLAGS to pass through the wrapper compilers." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_CXXFLAGS " " "Additional CXXFLAGS to pass through the wrapper compilers." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_FCFLAGS " " "Additional FCFLAGS to pass through the wrapper compilers." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_FFLAGS " " "Additional FFLAGS to pass through the wrapper compilers." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_LDFLAGS " " "Additional LDFLAGS to pass through the wrapper compilers." 1 1) + +OMPI_DEF(WRAPPER_EXTRA_LIBS " " "Additional LIBS to pass through the wrapper compilers." 1 1) -#/* Define to equivalent of C99 restrict keyword, or to nothing if this is not -# supported. Do not define if restrict is supported directly. */ -IF(WIN32) - SET(restrict "") -ENDIF(WIN32) +GET_FILENAME_COMPONENT(CXX_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME_WE) +OMPI_DEF(OMPI_CXX ${CXX_COMPILER_NAME} "OMPI underlying C++ compiler name." 1 1) + +OMPI_DEF(OMPI_CXX_ABSOLUTE ${CMAKE_CXX_COMPILER} "OMPI underlying C++ compiler absolute path." 1 1) -#/* Define if /dev/poll is available */ -IF(EXISTS /dev/poll) - SET (HAVE_DEVPOLL 1) -ENDIF(EXISTS /dev/poll) +GET_FILENAME_COMPONENT(F77_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME_WE) +OMPI_DEF(OMPI_F77 ${F77_COMPILER_NAME} "OMPI underlying Fortran 77 compiler name." 1 1) -#/* Define to 1 if you have the `nsl' library (-lnsl). */ -IF(EXISTS /lib/libnsl.so.0 OR /lib/libnsl.so.1) - SET (HAVE_LIBNSL 1) -ENDIF(EXISTS /lib/libnsl.so.0 OR /lib/libnsl.so.1) - -#/* Define to 1 if you have the `socket' library (-lsocket). */ -IF(EXISTS /lib/libsocket.so.0 OR /lib/libsocket.so.1) - SET (HAVE_LIBSOCKET 1) -ENDIF(EXISTS /lib/libsocket.so.0 OR /lib/libsocket.so.1) - -#/* Define to 1 if you have the `util' library (-lutil). */ -IF(EXISTS /lib/libutil.so.0 OR /lib/libutil.so.1) - SET (HAVE_LIBUTIL 1) -ENDIF(EXISTS /lib/libutil.so.0 OR /lib/libutil.so.1) - -#/* Header to include for memcpy implementation */ -SET(MCA_memcpy_IMPLEMENTATION_HEADER "\"opal/mca/memcpy/base/memcpy_base_default.h\"") +OMPI_DEF(OMPI_F77_ABSOLUTE ${CMAKE_Fortran_COMPILER} "OMPI underlying Fortran 77 compiler absolute path" 1 1) -#/* name of component to use for direct calls, if MCA_mtl_DIRECT_CALL is 1 */ -IF(NOT MCA_mtl_DIRECT_CALL_VALUE) - SET(MCA_mtl_DIRECT_CALL_COMPONENT "") -ENDIF(NOT MCA_mtl_DIRECT_CALL_VALUE) +GET_FILENAME_COMPONENT(F90_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME_WE) +OMPI_DEF(OMPI_F90 ${F90_COMPILER_NAME} "OMPI underlying Fortran 90 compiler name." 1 1) -#/* Header mtl includes to be direct called */ -IF(NOT MCA_mtl_DIRECT_CALL_VALUE) - SET(MCA_mtl_DIRECT_CALL_HEADER "\"\"") -ENDIF(NOT MCA_mtl_DIRECT_CALL_VALUE) +OMPI_DEF(OMPI_F90_ABSOLUTE ${CMAKE_Fortran_COMPILER} "OMPI underlying Fortran 90 compiler absolute path" 1 1) -#/* name of component to use for direct calls, if MCA_pml_DIRECT_CALL is 1 */ -IF(NOT MCA_pml_DIRECT_CALL_VALUE) - SET(MCA_pml_DIRECT_CALL_COMPONENT "") -ENDIF(NOT MCA_pml_DIRECT_CALL_VALUE) - -#/* Header pml includes to be direct called */ -IF(NOT MCA_pml_DIRECT_CALL_VALUE) - SET(MCA_pml_DIRECT_CALL_HEADER "\"\"") -ENDIF(NOT MCA_pml_DIRECT_CALL_VALUE) - -#/* Header to include for timer implementation */ -IF(WIN32) - SET(MCA_timer_IMPLEMENTATION_HEADER 1) - SET(MCA_TIMER_HEADER "\"opal/mca/timer/windows/timer_windows.h\"") -ENDIF(WIN32) - - -# -#/* OMPI architecture string */ -#/* #undef OPAL_ARCH */ -# -#/* Assembly align directive expects logarithmic value */ -#/* #undef OPAL_ASM_ALIGN_LOG */ -# -#/* Assembly directive for exporting symbols */ -#/* #undef OPAL_ASM_GLOBAL */ -# -#/* Assembly prefix for gsym labels */ -#/* #undef OPAL_ASM_GSYM */ -# -#/* Assembly suffix for labels */ -#/* #undef OPAL_ASM_LABEL_SUFFIX */ -# -#/* Assembly prefix for lsym labels */ -#/* #undef OPAL_ASM_LSYM */ -# -#/* Do we need to give a .size directive */ -#/* #undef OPAL_ASM_SIZE */ -# -#/* Whether we can do 64bit assembly operations or not. Should not be used -# outside of the assembly header files */ -#/* #undef OPAL_ASM_SUPPORT_64BIT */ -# -#/* Assembly directive for setting text section */ -#/* #undef OPAL_ASM_TEXT */ -# -#/* How to set function type in .type directive */ -#/* #undef OPAL_ASM_TYPE */ -# -#/* Architecture type of assembly to use for atomic operations */ -#/* #undef OPAL_ASSEMBLY_ARCH */ -IF(WIN32) - SET (OPAL_ASSEMBLY_ARCH "OMPI_WINDOWS") -ENDIF(WIN32) - -# -#/* Format of assembly file */ -#/* #undef OPAL_ASSEMBLY_FORMAT */ -# -#/* OMPI underlying C compiler */ -#/* #undef OPAL_CC */ -IF (CMAKE_C_COMPILER) - SET (OPAL_CC ${CMAKE_C_COMPILER}) -ENDIF (CMAKE_C_COMPILER) - -# -#/* OMPI underlying C++ compiler */ -#/* #undef OMPI_CXX */ -IF (CMAKE_CXX_COMPILER) - SET (OMPI_CXX ${CMAKE_CXX_COMPILER}) -ENDIF (CMAKE_CXX_COMPILER) - - - -# - -# -# - -# - -# -#/* Greek - alpha, beta, etc - release number of Open MPI */ -#/* #undef OMPI_GREEK_VERSION */ - -# -#/* Whether there is an atomic assembly file available */ -#/* #undef OPAL_HAVE_ASM_FILE */ -# -#/* Whether your compiler has __attribute__ or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE */ -# -#/* Whether your compiler has __attribute__ aligned or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_ALIGNED */ -# -#/* Whether your compiler has __attribute__ always_inline or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_ALWAYS_INLINE */ -# -#/* Whether your compiler has __attribute__ const or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_CONST */ -# -#/* Whether your compiler has __attribute__ deprecated or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_DEPRECATED */ -# -#/* Whether your compiler has __attribute__ format or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_FORMAT */ -# -#/* Whether your compiler has __attribute__ malloc or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_MALLOC */ -# -#/* Whether your compiler has __attribute__ may_alias or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_MAY_ALIAS */ -# -#/* Whether your compiler has __attribute__ nonnull or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_NONNULL */ -# -#/* Whether your compiler has __attribute__ noreturn or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_NORETURN */ -# -#/* Whether your compiler has __attribute__ no_instrument_function or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_NO_INSTRUMENT_FUNCTION */ -# -#/* Whether your compiler has __attribute__ packed or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_PACKED */ -# -#/* Whether your compiler has __attribute__ pure or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_PURE */ -# -#/* Whether your compiler has __attribute__ sentinel or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_SENTINEL */ -# -#/* Whether your compiler has __attribute__ unused or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_UNUSED */ -# -#/* Whether your compiler has __attribute__ visibility or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_VISIBILITY */ -# -#/* Whether your compiler has __attribute__ warn unused result or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_WARN_UNUSED_RESULT */ -# -#/* Whether your compiler has __attribute__ weak alias or not */ -#/* #undef OPAL_HAVE_ATTRIBUTE_WEAK_ALIAS */ -# -#/* whether qsort is broken or not */ -#/* #undef OPAL_HAVE_BROKEN_QSORT */ -# - -#/* Do we have POSIX threads */ -#/* #undef OPAL_HAVE_POSIX_THREADS */ -SET(OPAL_HAVE_POSIX_THREADS 0) -# -#/* Do not use outside of mpi.h. Define to 1 if the system has the type 'long -# long'. */ IF(HAVE_LONG_LONG) - SET(OPAL_HAVE_LONG_LONG 1) + OMPI_DEF(OPAL_HAVE_LONG_LONG 1 "Do not use outside of mpi.h.\n Define to 1 if the system has the type 'long long'." 0 1) ENDIF(HAVE_LONG_LONG) -# -#/* If PTHREADS implementation supports PTHREAD_MUTEX_ERRORCHECK */ -#/* #undef OMPI_HAVE_PTHREAD_MUTEX_ERRORCHECK */ -# -#/* If PTHREADS implementation supports PTHREAD_MUTEX_ERRORCHECK_NP */ -#/* #undef OMPI_HAVE_PTHREAD_MUTEX_ERRORCHECK_NP */ -# -#/* Whether we have the sa_len struct in or not */ -#/* #undef OMPI_HAVE_SA_LEN */ -# -#/* Whether we have SA_RESTART in or not */ -#/* #undef OPAL_HAVE_SA_RESTART */ -# -#/* Do we have native Solaris threads */ -#/* #undef OPAL_HAVE_SOLARIS_THREADS */ -SET(OPAL_HAVE_SOLARIS_THREADS 0) -# -#/* Whether we have __va_copy or not */ -#/* #undef OPAL_HAVE_UNDERSCORE_VA_COPY */ -# -#/* Whether we have va_copy or not */ -#/* #undef OPAL_HAVE_VA_COPY */ -# -#/* Wehther we have weak symbols or not */ -#/* #undef OPAL_HAVE_WEAK_SYMBOLS */ - -# We don't support weak symbols on windows -SET(OPAL_HAVE_WEAK_SYMBOLS 0) - -# -#/* Number of arguments to ibv_create_cq */ -#/* #undef OMPI_IBV_CREATE_CQ_ARGS */ -# -#/* Major release number of Open MPI */ -#/* #undef OMPI_MAJOR_VERSION */ -# -#/* Version of the GM API to use */ -#/* #undef OMPI_MCA_BTL_GM_API_VERSION */ -# -#/* The GM build has or not a broker gm_get function */ -#/* #undef OMPI_MCA_BTL_GM_GET_BROKEN */ -# -#/* Whether we have get_get() or not */ -#/* #undef OMPI_MCA_BTL_GM_HAVE_RDMA_GET */ -# -#/* Whether we have gm_put() or gm_directed_send_with_callback() */ -#/* #undef OMPI_MCA_BTL_GM_HAVE_RDMA_PUT */ -# -#/* The OS support or not the virtal page registration */ -#/* #undef OMPI_MCA_BTL_GM_SUPPORT_REGISTERING */ -# -#/* Whether any opal memory mca components were found */ -#/* #undef OMPI_MEMORY_HAVE_COMPONENT */ -# -#/* Trigger callbacks on sbrk instead of malloc or free */ -#/* #undef OMPI_MEMORY_PTMALLOC2_OPT_SBRK */ -# -#/* Minor release number of Open MPI */ -#/* #undef OMPI_MINOR_VERSION */ -# -#/* Type of MPI_Offset -- has to be defined here and typedef'ed later because -# mpi.h does not get AC SUBST's */ -#/* #undef OMPI_MPI_OFFSET_TYPE */ -SET (OMPI_MPI_OFFSET_TYPE "long long") -# -#/* Version of the MX API to use */ -#/* #undef OMPI_MX_API_VERSION */ -# -# -#/* MPI datatype corresponding to MPI_Offset */ -#/* #undef OMPI_OFFSET_DATATYPE */ -# -#/* Use the Cray XT-3 implementation of Portals */ -#/* #undef OMPI_PORTALS_CRAYXT3 */ -# -#/* Does Portals send a PTL_EVENT_UNLINK event */ -#/* #undef OMPI_PORTALS_HAVE_EVENT_UNLINK */ -# -#/* Use the UTCP reference implementation of Portals */ -#/* #undef OMPI_PORTALS_UTCP */ -# -#/* Whether r notation is used for ppc registers */ -#/* #undef OPAL_POWERPC_R_REGISTERS */ -# - - -#/* type to use for ptrdiff_t */ -#/* #undef OPAL_PTRDIFF_TYPE */ IF(HAVE_PTRDIFF_T) - SET(OPAL_PTRDIFF_TYPE "ptrdiff_t") + OMPI_DEF(OPAL_PTRDIFF_TYPE "ptrdiff_t" "Type to use for ptrdiff_t." 0 0) ENDIF(HAVE_PTRDIFF_T) - -# -#/* Release release number of Open MPI */ -#/* #undef OMPI_RELEASE_VERSION */ -# -#/* whether to use cnos_barrier or not */ -#/* #undef OMPI_RML_CNOS_HAVE_BARRIER */ -# -# -#/* Do threads have different pids (pthreads on linux) */ -#/* #undef OPAL_THREADS_HAVE_DIFFERENT_PIDS */ -# -#/* Whether to use or not */ -#/* #undef OPAL_USE_STDBOOL_H */ -# -#/* Complete release number of Open MPI */ -#/* #undef OMPI_VERSION */ -## +#The same logic as in opal_stdint.h +#8-bit +IF(NOT HAVE_UINT8_T AND SIZEOF_CHAR EQUAL 1) + OMPI_DEF(OPAL_ALIGNMENT_INT8 ${OPAL_ALIGNMENT_CHAR} "Alignment of `int8_t'." 0 1) +ELSE(NOT HAVE_UINT8_T AND SIZEOF_CHAR EQUAL 1) + MESSAGE(FATAL_ERROR "Failed to define 8-bit types.") +ENDIF(NOT HAVE_UINT8_T AND SIZEOF_CHAR EQUAL 1) + +#16-bit +IF(NOT HAVE_INT16_T AND SIZEOF_SHORT EQUAL 2) + OMPI_DEF(OPAL_ALIGNMENT_INT16 ${OPAL_ALIGNMENT_SHORT} "Alignment of `int16_t'." 0 1) +ELSE(NOT HAVE_INT16_T AND SIZEOF_SHORT EQUAL 2) + MESSAGE(FATAL_ERROR "Failed to define 8-bit types.") +ENDIF(NOT HAVE_INT16_T AND SIZEOF_SHORT EQUAL 2) + +#32-bit +IF(NOT HAVE_INT32_T AND SIZEOF_INT EQUAL 4) + OMPI_DEF(OPAL_ALIGNMENT_INT32 ${OPAL_ALIGNMENT_INT} "Alignment of `int32_t'." 0 1) +ELSEIF(NOT HAVE_INT32_T AND SIZEOF_LONG EQUAL 4) + OMPI_DEF(OPAL_ALIGNMENT_INT32 ${OPAL_ALIGNMENT_LONG} "Alignment of `int32_t'." 0 1) +ELSE(NOT HAVE_INT32_T AND SIZEOF_INT EQUAL 4) + MESSAGE(FATAL_ERROR "Failed to define 8-bit types.") +ENDIF(NOT HAVE_INT32_T AND SIZEOF_INT EQUAL 4) + +#64-bit +IF(NOT HAVE_INT64_T AND SIZEOF_INT EQUAL 8) + OMPI_DEF(OPAL_ALIGNMENT_INT64 ${OPAL_ALIGNMENT_INT} "Alignment of `int64_t'." 0 1) +ELSEIF(NOT HAVE_INT64_T AND SIZEOF_LONG EQUAL 8) + OMPI_DEF(OPAL_ALIGNMENT_INT64 ${OPAL_ALIGNMENT_LONG} "Alignment of `int64_t'." 0 1) +ELSEIF(NOT HAVE_INT64_T AND HAVE_LONG_LONG AND SIZEOF_LONG_LONG EQUAL 8) + OMPI_DEF(OPAL_ALIGNMENT_INT64 ${OPAL_ALIGNMENT_LONG_LONG} "Alignment of `int64_t'." 0 1) +ELSE(NOT HAVE_INT64_T AND SIZEOF_INT EQUAL 8) + MESSAGE(FATAL_ERROR "Failed to define 8-bit types.") +ENDIF(NOT HAVE_INT64_T AND SIZEOF_INT EQUAL 8) -#/* Greek - alpha, beta, etc - release number of Open Portable Access Layer */ -#/* #undef OPAL_GREEK_VERSION */ -# Defined in upper level. - -# -#/* Whether we have the _SC_NPROCESSORS_ONLN */ -#/* #undef OPAL_HAVE__SC_NPROCESSORS_ONLN */ -# -#/* Major release number of Open Portable Access Layer */ -#/* #undef OPAL_MAJOR_VERSION */ -# Defined in upper level. - -# -#/* Minor release number of Open Portable Access Layer */ -#/* #undef OPAL_MINOR_VERSION */ -# Defined in upper level. - -#/* package/branding string for Open MPI */ -#/* #undef OPAL_PACKAGE_STRING -SET(OPAL_PACKAGE_STRING "\"Open MPI $ENV{USERNAME}@$ENV{COMPUTERNAME} Distribution\"") - -# -#/* Release release number of Open Portable Access Layer */ -#/* #undef OPAL_RELEASE_VERSION */ -# Defined in upper level. - -# -#/* Complete release number of Open Portable Access Layer */ -#/* #undef OPAL_VERSION */ -# Defined in upper level. - -# -#/* Specific ps command to use in orte-clean */ -#/* #undef ORTE_CLEAN_PS_CMD */ - -# -#/* Greek - alpha, beta, etc - release number of Open Run-Time Environment */ -#/* #undef ORTE_GREEK_VERSION */ -# Defined in upper level. - -# -#/* Major release number of Open Run-Time Environment */ -#/* #undef ORTE_MAJOR_VERSION */ -# Defined in upper level. - -# -#/* Minor release number of Open Run-Time Environment */ -#/* #undef ORTE_MINOR_VERSION */ -# Defined in upper level. - -# -#/* Release release number of Open Run-Time Environment */ -#/* #undef ORTE_RELEASE_VERSION */ -# Defined in upper level. - -# -#/* Complete release number of Open Run-Time Environment */ -#/* #undef ORTE_VERSION */ -# Defined in upper level. - -# -#/* Define to the address where bug reports for this package should be sent. */ -#/* #undef PACKAGE_BUGREPORT */ -SET (PACKAGE_BUGREPORT "\"http://www.open-mpi.org/community/help/\"") -# -#/* Define to the full name of this package. */ -#/* #undef PACKAGE_NAME */ -SET (PACKAGE_NAME "Open MPI") -# -#/* Define to the full name and version of this package. */ -#/* #undef PACKAGE_STRING */ -SET (PACKAGE_STRING "${PACKAGE_NAME} ${VERSION_STRING}") -# -#/* Define to the one symbol short name of this package. */ -#/* #undef PACKAGE_TARNAME */ -SET (PACKAGE_TARNAME "openmpi") -# -#/* Define to the version of this package. */ -#/* #undef PACKAGE_VERSION */ -SET (PACKAGE_VERSION ${VERSION_STRING}) -# -#/* The PLPA symbol prefix */ -#/* #undef PLPA_SYM_PREFIX */ -# -#/* The PLPA symbol prefix in all caps */ -#/* #undef PLPA_SYM_PREFIX_CAPS */ -# -# -#/* Define to 1 if you can safely include both and . */ -#/* #undef TIME_WITH_SYS_TIME */ -# -#/* Define to 1 if your processor stores words with the most significant byte -# first (like Motorola and SPARC, unlike Intel and VAX). */ -#/* #undef WORDS_BIGENDIAN */ -# -#/* Additional CFLAGS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_CFLAGS */ -# -#/* Additional CXXFLAGS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_CXXFLAGS */ -# -#/* Additional FCFLAGS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_FCFLAGS */ -# -#/* Additional FFLAGS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_FFLAGS */ -# -#/* Additional LDFLAGS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_LDFLAGS */ -# -#/* Additional LIBS to pass through the wrapper compilers */ -#/* #undef WRAPPER_EXTRA_LIBS */ -# -#/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a -# `char[]'. */ -#/* #undef YYTEXT_POINTER */ -# -#/* Enable GNU extensions on systems that have them. */ -##ifndef _GNU_SOURCE -#/* #undef _GNU_SOURCE */ -##endif -# -#/* Emulated value */ -#/* #undef __NR_sched_getaffinity */ -# -#/* Emulated value */ -#/* #undef __NR_sched_setaffinity */ -# -# -#/* A bogus type that allows us to have sentinel type values that are still -# valid */ -#/* #undef ompi_fortran_bogus_type_t */ -#IF(WIN32) -# SET(ompi_fortran_bogus_type_t 1) -# SET(ompi_fortran_bogus_type_t_STRING "int") -#ENDIF(WIN32) -# -#/* C type corresponding to Fortran 77 COMPLEX*16 */ -#/* #undef ompi_fortran_complex16_t */ -#IF(WIN32) -# SET(ompi_fortran_complex16_t 1) -# SET(ompi_fortran_complex16_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 COMPLEX*32 */ -##/* #undef ompi_fortran_complex32_t */ -#IF(WIN32) -# SET(ompi_fortran_complex32_t 1) -# SET(ompi_fortran_complex32_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 COMPLEX*8 */ -##/* #undef ompi_fortran_complex8_t */ -#IF(WIN32) -# SET(ompi_fortran_complex8_t 1) -# SET(ompi_fortran_complex8_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 COMPLEX */ -##/* #undef ompi_fortran_complex_t */ -#IF(WIN32) -# SET(ompi_fortran_complex_t 1) -# SET(ompi_fortran_complex_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 DOUBLE PRECISION */ -##/* #undef ompi_fortran_double_precision_t */ -#IF(WIN32) -# SET(ompi_fortran_double_precision_t 1) -# SET(ompi_fortran_double_precision_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER*16 */ -##/* #undef ompi_fortran_integer16_t */ -#IF(WIN32) -# SET(ompi_fortran_integer16_t 1) -# SET(ompi_fortran_integer16_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER*1 */ -##/* #undef ompi_fortran_integer1_t */ -#IF(WIN32) -# SET(ompi_fortran_integer1_t 1) -# SET(ompi_fortran_integer1_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER*2 */ -##/* #undef ompi_fortran_integer2_t */ -#IF(WIN32) -# SET(ompi_fortran_integer2_t 1) -# SET(ompi_fortran_integer2_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER*4 */ -##/* #undef ompi_fortran_integer4_t */ -#IF(WIN32) -# SET(ompi_fortran_integer4_t 1) -# SET(ompi_fortran_integer4_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER*8 */ -##/* #undef ompi_fortran_integer8_t */ -#IF(WIN32) -# SET(ompi_fortran_integer8_t 1) -# SET(ompi_fortran_integer8_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 INTEGER */ -##/* #undef ompi_fortran_integer_t */ -#IF(WIN32) -# SET(ompi_fortran_integer_t 1) -# SET(ompi_fortran_integer_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 LOGICAL */ -##/* #undef ompi_fortran_logical_t */ -#IF(WIN32) -# SET(ompi_fortran_logical_t 1) -# SET(ompi_fortran_logical_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 REAL*16 */ -##/* #undef ompi_fortran_real16_t */ -#IF(WIN32) -# SET(ompi_fortran_real16_t 1) -# SET(ompi_fortran_real16_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 REAL*2 */ -##/* #undef ompi_fortran_real2_t */ -#IF(WIN32) -# SET(ompi_fortran_real2_t 1) -# SET(ompi_fortran_real2_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 REAL*4 */ -##/* #undef ompi_fortran_real4_t */ -#IF(WIN32) -# SET(ompi_fortran_real4_t 1) -# SET(ompi_fortran_real4_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 REAL*8 */ -##/* #undef ompi_fortran_real8_t */ -#IF(WIN32) -# SET(ompi_fortran_real8_t 1) -# SET(ompi_fortran_real8_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) -## -##/* C type corresponding to Fortran 77 REAL */ -##/* #undef ompi_fortran_real_t */ -#IF(WIN32) -# SET(ompi_fortran_real_t 1) -# SET(ompi_fortran_real_t_STRING "ompi_fortran_bogus_type_t") -#ENDIF(WIN32) - -# -# User level (mpi.h.in) visible maximum lengths of strings. -# These may be required in lower-level libraries to set up matching -# data-structures (e.g. OPAL_MAX_OBJECT_NAME). -# -# Default values (as of OMPI-1.3), and some sane minimum and maximum values -# - +IF(NOT WRITE_CONFIG_DONE) + FILE(APPEND ${OpenMPI_BINARY_DIR}/opal/include/opal_config.h.cmake + "#include \"opal_config_bottom.h\"\n#endif /* OPAL_CONFIG_H */\n") + SET(WRITE_CONFIG_DONE TRUE CACHE INTERNAL "Whether to regenerate configure template.") +ENDIF(NOT WRITE_CONFIG_DONE) +CONFIGURE_FILE(${OpenMPI_BINARY_DIR}/opal/include/opal_config.h.cmake ${OpenMPI_BINARY_DIR}/opal/include/opal_config.h)