Add support for building native win32 tools

Add support for compiling the host tools in the tools directory using
the MinGW toolchain.  This produces executables which can be used on
standard Windows computers without requiring cygwin.

One must specify the MinGW compiler and strip utilities as if they
were the host toolchain in order to build win32 executables, eg:

make HOSTCC=i586-mingw32msvc-gcc HOSTSTRIP=i586-mingw32msvc-strip tools

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
This commit is contained in:
Peter Tyser 2009-03-13 18:54:51 -05:00 committed by Wolfgang Denk
parent e50abf662e
commit 2f8d396b93
10 changed files with 232 additions and 8 deletions

View file

@ -24,8 +24,13 @@
#ifdef USE_HOSTCC
#include <stdint.h>
#include <string.h>
#ifdef __MINGW32__
#include <linux/types.h>
#include <linux/byteorder/swab.h>
#else
#include <endian.h>
#include <byteswap.h>
#endif /* __MINGW32__ */
#else
#include <linux/string.h>
#include <linux/types.h>
@ -36,10 +41,17 @@
extern struct fdt_header *working_fdt; /* Pointer to the working fdt */
#if __BYTE_ORDER == __LITTLE_ENDIAN
#ifdef __MINGW32__
#define fdt32_to_cpu(x) ___swab32(x)
#define cpu_to_fdt32(x) ___swab32(x)
#define fdt64_to_cpu(x) ___swab64(x)
#define cpu_to_fdt64(x) ___swab64(x)
#else
#define fdt32_to_cpu(x) bswap_32(x)
#define cpu_to_fdt32(x) bswap_32(x)
#define fdt64_to_cpu(x) bswap_64(x)
#define cpu_to_fdt64(x) bswap_64(x)
#endif
#else
#define fdt32_to_cpu(x) (x)
#define cpu_to_fdt32(x) (x)