This patch contains a set of small fixes to allow the kernel to build under the Cygwin environment, which is unfortunately used by more people than one would think in the embedded world. :(
Signed-off-by: Deepak Saxena <[EMAIL PROTECTED]> --- lib/gen_crc32table.c | 2 ++ scripts/kconfig/Makefile | 6 ++++++ scripts/kconfig/lxdialog/check-lxdialog.sh | 4 ++++ scripts/mod/file2alias.c | 4 ++++ scripts/mod/mk_elfconfig.c | 4 ++++ scripts/mod/modpost.h | 4 ++++ scripts/mod/sumversion.c | 6 +++++- 7 files changed, 29 insertions(+), 1 deletion(-) diff --git a/lib/gen_crc32table.c b/lib/gen_crc32table.c index bea5d97..ce447ff 100644 --- a/lib/gen_crc32table.c +++ b/lib/gen_crc32table.c @@ -1,6 +1,8 @@ #include <stdio.h> #include "crc32defs.h" +#ifndef __CYGWIN__ #include <inttypes.h> +#endif #define ENTRIES_PER_LINE 4 diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index 7e7e147..ca57efe 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile @@ -161,6 +161,12 @@ HOSTLOADLIBES_gconf = `pkg-config --libs HOSTCFLAGS_gconf.o = `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \ -D LKC_DIRECT_LINK +HOST_OS := $(shell uname -o) +ifeq ($(HOST_OS),Cygwin) +HOSTLOADLIBES_mconf = -lintl +HOSTLOADLIBES_conf = -lintl +endif + $(obj)/qconf.o: $(obj)/.tmp_qtcheck ifeq ($(qconf-target),1) diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh b/scripts/kconfig/lxdialog/check-lxdialog.sh index 120d624..c44b559 100644 --- a/scripts/kconfig/lxdialog/check-lxdialog.sh +++ b/scripts/kconfig/lxdialog/check-lxdialog.sh @@ -4,6 +4,10 @@ # Check ncurses compatibility # What library to link ldflags() { + if [ "`uname -o`" == "Cygwin" ]; then + echo '-lintl -lncurses' + exit + fi $cc -print-file-name=libncursesw.so | grep -q / if [ $? -eq 0 ]; then echo '-lncursesw' diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index f61c9cc..479293f 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -29,7 +29,11 @@ #endif #include <ctype.h> +#if defined(__CYGWIN__) +typedef __uint32_t __u32; +#else typedef uint32_t __u32; +#endif typedef uint16_t __u16; typedef unsigned char __u8; diff --git a/scripts/mod/mk_elfconfig.c b/scripts/mod/mk_elfconfig.c index 725d61c..4908f7a 100644 --- a/scripts/mod/mk_elfconfig.c +++ b/scripts/mod/mk_elfconfig.c @@ -1,7 +1,11 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#ifdef __CYGWIN__ +#include <libelf.h> +#else #include <elf.h> +#endif int main(int argc, char **argv) diff --git a/scripts/mod/modpost.h b/scripts/mod/modpost.h index d398c61..7cdf2c6 100644 --- a/scripts/mod/modpost.h +++ b/scripts/mod/modpost.h @@ -7,7 +7,11 @@ #include <sys/stat.h> #include <sys/mman.h> #include <fcntl.h> #include <unistd.h> +#ifdef __CYGWIN__ +#include <libelf.h> +#else #include <elf.h> +#endif #include "elfconfig.h" diff --git a/scripts/mod/sumversion.c b/scripts/mod/sumversion.c index 8a28756..4404f87 100644 --- a/scripts/mod/sumversion.c +++ b/scripts/mod/sumversion.c @@ -1,7 +1,11 @@ +#if defined(__sun__) #include <netinet/in.h> -#ifdef __sun__ #include <inttypes.h> +#elif defined(__CYGWIN__) +#include <asm/byteorder.h> /* For ntohl/htonl */ +#include <limits.h> #else +#include <netinet/in.h> #include <stdint.h> #endif #include <ctype.h> -- Deepak Saxena - [EMAIL PROTECTED] - http://www.plexity.net In the end, they will not say, "those were dark times," they will ask "why were their poets silent?" - Bertolt Brecht - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/