File: vextern.h

package info (click to toggle)
dmake 1%3A4.12-2
  • links: PTS
  • area: main
  • in suites: squeeze, wheezy
  • size: 7,688 kB
  • ctags: 2,678
  • sloc: ansic: 21,721; sh: 8,391; asm: 759; makefile: 143; awk: 54
file content (129 lines) | stat: -rw-r--r-- 5,791 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
/* RCS  $Id: vextern.h,v 1.7 2007/10/15 15:42:04 ihi Exp $
--
-- SYNOPSIS
--      Global variable declarations.
-- 
-- DESCRIPTION
-- 	Leave _DEFINE_GLOBALS_ undefined and the following declarations
--	will be defined as global variables, otherwise you get the
--	external declarations to the same global variables.
--
-- AUTHOR
--      Dennis Vadura, dvadura@dmake.wticorp.com
--
-- WWW
--      http://dmake.wticorp.com/
--
-- COPYRIGHT
--      Copyright (c) 1996,1997 by WTI Corp.  All rights reserved.
-- 
--      This program is NOT free software; you can redistribute it and/or
--      modify it under the terms of the Software License Agreement Provided
--      in the file <distribution-root>/readme/license.txt.
--
-- LOG
--      Use cvs log to obtain detailed change logs.
*/
 
/* These two are defined in dir/ruletab.c and dir/dirbrk.c, and are always
 * imported as externals by the other code.  Their defining modules do not
 * #include this file. */
extern	char*	DirBrkStr;	/* pointer to value of macro DIRBRKSTR    */
extern	char**	Rule_tab;	/* Builtin rules */
 
#ifndef _DEFINE_GLOBALS_
#define EXTERN	extern
#else
#define EXTERN
#endif
 
EXTERN	int	Line_number;	/* Current line number in make file parse */
EXTERN	t_attr	Glob_attr;	/* Global attrs to control global ops     */
EXTERN	char*	Makedir;	/* pointer to macro value for MAKEDIR     */
EXTERN	char*	Makedir_macval;	/* value of MAKEDIR (for .WINPATH)        */
EXTERN	char*	Shell;		/* pointer to macro value for SHELL       */
EXTERN	char*	Shell_flags;	/* pointer to macro value for SHELLFLAGS  */
EXTERN	char*	Shell_quote;	/* pointer to macro value for SHELLCMDQUOTE */
EXTERN	char*	GShell;		/* pointer to macro value for GROUPSHELL  */
EXTERN	char*	GShell_flags;	/* pointer to macro value for GROUPFLAGS  */
EXTERN	char*	Shell_metas;	/* pointer to macro value for SHELLMETAS  */
EXTERN	char*	Grp_suff;	/* pointer to macro value for GROUPSUFFIX */
EXTERN	char*   DirSepStr;	/* pointer to macro value for DIRSEPSTR   */
EXTERN	char*	AbsPname;	/* pointer to macro value for ABSMAKECMD  */
EXTERN	char*	Pname;		/* dmake process invoke name              */
EXTERN	char*	Pwd;		/* current working dir                    */
EXTERN	char*	Pwd_macval;	/* value of PWD	(for .WINPATH)            */
EXTERN	char*	Tmd;		/* path to directory where dmake started  */
EXTERN	char*	Tmd_macval;	/* value of TMD (for .WINPATH)            */
EXTERN	char*	Spacechar;	/* pointer to macro value for SPACECHAR   */
EXTERN	char*	Keep_state;	/* current .KEEP_STATE file		  */
EXTERN  char*   Escape_char;	/* Current escape character               */
EXTERN  char*   LastMacName;	/* Last macro successfully parsed	  */
EXTERN  char*   UseDirCache;    /* The value of .DIRCACHE                 */
EXTERN  char*   DcacheRespCase; /* TRUE if we are to respect dcache case  */
EXTERN  char*   OOoDmMode;	/* Enable special behavior for OOo build. */
EXTERN	int	Target;		/* TRUE if a default target was found in  *
				 * a makefile or on the commandline       */
EXTERN	int	If_expand;	/* TRUE if calling Expand from getinp.c   */
EXTERN  int	Suppress_temp_file;/* TRUE if doing a test in _exec_recipe*/
EXTERN	int	Readenv;	/* TRUE if defining macro from environment*/
EXTERN	int	Makemkf;	/* TRUE if making makefile(s)		  */
EXTERN	int	Nest_level;	/* Nesting level for .IF .ELSE .END ...   */
EXTERN	int  	Prep;		/* Value of macro PREP			  */
EXTERN	int	Def_targets;	/* TRUE if defining targets - Only used	  *
				 * in Def_cell().			  */
EXTERN  int	Skip_to_eof;	/* TRUE if asked to skip to eof on input  */
EXTERN	int	NameMax;	/* The value of NAMEMAX                   */
EXTERN	int	UseWinpath;	/* True if .WINPATH is set for currently  *
				 * made target.                           */
#if __CYGWIN__
EXTERN  char*   CygDrvPre;      /* Drive prefix used by cygwin            */
EXTERN  int     CygDrvPreLen;   /* Drive prefix length used by cygwin     */
#endif

 
EXTERN  CELLPTR Root;		/* Root of the make graph (.ROOT)	  */
EXTERN  CELLPTR Targets;	/* Targets in makefile (.TARGETS)	  */
 
EXTERN  CELLPTR Current_target; /* cell of current target being made      */
EXTERN  int	Wait_for_completion; /* Wait for subprocess to finish     */
EXTERN  int	Is_exec_shell;  /* Indicate shell escape                  */
EXTERN  CELLPTR Shell_exec_target; /* Keep Current_target for _exec__shell */
EXTERN  FILE*	stdout_redir;   /* For _exec_shell client redirects       */
EXTERN  int	zerofd;         /* File descriptor for /dev/null          */
EXTERN  int	Doing_bang;	/* TRUE if target timestamp needs not to be
				 * updated immediately. */
EXTERN  int	Packed_shell;	/* TRUE if packed args to use a shell	  */
#if defined(MSDOS)
EXTERN  int	Swap_on_exec;	/* TRUE if going to swap on exec call     */
#endif
EXTERN  int	State;		/* parser state				  */
EXTERN  int	Group;		/* parsing a group recipe ==> TRUE        */
 
/* Command line option flags are defined here.  They correspond one-for one
 * with the flags defined in dmake.c */
 
EXTERN	char    *Augmake;	  /* -A */
EXTERN  char    Comment;	  /* -c */
EXTERN	char	Get_env;	  /* -e or -E */
EXTERN  char*   Notabs;		  /* -B */
EXTERN	int	Continue;	  /* -k */
EXTERN	int	Force;		  /* -u */
EXTERN	int	Listing;	  /* -p */
EXTERN	int	Rules;		  /* -r */
EXTERN	int	Trace;		  /* -n */
EXTERN	int	Touch;		  /* -t */
EXTERN	int	Check;		  /* -q */
EXTERN	uint16	Verbose;	  /* -v */
EXTERN	uint16	Measure;	  /* -m */
EXTERN	int	Microsoft;	  /* -M */
EXTERN	int	Transitive;	  /* -T */
EXTERN  int     No_exec;          /* -X */

EXTERN  HASHPTR Defs[HASH_TABLE_SIZE];
EXTERN  HASHPTR Macs[HASH_TABLE_SIZE];

EXTERN	char	*Buffer;		/* a general purpose buffer     */
EXTERN  int	Buffer_size;
EXTERN  int	Max_proclmt;		/* limit of max # of conc procs */
EXTERN	int	Max_proc;		/* max # of conc procs		*/