| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- /** BEGIN COPYRIGHT BLOCK
- * Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
- * Copyright (C) 2005 Red Hat, Inc.
- * All rights reserved.
- *
- * License: GPL (version 3 or any later version).
- * See LICENSE for details.
- * END COPYRIGHT BLOCK **/
- #ifdef HAVE_CONFIG_H
- # include <config.h>
- #endif
- #ifndef BASE_SYSTEMS_H
- #define BASE_SYSTEMS_H
- #ifndef NOINTNSAPI
- #define INTNSAPI
- #endif /* !NOINTNSAPI */
- /*
- * systems.h: Lists of defines for systems
- *
- * This sets what general flavor the system is (UNIX, etc.),
- * and defines what extra functions your particular system needs.
- */
- /* --- Begin common definitions for all supported platforms --- */
- #define DAEMON_ANY
- #define DAEMON_STATS
- /* --- End common definitions for all supported platforms --- */
- /* --- Begin platform-specific definitions --- */
- #if defined(HPUX)
- #define ACCELERATOR_CACHE
- #define AUTH_DBM
- #undef BSD_RLIMIT
- #undef BSD_SIGNALS
- #ifdef MCC_PROXY
- #define DAEMON_NEEDS_SEMAPHORE
- #else
- #undef DAEMON_NEEDS_SEMAPHORE
- #endif
- #define DAEMON_UNIX_MOBRULE
- #define DLL_CAPABLE
- #define DLL_HPSHL
- #define DNS_CACHE
- #define FILE_INHERIT_FCNTL
- #define FILE_MMAP_FLAGS MAP_PRIVATE
- #define HAS_STATFS
- #define HAVE_ATEXIT
- #define JAVA_STATIC_LINK
- #undef NEED_CRYPT_H
- #define NET_SOCKETS
- #define SA_HANDLER_T(x) (void (*)(int))x
- /* warning: mmap doesn't work under 9.04 */
- #define SHMEM_MMAP_FLAGS MAP_FILE | MAP_VARIABLE | MAP_SHARED
- #elif defined(Linux)
- #define ACCELERATOR_CACHE
- #define DNS_CACHE
- #define FILE_INHERIT_FCNTL
- #define DAEMON_UNIX_MOBRULE
- #define BSD_RLIMIT
- #undef BSD_SIGNALS
- #define FILE_UNIX_MMAP
- #define FILE_MMAP_FLAGS (MAP_FILE | MAP_SHARED)
- #define SHMEM_UNIX_MMAP
- #define SHMEM_MMAP_FLAGS MAP_SHARED
- #define AUTH_DBM
- #define SEM_FLOCK
- #define DLL_CAPABLE
- #define DLL_DLOPEN
- #define DLL_DLOPEN_FLAGS RTLD_NOW
- #define HAVE_ATEXIT
- #define HAS_STATFS
- #define JAVA_STATIC_LINK
- #define SA_HANDLER_T(x) (void (*)(int))(x)
- #undef NEED_CRYPT_PROTO
- #define NET_SOCKETS
- #ifndef NO_DOMAINNAME
- #define NO_DOMAINNAME
- #endif
- #elif defined(SOLARIS) || defined(SOLARISx86)
- #define ACCELERATOR_CACHE
- #define AUTH_DBM
- #define BSD_RLIMIT
- #undef BSD_SIGNALS
- #define DAEMON_NEEDS_SEMAPHORE
- #define DAEMON_UNIX_MOBRULE
- #define DLL_CAPABLE
- #define DLL_DLOPEN
- #define DLL_DLOPEN_FLAGS RTLD_NOW
- #define DNS_CACHE
- #define FILE_INHERIT_FCNTL
- #define FILE_MMAP_FLAGS MAP_SHARED
- #define HAS_STATVFS
- #define HAVE_ATEXIT
- #define HAVE_PW_R
- #define HAVE_STRTOK_R
- #define HAVE_TIME_R 3 /* arg count */
- #define NEED_CRYPT_H
- #define NEED_FILIO
- #if OSVERSION < 506 || OSVERSION == 50501
- #define NEED_GHN_PROTO
- #endif
- #define NET_SOCKETS
- #if OSVERSION > 504
- #define SA_HANDLER_T(x) x
- #endif
- #define SHMEM_MMAP_FLAGS MAP_SHARED
- #elif defined(SUNOS4)
- #define ACCELERATOR_CACHE
- #define AUTH_DBM
- #define BSD_MAIL
- #define BSD_RLIMIT
- #define BSD_SIGNALS
- #define BSD_TIME
- #define DAEMON_UNIX_MOBRULE
- #define DLL_CAPABLE
- #define DLL_DLOPEN
- #define DLL_DLOPEN_FLAGS 1
- #define DNS_CACHE
- #define FILE_INHERIT_FCNTL
- #define FILE_MMAP_FLAGS MAP_SHARED
- #define HAS_STATFS
- #undef HAVE_ATEXIT
- #undef NEED_CRYPT_H
- #define NEED_CRYPT_PROTO
- #define NEED_FILIO
- #define NET_SOCKETS
- #define SHMEM_MMAP_FLAGS MAP_SHARED
- #else
- #error "Missing defines in ns/netsite/include/base/systems.h"
- #endif
- /* Pick up the configuration symbols in the public interface */
- #ifndef PUBLIC_BASE_SYSTEMS_H
- #include "public/base/systems.h"
- #endif /* PUBLIC_BASE_SYSTEMS_H */
- /* --- Begin defaults for values not defined above --- */
- #ifndef DAEMON_LISTEN_SIZE
- #define DAEMON_LISTEN_SIZE 128
- #endif /* !DAEMON_LISTEN_SIZE */
- #ifndef SA_HANDLER_T
- #define SA_HANDLER_T(x) (void (*)())x
- #endif
- #ifdef HAS_CONSTVALUED_STRFUNCS
- #define CONSTVALSTRCAST (char *)
- #else
- #define CONSTVALSTRCAST
- #endif
- #ifndef THROW_HACK
- #define THROW_HACK /* as nothing */
- #endif
- /* --- End defaults for values not defined above --- */
- /* --- Begin the great debate --- */
- /* NS_MAIL builds sec-key.c which calls systhread_init, which requires */
- /* that USE_NSPR is defined when systhr.c is compiled. --lachman */
- /* MCC_PROXY does the same thing now --nbreslow -- LIKE HELL --ari */
- #define USE_NSPR
- /* XXXrobm This is UNIX-only for the moment */
- #define LOG_BUFFERING
- #ifdef SW_THREADS
- #define THREAD_NSPR_USER
- #else
- #define THREAD_NSPR_KERNEL
- #endif /* SW_THREADS */
- #define THREAD_ANY
- /* --- End the great debate --- */
- #ifndef APSTUDIO_READONLY_SYMBOLS
- #ifndef NSPR_PRIO_H
- #include <prio.h>
- #define NSPR_PRIO_H
- #endif /* !NSPR_PRIO_H */
- /*
- * These types have to be defined early, because they are defined
- * as (void *) in the public API.
- */
- #ifndef SYS_FILE_T
- typedef PRFileDesc *SYS_FILE;
- #define SYS_FILE_T PRFileDesc *
- #endif /* !SYS_FILE_T */
- #ifndef SYS_NETFD_T
- typedef PRFileDesc *SYS_NETFD;
- #define SYS_NETFD_T PRFileDesc *
- #endif /* !SYS_NETFD_T */
- #endif /* !APSTUDIO_READONLY_SYMBOLS */
- #endif /* BASE_SYSTEMS_H */
|