Print this page
make: unifdef for MAKETOOL and DISTRIBUTED (undefined)

*** 62,214 **** */ static void change_sunpro_dependencies_value(char *oldpath, char *newpath); static void init_mksh_globals(char *shell); static void set_env_vars(char *env_list[]); - #if defined(DISTRIBUTED) || defined(MAKETOOL) /* tolik */ - /* - * Execute the command(s) of one Make or DMake rule - */ - int - do_job(Avo_DmakeCommand *cmd_list[], char *env_list[], char *stdout_file, char *stderr_file, char *cwd, char *cnwd, int ignore, int silent, pathpt vroot_path, char *shell, int nice_prio) - { - Boolean always_exec_flag; - char *cmd; - Avo_DmakeCommand **cmd_list_p; - Name command; - Boolean do_not_exec_flag; - Boolean ignore_flag; - int length; - Boolean make_refd_flag; - Boolean meta_flag; - char pathname[MAXPATHLEN]; - Doname result; - Boolean silent_flag; - wchar_t *tmp_wcs_buffer; - - if ((childPid = fork()) < 0) { /* error */ - ; - } else if (childPid > 0) { /* parent */ - ; - } else { /* child, mksh */ - (void) sigset(SIGCHLD, SIG_DFL); - enable_interrupt(handle_interrupt_mksh); - /* set environment variables */ - set_env_vars(env_list); - /* redirect stdout and stderr to temp files */ - dup2(1, 2); // Because fatal_mksh() prints error messages into - // stderr but dmake uses stderr for XDR communications - // and stdout for errors messages. - redirect_io(stdout_file, stderr_file); - /* try cd'ing to cwd */ - if (my_chdir(cwd) != 0) { - /* try the netpath machine:pathname */ - if (!avo_netpath_to_path(cnwd, pathname)) { - fatal_mksh(catgets(libmksdmsi18n_catd, 1, 137, "`cd %s' failed, and conversion of %s to automounter pathname also failed: %s"), cwd, cnwd, strerror(errno)); - } else if (my_chdir(pathname) != 0) { - fatal_mksh(catgets(libmksdmsi18n_catd, 1, 138, "`cd %s' and `cd %s' both failed: %s"), cwd, pathname, strerror(errno)); - } - /* - * change the value of SUNPRO_DEPENDENCIES - * to the new path. - */ - change_sunpro_dependencies_value(cwd, pathname); - } - init_mksh_globals(shell); - for (cmd_list_p = cmd_list; - *cmd_list_p != (Avo_DmakeCommand *) NULL; - cmd_list_p++) { - if ((*cmd_list_p)->ignore()) { - ignore_flag = true; - } else { - ignore_flag = false; - } - if ((*cmd_list_p)->silent()) { - silent_flag = true; - } else { - silent_flag = false; - } - /* - if ((*cmd_list_p)->always_exec()) { - always_exec_flag = true; - } else { - always_exec_flag = false; - } - */ - always_exec_flag = false; - if ((*cmd_list_p)->meta()) { - meta_flag = true; - } else { - meta_flag = false; - } - if ((*cmd_list_p)->make_refd()) { - make_refd_flag = true; - } else { - make_refd_flag = false; - } - if ((*cmd_list_p)->do_not_exec()) { - do_not_exec_flag = true; - } else { - do_not_exec_flag = false; - } - do_not_exec_rule = do_not_exec_flag; - cmd = (*cmd_list_p)->getCmd(); - if ((length = strlen(cmd)) >= MAXPATHLEN) { - tmp_wcs_buffer = ALLOC_WC(length + 1); - (void) mbstowcs(tmp_wcs_buffer, cmd, length + 1); - command = GETNAME(tmp_wcs_buffer, FIND_LENGTH); - retmem(tmp_wcs_buffer); - } else { - MBSTOWCS(wcs_buffer, cmd); - command = GETNAME(wcs_buffer, FIND_LENGTH); - } - if ((command->hash.length > 0) && - (!silent_flag || do_not_exec_flag)) { - (void) printf("%s\n", command->string_mb); - } - result = dosys_mksh(command, - ignore_flag, - make_refd_flag, - false, /* bugs #4085164 & #4990057 */ - /* BOOLEAN(silent_flag && ignore_flag), */ - always_exec_flag, - (Name) NULL, - false, - NULL, - NULL, - vroot_path, - nice_prio); - if (result == build_failed) { - - #ifdef PRINT_EXIT_STATUS - warning_mksh(NOCATGETS("I'm in do_job(), and dosys_mksh() returned result of build_failed.")); - #endif - - if (silent_flag) { - (void) printf(catgets(libmksdmsi18n_catd, 1, 139, "The following command caused the error:\n%s\n"), - command->string_mb); - } - if (!ignore_flag && !ignore) { - - #ifdef PRINT_EXIT_STATUS - warning_mksh(NOCATGETS("I'm in do_job(), and dosys_mksh() returned result of build_failed, exiting 1.")); - #endif - - exit(1); - } - } - } - - #ifdef PRINT_EXIT_STATUS - warning_mksh(NOCATGETS("I'm in do_job(), exiting 0.")); - #endif - - exit(0); - } - return childPid; - } - #endif /* TEAMWARE_MAKE_CMN */ static void set_env_vars(char *env_list[]) { char **env_list_p; --- 62,71 ----