Re: RE : Building kernel 2.6.21.3 for arm on cygwin

From: Tom
Date: Mon Jun 04 2007 - 14:44:34 EST


Hi Sam


enclosed is the 'k_smf.patch' which modifies three files to enable the kernel 2.6.21.3 to be built under cygwin:
host: cygwin 1.5.24, hostcc= gcc 3.4.4
cross: arm-linux-uclibcgnueabi-gcc (GCC) 4.1.2
cmd: make ARCH=arm CROSS_COMPILE=arm-linux- \
HOST_LOADLIBES="-lcurses -lintl" at91rm9200dk_defconfig

I verified that this does not break building on a linux-host on this config:
host: FC5, gcc 4.1.1-1
cross: arm-none-linux-gnueabi-gcc 4.1.1
cmd: make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-


Let me know if I can help any further.
Tom


k_smf.patch:
------------
diff -Naur -r o21.1/scripts/mod/file2alias.c
2.6.21.1/scripts/mod/file2alias.c
--- o21.1/scripts/mod/file2alias.c 2007-04-27 14:49:26.000000000
-0700
+++ 2.6.21.1/scripts/mod/file2alias.c 2007-05-29 20:35:01.209115300
-0700
@@ -29,7 +29,11 @@

#include <ctype.h>

+#ifdef __CYGWIN__
+typedef __uint32_t __u32;
+#else
typedef uint32_t __u32;
+#endif
typedef uint16_t __u16;
typedef unsigned char __u8;

diff -Naur -r o21.1/scripts/mod/modpost.h 2.6.21.1/scripts/mod/modpost.h
--- o21.1/scripts/mod/modpost.h 2007-04-27 14:49:26.000000000 -0700
+++ 2.6.21.1/scripts/mod/modpost.h 2007-05-29 20:35:01.599732800
-0700
@@ -9,6 +9,11 @@
#include <unistd.h>
#include <elf.h>

+#ifdef __CYGWIN__
+typedef uint16_t Elf32_Section;
+typedef uint16_t Elf64_Section;
+#endif
+
#include "elfconfig.h"

#if KERNEL_ELFCLASS == ELFCLASS32

diff -Naur -r o21.1/scripts/mod/sumversion.c
2.6.21.1/scripts/mod/sumversion.c
--- o21.1/scripts/mod/sumversion.c 2007-04-27 14:49:26.000000000
-0700
+++ 2.6.21.1/scripts/mod/sumversion.c 2007-05-29 20:35:01.677856300
-0700
@@ -7,6 +7,7 @@
#include <ctype.h>
#include <errno.h>
#include <string.h>
+#include <limits.h>
#include "modpost.h"

/*

linux host error (old gcc!):
----------------------------

CC mm/bootmem.o
CC mm/filemap.o
CC mm/mempool.o
CC mm/oom_kill.o
CC mm/fadvise.o
CC mm/page_alloc.o
mm/page_alloc.c:684: warning: `setup_nr_node_ids' defined but not used
/tmp/ccj7iwRd.s: Assembler messages:
/tmp/ccj7iwRd.s:3089: Error: .err encountered
make[1]: *** [mm/page_alloc.o] Error 1
make: *** [mm] Error 2



arm-linux-gcc (GCC) 3.3.2 20030820 (prerelease)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/