213 extern Name empty_name;
214 extern Boolean fatal_in_progress;
215 extern int file_number;
216 extern Name force;
217 extern Name ignore_name;
218 extern Boolean ignore_errors;
219 extern Boolean ignore_errors_all;
220 extern Name init;
221 extern int job_msg_id;
222 extern Boolean keep_state;
223 extern Name make_state;
224 extern timestruc_t make_state_before;
225 extern Boolean make_state_locked;
226 extern Dependency makefiles_used;
227 extern Name makeflags;
228 extern Name make_version;
229 extern char mbs_buffer2[];
230 extern char *mbs_ptr;
231 extern char *mbs_ptr2;
232 extern Boolean no_action_was_taken;
233 extern int mtool_msgs_fd;
234 extern Boolean no_parallel;
235 extern Name no_parallel_name;
236 extern Name not_auto;
237 extern Boolean only_parallel;
238 extern Boolean parallel;
239 extern Name parallel_name;
240 extern Name localhost_name;
241 extern int parallel_process_cnt;
242 extern Percent percent_list;
243 extern Dyntarget dyntarget_list;
244 extern Name plus;
245 extern Name pmake_machinesfile;
246 extern Name precious;
247 extern Name primary_makefile;
248 extern Boolean quest;
249 extern short read_trace_level;
250 extern Boolean reading_dependencies;
251 extern int recursion_level;
252 extern Name recursive_name;
253 extern short report_dependencies_level;
254 extern Boolean report_pwd;
255 extern Boolean rewrite_statefile;
256 extern Running running_list;
257 extern char *sccs_dir_path;
258 extern Name sccs_get_name;
259 extern Name sccs_get_posix_name;
260 extern Cmd_line sccs_get_rule;
261 extern Cmd_line sccs_get_org_rule;
262 extern Cmd_line sccs_get_posix_rule;
263 extern Name get_name;
264 extern Name get_posix_name;
265 extern Cmd_line get_rule;
266 extern Cmd_line get_posix_rule;
267 extern Boolean send_mtool_msgs;
268 extern Boolean all_precious;
269 extern Boolean report_cwd;
270 extern Boolean silent_all;
271 extern Boolean silent;
272 extern Name silent_name;
273 extern char *stderr_file;
274 extern char *stdout_file;
275 extern Boolean stdout_stderr_same;
276 extern Dependency suffixes;
277 extern Name suffixes_name;
278 extern Name sunpro_dependencies;
279 extern Boolean target_variants;
280 extern const char *tmpdir;
281 extern const char *temp_file_directory;
282 extern Name temp_file_name;
283 extern short temp_file_number;
284 extern wchar_t *top_level_target;
285 extern Boolean touch;
286 extern Boolean trace_reader;
287 extern Boolean build_unconditional;
306
307 /*
308 * Declarations of functions declared and used by make
309 */
310 extern void add_pending(Name target, int recursion_level, Boolean do_get, Boolean implicit, Boolean redo);
311 extern void add_running(Name target, Name true_target, Property command, int recursion_level, int auto_count, Name *automatics, Boolean do_get, Boolean implicit);
312 extern void add_serial(Name target, int recursion_level, Boolean do_get, Boolean implicit);
313 extern void add_subtree(Name target, int recursion_level, Boolean do_get, Boolean implicit);
314 extern void append_or_replace_macro_in_dyn_array(ASCII_Dyn_Array *Ar, char *macro);
315 extern void await_parallel(Boolean waitflg);
316 extern void build_suffix_list(Name target_suffix);
317 extern Boolean check_auto_dependencies(Name target, int auto_count, Name *automatics);
318 extern void check_state(Name temp_file_name);
319 extern void cond_macros_into_string(Name np, String_rec *buffer);
320 extern void construct_target_string();
321 extern void create_xdrs_ptr(void);
322 extern void depvar_add_to_list (Name name, Boolean cmdline);
323 extern Doname doname(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic = false);
324 extern Doname doname_check(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic);
325 extern Doname doname_parallel(Name target, Boolean do_get, Boolean implicit);
326 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);
327 extern void dump_make_state(void);
328 extern void dump_target_list(void);
329 extern void enter_conditional(register Name target, Name name, Name value, register Boolean append);
330 extern void enter_dependencies(register Name target, Chain target_group, register Name_vector depes, register Cmd_line command, register Separator separator);
331 extern void enter_dependency(Property line, register Name depe, Boolean automatic);
332 extern void enter_equal(Name name, Name value, register Boolean append);
333 extern Percent enter_percent(register Name target, Chain target_group, register Name_vector depes, Cmd_line command);
334 extern Dyntarget enter_dyntarget(register Name target);
335 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);
336 extern Boolean exec_vp(register char *name, register char **argv, char **envp, register Boolean ignore_error);
337 extern Doname execute_parallel(Property line, Boolean waitflg, Boolean local = false);
338 extern Doname execute_serial(Property line);
339 extern timestruc_t& exists(register Name target);
340 extern void fatal(const char *, ...);
341 extern void fatal_reader(char *, ...);
342 extern Doname find_ar_suffix_rule(register Name target, Name true_target, Property *command, Boolean rechecking);
343 extern Doname find_double_suffix_rule(register Name target, Property *command, Boolean rechecking);
344 extern Doname find_percent_rule(register Name target, Property *command, Boolean rechecking);
345 extern int find_run_directory (char *cmd, char *cwd, char *dir, char **pgm, char **run, char *path);
346 extern Doname find_suffix_rule(Name target, Name target_body, Name target_suffix, Property *command, Boolean rechecking);
347 extern Chain find_target_groups(register Name_vector target_list, register int i, Boolean reset);
348 extern void finish_children(Boolean docheck);
349 extern void finish_running(void);
350 extern void free_chain(Name_vector ptr);
351 extern void gather_recursive_deps(void);
352 extern char *get_current_path(void);
353 extern int get_job_msg_id(void);
354 extern FILE *get_mtool_msgs_fp(void);
355 extern wchar_t *getmem_wc(register int size);
356 /* On linux getwd(char *) is defined in 'unistd.h' */
357 #ifdef __cplusplus
358 extern "C" {
359 #endif
360 extern char *getwd(char *);
361 #ifdef __cplusplus
362 }
363 #endif
364 extern void handle_interrupt(int);
365 extern Boolean is_running(Name target);
366 extern void load_cached_names(void);
367 extern Boolean parallel_ok(Name target, Boolean line_prop_must_exists);
368 extern void print_dependencies(register Name target, register Property line);
369 extern void send_job_start_msg(Property line);
370 extern void send_rsrc_info_msg(int max_jobs, char *hostname, char *username);
371 extern void print_value(register Name value, Daemon daemon);
372 extern timestruc_t& read_archive(register Name target);
373 extern int read_dir(Name dir, wchar_t *pattern, Property line, wchar_t *library);
374 extern void read_directory_of_file(register Name file);
|
213 extern Name empty_name;
214 extern Boolean fatal_in_progress;
215 extern int file_number;
216 extern Name force;
217 extern Name ignore_name;
218 extern Boolean ignore_errors;
219 extern Boolean ignore_errors_all;
220 extern Name init;
221 extern int job_msg_id;
222 extern Boolean keep_state;
223 extern Name make_state;
224 extern timestruc_t make_state_before;
225 extern Boolean make_state_locked;
226 extern Dependency makefiles_used;
227 extern Name makeflags;
228 extern Name make_version;
229 extern char mbs_buffer2[];
230 extern char *mbs_ptr;
231 extern char *mbs_ptr2;
232 extern Boolean no_action_was_taken;
233 extern Boolean no_parallel;
234 extern Name no_parallel_name;
235 extern Name not_auto;
236 extern Boolean only_parallel;
237 extern Boolean parallel;
238 extern Name parallel_name;
239 extern Name localhost_name;
240 extern int parallel_process_cnt;
241 extern Percent percent_list;
242 extern Dyntarget dyntarget_list;
243 extern Name plus;
244 extern Name pmake_machinesfile;
245 extern Name precious;
246 extern Name primary_makefile;
247 extern Boolean quest;
248 extern short read_trace_level;
249 extern Boolean reading_dependencies;
250 extern int recursion_level;
251 extern Name recursive_name;
252 extern short report_dependencies_level;
253 extern Boolean report_pwd;
254 extern Boolean rewrite_statefile;
255 extern Running running_list;
256 extern char *sccs_dir_path;
257 extern Name sccs_get_name;
258 extern Name sccs_get_posix_name;
259 extern Cmd_line sccs_get_rule;
260 extern Cmd_line sccs_get_org_rule;
261 extern Cmd_line sccs_get_posix_rule;
262 extern Name get_name;
263 extern Name get_posix_name;
264 extern Cmd_line get_rule;
265 extern Cmd_line get_posix_rule;
266 extern Boolean all_precious;
267 extern Boolean report_cwd;
268 extern Boolean silent_all;
269 extern Boolean silent;
270 extern Name silent_name;
271 extern char *stderr_file;
272 extern char *stdout_file;
273 extern Boolean stdout_stderr_same;
274 extern Dependency suffixes;
275 extern Name suffixes_name;
276 extern Name sunpro_dependencies;
277 extern Boolean target_variants;
278 extern const char *tmpdir;
279 extern const char *temp_file_directory;
280 extern Name temp_file_name;
281 extern short temp_file_number;
282 extern wchar_t *top_level_target;
283 extern Boolean touch;
284 extern Boolean trace_reader;
285 extern Boolean build_unconditional;
304
305 /*
306 * Declarations of functions declared and used by make
307 */
308 extern void add_pending(Name target, int recursion_level, Boolean do_get, Boolean implicit, Boolean redo);
309 extern void add_running(Name target, Name true_target, Property command, int recursion_level, int auto_count, Name *automatics, Boolean do_get, Boolean implicit);
310 extern void add_serial(Name target, int recursion_level, Boolean do_get, Boolean implicit);
311 extern void add_subtree(Name target, int recursion_level, Boolean do_get, Boolean implicit);
312 extern void append_or_replace_macro_in_dyn_array(ASCII_Dyn_Array *Ar, char *macro);
313 extern void await_parallel(Boolean waitflg);
314 extern void build_suffix_list(Name target_suffix);
315 extern Boolean check_auto_dependencies(Name target, int auto_count, Name *automatics);
316 extern void check_state(Name temp_file_name);
317 extern void cond_macros_into_string(Name np, String_rec *buffer);
318 extern void construct_target_string();
319 extern void create_xdrs_ptr(void);
320 extern void depvar_add_to_list (Name name, Boolean cmdline);
321 extern Doname doname(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic = false);
322 extern Doname doname_check(register Name target, register Boolean do_get, register Boolean implicit, register Boolean automatic);
323 extern Doname doname_parallel(Name target, Boolean do_get, Boolean implicit);
324 extern Doname dosys(register Name command, register Boolean ignore_error, register Boolean call_make, Boolean silent_error, Boolean always_exec, Name target);
325 extern void dump_make_state(void);
326 extern void dump_target_list(void);
327 extern void enter_conditional(register Name target, Name name, Name value, register Boolean append);
328 extern void enter_dependencies(register Name target, Chain target_group, register Name_vector depes, register Cmd_line command, register Separator separator);
329 extern void enter_dependency(Property line, register Name depe, Boolean automatic);
330 extern void enter_equal(Name name, Name value, register Boolean append);
331 extern Percent enter_percent(register Name target, Chain target_group, register Name_vector depes, Cmd_line command);
332 extern Dyntarget enter_dyntarget(register Name target);
333 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);
334 extern Boolean exec_vp(register char *name, register char **argv, char **envp, register Boolean ignore_error);
335 extern Doname execute_parallel(Property line, Boolean waitflg, Boolean local = false);
336 extern Doname execute_serial(Property line);
337 extern timestruc_t& exists(register Name target);
338 extern void fatal(const char *, ...);
339 extern void fatal_reader(char *, ...);
340 extern Doname find_ar_suffix_rule(register Name target, Name true_target, Property *command, Boolean rechecking);
341 extern Doname find_double_suffix_rule(register Name target, Property *command, Boolean rechecking);
342 extern Doname find_percent_rule(register Name target, Property *command, Boolean rechecking);
343 extern int find_run_directory (char *cmd, char *cwd, char *dir, char **pgm, char **run, char *path);
344 extern Doname find_suffix_rule(Name target, Name target_body, Name target_suffix, Property *command, Boolean rechecking);
345 extern Chain find_target_groups(register Name_vector target_list, register int i, Boolean reset);
346 extern void finish_children(Boolean docheck);
347 extern void finish_running(void);
348 extern void free_chain(Name_vector ptr);
349 extern void gather_recursive_deps(void);
350 extern char *get_current_path(void);
351 extern int get_job_msg_id(void);
352 extern wchar_t *getmem_wc(register int size);
353 /* On linux getwd(char *) is defined in 'unistd.h' */
354 #ifdef __cplusplus
355 extern "C" {
356 #endif
357 extern char *getwd(char *);
358 #ifdef __cplusplus
359 }
360 #endif
361 extern void handle_interrupt(int);
362 extern Boolean is_running(Name target);
363 extern void load_cached_names(void);
364 extern Boolean parallel_ok(Name target, Boolean line_prop_must_exists);
365 extern void print_dependencies(register Name target, register Property line);
366 extern void send_job_start_msg(Property line);
367 extern void send_rsrc_info_msg(int max_jobs, char *hostname, char *username);
368 extern void print_value(register Name value, Daemon daemon);
369 extern timestruc_t& read_archive(register Name target);
370 extern int read_dir(Name dir, wchar_t *pattern, Property line, wchar_t *library);
371 extern void read_directory_of_file(register Name file);
|