diff options
Diffstat (limited to 'jam-files/engine/jam.h')
-rw-r--r-- | jam-files/engine/jam.h | 579 |
1 files changed, 0 insertions, 579 deletions
diff --git a/jam-files/engine/jam.h b/jam-files/engine/jam.h deleted file mode 100644 index 73a7a04c..00000000 --- a/jam-files/engine/jam.h +++ /dev/null @@ -1,579 +0,0 @@ -/* - * Copyright 1993, 1995 Christopher Seiwald. - * - * This file is part of Jam - see jam.c for Copyright information. - */ - -/* This file is ALSO: - * Copyright 2001-2004 David Abrahams. - * Distributed under the Boost Software License, Version 1.0. - * (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) - */ - -/* - * jam.h - includes and globals for jam - * - * 04/08/94 (seiwald) - Coherent/386 support added. - * 04/21/94 (seiwald) - DGUX is __DGUX__, not just __DGUX. - * 05/04/94 (seiwald) - new globs.jobs (-j jobs) - * 11/01/94 (wingerd) - let us define path of Jambase at compile time. - * 12/30/94 (wingerd) - changed command buffer size for NT (MS-DOS shell). - * 02/22/95 (seiwald) - Jambase now in /usr/local/lib. - * 04/30/95 (seiwald) - FreeBSD added. Live Free or Die. - * 05/10/95 (seiwald) - SPLITPATH character set up here. - * 08/20/95 (seiwald) - added LINUX. - * 08/21/95 (seiwald) - added NCR. - * 10/23/95 (seiwald) - added SCO. - * 01/03/96 (seiwald) - SINIX (nixdorf) added. - * 03/13/96 (seiwald) - Jambase now compiled in; remove JAMBASE variable. - * 04/29/96 (seiwald) - AIX now has 31 and 42 OSVERs. - * 11/21/96 (peterk) - added BeOS with MW CW mwcc - * 12/21/96 (seiwald) - OSPLAT now defined for NT. - * 07/19/99 (sickel) - Mac OS X Server and Client support added - * 02/18/00 (belmonte)- Support for Cygwin. - * 09/12/00 (seiwald) - OSSYMS split to OSMAJOR/OSMINOR/OSPLAT - * 12/29/00 (seiwald) - OSVER dropped. - */ - -#ifndef JAM_H_VP_2003_08_01 -#define JAM_H_VP_2003_08_01 - -#ifdef HAVE_PYTHON -#include <Python.h> -#endif - -/* Assume popen support is available unless known otherwise. */ -#define HAVE_POPEN 1 - -/* - * VMS, OPENVMS - */ - -#ifdef VMS - -#include <types.h> -#include <file.h> -#include <stat.h> -#include <stdio.h> -#include <ctype.h> -#include <stdlib.h> -#include <signal.h> -#include <string.h> -#include <time.h> -#include <unistd.h> -#include <unixlib.h> - -#define OSMINOR "OS=VMS" -#define OSMAJOR "VMS=true" -#define OS_VMS -#define MAXLINE 1024 /* longest 'together' actions */ -#define SPLITPATH ',' -#define EXITOK 1 -#define EXITBAD 0 -#define DOWNSHIFT_PATHS - -/* This may be inaccurate. */ -#ifndef __DECC -#define OSPLAT "OSPLAT=VAX" -#endif - -#endif - -/* - * Windows NT - */ - -#ifdef NT - -#include <fcntl.h> -#include <stdlib.h> -#include <stdio.h> -#include <ctype.h> -#include <malloc.h> -#ifndef __MWERKS__ - #include <memory.h> -#endif -#include <signal.h> -#include <string.h> -#include <time.h> - -#define OSMAJOR "NT=true" -#define OSMINOR "OS=NT" -#define OS_NT -#define SPLITPATH ';' -/* Windows NT 3.51 only allows 996 chars per line, but we deal with the problem - * in "execnt.c". - */ -#define MAXLINE (maxline()) /* longest 'together' actions */ -#define USE_EXECNT -#define USE_PATHUNIX -#define PATH_DELIM '\\' -#define DOWNSHIFT_PATHS - -/* AS400 cross-compile from NT. */ - -#ifdef AS400 - #undef OSMINOR - #undef OSMAJOR - #define OSMAJOR "AS400=true" - #define OSMINOR "OS=AS400" - #define OS_AS400 -#endif - -/* Metrowerks Standard Library on Windows. */ - -#ifdef __MSL__ - #undef HAVE_POPEN -#endif - -# endif - -/* - * Windows MingW32 - */ - -#ifdef MINGW - -#include <fcntl.h> -#include <stdlib.h> -#include <stdio.h> -#include <ctype.h> -#include <malloc.h> -#include <memory.h> -#include <signal.h> -#include <string.h> -#include <time.h> - -#define OSMAJOR "MINGW=true" -#define OSMINOR "OS=MINGW" -#define OS_NT -#define SPLITPATH ';' -#define MAXLINE 996 /* longest 'together' actions */ -#define USE_EXECUNIX -#define USE_PATHUNIX -#define PATH_DELIM '\\' -#define DOWNSHIFT_PATHS - -#endif - -/* - * OS2 - */ - -#ifdef __OS2__ - -#include <fcntl.h> -#include <stdlib.h> -#include <stdio.h> -#include <ctype.h> -#include <malloc.h> -#include <signal.h> -#include <string.h> -#include <time.h> - -#define OSMAJOR "OS2=true" -#define OSMINOR "OS=OS2" -#define OS_OS2 -#define SPLITPATH ';' -#define MAXLINE 996 /* longest 'together' actions */ -#define USE_EXECUNIX -#define USE_PATHUNIX -#define PATH_DELIM '\\' -#define DOWNSHIFT_PATHS - -#ifdef __EMX__ - #define USE_FILEUNIX -#endif - -#endif - -/* - * Macintosh MPW - */ - -#ifdef macintosh - -#include <time.h> -#include <stdlib.h> -#include <string.h> -#include <stdio.h> - -#define OSMAJOR "MAC=true" -#define OSMINOR "OS=MAC" -#define OS_MAC -#define SPLITPATH ',' - -#endif - -/* - * God fearing UNIX. - */ - -#ifndef OSMINOR - -#define OSMAJOR "UNIX=true" -#define USE_EXECUNIX -#define USE_FILEUNIX -#define USE_PATHUNIX -#define PATH_DELIM '/' - -#ifdef _AIX - #define unix - #define MAXLINE 23552 /* 24k - 1k, longest 'together' actions */ - #define OSMINOR "OS=AIX" - #define OS_AIX - #define NO_VFORK -#endif -#ifdef AMIGA - #define OSMINOR "OS=AMIGA" - #define OS_AMIGA -#endif -#ifdef __BEOS__ - #define unix - #define OSMINOR "OS=BEOS" - #define OS_BEOS - #define NO_VFORK -#endif -#ifdef __bsdi__ - #define OSMINOR "OS=BSDI" - #define OS_BSDI -#endif -#if defined (COHERENT) && defined (_I386) - #define OSMINOR "OS=COHERENT" - #define OS_COHERENT - #define NO_VFORK -#endif -#if defined(__cygwin__) || defined(__CYGWIN__) - #define OSMINOR "OS=CYGWIN" - #define OS_CYGWIN -#endif -#if defined(__FreeBSD__) && !defined(__DragonFly__) - #define OSMINOR "OS=FREEBSD" - #define OS_FREEBSD -#endif -#ifdef __DragonFly__ - #define OSMINOR "OS=DRAGONFLYBSD" - #define OS_DRAGONFLYBSD -#endif -#ifdef __DGUX__ - #define OSMINOR "OS=DGUX" - #define OS_DGUX -#endif -#ifdef __hpux - #define OSMINOR "OS=HPUX" - #define OS_HPUX -#endif -#ifdef __OPENNT - #define unix - #define OSMINOR "OS=INTERIX" - #define OS_INTERIX - #define NO_VFORK -#endif -#ifdef __sgi - #define OSMINOR "OS=IRIX" - #define OS_IRIX - #define NO_VFORK -#endif -#ifdef __ISC - #define OSMINOR "OS=ISC" - #define OS_ISC - #define NO_VFORK -#endif -#ifdef linux - #define OSMINOR "OS=LINUX" - #define OS_LINUX -#endif -#ifdef __Lynx__ - #define OSMINOR "OS=LYNX" - #define OS_LYNX - #define NO_VFORK - #define unix -#endif -#ifdef __MACHTEN__ - #define OSMINOR "OS=MACHTEN" - #define OS_MACHTEN -#endif -#ifdef mpeix - #define unix - #define OSMINOR "OS=MPEIX" - #define OS_MPEIX - #define NO_VFORK -#endif -#ifdef __MVS__ - #define unix - #define OSMINOR "OS=MVS" - #define OS_MVS -#endif -#ifdef _ATT4 - #define OSMINOR "OS=NCR" - #define OS_NCR -#endif -#ifdef __NetBSD__ - #define unix - #define OSMINOR "OS=NETBSD" - #define OS_NETBSD - #define NO_VFORK -#endif -#ifdef __QNX__ - #define unix - #ifdef __QNXNTO__ - #define OSMINOR "OS=QNXNTO" - #define OS_QNXNTO - #else - #define OSMINOR "OS=QNX" - #define OS_QNX - #define NO_VFORK - #define MAXLINE 996 - #endif -#endif -#ifdef NeXT - #ifdef __APPLE__ - #define OSMINOR "OS=RHAPSODY" - #define OS_RHAPSODY - #else - #define OSMINOR "OS=NEXT" - #define OS_NEXT - #endif -#endif -#ifdef __APPLE__ - #define unix - #define OSMINOR "OS=MACOSX" - #define OS_MACOSX -#endif -#ifdef __osf__ - #ifndef unix - #define unix - #endif - #define OSMINOR "OS=OSF" - #define OS_OSF -#endif -#ifdef _SEQUENT_ - #define OSMINOR "OS=PTX" - #define OS_PTX -#endif -#ifdef M_XENIX - #define OSMINOR "OS=SCO" - #define OS_SCO - #define NO_VFORK -#endif -#ifdef sinix - #define unix - #define OSMINOR "OS=SINIX" - #define OS_SINIX -#endif -#ifdef sun - #if defined(__svr4__) || defined(__SVR4) - #define OSMINOR "OS=SOLARIS" - #define OS_SOLARIS - #else - #define OSMINOR "OS=SUNOS" - #define OS_SUNOS - #endif -#endif -#ifdef ultrix - #define OSMINOR "OS=ULTRIX" - #define OS_ULTRIX -#endif -#ifdef _UNICOS - #define OSMINOR "OS=UNICOS" - #define OS_UNICOS -#endif -#if defined(__USLC__) && !defined(M_XENIX) - #define OSMINOR "OS=UNIXWARE" - #define OS_UNIXWARE -#endif -#ifdef __OpenBSD__ - #define OSMINOR "OS=OPENBSD" - #define OS_OPENBSD - #define unix -#endif -#if defined (__FreeBSD_kernel__) && !defined(__FreeBSD__) - #define OSMINOR "OS=KFREEBSD" - #define OS_KFREEBSD -#endif -#ifndef OSMINOR - #define OSMINOR "OS=UNKNOWN" -#endif - -/* All the UNIX includes */ - -#include <sys/types.h> -#include <sys/stat.h> - -#ifndef OS_MPEIX - #include <sys/file.h> -#endif - -#include <fcntl.h> -#include <stdio.h> -#include <ctype.h> -#include <signal.h> -#include <string.h> -#include <time.h> -#include <unistd.h> - -#ifndef OS_QNX - #include <memory.h> -#endif - -#ifndef OS_ULTRIX - #include <stdlib.h> -#endif - -#if !defined( OS_BSDI ) && \ - !defined( OS_FREEBSD ) && \ - !defined( OS_DRAGONFLYBSD ) && \ - !defined( OS_NEXT ) && \ - !defined( OS_MACHTEN ) && \ - !defined( OS_MACOSX ) && \ - !defined( OS_RHAPSODY ) && \ - !defined( OS_MVS ) && \ - !defined( OS_OPENBSD ) - #include <malloc.h> -#endif - -#endif - -/* - * OSPLAT definitions - suppressed when it is a one-of-a-kind. - */ - -#if defined( _M_PPC ) || \ - defined( PPC ) || \ - defined( ppc ) || \ - defined( __powerpc__ ) || \ - defined( __ppc__ ) - #define OSPLAT "OSPLAT=PPC" -#endif - -#if defined( _ALPHA_ ) || \ - defined( __alpha__ ) - #define OSPLAT "OSPLAT=AXP" -#endif - -#if defined( _i386_ ) || \ - defined( __i386__ ) || \ - defined( __i386 ) || \ - defined( _M_IX86 ) - #define OSPLAT "OSPLAT=X86" -#endif - -#if defined( __ia64__ ) || \ - defined( __IA64__ ) || \ - defined( __ia64 ) - #define OSPLAT "OSPLAT=IA64" -#endif - -#if defined( __x86_64__ ) || \ - defined( __amd64__ ) || \ - defined( _M_AMD64 ) - #define OSPLAT "OSPLAT=X86_64" -#endif - - -#if defined( __sparc__ ) || \ - defined( __sparc ) - #define OSPLAT "OSPLAT=SPARC" -#endif - -#ifdef __mips__ - #define OSPLAT "OSPLAT=MIPS" -#endif - -#ifdef __arm__ - #define OSPLAT "OSPLAT=ARM" -#endif - -#ifdef __s390__ - #define OSPLAT "OSPLAT=390" -#endif - -#ifdef __hppa - #define OSPLAT "OSPLAT=PARISC" -#endif - -#ifndef OSPLAT - #define OSPLAT "" -#endif - -/* - * Jam implementation misc. - */ - -#ifndef MAXLINE - #define MAXLINE 102400 /* longest 'together' actions' */ -#endif - -#ifndef EXITOK - #define EXITOK 0 - #define EXITBAD 1 -#endif - -#ifndef SPLITPATH - #define SPLITPATH ':' -#endif - -/* You probably do not need to muck with these. */ - -#define MAXSYM 1024 /* longest symbol in the environment */ -#define MAXJPATH 1024 /* longest filename */ - -#define MAXJOBS 64 /* silently enforced -j limit */ -#define MAXARGC 32 /* words in $(JAMSHELL) */ - -/* Jam private definitions below. */ - -#define DEBUG_MAX 14 - - -struct globs -{ - int noexec; - int jobs; - int quitquick; - int newestfirst; /* build newest sources first */ - int pipe_action; - char debug[ DEBUG_MAX ]; - FILE * cmdout; /* print cmds, not run them */ - long timeout; /* number of seconds to limit actions to, - * default 0 for no limit. - */ - int dart; /* output build and test results formatted for Dart */ -}; - -extern struct globs globs; - -#define DEBUG_MAKE ( globs.debug[ 1 ] ) /* show actions when executed */ -#define DEBUG_MAKEQ ( globs.debug[ 2 ] ) /* show even quiet actions */ -#define DEBUG_EXEC ( globs.debug[ 2 ] ) /* show text of actons */ -#define DEBUG_MAKEPROG ( globs.debug[ 3 ] ) /* show progress of make0 */ -#define DEBUG_BIND ( globs.debug[ 3 ] ) /* show when files bound */ - -#define DEBUG_EXECCMD ( globs.debug[ 4 ] ) /* show execcmds()'s work */ - -#define DEBUG_COMPILE ( globs.debug[ 5 ] ) /* show rule invocations */ - -#define DEBUG_HEADER ( globs.debug[ 6 ] ) /* show result of header scan */ -#define DEBUG_BINDSCAN ( globs.debug[ 6 ] ) /* show result of dir scan */ -#define DEBUG_SEARCH ( globs.debug[ 6 ] ) /* show attempts at binding */ - -#define DEBUG_VARSET ( globs.debug[ 7 ] ) /* show variable settings */ -#define DEBUG_VARGET ( globs.debug[ 8 ] ) /* show variable fetches */ -#define DEBUG_VAREXP ( globs.debug[ 8 ] ) /* show variable expansions */ -#define DEBUG_IF ( globs.debug[ 8 ] ) /* show 'if' calculations */ -#define DEBUG_LISTS ( globs.debug[ 9 ] ) /* show list manipulation */ -#define DEBUG_SCAN ( globs.debug[ 9 ] ) /* show scanner tokens */ -#define DEBUG_MEM ( globs.debug[ 9 ] ) /* show memory use */ - -#define DEBUG_PROFILE ( globs.debug[ 10 ] ) /* dump rule execution times */ -#define DEBUG_PARSE ( globs.debug[ 11 ] ) /* debug parsing */ -#define DEBUG_GRAPH ( globs.debug[ 12 ] ) /* debug dependencies */ -#define DEBUG_FATE ( globs.debug[ 13 ] ) /* show changes to fate in make0() */ - -/* Everyone gets the memory definitions. */ -#include "mem.h" - -/* They also get the profile functions. */ -#include "debug.h" - -#endif |