| dnl This file was derived from acinclude.m4. |
| dnl |
| dnl Copyright (C) 2012-2024 Free Software Foundation, Inc. |
| dnl |
| dnl This file is free software; you can redistribute it and/or modify |
| dnl it under the terms of the GNU General Public License as published by |
| dnl the Free Software Foundation; either version 3 of the License, or |
| dnl (at your option) any later version. |
| dnl |
| dnl This program is distributed in the hope that it will be useful, |
| dnl but WITHOUT ANY WARRANTY; without even the implied warranty of |
| dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| dnl GNU General Public License for more details. |
| dnl |
| dnl You should have received a copy of the GNU General Public License |
| dnl along with this program; see the file COPYING3. If not see |
| dnl <http://www.gnu.org/licenses/>. |
| dnl |
| |
| dnl Check for sys/procfs.h, enforcing structured /proc on Solaris. |
| |
| AC_DEFUN([BFD_SYS_PROCFS_H], |
| [AC_DEFINE(_STRUCTURED_PROC, 1, [Use structured /proc on Solaris.]) |
| AC_CHECK_HEADERS(sys/procfs.h)]) |
| |
| dnl Check for existence of a type $1 in sys/procfs.h |
| |
| AC_DEFUN([BFD_HAVE_SYS_PROCFS_TYPE], |
| [AC_REQUIRE([BFD_SYS_PROCFS_H]) |
| AC_MSG_CHECKING([for $1 in sys/procfs.h]) |
| AC_CACHE_VAL(bfd_cv_have_sys_procfs_type_$1, |
| [AC_TRY_COMPILE([ |
| #define _SYSCALL32 |
| #include <sys/procfs.h>], |
| [$1 avar], |
| bfd_cv_have_sys_procfs_type_$1=yes, |
| bfd_cv_have_sys_procfs_type_$1=no |
| )]) |
| if test $bfd_cv_have_sys_procfs_type_$1 = yes; then |
| AC_DEFINE([HAVE_]translit($1, [a-z], [A-Z]), 1, |
| [Define if <sys/procfs.h> has $1.]) |
| fi |
| AC_MSG_RESULT($bfd_cv_have_sys_procfs_type_$1) |
| ]) |
| |
| dnl Check for existence of member $2 in type $1 in sys/procfs.h |
| |
| AC_DEFUN([BFD_HAVE_SYS_PROCFS_TYPE_MEMBER], |
| [AC_REQUIRE([BFD_SYS_PROCFS_H]) |
| AC_MSG_CHECKING([for $1.$2 in sys/procfs.h]) |
| AC_CACHE_VAL(bfd_cv_have_sys_procfs_type_member_$1_$2, |
| [AC_TRY_COMPILE([ |
| #define _SYSCALL32 |
| #include <sys/procfs.h>], |
| [$1 avar; void* aref = (void*) &avar.$2], |
| bfd_cv_have_sys_procfs_type_member_$1_$2=yes, |
| bfd_cv_have_sys_procfs_type_member_$1_$2=no |
| )]) |
| if test $bfd_cv_have_sys_procfs_type_member_$1_$2 = yes; then |
| AC_DEFINE([HAVE_]translit($1, [a-z], [A-Z])[_]translit($2, [a-z], [A-Z]), 1, |
| [Define if <sys/procfs.h> has $1.$2.]) |
| fi |
| AC_MSG_RESULT($bfd_cv_have_sys_procfs_type_member_$1_$2) |
| ]) |
| |