Skip to content

Commit

Permalink
kernel: fix portability issues on the x86 specific relocs host tool, …
Browse files Browse the repository at this point in the history
…fixes build on mac os x

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32783 3c298f89-4303-0410-b956-a3cf2f4a3e73
  • Loading branch information
nbd committed Jul 20, 2012
1 parent ec42626 commit 02d1617
Show file tree
Hide file tree
Showing 4 changed files with 3,031 additions and 0 deletions.
1 change: 1 addition & 0 deletions include/kernel-defaults.mk
Expand Up @@ -6,6 +6,7 @@
#

KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
CROSS_COMPILE="$(KERNEL_CROSS)" \
ARCH="$(LINUX_KARCH)" \
KBUILD_HAVE_NLS=no \
Expand Down
22 changes: 22 additions & 0 deletions target/linux/generic/patches-3.3/212-x86_reloc_portability.patch
@@ -0,0 +1,22 @@
--- a/arch/x86/tools/relocs.c
+++ b/arch/x86/tools/relocs.c
@@ -10,7 +10,18 @@
#define USE_BSD
#include <endian.h>
#include <regex.h>
-#include <tools/le_byteshift.h>
+
+static inline void __put_unaligned_le16(uint16_t val, uint8_t *p)
+{
+ *p++ = val;
+ *p++ = val >> 8;
+}
+
+static inline void put_unaligned_le32(uint32_t val, uint8_t *p)
+{
+ __put_unaligned_le16(val >> 16, p + 2);
+ __put_unaligned_le16(val, p);
+}

static void die(char *fmt, ...);

1 change: 1 addition & 0 deletions toolchain/kernel-headers/Makefile
Expand Up @@ -36,6 +36,7 @@ HOST_EXTRACFLAGS=
LINUX_HAS_HEADERS_INSTALL:=y

KMAKE := $(MAKE) -C $(HOST_BUILD_DIR) \
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
ARCH=$(LINUX_KARCH) \
CC="$(KERNEL_CC)" \
CFLAGS="$(TARGET_CFLAGS)" \
Expand Down

0 comments on commit 02d1617

Please sign in to comment.