1
1
openmpi/opal/mca/memory/patcher/configure.m4
Nathan Hjelm 52edb43bdc memory/patcher: check for linux/mman.h
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-05-02 14:29:46 -06:00

93 строки
4.2 KiB
Bash

# -*- shell-script -*-
#
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
# University Research and Technology
# Corporation. All rights reserved.
# Copyright (c) 2004-2005 The University of Tennessee and The University
# of Tennessee Research Foundation. 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 (c) 2008-2010 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2015 Research Organization for Information Science
# and Technology (RIST). All rights reserved.
# Copyright (c) 2016 Los Alamos National Security, LLC. All rights
# reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
AC_DEFUN([MCA_opal_memory_patcher_PRIORITY], [41])
AC_DEFUN([MCA_opal_memory_patcher_COMPILE_MODE], [
AC_MSG_CHECKING([for MCA component $2:$3 compile mode])
$4="static"
AC_MSG_RESULT([$$4])
])
# MCA_memory_patcher_CONFIG(action-if-can-compile,
# [action-if-cant-compile])
# ------------------------------------------------
AC_DEFUN([MCA_opal_memory_patcher_CONFIG],[
AC_CONFIG_FILES([opal/mca/memory/patcher/Makefile])
OPAL_VAR_SCOPE_PUSH([memory_patcher_have___curbrk memory_patcher_have___mmap memory_patcher_have___syscall memory_patcher_have___mmap_prototype memory_patcher_have___syscall_prototype])
memory_patcher_have___curbrk=0
memory_patcher_have___mmap=0
memory_patcher_have___mmap_prototype=0
memory_patcher_have___syscall=0
memory_patcher_have___syscall_prototype=0
AC_MSG_CHECKING([for __curbrk symbol])
AC_LINK_IFELSE([AC_LANG_PROGRAM([extern char *__curbrk;],[char *tmp = __curbrk;])],
[AC_MSG_RESULT([yes])
memory_patcher_have___curbrk=1],
[AC_MSG_RESULT([no])])
AC_DEFINE_UNQUOTED([OPAL_MEMORY_PATCHER_HAVE___CURBRK], [$memory_patcher_have___curbrk],
[Whether the glibc __curbrk exists])
AC_MSG_CHECKING([whether __mmap prototype exists])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <sys/mman.h>],[char *tmp = __mmap (NULL, 0, 0, 0, 0, 0);])],
[AC_MSG_RESULT([yes])
memory_patcher_have___mmap_prototype=1],
[AC_MSG_RESULT([no])])
AC_DEFINE_UNQUOTED([OPAL_MEMORY_PATCHER_HAVE___MMAP_PROTO], [$memory_patcher_have___mmap_prototype],
[Whether the internal __mmap call has a prototype])
AC_MSG_CHECKING([whether __mmap symbol exists])
AC_LINK_IFELSE([AC_LANG_PROGRAM([void *__mmap ();],[char *tmp = __mmap ();])],
[AC_MSG_RESULT([yes])
memory_patcher_have___mmap=1],
[AC_MSG_RESULT([no])])
AC_DEFINE_UNQUOTED([OPAL_MEMORY_PATCHER_HAVE___MMAP], [$memory_patcher_have___mmap],
[Whether the internal __mmap call exists])
AC_MSG_CHECKING([whether __syscall prototype exists])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <sys/syscall.h>],[char *tmp = __syscall (SYS_mmap, NULL);])],
[AC_MSG_RESULT([yes])
memory_patcher_have___syscall_prototype=1],
[AC_MSG_RESULT([no])])
AC_DEFINE_UNQUOTED([OPAL_MEMORY_PATCHER_HAVE___SYSCALL_PROTO], [$memory_patcher_have___syscall_prototype],
[Whether the internal __syscall call has a prototype])
AC_MSG_CHECKING([whether __syscall symbol exists])
AC_LINK_IFELSE([AC_LANG_PROGRAM([void *__syscall ();],[char *tmp = __syscall ();])],
[AC_MSG_RESULT([yes])
memory_patcher_have___syscall=1],
[AC_MSG_RESULT([no])])
AC_DEFINE_UNQUOTED([OPAL_MEMORY_PATCHER_HAVE___SYSCALL], [$memory_patcher_have___syscall],
[Whether the internal __syscall call exists])
AC_CHECK_HEADERS([linux/mman.h])
[$1]
OPAL_VAR_SCOPE_POP
])