Portability patch from rfelker. The bb_asprintf.c thing needs an eventual follow up in platform.h to set the #ifdef, but the workaround works for everybody, so...
This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)
No binary (build failed)
—
(log yok)
| @@ -434,7 +434,7 @@ static char *parse_cmd_args(sed_cmd_t *sed_cmd, char *cmdstr) | |
| while(isspace(*cmdstr)) cmdstr++; | |
| length = strcspn(cmdstr, semicolon_whitespace); | |
| if (length) { | |
| - | sed_cmd->string = strndup(cmdstr, length); |
| + | sed_cmd->string = bb_xstrndup(cmdstr, length); |
| cmdstr += length; | |
| } | |
| } | |
| @@ -11,7 +11,7 @@ | |
| #include <features.h> | |
| #include <sys/types.h> | |
| #include <sys/socket.h> | |
| - | #include <arpa/inet.h> |
| + | #include <netinet/in.h> |
| extern const char bb_INET_default[]; /* = "default" */ | |
| @@ -20,6 +20,7 @@ | |
| #include <stdint.h> | |
| #include <netdb.h> | |
| + | #include <netinet/in.h> |
| #include <features.h> | |
| @@ -13,9 +13,19 @@ char *bb_xasprintf(const char *format, ...) | |
| int r; | |
| char *string_ptr; | |
| + | #ifdef HAVE_GNU_EXTENSIONS |
| va_start(p, format); | |
| r = vasprintf(&string_ptr, format, p); | |
| va_end(p); | |
| + | #else |
| + | va_start(p, format); |
| + | r = vsnprintf(NULL, 0, format, p); |
| + | va_end(p); |
| + | string_ptr = xmalloc(r+1); |
| + | va_start(p, format); |
| + | r = vsnprintf(string_ptr, r+1, format, p); |
| + | va_end(p); |
| + | #endif |
| if (r < 0) { | |
| bb_perror_msg_and_die("bb_xasprintf"); | |