103 struct _Chain *target_group[64];
104 short used;
105 struct _Name_vector *next;
106 };
107
108 struct _Running {
109 struct _Running *next;
110 Doname state;
111 struct _Name *target;
112 struct _Name *true_target;
113 struct _Property *command;
114 struct _Name *sprodep_value;
115 char *sprodep_env;
116 int recursion_level;
117 Boolean do_get;
118 Boolean implicit;
119 Boolean redo;
120 int auto_count;
121 struct _Name **automatics;
122 pid_t pid;
123 #ifdef TEAMWARE_MAKE_CMN
124 int job_msg_id;
125 #else
126 int host;
127 #endif
128 char *stdout_file;
129 char *stderr_file;
130 struct _Name *temp_file;
131 int conditional_cnt;
132 struct _Name **conditional_targets;
133 #ifdef TEAMWARE_MAKE_CMN
134 Boolean make_refd;
135 #endif
136 };
137
138 typedef enum {
139 serial_mode,
140 parallel_mode,
141 distributed_mode
142 } DMake_mode;
143
144 typedef enum {
145 txt1_mode,
146 txt2_mode,
147 html1_mode
148 } DMake_output_mode;
149
150 struct _Recursive_make {
151 struct _Recursive_make *next; /* Linked list */
152 wchar_t *target;/* Name of target */
153 wchar_t *oldline;/* Original line in .nse_depinfo */
154 wchar_t *newline;/* New line in .nse_depinfo */
155 wchar_t *cond_macrostring;
211 extern DMake_mode dmake_mode_type;
212 extern Name dmake_output_mode;
213 extern DMake_output_mode output_mode;
214 extern Name dmake_odir;
215 extern Name dmake_rcfile;
216 extern Name done;
217 extern Name dot;
218 extern Name dot_keep_state;
219 extern Name dot_keep_state_file;
220 extern Name empty_name;
221 extern Boolean fatal_in_progress;
222 extern int file_number;
223 extern Name force;
224 extern Name ignore_name;
225 extern Boolean ignore_errors;
226 extern Boolean ignore_errors_all;
227 extern Name init;
228 extern int job_msg_id;
229 extern Boolean keep_state;
230 extern Name make_state;
231 #ifdef TEAMWARE_MAKE_CMN
232 extern timestruc_t make_state_before;
233 #endif
234 extern Boolean make_state_locked;
235 extern Dependency makefiles_used;
236 extern Name makeflags;
237 extern Name make_version;
238 extern char mbs_buffer2[];
239 extern char *mbs_ptr;
240 extern char *mbs_ptr2;
241 extern Boolean no_action_was_taken;
242 extern int mtool_msgs_fd;
243 extern Boolean no_parallel;
244 extern Name no_parallel_name;
245 extern Name not_auto;
246 extern Boolean only_parallel;
247 extern Boolean parallel;
248 extern Name parallel_name;
249 extern Name localhost_name;
250 extern int parallel_process_cnt;
251 extern Percent percent_list;
252 extern Dyntarget dyntarget_list;
253 extern Name plus;
304
305 /*
306 * Declarations of system defined variables
307 */
308 /* On linux this variable is defined in 'signal.h' */
309 extern char *sys_siglist[];
310
311 /*
312 * Declarations of system supplied functions
313 */
314 extern int file_lock(char *, char *, int *, int);
315
316 /*
317 * Declarations of functions declared and used by make
318 */
319 extern void add_pending(Name target, int recursion_level, Boolean do_get, Boolean implicit, Boolean redo);
320 extern void add_running(Name target, Name true_target, Property command, int recursion_level, int auto_count, Name *automatics, Boolean do_get, Boolean implicit);
321 extern void add_serial(Name target, int recursion_level, Boolean do_get, Boolean implicit);
322 extern void add_subtree(Name target, int recursion_level, Boolean do_get, Boolean implicit);
323 extern void append_or_replace_macro_in_dyn_array(ASCII_Dyn_Array *Ar, char *macro);
324 #ifdef TEAMWARE_MAKE_CMN
325 extern void await_parallel(Boolean waitflg);
326 #endif
327 extern void build_suffix_list(Name target_suffix);
328 extern Boolean check_auto_dependencies(Name target, int auto_count, Name *automatics);
329 extern void check_state(Name temp_file_name);
330 extern void cond_macros_into_string(Name np, String_rec *buffer);
331 extern void construct_target_string();
332 extern void create_xdrs_ptr(void);
333 extern void depvar_add_to_list (Name name, Boolean cmdline);
334 extern Doname doname(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic = false);
335 extern Doname doname_check(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic);
336 extern Doname doname_parallel(Name target, Boolean do_get, Boolean implicit);
337 extern Doname dosys(register Name command, register Boolean ignore_error, register Boolean call_make, Boolean silent_error, Boolean always_exec, Name target, Boolean redirect_out_err);
338 extern void dump_make_state(void);
339 extern void dump_target_list(void);
340 extern void enter_conditional(register Name target, Name name, Name value, register Boolean append);
341 extern void enter_dependencies(register Name target, Chain target_group, register Name_vector depes, register Cmd_line command, register Separator separator);
342 extern void enter_dependency(Property line, register Name depe, Boolean automatic);
343 extern void enter_equal(Name name, Name value, register Boolean append);
344 extern Percent enter_percent(register Name target, Chain target_group, register Name_vector depes, Cmd_line command);
345 extern Dyntarget enter_dyntarget(register Name target);
346 extern Name_vector enter_name(String string, Boolean tail_present, register wchar_t *string_start, register wchar_t *string_end, Name_vector current_names, Name_vector *extra_names, Boolean *target_group_seen);
|
103 struct _Chain *target_group[64];
104 short used;
105 struct _Name_vector *next;
106 };
107
108 struct _Running {
109 struct _Running *next;
110 Doname state;
111 struct _Name *target;
112 struct _Name *true_target;
113 struct _Property *command;
114 struct _Name *sprodep_value;
115 char *sprodep_env;
116 int recursion_level;
117 Boolean do_get;
118 Boolean implicit;
119 Boolean redo;
120 int auto_count;
121 struct _Name **automatics;
122 pid_t pid;
123 int job_msg_id;
124 char *stdout_file;
125 char *stderr_file;
126 struct _Name *temp_file;
127 int conditional_cnt;
128 struct _Name **conditional_targets;
129 Boolean make_refd;
130 };
131
132 typedef enum {
133 serial_mode,
134 parallel_mode,
135 distributed_mode
136 } DMake_mode;
137
138 typedef enum {
139 txt1_mode,
140 txt2_mode,
141 html1_mode
142 } DMake_output_mode;
143
144 struct _Recursive_make {
145 struct _Recursive_make *next; /* Linked list */
146 wchar_t *target;/* Name of target */
147 wchar_t *oldline;/* Original line in .nse_depinfo */
148 wchar_t *newline;/* New line in .nse_depinfo */
149 wchar_t *cond_macrostring;
205 extern DMake_mode dmake_mode_type;
206 extern Name dmake_output_mode;
207 extern DMake_output_mode output_mode;
208 extern Name dmake_odir;
209 extern Name dmake_rcfile;
210 extern Name done;
211 extern Name dot;
212 extern Name dot_keep_state;
213 extern Name dot_keep_state_file;
214 extern Name empty_name;
215 extern Boolean fatal_in_progress;
216 extern int file_number;
217 extern Name force;
218 extern Name ignore_name;
219 extern Boolean ignore_errors;
220 extern Boolean ignore_errors_all;
221 extern Name init;
222 extern int job_msg_id;
223 extern Boolean keep_state;
224 extern Name make_state;
225 extern timestruc_t make_state_before;
226 extern Boolean make_state_locked;
227 extern Dependency makefiles_used;
228 extern Name makeflags;
229 extern Name make_version;
230 extern char mbs_buffer2[];
231 extern char *mbs_ptr;
232 extern char *mbs_ptr2;
233 extern Boolean no_action_was_taken;
234 extern int mtool_msgs_fd;
235 extern Boolean no_parallel;
236 extern Name no_parallel_name;
237 extern Name not_auto;
238 extern Boolean only_parallel;
239 extern Boolean parallel;
240 extern Name parallel_name;
241 extern Name localhost_name;
242 extern int parallel_process_cnt;
243 extern Percent percent_list;
244 extern Dyntarget dyntarget_list;
245 extern Name plus;
296
297 /*
298 * Declarations of system defined variables
299 */
300 /* On linux this variable is defined in 'signal.h' */
301 extern char *sys_siglist[];
302
303 /*
304 * Declarations of system supplied functions
305 */
306 extern int file_lock(char *, char *, int *, int);
307
308 /*
309 * Declarations of functions declared and used by make
310 */
311 extern void add_pending(Name target, int recursion_level, Boolean do_get, Boolean implicit, Boolean redo);
312 extern void add_running(Name target, Name true_target, Property command, int recursion_level, int auto_count, Name *automatics, Boolean do_get, Boolean implicit);
313 extern void add_serial(Name target, int recursion_level, Boolean do_get, Boolean implicit);
314 extern void add_subtree(Name target, int recursion_level, Boolean do_get, Boolean implicit);
315 extern void append_or_replace_macro_in_dyn_array(ASCII_Dyn_Array *Ar, char *macro);
316 extern void await_parallel(Boolean waitflg);
317 extern void build_suffix_list(Name target_suffix);
318 extern Boolean check_auto_dependencies(Name target, int auto_count, Name *automatics);
319 extern void check_state(Name temp_file_name);
320 extern void cond_macros_into_string(Name np, String_rec *buffer);
321 extern void construct_target_string();
322 extern void create_xdrs_ptr(void);
323 extern void depvar_add_to_list (Name name, Boolean cmdline);
324 extern Doname doname(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic = false);
325 extern Doname doname_check(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic);
326 extern Doname doname_parallel(Name target, Boolean do_get, Boolean implicit);
327 extern Doname dosys(register Name command, register Boolean ignore_error, register Boolean call_make, Boolean silent_error, Boolean always_exec, Name target, Boolean redirect_out_err);
328 extern void dump_make_state(void);
329 extern void dump_target_list(void);
330 extern void enter_conditional(register Name target, Name name, Name value, register Boolean append);
331 extern void enter_dependencies(register Name target, Chain target_group, register Name_vector depes, register Cmd_line command, register Separator separator);
332 extern void enter_dependency(Property line, register Name depe, Boolean automatic);
333 extern void enter_equal(Name name, Name value, register Boolean append);
334 extern Percent enter_percent(register Name target, Chain target_group, register Name_vector depes, Cmd_line command);
335 extern Dyntarget enter_dyntarget(register Name target);
336 extern Name_vector enter_name(String string, Boolean tail_present, register wchar_t *string_start, register wchar_t *string_end, Name_vector current_names, Name_vector *extra_names, Boolean *target_group_seen);
|