somake/lib/mksh/globals.cc
Georg Sauthoff 6804ba69d6 import Sun's dmake from illumos
Source:

svn export https://github.com/illumos/illumos-gate/trunk/usr/src/cmd/make/

Yes, github also has a Subversion compatible interface - which seems to
be useful when one is only interested in a set of files.

The Github Subversion server printed: Exported revision 15816.

This corresponds to:
67c3092ccd/usr/src/cmd/make
2016-08-21 23:34:14 +02:00

129 lines
2.9 KiB
C++

/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/*
* globals.cc
*
* This declares all global variables
*/
/*
* Included files
*/
#include <mksh/globals.h>
/*
* Defined macros
*/
/*
* typedefs & structs
*/
/*
* Global variables
*/
char char_semantics[CHAR_SEMANTICS_ENTRIES];
wchar_t char_semantics_char[] = {
ampersand_char,
asterisk_char,
at_char,
backquote_char,
backslash_char,
bar_char,
bracketleft_char,
bracketright_char,
colon_char,
dollar_char,
doublequote_char,
equal_char,
exclam_char,
greater_char,
hat_char,
hyphen_char,
less_char,
newline_char,
numbersign_char,
parenleft_char,
parenright_char,
percent_char,
plus_char,
question_char,
quote_char,
semicolon_char,
nul_char
};
Macro_list cond_macro_list;
Boolean conditional_macro_used;
Boolean do_not_exec_rule; /* `-n' */
Boolean dollarget_seen;
Boolean dollarless_flag;
Name dollarless_value;
Envvar envvar;
#ifdef lint
char **environ;
#endif
int exit_status;
wchar_t *file_being_read;
/* Variable gnu_style=true if env. var. SUN_MAKE_COMPAT_MODE=GNU (RFE 4866328) */
Boolean gnu_style = false;
Name_set hashtab;
Name host_arch;
Name host_mach;
int line_number;
char *make_state_lockfile;
Boolean make_word_mentioned;
Makefile_type makefile_type = reading_nothing;
char mbs_buffer[(MAXPATHLEN * MB_LEN_MAX)];
Name path_name;
Boolean posix = true;
Name hat;
Name query;
Boolean query_mentioned;
Boolean reading_environment;
Name shell_name;
Boolean svr4 = false;
Name target_arch;
Name target_mach;
Boolean tilde_rule;
Name virtual_root;
Boolean vpath_defined;
Name vpath_name;
wchar_t wcs_buffer[MAXPATHLEN];
Boolean working_on_targets;
Boolean out_err_same;
pid_t childPid = -1; // This variable is used for killing child's process
// Such as qrsh, running command, etc.
/*
* timestamps defined in defs.h
*/
const timestruc_t file_no_time = { -1, 0 };
const timestruc_t file_doesnt_exist = { 0, 0 };
const timestruc_t file_is_dir = { 1, 0 };
const timestruc_t file_min_time = { 2, 0 };
const timestruc_t file_max_time = { INT_MAX, 0 };