diff options
author | Toomas Soome <tsoome@me.com> | 2019-08-09 09:07:43 +0300 |
---|---|---|
committer | Toomas Soome <tsoome@me.com> | 2019-08-20 20:23:03 +0300 |
commit | 356ba08c15b26adbde3440aa89d8b31cd39fc526 (patch) | |
tree | 874db8dfaa66e6549b5d9156c0a7c8ec52565c85 /usr/src | |
parent | 21c878fe36c0151617d2f009615f5d18fddb207e (diff) | |
download | illumos-joyent-356ba08c15b26adbde3440aa89d8b31cd39fc526.tar.gz |
11533 tools/make: gcc9 build errors
11534 tools/make: remove sys_nerr
11535 tools/make: amd64 arch is not supported
11536 tools/make: getmem() should take size_t
Reviewed by: Andy Fiddaman <andy@omniosce.org>
Approved by: Robert Mustacchi <rm@joyent.com>
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/cmd/make/bin/main.cc | 2 | ||||
-rw-r--r-- | usr/src/cmd/make/include/mksh/misc.h | 2 | ||||
-rw-r--r-- | usr/src/cmd/make/lib/mksh/dosys.cc | 36 | ||||
-rw-r--r-- | usr/src/cmd/make/lib/mksh/misc.cc | 40 | ||||
-rw-r--r-- | usr/src/cmd/make/lib/vroot/lock.cc | 44 |
5 files changed, 60 insertions, 64 deletions
diff --git a/usr/src/cmd/make/bin/main.cc b/usr/src/cmd/make/bin/main.cc index c461b93d49..1320f68a4d 100644 --- a/usr/src/cmd/make/bin/main.cc +++ b/usr/src/cmd/make/bin/main.cc @@ -71,7 +71,7 @@ extern void job_adjust_fini(); #define LD_SUPPORT_ENV_VAR_32 "SGS_SUPPORT_32" #define LD_SUPPORT_ENV_VAR_64 "SGS_SUPPORT_64" #define LD_SUPPORT_MAKE_LIB "libmakestate.so.1" -#ifdef __i386 +#ifdef __x86 #define LD_SUPPORT_MAKE_ARCH "i386" #elif __sparc #define LD_SUPPORT_MAKE_ARCH "sparc" diff --git a/usr/src/cmd/make/include/mksh/misc.h b/usr/src/cmd/make/include/mksh/misc.h index f3504bbcc4..d2048c391c 100644 --- a/usr/src/cmd/make/include/mksh/misc.h +++ b/usr/src/cmd/make/include/mksh/misc.h @@ -36,7 +36,7 @@ extern void fatal_mksh(const char *message, ...); extern void fatal_reader_mksh(const char *pattern, ...); extern char *get_current_path_mksh(void); extern Property get_prop(register Property start, register Property_id type); -extern char *getmem(register int size); +extern char *getmem(size_t size); extern Name getname_fn(wchar_t *name, register int len, register Boolean dont_enter, register Boolean * foundp = NULL); extern void store_name(Name name); extern void free_name(Name name); diff --git a/usr/src/cmd/make/lib/mksh/dosys.cc b/usr/src/cmd/make/lib/mksh/dosys.cc index 5ff0ab73b1..08ea785b73 100644 --- a/usr/src/cmd/make/lib/mksh/dosys.cc +++ b/usr/src/cmd/make/lib/mksh/dosys.cc @@ -65,7 +65,7 @@ /* * File table of contents */ -static Boolean exec_vp(register char *name, register char **argv, char **envp, register Boolean ignore_error, pathpt vroot_path); +static Boolean exec_vp(char *name, char **argv, char **envp, Boolean ignore_error, pathpt vroot_path); /* * Workaround for NFS bug. Sometimes, when running 'open' on a remote @@ -145,15 +145,15 @@ redirect_io(char *stdout_file, char *stderr_file) * shell_name The Name "SHELL", used to get the path to shell */ int -doshell(wchar_t *command, register Boolean ignore_error, char *stdout_file, char *stderr_file, int nice_prio) +doshell(wchar_t *command, Boolean ignore_error, char *stdout_file, char *stderr_file, int nice_prio) { char *argv[6]; int argv_index = 0; int cmd_argv_index; int length; char nice_prio_buf[MAXPATHLEN]; - register Name shell = getvar(shell_name); - register char *shellname; + Name shell = getvar(shell_name); + char *shellname; char *tmp_mbs_buffer; @@ -237,10 +237,10 @@ doshell(wchar_t *command, register Boolean ignore_error, char *stdout_file, char * vroot_path The path used by the vroot package */ static Boolean -exec_vp(register char *name, register char **argv, char **envp, register Boolean ignore_error, pathpt vroot_path) +exec_vp(char *name, char **argv, char **envp, Boolean ignore_error, pathpt vroot_path) { - register Name shell = getvar(shell_name); - register char *shellname; + Name shell = getvar(shell_name); + char *shellname; char *shargv[4]; Name tmp_shell; @@ -310,15 +310,15 @@ exec_vp(register char *name, register char **argv, char **envp, register Boolean * filter_stderr If -X is on we redirect stderr */ int -doexec(register wchar_t *command, register Boolean ignore_error, char *stdout_file, char *stderr_file, pathpt vroot_path, int nice_prio) +doexec(wchar_t *command, Boolean ignore_error, char *stdout_file, char *stderr_file, pathpt vroot_path, int nice_prio) { int arg_count = 5; char **argv; int length; char nice_prio_buf[MAXPATHLEN]; - register char **p; + char **p; wchar_t *q; - register wchar_t *t; + wchar_t *t; char *tmp_mbs_buffer; /* @@ -430,14 +430,14 @@ doexec(register wchar_t *command, register Boolean ignore_error, char *stdout_fi * filter_stderr Set if -X is on */ Boolean -await(register Boolean ignore_error, register Boolean silent_error, Name target, wchar_t *command, pid_t running_pid, void *xdrs_p, int job_msg_id) +await(Boolean ignore_error, Boolean silent_error, Name target, wchar_t *command, pid_t running_pid, void *xdrs_p, int job_msg_id) { int status; char *buffer; int core_dumped; int exit_status; FILE *outfp; - register pid_t pid; + pid_t pid; struct stat stat_buff; int termination_signal; char tmp_buf[MAXPATHLEN]; @@ -524,14 +524,14 @@ await(register Boolean ignore_error, register Boolean silent_error, Name target, * Global variables used: */ void -sh_command2string(register String command, register String destination) +sh_command2string(String command, String destination) { - register FILE *fd; - register int chr; - int status; - Boolean command_generated_output = false; + FILE *fd; + int chr; + int status; + Boolean command_generated_output = false; - command->text.p = (int) nul_char; + command->text.p = NULL; WCSTOMBS(mbs_buffer, command->buffer.start); if ((fd = popen(mbs_buffer, "r")) == NULL) { WCSTOMBS(mbs_buffer, command->buffer.start); diff --git a/usr/src/cmd/make/lib/mksh/misc.cc b/usr/src/cmd/make/lib/mksh/misc.cc index 4765102500..fe14fd874d 100644 --- a/usr/src/cmd/make/lib/mksh/misc.cc +++ b/usr/src/cmd/make/lib/mksh/misc.cc @@ -102,18 +102,16 @@ static void expand_string(register String string, register int length); * Global variables used: */ char * -getmem(register int size) +getmem(size_t size) { - register char *result = (char *) malloc((unsigned) size); + char *result = (char *)malloc(size); if (result == NULL) { - char buf[FATAL_ERROR_MSG_SIZE]; - sprintf(buf, "*** Error: malloc(%d) failed: %s\n", size, strerror(errno)); - strcat(buf, gettext("mksh: Fatal error: Out of memory\n")); - fputs(buf, stderr); - exit_status = 1; + (void) fprintf(stderr, "*** Error: malloc(%d) failed: %s\n%s", + size, strerror(errno), + gettext("mksh: Fatal error: Out of memory\n")); exit(1); } - return result; + return (result); } /* @@ -338,26 +336,22 @@ setup_char_semantics(void) * * Parameters: * errnum The number of the error we want to describe - * - * Global variables used: - * sys_errlist A vector of error messages - * sys_nerr The size of sys_errlist */ char * errmsg(int errnum) { - - extern int sys_nerr; - char *errbuf; - - if ((errnum < 0) || (errnum > sys_nerr)) { - errbuf = getmem(6+1+11+1); - (void) sprintf(errbuf, gettext("Error %d"), errnum); - return errbuf; - } else { - return strerror(errnum); - + char *msg; + char *errbuf; + + errno = 0; + msg = strerror(errnum); + if (errno == EINVAL) { + size_t size = 6 + 1 + 11 + 1; + errbuf = getmem(size); + (void) snprintf(errbuf, size, gettext("Error %d"), errnum); + return (errbuf); } + return (msg); } static char static_buf[MAXPATHLEN*3]; diff --git a/usr/src/cmd/make/lib/vroot/lock.cc b/usr/src/cmd/make/lib/vroot/lock.cc index d3389ce588..c142e3669e 100644 --- a/usr/src/cmd/make/lib/vroot/lock.cc +++ b/usr/src/cmd/make/lib/vroot/lock.cc @@ -36,10 +36,8 @@ #include <errno.h> /* errno */ #include <libintl.h> -extern char *sys_errlist[]; -extern int sys_nerr; - -static void file_lock_error(char *msg, char *file, char *str, int arg1, int arg2); +static void file_lock_error(char *msg, char *file, const char *str, + char *arg1, char * arg2); #define BLOCK_INTERUPTS sigfillset(&newset) ; \ sigprocmask(SIG_SETMASK, &newset, &oldset) @@ -108,8 +106,8 @@ file_lock(char *name, char *lockname, int *file_locked, int timeout) UNBLOCK_INTERUPTS; if (errno != EEXIST) { - file_lock_error(msg, name, (char *)"symlink(%s, %s)", - (int) name, (int) lockname); + file_lock_error(msg, name, "symlink(%s, %s)", + name, lockname); fprintf(stderr, "%s", msg); return errno; } @@ -129,15 +127,15 @@ file_lock(char *name, char *lockname, int *file_locked, int timeout) if ((counter > 5) && (!printed_warning)) { /* Print waiting message after 5 secs */ (void) getcwd(msg, MAXPATHLEN); - fprintf(stderr, - gettext("file_lock: file %s is already locked.\n"), - name); - fprintf(stderr, - gettext("file_lock: will periodically check the lockfile %s for two minutes.\n"), - lockname); - fprintf(stderr, - gettext("Current working directory %s\n"), - msg); + fprintf(stderr, gettext( + "file_lock: file %s is already locked.\n"), + name); + fprintf(stderr, gettext( + "file_lock: will periodically check the " + "lockfile %s for two minutes.\n"), + lockname); + fprintf(stderr, gettext( + "Current working directory %s\n"), msg); printed_warning = 1; } @@ -157,19 +155,23 @@ file_lock(char *name, char *lockname, int *file_locked, int timeout) * Format a message telling why the lock could not be created. */ static void -file_lock_error(char *msg, char *file, char *str, int arg1, int arg2) +file_lock_error(char *msg, char *file, const char *str, char *arg1, char *arg2) { - int len; + int len, err; + char *ptr; sprintf(msg, gettext("Could not lock file `%s'; "), file); len = strlen(msg); sprintf(&msg[len], str, arg1, arg2); strcat(msg, gettext(" failed - ")); - if (errno < sys_nerr) { - strcat(msg, strerror(errno)); + + err = errno; + errno = 0; + ptr = strerror(err); + if (errno != EINVAL) { + strcat(msg, ptr); } else { len = strlen(msg); - sprintf(&msg[len], "errno %d", errno); + sprintf(&msg[len], "errno %d", err); } } - |