summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Config.in6
-rw-r--r--Makefile5
-rw-r--r--mk/build.mk3
-rw-r--r--scripts/scan-tools.sh6
-rw-r--r--target/linux/patches/2.6.32/cygwin-compat.patch52
5 files changed, 14 insertions, 58 deletions
diff --git a/Config.in b/Config.in
index 8970fc779..298cb2a10 100644
--- a/Config.in
+++ b/Config.in
@@ -110,7 +110,11 @@ config ADK_HOST_OPENBSD
boolean
config ADK_HOST_NETBSD
- prompt "OpenBSD"
+ prompt "NetBSD"
+ boolean
+
+config ADK_HOST_CYGWIN
+ prompt "Cygwin"
boolean
endchoice
diff --git a/Makefile b/Makefile
index 6a5609fd2..e5d0280dd 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,8 @@ CC?= gcc
GMAKE?= $(PWD)/scripts/make
GMAKE_FMK= ${GMAKE} -f $(PWD)/mk/build.mk
GMAKE_INV= ${GMAKE_FMK} --no-print-directory
-_UNLIMIT= ulimit -dS $$(ulimit -dH);
+
+_UNLIMIT= ulimit -dS $$(ulimit -dH 2>/dev/null ) 2>/dev/null;
all: .prereq_done
@${_UNLIMIT} ${GMAKE_INV} all
@@ -160,7 +161,7 @@ NO_ERROR=0
fi
@echo "TOPDIR:=$$(readlink -nf . 2>/dev/null || pwd -P)" >prereq.mk
@echo "BASH:=$$(which bash)" >>prereq.mk
- @if [ -z "$$(which gmake)" ]; then \
+ @if [ -z "$$(which gmake 2>/dev/null )" ]; then \
echo "GMAKE:=$$(which make)" >>prereq.mk ;\
else \
echo "GMAKE:=$$(which gmake)" >>prereq.mk ;\
diff --git a/mk/build.mk b/mk/build.mk
index 145856d6d..f3c0aec23 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -240,6 +240,9 @@ endif
ifeq (${OStype},NetBSD)
@echo ADK_HOST_NETBSD=y > $(TOPDIR)/.defconfig
endif
+ifneq (,$(filter CYGWIN%,${OStype}))
+ @echo ADK_HOST_CYGWIN=y > $(TOPDIR)/.defconfig
+endif
@if [ ! -z "$(TARGET)" ];then \
grep "^config" target/Config.in \
|grep -i "$(TARGET)" \
diff --git a/scripts/scan-tools.sh b/scripts/scan-tools.sh
index ef6d7babb..70547394e 100644
--- a/scripts/scan-tools.sh
+++ b/scripts/scan-tools.sh
@@ -5,10 +5,10 @@ shopt -s extglob
topdir=$(pwd)
opath=$PATH
out=0
-if [ -z $(which gmake) ];then
- makecmd=$(which make)
+if [ -z $(which gmake 2>/dev/null ) ];then
+ makecmd=$(which make 2>/dev/null )
else
- makecmd=$(which gmake)
+ makecmd=$(which gmake 2>/dev/null )
fi
if [[ $NO_ERROR != @(0|1) ]]; then
diff --git a/target/linux/patches/2.6.32/cygwin-compat.patch b/target/linux/patches/2.6.32/cygwin-compat.patch
index 8d087dddf..17258e565 100644
--- a/target/linux/patches/2.6.32/cygwin-compat.patch
+++ b/target/linux/patches/2.6.32/cygwin-compat.patch
@@ -12,55 +12,3 @@ diff -Nur linux-2.6.30.orig/scripts/mod/file2alias.c linux-2.6.30/scripts/mod/fi
+#endif
typedef uint16_t __u16;
typedef unsigned char __u8;
-
-diff -Nur linux-2.6.30.orig/scripts/mod/modpost.h linux-2.6.30/scripts/mod/modpost.h
---- linux-2.6.30.orig/scripts/mod/modpost.h 2009-06-10 05:05:27.000000000 +0200
-+++ linux-2.6.30/scripts/mod/modpost.h 2009-06-11 09:17:10.000000000 +0200
-@@ -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
-@@ -19,13 +24,17 @@
- #define Elf_Addr Elf32_Addr
- #define Elf_Sword Elf64_Sword
- #define Elf_Section Elf32_Half
-+#ifndef __CYGWIN__
- #define ELF_ST_BIND ELF32_ST_BIND
- #define ELF_ST_TYPE ELF32_ST_TYPE
-+#endif
-
- #define Elf_Rel Elf32_Rel
- #define Elf_Rela Elf32_Rela
-+#ifndef __CYGWIN__
- #define ELF_R_SYM ELF32_R_SYM
- #define ELF_R_TYPE ELF32_R_TYPE
-+#endif
- #else
-
- #define Elf_Ehdr Elf64_Ehdr
-@@ -43,6 +52,17 @@
- #define ELF_R_TYPE ELF64_R_TYPE
- #endif
-
-+#define R_386_32 1 /* Direct 32 bit */
-+#define R_386_PC32 2 /* PC relative 32 bit */
-+
-+#define R_ARM_PC24 1 /* PC relative 26 bit branch */
-+#define R_ARM_ABS32 2 /* Direct 32 bit */
-+
-+#define R_MIPS_32 2 /* Direct 32 bit */
-+#define R_MIPS_26 4 /* Direct 26 bit shifted */
-+#define R_MIPS_HI16 5 /* High 16 bit */
-+#define R_MIPS_LO16 6 /* Low 16 bit */
-+
- /* The 64-bit MIPS ELF ABI uses an unusual reloc format. */
- typedef struct
- {