# Copyright (C) Igor Sysoev # Copyright (C) NGINX, Inc. # FreeBSD, Solaris, MacOSX nxt_feature="shm_open()" nxt_feature_name=NXT_HAVE_SHM_OPEN nxt_feature_run=yes nxt_feature_incs= nxt_feature_libs= nxt_feature_test="#include #include #include #include int main() { static char name[] = \"/unit.configure\"; shm_unlink(name); int fd = shm_open(name, O_CREAT | O_EXCL | O_RDWR, S_IRUSR | S_IWUSR); if (fd == -1) return 1; shm_unlink(name); return 0; }" . auto/feature if [ $nxt_found = no ]; then # Linux and NetBSD 7.0 shm_open() are in librt. nxt_feature="shm_open() in librt" nxt_feature_libs="-lrt" . auto/feature if [ $nxt_found = yes ]; then NXT_LIBRT=$nxt_feature_libs fi fi # Linux nxt_feature="memfd_create()" nxt_feature_name=NXT_HAVE_MEMFD_CREATE nxt_feature_run=yes nxt_feature_incs= nxt_feature_libs= nxt_feature_test="#include #include #include int main() { static char name[] = \"/unit.configure\"; int fd = syscall(SYS_memfd_create, name, MFD_CLOEXEC); if (fd == -1) return 1; return 0; }" . auto/feature