From 4c9c95b6a0ac8aa31abb1f7ab48c3f645c059bd6 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Wed, 20 Mar 2019 17:32:00 +0100 Subject: ocaml byterunner example --- test/monniaux/ocaml/config/Makefile | 109 +++++++++++++++ test/monniaux/ocaml/config/Makefile-templ | 202 ++++++++++++++++++++++++++++ test/monniaux/ocaml/config/m-nt.h | 65 +++++++++ test/monniaux/ocaml/config/m-templ.h | 83 ++++++++++++ test/monniaux/ocaml/config/s-nt.h | 41 ++++++ test/monniaux/ocaml/config/s-templ.h | 214 ++++++++++++++++++++++++++++++ 6 files changed, 714 insertions(+) create mode 100644 test/monniaux/ocaml/config/Makefile create mode 100644 test/monniaux/ocaml/config/Makefile-templ create mode 100644 test/monniaux/ocaml/config/m-nt.h create mode 100644 test/monniaux/ocaml/config/m-templ.h create mode 100644 test/monniaux/ocaml/config/s-nt.h create mode 100644 test/monniaux/ocaml/config/s-templ.h (limited to 'test/monniaux/ocaml/config') diff --git a/test/monniaux/ocaml/config/Makefile b/test/monniaux/ocaml/config/Makefile new file mode 100644 index 00000000..8fa72626 --- /dev/null +++ b/test/monniaux/ocaml/config/Makefile @@ -0,0 +1,109 @@ +# generated by ./configure -prefix /opt/ccomp/ocaml/4.07.1 -cc /opt/CompCert/3.4/x86_64-linux/bin/ccomp -D_DEFAULT_SOURCE --no-shared-libs +CONFIGURE_ARGS=-prefix /opt/ccomp/ocaml/4.07.1 -cc /opt/CompCert/3.4/x86_64-linux/bin/ccomp -D_DEFAULT_SOURCE --no-shared-libs +PREFIX=/opt/ccomp/ocaml/4.07.1 +BINDIR=$(PREFIX)/bin +BYTERUN=$(BINDIR)/ocamlrun +LIBDIR=$(PREFIX)/lib/ocaml +STUBLIBDIR=$(LIBDIR)/stublibs +MANDIR=$(PREFIX)/man +PROGRAMS_MAN_SECTION=1 +LIBRARIES_MAN_SECTION=3 +RANLIB=ranlib +RANLIBCMD=ranlib +ARCMD=ar +HASHBANGSCRIPTS=true +UNIX_OR_WIN32=unix +UNIXLIB=unix +GRAPHLIB=graph +PTHREAD_LINK=-lpthread +PTHREAD_CAML_LINK=-cclib -lpthread +X11_INCLUDES= +X11_LINK=-lX11 +LIBBFD_LINK= +LIBBFD_INCLUDE= +# DM CC=k1-mbr-gcc +CC=/home/monniaux/work/Kalray/CompCert/ccomp +CPP=$(CC) -E +CFLAGS=-O -Wall -fall +# DM CFLAGS=-O3 -Wall +CPPFLAGS= -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE +OCAMLC_CFLAGS=-O +OCAMLC_CPPFLAGS= -D_FILE_OFFSET_BITS=64 -D_REENTRANT +LDFLAGS= +BYTECCLIBS= -lm +RPATH= +EXE= +EMPTY= +OUTPUTEXE=-o $(EMPTY) +SUPPORTS_SHARED_LIBRARIES=false +SHAREDCCCOMPOPTS= +MKSHAREDLIBRPATH= +NATDYNLINKOPTS= +SYSLIB=-l$(1) +#ml let syslib x = "-l"^x;; + +### How to build a static library +MKLIB=rm -f $(1) && ar rc $(1) $(2) && ranlib $(1) +#ml let mklib out files opts = (* "" *) +#ml Printf.sprintf "ar rc %s %s %s && ranlib %s" +#ml out opts files out;; +ARCH=amd64 +MODEL=default +SYSTEM=linux +OCAMLOPT_CFLAGS=-O +OCAMLOPT_CPPFLAGS= -D_FILE_OFFSET_BITS=64 -D_REENTRANT +NATIVECCPROFOPTS= +NATIVECCLIBS= -lm -ldl +ASM=as +ASPP=gcc -c +ASPPPROFFLAGS=-DPROFILING +PROFILING=true +DYNLINKOPTS= -ldl +OTHERLIBRARIES=unix str dynlink bigarray raw_spacetime_lib systhreads threads graph +CC_PROFILE=-pg +SYSTHREAD_SUPPORT=true +PACKLD=ld -r -o\ $(EMPTY) +IFLEXDIR= +O=o +A=a +SO=so +EXT_OBJ=.o +OUTPUTOBJ=-o $(EMPTY) +EXT_ASM=.s +EXT_LIB=.a +EXT_DLL=.so +EXTRALIBS= +CCOMPTYPE=cc +TOOLCHAIN=cc +NATDYNLINK=false +CMXS=cmxa +MKEXE=$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) +MKEXEDEBUGFLAG=-g +MKDLL=shared-libs-not-available +MKMAINDLL=shared-libs-not-available +RUNTIMED=true +RUNTIMEI=true +WITH_DEBUGGER=ocamldebugger +WITH_OCAMLDOC=ocamldoc +ASM_CFI_SUPPORTED=true +WITH_FRAME_POINTERS=false +WITH_SPACETIME=false +ENABLE_CALL_COUNTS=true +WITH_PROFINFO=false +LIBUNWIND_AVAILABLE=false +LIBUNWIND_INCLUDE_FLAGS= +LIBUNWIND_LINK_FLAGS= +PROFINFO_WIDTH=0 +WITH_CPLUGINS=false +WITH_FPIC=false +TARGET=x86_64-unknown-linux-gnu +HOST=x86_64-unknown-linux-gnu +FLAMBDA=false +WITH_FLAMBDA_INVARIANTS=false +FORCE_SAFE_STRING=false +DEFAULT_SAFE_STRING=true +WINDOWS_UNICODE=0 +AFL_INSTRUMENT=false +MAX_TESTSUITE_DIR_RETRIES=0 +FLAT_FLOAT_ARRAY=true +AWK=awk diff --git a/test/monniaux/ocaml/config/Makefile-templ b/test/monniaux/ocaml/config/Makefile-templ new file mode 100644 index 00000000..34af691e --- /dev/null +++ b/test/monniaux/ocaml/config/Makefile-templ @@ -0,0 +1,202 @@ +#************************************************************************** +#* * +#* OCaml * +#* * +#* Xavier Leroy, projet Cristal, INRIA Rocquencourt * +#* * +#* Copyright 1999 Institut National de Recherche en Informatique et * +#* en Automatique. * +#* * +#* All rights reserved. This file is distributed under the terms of * +#* the GNU Lesser General Public License version 2.1, with the * +#* special exception on linking described in the file LICENSE. * +#* * +#************************************************************************** + +### Compile-time configuration + +########## General configuration + +### Where to install the binaries +BINDIR=/usr/local/bin + +### Where to install the standard library +LIBDIR=/usr/local/lib/ocaml +STUBLIBDIR=$(LIBDIR)/stublibs + +### Where to install the man pages +# Man pages for commands go in $(MANDIR)/man$(MANEXT) +# Man pages for the library go in $(MANDIR)/mano +MANDIR=/usr/local/man +MANEXT=1 + +### Do #! scripts work on your system? +### Beware: on some systems (e.g. SunOS 4), this will work only if +### the string "#!$(BINDIR)/ocamlrun" is less than 32 characters long. +### In doubt, set HASHBANGSCRIPTS to false. +HASHBANGSCRIPTS=true +#HASHBANGSCRIPTS=false + +########## Configuration for the bytecode compiler + +### Which C compiler to use for the bytecode interpreter. +### Performance of the bytecode interpreter is *much* improved +### if Gnu CC version 2 is used. +#CC=gcc +#BYTECFLAGS= + +### Additional compile-time options for $(BYTECC). +# If using gcc on Intel x86: +# (the -fno-defer-pop option circumvents a bug in certain versions of gcc) +#BYTECCCOMPOPTS=-fno-defer-pop -Wall +# If using gcc and being cautious: +#BYTECCCOMPOPTS=-Wall +# Otherwise: +#BYTECCCOMPOPTS= + +### Additional link-time options for $(BYTECC) +# To support dynamic loading of shared libraries (they need to look at +# our own symbols): +#LDFLAGS=-Wl,-E +# Otherwise: +#LDFLAGS= + +### Libraries needed +# On most platforms: +#CCLIBS=-lcurses -ltermcap -lm + +### How to invoke the C preprocessor +# This is not needed anymore. Leave these lines commented out. +# On most machines: +#CPP=/lib/cpp -P +# Under Solaris: +#CPP=/usr/ccs/lib/cpp -P +# Under FreeBSD: +#CPP=cpp -P + +### How to invoke ranlib +RANLIB=ranlib +RANLIBCMD=ranlib + +# If ranlib is not needed: +#RANLIB=ar rs +#RANLIBCMD= + +### How to invoke ar +#ARCMD=ar + +### Shared library support +# Extension for shared libraries: so if supported, a if not supported +#SO=so +#SO=a +# Set to nothing if shared libraries supported, and to -custom if not supported +#CUSTOM_IF_NOT_SHARED= +#CUSTOM_IF_NOT_SHARED=-custom +# Options to $(BYTECC) to produce shared objects (e.g. PIC) +#SHAREDCCCOMPOPTS=-fPIC +# How to build a shared library, invoked with output .so as first arg +# and object files as remaining args +#MKSHAREDLIB=gcc -shared -o +# Compile-time option to $(BYTECC) to add a directory to be searched +# at run-time for shared libraries +#RPATH=-Wl,-rpath + +############# Configuration for the native-code compiler + +### Name of architecture for the native-code compiler +### Currently supported: +### +### i386 Intel Pentium PCs under Linux, *BSD*, NextStep +### power Macintosh under Mac OS X and Linux +### arm ARM under Linux +### +### Set ARCH=none if your machine is not supported +#ARCH=i386 +#ARCH=power +#ARCH=arm +#ARCH=none + +### Name of architecture model for the native-code compiler. +### Some architectures come in several slightly different flavors +### that share a common code generator. This variable tailors the +### behavior of the code generator to the particular flavor used. +### Currently needed only if ARCH=power; leave MODEL=default for +### other architectures. +### If ARCH=power: set MODEL=ppc +### For other architectures: leave MODEL=default +### +#MODEL=ppc +#MODEL=default + +### Name of operating system family for the native-code compiler. +#SYSTEM=solaris +#SYSTEM=linux +#SYSTEM=linux_elf +#SYSTEM=bsd +#SYSTEM=unknown + +#NATIVECFLAGS= + +# For gcc if cautious: +#NATIVECCCOMPOPTS=-Wall + +# Compile-time option to $(NATIVECC) to add a directory to be searched +# at run-time for shared libraries +#RPATH=-Wl,-rpath + +### Command and flags to use for assembling ocamlopt-generated code +#ASM=as + +### Command and flags to use for assembling .S files (often with preprocessing) +# If gcc is available: +#ASPP=gcc -c +# On Solaris: +#ASPP=as -P + +### Extra flags to use for assembling .S files in profiling mode +#ASPPPROFFLAGS=-DPROFILING + +### Whether profiling with gprof is supported +# If yes: (e.g. x86/Linux): +#PROFILING=true +# If no: +#PROFILING=false + +### Option to give to the C compiler for profiling +#CC_PROFILE=-pg +#CC_PROFILE=-xpg + +############# Configuration for the contributed libraries + +### Which libraries to compile and install +# Currently available: +# unix Unix system calls +# str Regular expressions and high-level string processing +# threads Lightweight concurrent processes +# systhreads Same as threads, requires POSIX threads +# graph Portable drawing primitives for X11 +# dynlink Dynamic linking of bytecode +# bigarray Large, multidimensional numerical arrays + +OTHERLIBRARIES=unix str threads graph dynlink bigarray + +### Link-time options to ocamlc or ocamlopt for linking with POSIX threads +# Needed for the "systhreads" package +# Usually: +#PTHREAD_LINK=-cclib -lpthread +# For Solaris: +#PTHREAD_LINK=-cclib -lpthread -cclib -lposix4 + +### -I options for finding the X11/*.h includes +# Needed for the "graph" package +# Usually: +#X11_INCLUDES=-I/usr/X11R6/include +# For SunOS with OpenLook: +#X11_INCLUDES=/usr/openwin/include + +### Link-time options to ocamlc or ocamlopt for linking with X11 libraries +# Needed for the "graph" package +# Usually: +#X11_LINK=-lX11 +# For SunOS with OpenLook: +#X11_LINK=-L$(X11_LIB) -lX11 diff --git a/test/monniaux/ocaml/config/m-nt.h b/test/monniaux/ocaml/config/m-nt.h new file mode 100644 index 00000000..97ae9cf0 --- /dev/null +++ b/test/monniaux/ocaml/config/m-nt.h @@ -0,0 +1,65 @@ +/**************************************************************************/ +/* */ +/* OCaml */ +/* */ +/* Xavier Leroy, projet Cristal, INRIA Rocquencourt */ +/* */ +/* Copyright 1996 Institut National de Recherche en Informatique et */ +/* en Automatique. */ +/* */ +/* All rights reserved. This file is distributed under the terms of */ +/* the GNU Lesser General Public License version 2.1, with the */ +/* special exception on linking described in the file LICENSE. */ +/* */ +/**************************************************************************/ + +/* Machine configuration, Intel x86 processors, Win32, + Visual C++ or Mingw compiler */ + +#ifdef _WIN64 +#define ARCH_SIXTYFOUR +#else +#undef ARCH_SIXTYFOUR +#endif +#undef ARCH_BIG_ENDIAN +#undef ARCH_ALIGN_DOUBLE + +#define SIZEOF_INT 4 +#define SIZEOF_LONG 4 +#ifdef _WIN64 +#define SIZEOF_PTR 8 +#else +#define SIZEOF_PTR 4 +#endif +#define SIZEOF_SHORT 2 + +#ifdef __MINGW32__ +#define ARCH_INT64_TYPE long long +#define ARCH_UINT64_TYPE unsigned long long +#else +#define ARCH_INT64_TYPE __int64 +#define ARCH_UINT64_TYPE unsigned __int64 +#endif +#define ARCH_INT64_PRINTF_FORMAT "I64" +#if _MSC_VER >= 1800 +#define ARCH_SIZET_PRINTF_FORMAT "z" +#else +#define ARCH_SIZET_PRINTF_FORMAT "I" +#endif + +#if defined(_MSC_VER) && !defined(__cplusplus) +#define inline __inline +#endif + +#undef NONSTANDARD_DIV_MOD + +#define PROFINFO_WIDTH 0 + +/* Microsoft introduced the LL integer literal suffix in Visual C++ .NET 2003 */ +#if defined(_MSC_VER) && _MSC_VER < 1400 +#define INT64_LITERAL(s) s ## i64 +#else +#define INT64_LITERAL(s) s ## LL +#endif + +#define FLAT_FLOAT_ARRAY diff --git a/test/monniaux/ocaml/config/m-templ.h b/test/monniaux/ocaml/config/m-templ.h new file mode 100644 index 00000000..74ce64e1 --- /dev/null +++ b/test/monniaux/ocaml/config/m-templ.h @@ -0,0 +1,83 @@ +/**************************************************************************/ +/* */ +/* OCaml */ +/* */ +/* Xavier Leroy, projet Cristal, INRIA Rocquencourt */ +/* */ +/* Copyright 1996 Institut National de Recherche en Informatique et */ +/* en Automatique. */ +/* */ +/* All rights reserved. This file is distributed under the terms of */ +/* the GNU Lesser General Public License version 2.1, with the */ +/* special exception on linking described in the file LICENSE. */ +/* */ +/**************************************************************************/ + +/* Processor dependencies */ + +#define ARCH_SIXTYFOUR + +/* Define ARCH_SIXTYFOUR if the processor has a natural word size of 64 bits. + That is, sizeof(char *) = 8. + Otherwise, leave ARCH_SIXTYFOUR undefined. + This assumes sizeof(char *) = 4. */ + +#define ARCH_BIG_ENDIAN + +/* Define ARCH_BIG_ENDIAN if the processor is big endian (the most + significant byte of an integer stored in memory comes first). + Leave ARCH_BIG_ENDIAN undefined if the processor is little-endian + (the least significant byte comes first). +*/ + +#define ARCH_ALIGN_DOUBLE + +/* Define ARCH_ALIGN_DOUBLE if the processor requires doubles to be + doubleword-aligned. Leave ARCH_ALIGN_DOUBLE undefined if the processor + supports word-aligned doubles. */ + +#undef ARCH_CODE32 + +/* Define ARCH_CODE32 if, on a 64-bit machine, code pointers fit in 32 bits, + i.e. the code segment resides in the low 4G of the addressing space. + ARCH_CODE32 is ignored on 32-bit machines. */ + +#define SIZEOF_INT 4 +#define SIZEOF_LONG 4 +#define SIZEOF_PTR 4 +#define SIZEOF_SHORT 2 + +/* Define SIZEOF_INT, SIZEOF_LONG, SIZEOF_PTR and SIZEOF_SHORT + to the sizes in bytes of the C types "int", "long", "char *" and "short", + respectively. */ + +#define ARCH_INT64_TYPE long long +#define ARCH_UINT64_TYPE unsigned long long + +/* Define ARCH_INT64_TYPE and ARCH_UINT64_TYPE to 64-bit integer types, + typically "long long" and "unsigned long long" on 32-bit platforms, + and "long" and "unsigned long" on 64-bit platforms. + If the C compiler doesn't support any 64-bit integer type, + leave both ARCH_INT64_TYPE and ARCH_UINT64_TYPE undefined. */ + +#define ARCH_INT64_PRINTF_FORMAT "ll" + +/* Define ARCH_INT64_PRINTF_FORMAT to the printf format used for formatting + values of type ARCH_INT64_TYPE. This is usually "ll" on 32-bit + platforms and "l" on 64-bit platforms. + Leave undefined if ARCH_INT64_TYPE is undefined. */ + +#define ARCH_ALIGN_INT64 + +/* Define ARCH_ALIGN_INT64 if the processor requires 64-bit integers to be + doubleword-aligned. Leave ARCH_ALIGN_INT64 undefined if the processor + supports word-aligned 64-bit integers. Leave undefined if + 64-bit integers are not supported. */ + +#undef NONSTANDARD_DIV_MOD + +/* Leave NONSTANDARD_DIV_MOD undefined if the C operators / and % implement + round-towards-zero semantics, as specified by ISO C 9x and implemented + by most contemporary processors. Otherwise, or if you don't know, + define NONSTANDARD_DIV_MOD: this will select a slower but correct + software emulation of division and modulus. */ diff --git a/test/monniaux/ocaml/config/s-nt.h b/test/monniaux/ocaml/config/s-nt.h new file mode 100644 index 00000000..ab4046b3 --- /dev/null +++ b/test/monniaux/ocaml/config/s-nt.h @@ -0,0 +1,41 @@ +/**************************************************************************/ +/* */ +/* OCaml */ +/* */ +/* Xavier Leroy, projet Cristal, INRIA Rocquencourt */ +/* */ +/* Copyright 1996 Institut National de Recherche en Informatique et */ +/* en Automatique. */ +/* */ +/* All rights reserved. This file is distributed under the terms of */ +/* the GNU Lesser General Public License version 2.1, with the */ +/* special exception on linking described in the file LICENSE. */ +/* */ +/**************************************************************************/ + +/* Operating system dependencies, Intel x86 processors, Windows NT */ + +#define OCAML_OS_TYPE "Win32" + +#if defined(__MINGW32__) || _MSC_VER >= 1600 +#define HAS_STDINT_H +#endif +#undef BSD_SIGNALS +#define HAS_STRERROR +#define HAS_SOCKETS +#define HAS_GETCWD +#define HAS_UTIME +#define HAS_DUP2 +#define HAS_GETHOSTNAME +#define HAS_MKTIME +#define HAS_PUTENV +#define HAS_LOCALE +#define HAS_BROKEN_PRINTF +#define HAS_IPV6 +#define HAS_NICE +#define SUPPORT_DYNAMIC_LINKING +#define HAS_EXECVPE +#if defined(_MSC_VER) && _MSC_VER < 1300 +#define LACKS_SANE_NAN +#define LACKS_VSCPRINTF +#endif diff --git a/test/monniaux/ocaml/config/s-templ.h b/test/monniaux/ocaml/config/s-templ.h new file mode 100644 index 00000000..1df4eb31 --- /dev/null +++ b/test/monniaux/ocaml/config/s-templ.h @@ -0,0 +1,214 @@ +/**************************************************************************/ +/* */ +/* OCaml */ +/* */ +/* Xavier Leroy, projet Cristal, INRIA Rocquencourt */ +/* */ +/* Copyright 1996 Institut National de Recherche en Informatique et */ +/* en Automatique. */ +/* */ +/* All rights reserved. This file is distributed under the terms of */ +/* the GNU Lesser General Public License version 2.1, with the */ +/* special exception on linking described in the file LICENSE. */ +/* */ +/**************************************************************************/ + +/* Operating system and standard library dependencies. */ + +/* 0. Operating system type string. */ + +#define OCAML_OS_TYPE "Unix" +/* #define OCAML_OS_TYPE "Win32" */ +/* #define OCAML_OS_TYPE "MacOS" */ + +/* 1. For the runtime system. */ + +#define POSIX_SIGNALS + +/* Define POSIX_SIGNALS if signal handling is POSIX-compliant. + In particular, sigaction(), sigprocmask() and the operations on + sigset_t are provided. */ + +#define BSD_SIGNALS + +/* Define BSD_SIGNALS if signal handlers have the BSD semantics: the handler + remains attached to the signal when the signal is received. Leave it + undefined if signal handlers have the System V semantics: the signal + resets the behavior to default. */ + +#define HAS_SIGSETMASK + +/* Define HAS_SIGSETMASK if you have sigsetmask(), as in BSD. */ + +#define SUPPORT_DYNAMIC_LINKING + +/* Define SUPPORT_DYNAMIC_LINKING if dynamic loading of C stub code + via dlopen() is available. */ + +#define HAS_C99_FLOAT_OPS + +/* Define HAS_C99_FLOAT_OPS if conforms to ISO C99. + In particular, it should provide expm1(), log1p(), hypot(), copysign(). */ + +/* 2. For the Unix library. */ + +#define HAS_SOCKETS + +/* Define HAS_SOCKETS if you have BSD sockets. */ + +#define HAS_SOCKLEN_T + +/* Define HAS_SOCKLEN_T if the type socklen_t is defined in + /usr/include/sys/socket.h. */ + +#define HAS_UNISTD + +/* Define HAS_UNISTD if you have /usr/include/unistd.h. */ + +#define HAS_DIRENT + +/* Define HAS_DIRENT if you have /usr/include/dirent.h and the result of + readdir() is of type struct dirent *. + Otherwise, we'll load /usr/include/sys/dir.h, and readdir() is expected to + return a struct direct *. */ + +#define HAS_REWINDDIR + +/* Define HAS_REWINDDIR if you have rewinddir(). */ + +#define HAS_LOCKF + +/* Define HAS_LOCKF if the library provides the lockf() function. */ + +#define HAS_MKFIFO + +/* Define HAS_MKFIFO if the library provides the mkfifo() function. */ + +#define HAS_GETCWD + +/* Define HAS_GETCWD if the library provides the getcwd() function. */ + +#define HAS_GETPRIORITY + +/* Define HAS_GETPRIORITY if the library provides getpriority() and + setpriority(). Otherwise, we'll use nice(). */ + +#define HAS_UTIME +#define HAS_UTIMES + +/* Define HAS_UTIME if you have /usr/include/utime.h and the library + provides utime(). Define HAS_UTIMES if the library provides utimes(). */ + +#define HAS_DUP2 + +/* Define HAS_DUP2 if you have dup2(). */ + +#define HAS_FCHMOD + +/* Define HAS_FCHMOD if you have fchmod() and fchown(). */ + +#define HAS_TRUNCATE + +/* Define HAS_TRUNCATE if you have truncate() and + ftruncate(). */ + +#define HAS_SELECT + +/* Define HAS_SELECT if you have select(). */ + +#define HAS_SYS_SELECT_H + +/* Define HAS_SYS_SELECT_H if /usr/include/sys/select.h exists + and should be included before using select(). */ + +#define HAS_NANOSLEEP +/* Define HAS_NANOSLEEP if you have nanosleep(). */ + +#define HAS_SYMLINK + +/* Define HAS_SYMLINK if you have symlink() and readlink() and lstat(). */ + +#define HAS_WAIT4 +#define HAS_WAITPID + +/* Define HAS_WAIT4 if you have wait4(). + Define HAS_WAITPID if you have waitpid(). */ + +#define HAS_GETGROUPS + +/* Define HAS_GETGROUPS if you have getgroups(). */ + +#define HAS_SETGROUPS + +/* Define HAS_SETGROUPS if you have setgroups(). */ + +#define HAS_INITGROUPS + +/* Define HAS_INITGROUPS if you have initgroups(). */ + +#define HAS_TERMIOS + +/* Define HAS_TERMIOS if you have /usr/include/termios.h and it is + Posix-compliant. */ + +#define HAS_ASYNC_IO + +/* Define HAS_ASYNC_IO if BSD-style asynchronous I/O are supported + (the process can request to be sent a SIGIO signal when a descriptor + is ready for reading). */ + +#define HAS_SETITIMER + +/* Define HAS_SETITIMER if you have setitimer(). */ + +#define HAS_GETHOSTNAME + +/* Define HAS_GETHOSTNAME if you have gethostname(). */ + +#define HAS_UNAME + +/* Define HAS_UNAME if you have uname(). */ + +#define HAS_GETTIMEOFDAY + +/* Define HAS_GETTIMEOFDAY if you have gettimeofday(). */ + +#define HAS_MKTIME + +/* Define HAS_MKTIME if you have mktime(). */ + +#define HAS_SETSID + +/* Define HAS_SETSID if you have setsid(). */ + +#define HAS_PUTENV + +/* Define HAS_PUTENV if you have putenv(). */ + +#define HAS_LOCALE + +/* Define HAS_LOCALE if you have the include file and the + setlocale() function. */ + +#define HAS_MMAP + +/* Define HAS_MMAP if you have the include file and the + functions mmap() and munmap(). */ + +#define HAS_GETHOSTBYNAME_R 6 + +/* Define HAS_GETHOSTBYNAME_R if gethostbyname_r() is available. + The value of this symbol is the number of arguments of + gethostbyname_r(): either 5 or 6 depending on prototype. + (5 is the Solaris version, 6 is the Linux version). */ + +#define HAS_GETHOSTBYADDR_R 8 + +/* Define HAS_GETHOSTBYADDR_R if gethostbyname_r() is available. + The value of this symbol is the number of arguments of + gethostbyaddr_r(): either 7 or 8 depending on prototype. + (7 is the Solaris version, 8 is the Linux version). */ + +#define HAS_NICE + +/* Define HAS_NICE if you have nice(). */ -- cgit