Hi Wolfgang, On Sat, 2009-04-04 at 01:20 +0200, Wolfgang Denk wrote: > Dear Peter Tyser, > > In message <1236988492-21295-28-git-send-email-pty...@xes-inc.com> you wrote: > > 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 <pty...@xes-inc.com> > > --- > > README | 10 ++++++ > > include/image.h | 2 + > > include/libfdt_env.h | 12 +++++++ > > tools/Makefile | 23 ++++++++++---- > > tools/mingw_support.c | 79 > > +++++++++++++++++++++++++++++++++++++++++++++++++ > > tools/mingw_support.h | 51 +++++++++++++++++++++++++++++++ > > tools/mkimage.h | 5 +++ > > tools/os_support.c | 24 +++++++++++++++ > > tools/os_support.h | 29 ++++++++++++++++++ > > tools/ubsha1.c | 3 ++ > > 10 files changed, 231 insertions(+), 7 deletions(-) > > create mode 100644 tools/mingw_support.c > > create mode 100644 tools/mingw_support.h > > create mode 100644 tools/os_support.c > > create mode 100644 tools/os_support.h > > I'm not happy about this os_support thingy, especially since it will > always be compiled, even if not needed in 99.99% of the cases. Maybe > you have a better idea and can send a cleanup-patch?
The 2 options that come to mind are: 1. Keep the current method of unconditionally compiling os_support.c, which will in turn include any os-specific files. 2. Move the logic of determining which os-specific files are compiled into the Makefile. Something like: ifneq (,$(findstring WIN32 ,$(shell $(HOSTCC) -E -dM -xc /dev/null))) SFX = .exe +OS_SUPPORT_FILES = mingw_support.c else SFX = +OS_SUPPORT_FILES = endif and then replace references of "os_support.c" with "$(OS_SUPPORT_FILES). (Or something along those lines). #1 is ugly in that 99.99% of the time an empty os_support.c file is processed. #2 is ugly in that the Makefile method to determine a target OS is somewhat hokey and will only get hokier if/when additional OS targets are supported. I'd vote for #1 as I think the wasted time of processing os_support.c is a drop in the bucket and it seems a bit cleaner than hacking up the Makefile. If others have any clever ideas let me know. Best, Peter _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot