tools/kwbimage.c: fix build on darwin
kwbimage uses get_current_dir_name(3) which is a gnu extension and not available on darwin host. Fix this by converting to portable getcwd(3) function. This patch fixes the following error: ---8<--- HOSTCC tools/kwbimage.o tools/kwbimage.c:399:16: warning: implicit declaration of function 'get_current_dir_name' is invalid in C99 [-Wimplicit-function-declaration] char *cwd = get_current_dir_name(); ^ tools/kwbimage.c:399:10: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] char *cwd = get_current_dir_name(); ^ ~~~~~~~~~~~~~~~~~~~~~~ 2 warnings generated. ... Undefined symbols for architecture x86_64: "_get_current_dir_name", referenced from: _image_headersz_v1 in kwbimage.o ld: symbol(s) not found for architecture x86_64 --->8--- Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Cc: Stefan Roese <sr@denx.de> Acked-by: Stefan Roese <sr@denx.de> [agust: fixed getcwd() return warning] Signed-off-by: Anatolij Gustschin <agust@denx.de>
This commit is contained in:
parent
571bdf16a7
commit
e5f1a586a7
@ -12,6 +12,7 @@
|
||||
*/
|
||||
|
||||
#include "imagetool.h"
|
||||
#include <limits.h>
|
||||
#include <image.h>
|
||||
#include <stdint.h>
|
||||
#include "kwbimage.h"
|
||||
@ -396,13 +397,20 @@ static size_t image_headersz_v1(struct image_tool_params *params,
|
||||
|
||||
ret = stat(binarye->binary.file, &s);
|
||||
if (ret < 0) {
|
||||
char *cwd = get_current_dir_name();
|
||||
char cwd[PATH_MAX];
|
||||
char *dir = cwd;
|
||||
|
||||
memset(cwd, 0, sizeof(cwd));
|
||||
if (!getcwd(cwd, sizeof(cwd))) {
|
||||
dir = "current working directory";
|
||||
perror("getcwd() failed");
|
||||
}
|
||||
|
||||
fprintf(stderr,
|
||||
"Didn't find the file '%s' in '%s' which is mandatory to generate the image\n"
|
||||
"This file generally contains the DDR3 training code, and should be extracted from an existing bootable\n"
|
||||
"image for your board. See 'kwbimage -x' to extract it from an existing image.\n",
|
||||
binarye->binary.file, cwd);
|
||||
free(cwd);
|
||||
binarye->binary.file, dir);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user