Macro: etr_struct_semun

Back to the Main Page. | # etr_struct_semun | Download the M4 Source.

Synopsis

  `ETR_STRUCT_SEMUN`

Version

  1.1 (2001/07/26) Miscellaneous @ ac-archive-0.5.39

Author

  Warren Young <warren@etr-usa.com>

Description

  This macro checks to see if sys/sem.h defines struct semun. Some systems do, some systems don't. Your code must be able to deal with this possibility; if HAVE_STRUCT_SEMUM isn't defined for a given system, you have to define this structure before you can call functions like semctl().

  You should call ETR_SYSV_IPC before this macro, to separate the check for System V IPC headers from the check for struct semun.

M4 Source Code

      AC_DEFUN([ETR_STRUCT_SEMUN],
      [
      AC_CACHE_CHECK([for struct semun], ac_cv_struct_semun, [
              AC_TRY_COMPILE(
                      [
                              #include <sys/types.h>
                              #include <sys/ipc.h>
                              #include <sys/sem.h>
                      ],
                      [ struct semun s; ],
                      ac_cv_struct_semun=yes,
                      ac_cv_struct_semun=no)
      ])

              if test x"$ac_cv_struct_semun" = "xyes"
              then
                      AC_DEFINE(HAVE_STRUCT_SEMUN, 1,
                              [ Define if your system's sys/sem.h file defines struct semun ])
              fi
      ]) dnl ETR_STRUCT_SEMUN