diff options
-rw-r--r-- | tools/mkimage/patches/010-freebsd-ulong-fix.patch | 13 | ||||
-rw-r--r-- | tools/mkimage/patches/100-portability.patch | 46 |
2 files changed, 59 insertions, 0 deletions
diff --git a/tools/mkimage/patches/010-freebsd-ulong-fix.patch b/tools/mkimage/patches/010-freebsd-ulong-fix.patch new file mode 100644 index 0000000000..32fa074533 --- /dev/null +++ b/tools/mkimage/patches/010-freebsd-ulong-fix.patch @@ -0,0 +1,13 @@ +--- a/include/image.h ++++ b/include/image.h +@@ -50,6 +50,10 @@ + + #endif /* USE_HOSTCC */ + ++#ifndef ulong ++#define ulong unsigned long ++#endif ++ + #if defined(CONFIG_FIT) + #include <fdt.h> + #include <libfdt.h> diff --git a/tools/mkimage/patches/100-portability.patch b/tools/mkimage/patches/100-portability.patch new file mode 100644 index 0000000000..052a584cbb --- /dev/null +++ b/tools/mkimage/patches/100-portability.patch @@ -0,0 +1,46 @@ +--- a/tools/kwbimage.c ++++ b/tools/kwbimage.c +@@ -206,6 +206,30 @@ INVL_DATA: + exit (EXIT_FAILURE); + } + ++#ifndef __GLIBC__ ++#ifndef __FreeBSD__ ++static ssize_t ++getline(char **line, size_t *len, FILE *fd) ++{ ++ char *tmp; ++ int tmplen; ++ ++ tmp = fgetln(fd, &tmplen); ++ if (!tmp) ++ return -1; ++ ++ if (!*line || tmplen > *len) { ++ *len = tmplen + 1; ++ *line = realloc(*line, *len); ++ } ++ ++ strncpy(*line, tmp, tmplen); ++ line[tmplen] = 0; ++ return tmplen; ++} ++#endif ++#endif ++ + /* + * this function sets the kwbimage header by- + * 1. Abstracting input command line arguments data +--- a/include/image.h ++++ b/include/image.h +@@ -50,6 +50,10 @@ + + #endif /* USE_HOSTCC */ + ++#ifndef ulong ++#define ulong unsigned long ++#endif ++ + #if defined(CONFIG_FIT) + #include <fdt.h> + #include <libfdt.h> |