From 5cf1c57687baa76f08e0f399a8028d1074d4cc70 Mon Sep 17 00:00:00 2001
From: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
Date: Fri, 26 Oct 2012 12:05:13 +0200
Subject: update to latest linux kernels

---
 Config.in                                          |   20 +-
 mk/kernel-ver.mk                                   |   22 +-
 package/jpeg/patches/patch-ltmain_sh               |    6 +-
 .../linux/patches/3.4.13/bsd-compatibility.patch   | 2512 ----------------
 target/linux/patches/3.4.13/cris-etrax.patch       |   12 -
 target/linux/patches/3.4.13/defaults.patch         |   22 -
 target/linux/patches/3.4.13/gemalto.patch          |   11 -
 target/linux/patches/3.4.13/lemote-rfkill.patch    |   21 -
 target/linux/patches/3.4.13/mmc-host.patch         |   36 -
 .../patches/3.4.13/module-alloc-size-check.patch   |   21 -
 target/linux/patches/3.4.13/non-static.patch       |   33 -
 target/linux/patches/3.4.13/sparc-include.patch    |   11 -
 target/linux/patches/3.4.13/startup.patch          |   20 -
 target/linux/patches/3.4.13/usb-defaults-off.patch |   32 -
 target/linux/patches/3.4.13/uuid.patch             |  263 --
 .../patches/3.4.13/vga-cons-default-off.patch      |   12 -
 target/linux/patches/3.4.13/wlan-cf.patch          |   11 -
 target/linux/patches/3.4.13/zlib-inflate.patch     |   12 -
 .../linux/patches/3.4.15/bsd-compatibility.patch   | 2512 ++++++++++++++++
 target/linux/patches/3.4.15/cris-etrax.patch       |   12 +
 target/linux/patches/3.4.15/defaults.patch         |   22 +
 target/linux/patches/3.4.15/gemalto.patch          |   11 +
 target/linux/patches/3.4.15/lemote-rfkill.patch    |   21 +
 target/linux/patches/3.4.15/mmc-host.patch         |   36 +
 .../patches/3.4.15/module-alloc-size-check.patch   |   21 +
 target/linux/patches/3.4.15/non-static.patch       |   33 +
 target/linux/patches/3.4.15/sparc-include.patch    |   11 +
 target/linux/patches/3.4.15/startup.patch          |   20 +
 target/linux/patches/3.4.15/usb-defaults-off.patch |   32 +
 target/linux/patches/3.4.15/uuid.patch             |  263 ++
 .../patches/3.4.15/vga-cons-default-off.patch      |   12 +
 target/linux/patches/3.4.15/wlan-cf.patch          |   11 +
 target/linux/patches/3.4.15/zlib-inflate.patch     |   12 +
 target/linux/patches/3.5.6/brcm.patch              |  467 ---
 target/linux/patches/3.5.6/bsd-compatibility.patch | 2512 ----------------
 target/linux/patches/3.5.6/cris-etrax.patch        |   12 -
 target/linux/patches/3.5.6/defaults.patch          |   22 -
 target/linux/patches/3.5.6/gemalto.patch           |   11 -
 target/linux/patches/3.5.6/lemote-rfkill.patch     |   21 -
 target/linux/patches/3.5.6/mmc-host.patch          |   36 -
 .../patches/3.5.6/module-alloc-size-check.patch    |   21 -
 target/linux/patches/3.5.6/mtd-rootfs.patch        |   26 -
 target/linux/patches/3.5.6/non-static.patch        |   33 -
 target/linux/patches/3.5.6/startup.patch           |   20 -
 target/linux/patches/3.5.6/usb-defaults-off.patch  |   20 -
 target/linux/patches/3.5.6/uuid.patch              |  263 --
 .../linux/patches/3.5.6/vga-cons-default-off.patch |   12 -
 target/linux/patches/3.5.6/wlan-cf.patch           |   11 -
 target/linux/patches/3.5.6/zlib-inflate.patch      |   12 -
 target/linux/patches/3.5.7/brcm.patch              |  467 +++
 target/linux/patches/3.5.7/bsd-compatibility.patch | 2512 ++++++++++++++++
 target/linux/patches/3.5.7/cris-etrax.patch        |   12 +
 target/linux/patches/3.5.7/defaults.patch          |   22 +
 target/linux/patches/3.5.7/gemalto.patch           |   11 +
 target/linux/patches/3.5.7/lemote-rfkill.patch     |   21 +
 target/linux/patches/3.5.7/mmc-host.patch          |   36 +
 .../patches/3.5.7/module-alloc-size-check.patch    |   21 +
 target/linux/patches/3.5.7/mtd-rootfs.patch        |   26 +
 target/linux/patches/3.5.7/non-static.patch        |   33 +
 target/linux/patches/3.5.7/startup.patch           |   20 +
 target/linux/patches/3.5.7/usb-defaults-off.patch  |   20 +
 target/linux/patches/3.5.7/uuid.patch              |  263 ++
 .../linux/patches/3.5.7/vga-cons-default-off.patch |   12 +
 target/linux/patches/3.5.7/wlan-cf.patch           |   11 +
 target/linux/patches/3.5.7/zlib-inflate.patch      |   12 +
 target/linux/patches/3.6.1/bsd-compatibility.patch | 2512 ----------------
 target/linux/patches/3.6.1/cris-etrax.patch        |   12 -
 target/linux/patches/3.6.1/defaults.patch          |   22 -
 target/linux/patches/3.6.1/gemalto.patch           |   11 -
 target/linux/patches/3.6.1/lemote-rfkill.patch     |   21 -
 target/linux/patches/3.6.1/mmc-host.patch          |   36 -
 .../patches/3.6.1/module-alloc-size-check.patch    |   21 -
 target/linux/patches/3.6.1/mtd-rootfs.patch        |   26 -
 target/linux/patches/3.6.1/non-static.patch        |   33 -
 target/linux/patches/3.6.1/startup.patch           |   20 -
 target/linux/patches/3.6.1/usb-defaults-off.patch  |   20 -
 target/linux/patches/3.6.1/uuid.patch              |  263 --
 .../linux/patches/3.6.1/vga-cons-default-off.patch |   12 -
 target/linux/patches/3.6.1/wlan-cf.patch           |   11 -
 target/linux/patches/3.6.1/zlib-inflate.patch      |   12 -
 target/linux/patches/3.6.3/bsd-compatibility.patch | 2512 ++++++++++++++++
 target/linux/patches/3.6.3/cris-etrax.patch        |   12 +
 target/linux/patches/3.6.3/defaults.patch          |   22 +
 target/linux/patches/3.6.3/gemalto.patch           |   11 +
 target/linux/patches/3.6.3/lemote-rfkill.patch     |   21 +
 target/linux/patches/3.6.3/mmc-host.patch          |   36 +
 .../patches/3.6.3/module-alloc-size-check.patch    |   21 +
 target/linux/patches/3.6.3/mtd-rootfs.patch        |   26 +
 target/linux/patches/3.6.3/non-static.patch        |   33 +
 target/linux/patches/3.6.3/startup.patch           |   20 +
 target/linux/patches/3.6.3/usb-defaults-off.patch  |   20 +
 target/linux/patches/3.6.3/uuid.patch              |  263 ++
 .../linux/patches/3.6.3/vga-cons-default-off.patch |   12 +
 target/linux/patches/3.6.3/wlan-cf.patch           |   11 +
 target/linux/patches/3.6.3/zlib-inflate.patch      |   12 +
 .../kernel-headers/patches/3.4.13/aufs2.patch      |  238 --
 .../patches/3.4.13/cleankernel.patch               |   11 -
 .../patches/3.4.13/etrax-header.patch              |   95 -
 .../patches/3.4.13/linux-gcc-check.patch           |   18 -
 .../kernel-headers/patches/3.4.13/microperl.patch  |   24 -
 .../kernel-headers/patches/3.4.13/mkpiggy.patch    |   28 -
 .../kernel-headers/patches/3.4.13/relocs.patch     | 3131 --------------------
 .../kernel-headers/patches/3.4.15/aufs2.patch      |  238 ++
 .../patches/3.4.15/cleankernel.patch               |   11 +
 .../patches/3.4.15/etrax-header.patch              |   95 +
 .../patches/3.4.15/linux-gcc-check.patch           |   18 +
 .../kernel-headers/patches/3.4.15/microperl.patch  |   24 +
 .../kernel-headers/patches/3.4.15/mkpiggy.patch    |   28 +
 .../kernel-headers/patches/3.4.15/relocs.patch     | 3131 ++++++++++++++++++++
 toolchain/kernel-headers/patches/3.5.6/aufs2.patch |  238 --
 .../kernel-headers/patches/3.5.6/cleankernel.patch |   11 -
 .../patches/3.5.6/etrax-header.patch               |   94 -
 .../patches/3.5.6/linux-gcc-check.patch            |   18 -
 .../kernel-headers/patches/3.5.6/microperl.patch   |   24 -
 .../kernel-headers/patches/3.5.6/mkpiggy.patch     |   28 -
 .../kernel-headers/patches/3.5.6/relocs.patch      | 3131 --------------------
 .../kernel-headers/patches/3.5.6/sortext.patch     |   22 -
 toolchain/kernel-headers/patches/3.5.7/aufs2.patch |  238 ++
 .../kernel-headers/patches/3.5.7/cleankernel.patch |   11 +
 .../patches/3.5.7/etrax-header.patch               |   94 +
 .../patches/3.5.7/linux-gcc-check.patch            |   18 +
 .../kernel-headers/patches/3.5.7/microperl.patch   |   24 +
 .../kernel-headers/patches/3.5.7/mkpiggy.patch     |   28 +
 .../kernel-headers/patches/3.5.7/relocs.patch      | 3131 ++++++++++++++++++++
 .../kernel-headers/patches/3.5.7/sortext.patch     |   22 +
 toolchain/kernel-headers/patches/3.6.1/aufs2.patch |  238 --
 .../kernel-headers/patches/3.6.1/cleankernel.patch |   11 -
 .../patches/3.6.1/etrax-header.patch               |   94 -
 .../patches/3.6.1/linux-gcc-check.patch            |   18 -
 .../kernel-headers/patches/3.6.1/microperl.patch   |   24 -
 .../kernel-headers/patches/3.6.1/mkpiggy.patch     |   28 -
 .../kernel-headers/patches/3.6.1/relocs.patch      | 3131 --------------------
 .../kernel-headers/patches/3.6.1/sortext.patch     |   22 -
 toolchain/kernel-headers/patches/3.6.3/aufs2.patch |  238 ++
 .../kernel-headers/patches/3.6.3/cleankernel.patch |   11 +
 .../patches/3.6.3/etrax-header.patch               |   94 +
 .../patches/3.6.3/linux-gcc-check.patch            |   18 +
 .../kernel-headers/patches/3.6.3/microperl.patch   |   24 +
 .../kernel-headers/patches/3.6.3/mkpiggy.patch     |   28 +
 .../kernel-headers/patches/3.6.3/relocs.patch      | 3131 ++++++++++++++++++++
 .../kernel-headers/patches/3.6.3/sortext.patch     |   22 +
 141 files changed, 20261 insertions(+), 20261 deletions(-)
 delete mode 100644 target/linux/patches/3.4.13/bsd-compatibility.patch
 delete mode 100644 target/linux/patches/3.4.13/cris-etrax.patch
 delete mode 100644 target/linux/patches/3.4.13/defaults.patch
 delete mode 100644 target/linux/patches/3.4.13/gemalto.patch
 delete mode 100644 target/linux/patches/3.4.13/lemote-rfkill.patch
 delete mode 100644 target/linux/patches/3.4.13/mmc-host.patch
 delete mode 100644 target/linux/patches/3.4.13/module-alloc-size-check.patch
 delete mode 100644 target/linux/patches/3.4.13/non-static.patch
 delete mode 100644 target/linux/patches/3.4.13/sparc-include.patch
 delete mode 100644 target/linux/patches/3.4.13/startup.patch
 delete mode 100644 target/linux/patches/3.4.13/usb-defaults-off.patch
 delete mode 100644 target/linux/patches/3.4.13/uuid.patch
 delete mode 100644 target/linux/patches/3.4.13/vga-cons-default-off.patch
 delete mode 100644 target/linux/patches/3.4.13/wlan-cf.patch
 delete mode 100644 target/linux/patches/3.4.13/zlib-inflate.patch
 create mode 100644 target/linux/patches/3.4.15/bsd-compatibility.patch
 create mode 100644 target/linux/patches/3.4.15/cris-etrax.patch
 create mode 100644 target/linux/patches/3.4.15/defaults.patch
 create mode 100644 target/linux/patches/3.4.15/gemalto.patch
 create mode 100644 target/linux/patches/3.4.15/lemote-rfkill.patch
 create mode 100644 target/linux/patches/3.4.15/mmc-host.patch
 create mode 100644 target/linux/patches/3.4.15/module-alloc-size-check.patch
 create mode 100644 target/linux/patches/3.4.15/non-static.patch
 create mode 100644 target/linux/patches/3.4.15/sparc-include.patch
 create mode 100644 target/linux/patches/3.4.15/startup.patch
 create mode 100644 target/linux/patches/3.4.15/usb-defaults-off.patch
 create mode 100644 target/linux/patches/3.4.15/uuid.patch
 create mode 100644 target/linux/patches/3.4.15/vga-cons-default-off.patch
 create mode 100644 target/linux/patches/3.4.15/wlan-cf.patch
 create mode 100644 target/linux/patches/3.4.15/zlib-inflate.patch
 delete mode 100644 target/linux/patches/3.5.6/brcm.patch
 delete mode 100644 target/linux/patches/3.5.6/bsd-compatibility.patch
 delete mode 100644 target/linux/patches/3.5.6/cris-etrax.patch
 delete mode 100644 target/linux/patches/3.5.6/defaults.patch
 delete mode 100644 target/linux/patches/3.5.6/gemalto.patch
 delete mode 100644 target/linux/patches/3.5.6/lemote-rfkill.patch
 delete mode 100644 target/linux/patches/3.5.6/mmc-host.patch
 delete mode 100644 target/linux/patches/3.5.6/module-alloc-size-check.patch
 delete mode 100644 target/linux/patches/3.5.6/mtd-rootfs.patch
 delete mode 100644 target/linux/patches/3.5.6/non-static.patch
 delete mode 100644 target/linux/patches/3.5.6/startup.patch
 delete mode 100644 target/linux/patches/3.5.6/usb-defaults-off.patch
 delete mode 100644 target/linux/patches/3.5.6/uuid.patch
 delete mode 100644 target/linux/patches/3.5.6/vga-cons-default-off.patch
 delete mode 100644 target/linux/patches/3.5.6/wlan-cf.patch
 delete mode 100644 target/linux/patches/3.5.6/zlib-inflate.patch
 create mode 100644 target/linux/patches/3.5.7/brcm.patch
 create mode 100644 target/linux/patches/3.5.7/bsd-compatibility.patch
 create mode 100644 target/linux/patches/3.5.7/cris-etrax.patch
 create mode 100644 target/linux/patches/3.5.7/defaults.patch
 create mode 100644 target/linux/patches/3.5.7/gemalto.patch
 create mode 100644 target/linux/patches/3.5.7/lemote-rfkill.patch
 create mode 100644 target/linux/patches/3.5.7/mmc-host.patch
 create mode 100644 target/linux/patches/3.5.7/module-alloc-size-check.patch
 create mode 100644 target/linux/patches/3.5.7/mtd-rootfs.patch
 create mode 100644 target/linux/patches/3.5.7/non-static.patch
 create mode 100644 target/linux/patches/3.5.7/startup.patch
 create mode 100644 target/linux/patches/3.5.7/usb-defaults-off.patch
 create mode 100644 target/linux/patches/3.5.7/uuid.patch
 create mode 100644 target/linux/patches/3.5.7/vga-cons-default-off.patch
 create mode 100644 target/linux/patches/3.5.7/wlan-cf.patch
 create mode 100644 target/linux/patches/3.5.7/zlib-inflate.patch
 delete mode 100644 target/linux/patches/3.6.1/bsd-compatibility.patch
 delete mode 100644 target/linux/patches/3.6.1/cris-etrax.patch
 delete mode 100644 target/linux/patches/3.6.1/defaults.patch
 delete mode 100644 target/linux/patches/3.6.1/gemalto.patch
 delete mode 100644 target/linux/patches/3.6.1/lemote-rfkill.patch
 delete mode 100644 target/linux/patches/3.6.1/mmc-host.patch
 delete mode 100644 target/linux/patches/3.6.1/module-alloc-size-check.patch
 delete mode 100644 target/linux/patches/3.6.1/mtd-rootfs.patch
 delete mode 100644 target/linux/patches/3.6.1/non-static.patch
 delete mode 100644 target/linux/patches/3.6.1/startup.patch
 delete mode 100644 target/linux/patches/3.6.1/usb-defaults-off.patch
 delete mode 100644 target/linux/patches/3.6.1/uuid.patch
 delete mode 100644 target/linux/patches/3.6.1/vga-cons-default-off.patch
 delete mode 100644 target/linux/patches/3.6.1/wlan-cf.patch
 delete mode 100644 target/linux/patches/3.6.1/zlib-inflate.patch
 create mode 100644 target/linux/patches/3.6.3/bsd-compatibility.patch
 create mode 100644 target/linux/patches/3.6.3/cris-etrax.patch
 create mode 100644 target/linux/patches/3.6.3/defaults.patch
 create mode 100644 target/linux/patches/3.6.3/gemalto.patch
 create mode 100644 target/linux/patches/3.6.3/lemote-rfkill.patch
 create mode 100644 target/linux/patches/3.6.3/mmc-host.patch
 create mode 100644 target/linux/patches/3.6.3/module-alloc-size-check.patch
 create mode 100644 target/linux/patches/3.6.3/mtd-rootfs.patch
 create mode 100644 target/linux/patches/3.6.3/non-static.patch
 create mode 100644 target/linux/patches/3.6.3/startup.patch
 create mode 100644 target/linux/patches/3.6.3/usb-defaults-off.patch
 create mode 100644 target/linux/patches/3.6.3/uuid.patch
 create mode 100644 target/linux/patches/3.6.3/vga-cons-default-off.patch
 create mode 100644 target/linux/patches/3.6.3/wlan-cf.patch
 create mode 100644 target/linux/patches/3.6.3/zlib-inflate.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/aufs2.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/cleankernel.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/etrax-header.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/linux-gcc-check.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/microperl.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/mkpiggy.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.4.13/relocs.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/aufs2.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/cleankernel.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/etrax-header.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/linux-gcc-check.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/microperl.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/mkpiggy.patch
 create mode 100644 toolchain/kernel-headers/patches/3.4.15/relocs.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/aufs2.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/cleankernel.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/etrax-header.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/linux-gcc-check.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/microperl.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/mkpiggy.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/relocs.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.5.6/sortext.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/aufs2.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/cleankernel.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/etrax-header.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/linux-gcc-check.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/microperl.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/mkpiggy.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/relocs.patch
 create mode 100644 toolchain/kernel-headers/patches/3.5.7/sortext.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/aufs2.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/cleankernel.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/etrax-header.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/linux-gcc-check.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/microperl.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/mkpiggy.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/relocs.patch
 delete mode 100644 toolchain/kernel-headers/patches/3.6.1/sortext.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/aufs2.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/cleankernel.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/etrax-header.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/linux-gcc-check.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/microperl.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/mkpiggy.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/relocs.patch
 create mode 100644 toolchain/kernel-headers/patches/3.6.3/sortext.patch

diff --git a/Config.in b/Config.in
index a43ea3e13..dfe3ff371 100644
--- a/Config.in
+++ b/Config.in
@@ -95,7 +95,7 @@ prompt "Kernel Version"
 depends on ADK_TOOLCHAIN_ONLY
 
 config ADK_KERNEL_VERSION_TOOLCHAIN
-	prompt "3.5.6"
+	prompt "3.6.3"
 	boolean
 	depends on ADK_TOOLCHAIN_ONLY
 
@@ -106,25 +106,25 @@ depends on !ADK_TOOLCHAIN_ONLY && !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_
 
 choice
 prompt "Kernel Version"
-config ADK_KERNEL_VERSION_3_6_1
-	prompt "3.6.1"
+config ADK_KERNEL_VERSION_3_6_3
+	prompt "3.6.3"
 	boolean
 
-config ADK_KERNEL_VERSION_3_5_6
-	prompt "3.5.6"
+config ADK_KERNEL_VERSION_3_5_7
+	prompt "3.5.7"
 	boolean
 
-config ADK_KERNEL_VERSION_3_4_13
-	prompt "3.4.13"
+config ADK_KERNEL_VERSION_3_4_15
+	prompt "3.4.15"
 	boolean
 
 endchoice
 
 config ADK_KERNEL_VERSION
 	string
-	default "3.4.13" if ADK_KERNEL_VERSION_3_4_13
-	default "3.5.6" if ADK_KERNEL_VERSION_3_5_6
-	default "3.6.1" if ADK_KERNEL_VERSION_3_6_1
+	default "3.4.15" if ADK_KERNEL_VERSION_3_4_15
+	default "3.5.7" if ADK_KERNEL_VERSION_3_5_7
+	default "3.6.3" if ADK_KERNEL_VERSION_3_6_3
 	help
 
 choice
diff --git a/mk/kernel-ver.mk b/mk/kernel-ver.mk
index f391653d1..87d8d77a4 100644
--- a/mk/kernel-ver.mk
+++ b/mk/kernel-ver.mk
@@ -1,24 +1,24 @@
 ifeq ($(ADK_KERNEL_VERSION_TOOLCHAIN),y)
-KERNEL_VERSION:=	3.5.6
+KERNEL_VERSION:=	3.6.3
 KERNEL_MOD_VERSION:=	$(KERNEL_VERSION)
 KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		becf09adcea30bcbdb43cdd60710d3cc
+KERNEL_MD5SUM:=		d4892b696956e5ce7b84464d721b6565
 endif
-ifeq ($(ADK_KERNEL_VERSION_3_6_1),y)
-KERNEL_VERSION:=	3.6.1
+ifeq ($(ADK_KERNEL_VERSION_3_6_3),y)
+KERNEL_VERSION:=	3.6.3
 KERNEL_MOD_VERSION:=	$(KERNEL_VERSION)
 KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		63bdd7d325afae1ac525586d24eb5399
+KERNEL_MD5SUM:=		d4892b696956e5ce7b84464d721b6565
 endif
-ifeq ($(ADK_KERNEL_VERSION_3_5_6),y)
-KERNEL_VERSION:=	3.5.6
+ifeq ($(ADK_KERNEL_VERSION_3_5_7),y)
+KERNEL_VERSION:=	3.5.7
 KERNEL_MOD_VERSION:=	$(KERNEL_VERSION)
 KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		becf09adcea30bcbdb43cdd60710d3cc
+KERNEL_MD5SUM:=		636d19c8686623776764227b6d3b911d
 endif
-ifeq ($(ADK_KERNEL_VERSION_3_4_13),y)
-KERNEL_VERSION:=	3.4.13
+ifeq ($(ADK_KERNEL_VERSION_3_4_15),y)
+KERNEL_VERSION:=	3.4.15
 KERNEL_MOD_VERSION:=	$(KERNEL_VERSION)
 KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		9c850d00c898ba792f29eb6a5973961c
+KERNEL_MD5SUM:=		8b526c3451b755ddfad7e9a1f40d9b16
 endif
diff --git a/package/jpeg/patches/patch-ltmain_sh b/package/jpeg/patches/patch-ltmain_sh
index 9ac6b5178..234778820 100644
--- a/package/jpeg/patches/patch-ltmain_sh
+++ b/package/jpeg/patches/patch-ltmain_sh
@@ -1,6 +1,6 @@
---- jpeg-8c.orig/ltmain.sh	2010-11-17 22:41:29.000000000 +0100
-+++ jpeg-8c/ltmain.sh	2011-04-07 11:28:48.000000000 +0200
-@@ -5840,7 +5840,7 @@ func_mode_link ()
+--- jpeg-8d.orig/ltmain.sh	2011-12-22 14:48:30.000000000 +0100
++++ jpeg-8d/ltmain.sh	2012-10-15 10:59:49.000000000 +0200
+@@ -5853,7 +5853,7 @@ func_mode_link ()
        # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
        -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
        -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
diff --git a/target/linux/patches/3.4.13/bsd-compatibility.patch b/target/linux/patches/3.4.13/bsd-compatibility.patch
deleted file mode 100644
index 9e91a62de..000000000
--- a/target/linux/patches/3.4.13/bsd-compatibility.patch
+++ /dev/null
@@ -1,2512 +0,0 @@
-diff -Nur linux-2.6.36.orig/scripts/Makefile.lib linux-2.6.36/scripts/Makefile.lib
---- linux-2.6.36.orig/scripts/Makefile.lib	2010-10-20 22:30:22.000000000 +0200
-+++ linux-2.6.36/scripts/Makefile.lib	2010-11-28 18:34:22.000000000 +0100
-@@ -216,7 +216,12 @@
- size_append = printf $(shell						\
- dec_size=0;								\
- for F in $1; do								\
--	fsize=$$(stat -c "%s" $$F);					\
-+	if stat -qs .>/dev/null 2>&1; then				\
-+		statcmd='stat -f %z';					\
-+	else								\
-+		statcmd='stat -c %s';					\
-+	fi;								\
-+	fsize=$$($$statcmd $$F);					\
- 	dec_size=$$(expr $$dec_size + $$fsize);				\
- done;									\
- printf "%08x\n" $$dec_size |						\
-diff -Nur linux-2.6.36.orig/scripts/mod/mk_elfconfig.c linux-2.6.36/scripts/mod/mk_elfconfig.c
---- linux-2.6.36.orig/scripts/mod/mk_elfconfig.c	2010-10-20 22:30:22.000000000 +0200
-+++ linux-2.6.36/scripts/mod/mk_elfconfig.c	2010-11-28 18:33:24.000000000 +0100
-@@ -1,7 +1,18 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
--#include <elf.h>
-+
-+#define EI_NIDENT (16)
-+#define ELFMAG          "\177ELF"
-+
-+#define SELFMAG         4
-+#define EI_CLASS        4
-+#define ELFCLASS32      1               /* 32-bit objects */
-+#define ELFCLASS64      2               /* 64-bit objects */
-+
-+#define EI_DATA         5               /* Data encoding byte index */
-+#define ELFDATA2LSB     1               /* 2's complement, little endian */
-+#define ELFDATA2MSB     2               /* 2's complement, big endian */
- 
- int
- main(int argc, char **argv)
-diff -Nur linux-2.6.36.orig/scripts/mod/modpost.h linux-2.6.36/scripts/mod/modpost.h
---- linux-2.6.36.orig/scripts/mod/modpost.h	2010-10-20 22:30:22.000000000 +0200
-+++ linux-2.6.36/scripts/mod/modpost.h	2010-11-28 18:33:24.000000000 +0100
-@@ -7,7 +7,2453 @@
- #include <sys/mman.h>
- #include <fcntl.h>
- #include <unistd.h>
--#include <elf.h>
-+
-+
-+/* This file defines standard ELF types, structures, and macros.
-+   Copyright (C) 1995-1999,2000,2001,2002,2003 Free Software Foundation, Inc.
-+   This file is part of the GNU C Library.
-+
-+   The GNU C Library is free software; you can redistribute it and/or
-+   modify it under the terms of the GNU Lesser General Public
-+   License as published by the Free Software Foundation; either
-+   version 2.1 of the License, or (at your option) any later version.
-+
-+   The GNU C Library is distributed in the hope that it will be useful,
-+   but WITHOUT ANY WARRANTY; without even the implied warranty of
-+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+   Lesser General Public License for more details.
-+
-+   You should have received a copy of the GNU Lesser General Public
-+   License along with the GNU C Library; if not, write to the Free
-+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-+   02111-1307 USA.  */
-+
-+#ifndef _ELF_H
-+#define	_ELF_H 1
-+
-+__BEGIN_DECLS
-+
-+/* Standard ELF types.  */
-+
-+#include <stdint.h>
-+
-+/* Type for a 16-bit quantity.  */
-+typedef uint16_t Elf32_Half;
-+typedef uint16_t Elf64_Half;
-+
-+/* Types for signed and unsigned 32-bit quantities.  */
-+typedef uint32_t Elf32_Word;
-+typedef	int32_t  Elf32_Sword;
-+typedef uint32_t Elf64_Word;
-+typedef	int32_t  Elf64_Sword;
-+
-+/* Types for signed and unsigned 64-bit quantities.  */
-+typedef uint64_t Elf32_Xword;
-+typedef	int64_t  Elf32_Sxword;
-+typedef uint64_t Elf64_Xword;
-+typedef	int64_t  Elf64_Sxword;
-+
-+/* Type of addresses.  */
-+typedef uint32_t Elf32_Addr;
-+typedef uint64_t Elf64_Addr;
-+
-+/* Type of file offsets.  */
-+typedef uint32_t Elf32_Off;
-+typedef uint64_t Elf64_Off;
-+
-+/* Type for section indices, which are 16-bit quantities.  */
-+typedef uint16_t Elf32_Section;
-+typedef uint16_t Elf64_Section;
-+
-+/* Type for version symbol information.  */
-+typedef Elf32_Half Elf32_Versym;
-+typedef Elf64_Half Elf64_Versym;
-+
-+
-+/* The ELF file header.  This appears at the start of every ELF file.  */
-+
-+#define EI_NIDENT (16)
-+
-+typedef struct
-+{
-+  unsigned char	e_ident[EI_NIDENT];	/* Magic number and other info */
-+  Elf32_Half	e_type;			/* Object file type */
-+  Elf32_Half	e_machine;		/* Architecture */
-+  Elf32_Word	e_version;		/* Object file version */
-+  Elf32_Addr	e_entry;		/* Entry point virtual address */
-+  Elf32_Off	e_phoff;		/* Program header table file offset */
-+  Elf32_Off	e_shoff;		/* Section header table file offset */
-+  Elf32_Word	e_flags;		/* Processor-specific flags */
-+  Elf32_Half	e_ehsize;		/* ELF header size in bytes */
-+  Elf32_Half	e_phentsize;		/* Program header table entry size */
-+  Elf32_Half	e_phnum;		/* Program header table entry count */
-+  Elf32_Half	e_shentsize;		/* Section header table entry size */
-+  Elf32_Half	e_shnum;		/* Section header table entry count */
-+  Elf32_Half	e_shstrndx;		/* Section header string table index */
-+} Elf32_Ehdr;
-+
-+typedef struct
-+{
-+  unsigned char	e_ident[EI_NIDENT];	/* Magic number and other info */
-+  Elf64_Half	e_type;			/* Object file type */
-+  Elf64_Half	e_machine;		/* Architecture */
-+  Elf64_Word	e_version;		/* Object file version */
-+  Elf64_Addr	e_entry;		/* Entry point virtual address */
-+  Elf64_Off	e_phoff;		/* Program header table file offset */
-+  Elf64_Off	e_shoff;		/* Section header table file offset */
-+  Elf64_Word	e_flags;		/* Processor-specific flags */
-+  Elf64_Half	e_ehsize;		/* ELF header size in bytes */
-+  Elf64_Half	e_phentsize;		/* Program header table entry size */
-+  Elf64_Half	e_phnum;		/* Program header table entry count */
-+  Elf64_Half	e_shentsize;		/* Section header table entry size */
-+  Elf64_Half	e_shnum;		/* Section header table entry count */
-+  Elf64_Half	e_shstrndx;		/* Section header string table index */
-+} Elf64_Ehdr;
-+
-+/* Fields in the e_ident array.  The EI_* macros are indices into the
-+   array.  The macros under each EI_* macro are the values the byte
-+   may have.  */
-+
-+#define EI_MAG0		0		/* File identification byte 0 index */
-+#define ELFMAG0		0x7f		/* Magic number byte 0 */
-+
-+#define EI_MAG1		1		/* File identification byte 1 index */
-+#define ELFMAG1		'E'		/* Magic number byte 1 */
-+
-+#define EI_MAG2		2		/* File identification byte 2 index */
-+#define ELFMAG2		'L'		/* Magic number byte 2 */
-+
-+#define EI_MAG3		3		/* File identification byte 3 index */
-+#define ELFMAG3		'F'		/* Magic number byte 3 */
-+
-+/* Conglomeration of the identification bytes, for easy testing as a word.  */
-+#define	ELFMAG		"\177ELF"
-+#define	SELFMAG		4
-+
-+#define EI_CLASS	4		/* File class byte index */
-+#define ELFCLASSNONE	0		/* Invalid class */
-+#define ELFCLASS32	1		/* 32-bit objects */
-+#define ELFCLASS64	2		/* 64-bit objects */
-+#define ELFCLASSNUM	3
-+
-+#define EI_DATA		5		/* Data encoding byte index */
-+#define ELFDATANONE	0		/* Invalid data encoding */
-+#define ELFDATA2LSB	1		/* 2's complement, little endian */
-+#define ELFDATA2MSB	2		/* 2's complement, big endian */
-+#define ELFDATANUM	3
-+
-+#define EI_VERSION	6		/* File version byte index */
-+					/* Value must be EV_CURRENT */
-+
-+#define EI_OSABI	7		/* OS ABI identification */
-+#define ELFOSABI_NONE		0	/* UNIX System V ABI */
-+#define ELFOSABI_SYSV		0	/* Alias.  */
-+#define ELFOSABI_HPUX		1	/* HP-UX */
-+#define ELFOSABI_NETBSD		2	/* NetBSD.  */
-+#define ELFOSABI_LINUX		3	/* Linux.  */
-+#define ELFOSABI_SOLARIS	6	/* Sun Solaris.  */
-+#define ELFOSABI_AIX		7	/* IBM AIX.  */
-+#define ELFOSABI_IRIX		8	/* SGI Irix.  */
-+#define ELFOSABI_FREEBSD	9	/* FreeBSD.  */
-+#define ELFOSABI_TRU64		10	/* Compaq TRU64 UNIX.  */
-+#define ELFOSABI_MODESTO	11	/* Novell Modesto.  */
-+#define ELFOSABI_OPENBSD	12	/* OpenBSD.  */
-+#define ELFOSABI_ARM		97	/* ARM */
-+#define ELFOSABI_STANDALONE	255	/* Standalone (embedded) application */
-+
-+#define EI_ABIVERSION	8		/* ABI version */
-+
-+#define EI_PAD		9		/* Byte index of padding bytes */
-+
-+/* Legal values for e_type (object file type).  */
-+
-+#define ET_NONE		0		/* No file type */
-+#define ET_REL		1		/* Relocatable file */
-+#define ET_EXEC		2		/* Executable file */
-+#define ET_DYN		3		/* Shared object file */
-+#define ET_CORE		4		/* Core file */
-+#define	ET_NUM		5		/* Number of defined types */
-+#define ET_LOOS		0xfe00		/* OS-specific range start */
-+#define ET_HIOS		0xfeff		/* OS-specific range end */
-+#define ET_LOPROC	0xff00		/* Processor-specific range start */
-+#define ET_HIPROC	0xffff		/* Processor-specific range end */
-+
-+/* Legal values for e_machine (architecture).  */
-+
-+#define EM_NONE		 0		/* No machine */
-+#define EM_M32		 1		/* AT&T WE 32100 */
-+#define EM_SPARC	 2		/* SUN SPARC */
-+#define EM_386		 3		/* Intel 80386 */
-+#define EM_68K		 4		/* Motorola m68k family */
-+#define EM_88K		 5		/* Motorola m88k family */
-+#define EM_860		 7		/* Intel 80860 */
-+#define EM_MIPS		 8		/* MIPS R3000 big-endian */
-+#define EM_S370		 9		/* IBM System/370 */
-+#define EM_MIPS_RS3_LE	10		/* MIPS R3000 little-endian */
-+
-+#define EM_PARISC	15		/* HPPA */
-+#define EM_VPP500	17		/* Fujitsu VPP500 */
-+#define EM_SPARC32PLUS	18		/* Sun's "v8plus" */
-+#define EM_960		19		/* Intel 80960 */
-+#define EM_PPC		20		/* PowerPC */
-+#define EM_PPC64	21		/* PowerPC 64-bit */
-+#define EM_S390		22		/* IBM S390 */
-+
-+#define EM_V800		36		/* NEC V800 series */
-+#define EM_FR20		37		/* Fujitsu FR20 */
-+#define EM_RH32		38		/* TRW RH-32 */
-+#define EM_RCE		39		/* Motorola RCE */
-+#define EM_ARM		40		/* ARM */
-+#define EM_FAKE_ALPHA	41		/* Digital Alpha */
-+#define EM_SH		42		/* Hitachi SH */
-+#define EM_SPARCV9	43		/* SPARC v9 64-bit */
-+#define EM_TRICORE	44		/* Siemens Tricore */
-+#define EM_ARC		45		/* Argonaut RISC Core */
-+#define EM_H8_300	46		/* Hitachi H8/300 */
-+#define EM_H8_300H	47		/* Hitachi H8/300H */
-+#define EM_H8S		48		/* Hitachi H8S */
-+#define EM_H8_500	49		/* Hitachi H8/500 */
-+#define EM_IA_64	50		/* Intel Merced */
-+#define EM_MIPS_X	51		/* Stanford MIPS-X */
-+#define EM_COLDFIRE	52		/* Motorola Coldfire */
-+#define EM_68HC12	53		/* Motorola M68HC12 */
-+#define EM_MMA		54		/* Fujitsu MMA Multimedia Accelerator*/
-+#define EM_PCP		55		/* Siemens PCP */
-+#define EM_NCPU		56		/* Sony nCPU embeeded RISC */
-+#define EM_NDR1		57		/* Denso NDR1 microprocessor */
-+#define EM_STARCORE	58		/* Motorola Start*Core processor */
-+#define EM_ME16		59		/* Toyota ME16 processor */
-+#define EM_ST100	60		/* STMicroelectronic ST100 processor */
-+#define EM_TINYJ	61		/* Advanced Logic Corp. Tinyj emb.fam*/
-+#define EM_X86_64	62		/* AMD x86-64 architecture */
-+#define EM_PDSP		63		/* Sony DSP Processor */
-+
-+#define EM_FX66		66		/* Siemens FX66 microcontroller */
-+#define EM_ST9PLUS	67		/* STMicroelectronics ST9+ 8/16 mc */
-+#define EM_ST7		68		/* STmicroelectronics ST7 8 bit mc */
-+#define EM_68HC16	69		/* Motorola MC68HC16 microcontroller */
-+#define EM_68HC11	70		/* Motorola MC68HC11 microcontroller */
-+#define EM_68HC08	71		/* Motorola MC68HC08 microcontroller */
-+#define EM_68HC05	72		/* Motorola MC68HC05 microcontroller */
-+#define EM_SVX		73		/* Silicon Graphics SVx */
-+#define EM_ST19		74		/* STMicroelectronics ST19 8 bit mc */
-+#define EM_VAX		75		/* Digital VAX */
-+#define EM_CRIS		76		/* Axis Communications 32-bit embedded processor */
-+#define EM_JAVELIN	77		/* Infineon Technologies 32-bit embedded processor */
-+#define EM_FIREPATH	78		/* Element 14 64-bit DSP Processor */
-+#define EM_ZSP		79		/* LSI Logic 16-bit DSP Processor */
-+#define EM_MMIX		80		/* Donald Knuth's educational 64-bit processor */
-+#define EM_HUANY	81		/* Harvard University machine-independent object files */
-+#define EM_PRISM	82		/* SiTera Prism */
-+#define EM_AVR		83		/* Atmel AVR 8-bit microcontroller */
-+#define EM_FR30		84		/* Fujitsu FR30 */
-+#define EM_D10V		85		/* Mitsubishi D10V */
-+#define EM_D30V		86		/* Mitsubishi D30V */
-+#define EM_V850		87		/* NEC v850 */
-+#define EM_M32R		88		/* Mitsubishi M32R */
-+#define EM_MN10300	89		/* Matsushita MN10300 */
-+#define EM_MN10200	90		/* Matsushita MN10200 */
-+#define EM_PJ		91		/* picoJava */
-+#define EM_OPENRISC	92		/* OpenRISC 32-bit embedded processor */
-+#define EM_ARC_A5	93		/* ARC Cores Tangent-A5 */
-+#define EM_XTENSA	94		/* Tensilica Xtensa Architecture */
-+#define EM_NUM		95
-+
-+/* If it is necessary to assign new unofficial EM_* values, please
-+   pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the
-+   chances of collision with official or non-GNU unofficial values.  */
-+
-+#define EM_ALPHA	0x9026
-+
-+/* Legal values for e_version (version).  */
-+
-+#define EV_NONE		0		/* Invalid ELF version */
-+#define EV_CURRENT	1		/* Current version */
-+#define EV_NUM		2
-+
-+/* Section header.  */
-+
-+typedef struct
-+{
-+  Elf32_Word	sh_name;		/* Section name (string tbl index) */
-+  Elf32_Word	sh_type;		/* Section type */
-+  Elf32_Word	sh_flags;		/* Section flags */
-+  Elf32_Addr	sh_addr;		/* Section virtual addr at execution */
-+  Elf32_Off	sh_offset;		/* Section file offset */
-+  Elf32_Word	sh_size;		/* Section size in bytes */
-+  Elf32_Word	sh_link;		/* Link to another section */
-+  Elf32_Word	sh_info;		/* Additional section information */
-+  Elf32_Word	sh_addralign;		/* Section alignment */
-+  Elf32_Word	sh_entsize;		/* Entry size if section holds table */
-+} Elf32_Shdr;
-+
-+typedef struct
-+{
-+  Elf64_Word	sh_name;		/* Section name (string tbl index) */
-+  Elf64_Word	sh_type;		/* Section type */
-+  Elf64_Xword	sh_flags;		/* Section flags */
-+  Elf64_Addr	sh_addr;		/* Section virtual addr at execution */
-+  Elf64_Off	sh_offset;		/* Section file offset */
-+  Elf64_Xword	sh_size;		/* Section size in bytes */
-+  Elf64_Word	sh_link;		/* Link to another section */
-+  Elf64_Word	sh_info;		/* Additional section information */
-+  Elf64_Xword	sh_addralign;		/* Section alignment */
-+  Elf64_Xword	sh_entsize;		/* Entry size if section holds table */
-+} Elf64_Shdr;
-+
-+/* Special section indices.  */
-+
-+#define SHN_UNDEF	0		/* Undefined section */
-+#define SHN_LORESERVE	0xff00		/* Start of reserved indices */
-+#define SHN_LOPROC	0xff00		/* Start of processor-specific */
-+#define SHN_HIPROC	0xff1f		/* End of processor-specific */
-+#define SHN_LOOS	0xff20		/* Start of OS-specific */
-+#define SHN_HIOS	0xff3f		/* End of OS-specific */
-+#define SHN_ABS		0xfff1		/* Associated symbol is absolute */
-+#define SHN_COMMON	0xfff2		/* Associated symbol is common */
-+#define SHN_XINDEX	0xffff		/* Index is in extra table.  */
-+#define SHN_HIRESERVE	0xffff		/* End of reserved indices */
-+
-+/* Legal values for sh_type (section type).  */
-+
-+#define SHT_NULL	  0		/* Section header table entry unused */
-+#define SHT_PROGBITS	  1		/* Program data */
-+#define SHT_SYMTAB	  2		/* Symbol table */
-+#define SHT_STRTAB	  3		/* String table */
-+#define SHT_RELA	  4		/* Relocation entries with addends */
-+#define SHT_HASH	  5		/* Symbol hash table */
-+#define SHT_DYNAMIC	  6		/* Dynamic linking information */
-+#define SHT_NOTE	  7		/* Notes */
-+#define SHT_NOBITS	  8		/* Program space with no data (bss) */
-+#define SHT_REL		  9		/* Relocation entries, no addends */
-+#define SHT_SHLIB	  10		/* Reserved */
-+#define SHT_DYNSYM	  11		/* Dynamic linker symbol table */
-+#define SHT_INIT_ARRAY	  14		/* Array of constructors */
-+#define SHT_FINI_ARRAY	  15		/* Array of destructors */
-+#define SHT_PREINIT_ARRAY 16		/* Array of pre-constructors */
-+#define SHT_GROUP	  17		/* Section group */
-+#define SHT_SYMTAB_SHNDX  18		/* Extended section indeces */
-+#define	SHT_NUM		  19		/* Number of defined types.  */
-+#define SHT_LOOS	  0x60000000	/* Start OS-specific */
-+#define SHT_GNU_LIBLIST	  0x6ffffff7	/* Prelink library list */
-+#define SHT_CHECKSUM	  0x6ffffff8	/* Checksum for DSO content.  */
-+#define SHT_LOSUNW	  0x6ffffffa	/* Sun-specific low bound.  */
-+#define SHT_SUNW_move	  0x6ffffffa
-+#define SHT_SUNW_COMDAT   0x6ffffffb
-+#define SHT_SUNW_syminfo  0x6ffffffc
-+#define SHT_GNU_verdef	  0x6ffffffd	/* Version definition section.  */
-+#define SHT_GNU_verneed	  0x6ffffffe	/* Version needs section.  */
-+#define SHT_GNU_versym	  0x6fffffff	/* Version symbol table.  */
-+#define SHT_HISUNW	  0x6fffffff	/* Sun-specific high bound.  */
-+#define SHT_HIOS	  0x6fffffff	/* End OS-specific type */
-+#define SHT_LOPROC	  0x70000000	/* Start of processor-specific */
-+#define SHT_HIPROC	  0x7fffffff	/* End of processor-specific */
-+#define SHT_LOUSER	  0x80000000	/* Start of application-specific */
-+#define SHT_HIUSER	  0x8fffffff	/* End of application-specific */
-+
-+/* Legal values for sh_flags (section flags).  */
-+
-+#define SHF_WRITE	     (1 << 0)	/* Writable */
-+#define SHF_ALLOC	     (1 << 1)	/* Occupies memory during execution */
-+#define SHF_EXECINSTR	     (1 << 2)	/* Executable */
-+#define SHF_MERGE	     (1 << 4)	/* Might be merged */
-+#define SHF_STRINGS	     (1 << 5)	/* Contains nul-terminated strings */
-+#define SHF_INFO_LINK	     (1 << 6)	/* `sh_info' contains SHT index */
-+#define SHF_LINK_ORDER	     (1 << 7)	/* Preserve order after combining */
-+#define SHF_OS_NONCONFORMING (1 << 8)	/* Non-standard OS specific handling
-+					   required */
-+#define SHF_GROUP	     (1 << 9)	/* Section is member of a group.  */
-+#define SHF_TLS		     (1 << 10)	/* Section hold thread-local data.  */
-+#define SHF_MASKOS	     0x0ff00000	/* OS-specific.  */
-+#define SHF_MASKPROC	     0xf0000000	/* Processor-specific */
-+
-+/* Section group handling.  */
-+#define GRP_COMDAT	0x1		/* Mark group as COMDAT.  */
-+
-+/* Symbol table entry.  */
-+
-+typedef struct
-+{
-+  Elf32_Word	st_name;		/* Symbol name (string tbl index) */
-+  Elf32_Addr	st_value;		/* Symbol value */
-+  Elf32_Word	st_size;		/* Symbol size */
-+  unsigned char	st_info;		/* Symbol type and binding */
-+  unsigned char	st_other;		/* Symbol visibility */
-+  Elf32_Section	st_shndx;		/* Section index */
-+} Elf32_Sym;
-+
-+typedef struct
-+{
-+  Elf64_Word	st_name;		/* Symbol name (string tbl index) */
-+  unsigned char	st_info;		/* Symbol type and binding */
-+  unsigned char st_other;		/* Symbol visibility */
-+  Elf64_Section	st_shndx;		/* Section index */
-+  Elf64_Addr	st_value;		/* Symbol value */
-+  Elf64_Xword	st_size;		/* Symbol size */
-+} Elf64_Sym;
-+
-+/* The syminfo section if available contains additional information about
-+   every dynamic symbol.  */
-+
-+typedef struct
-+{
-+  Elf32_Half si_boundto;		/* Direct bindings, symbol bound to */
-+  Elf32_Half si_flags;			/* Per symbol flags */
-+} Elf32_Syminfo;
-+
-+typedef struct
-+{
-+  Elf64_Half si_boundto;		/* Direct bindings, symbol bound to */
-+  Elf64_Half si_flags;			/* Per symbol flags */
-+} Elf64_Syminfo;
-+
-+/* Possible values for si_boundto.  */
-+#define SYMINFO_BT_SELF		0xffff	/* Symbol bound to self */
-+#define SYMINFO_BT_PARENT	0xfffe	/* Symbol bound to parent */
-+#define SYMINFO_BT_LOWRESERVE	0xff00	/* Beginning of reserved entries */
-+
-+/* Possible bitmasks for si_flags.  */
-+#define SYMINFO_FLG_DIRECT	0x0001	/* Direct bound symbol */
-+#define SYMINFO_FLG_PASSTHRU	0x0002	/* Pass-thru symbol for translator */
-+#define SYMINFO_FLG_COPY	0x0004	/* Symbol is a copy-reloc */
-+#define SYMINFO_FLG_LAZYLOAD	0x0008	/* Symbol bound to object to be lazy
-+					   loaded */
-+/* Syminfo version values.  */
-+#define SYMINFO_NONE		0
-+#define SYMINFO_CURRENT		1
-+#define SYMINFO_NUM		2
-+
-+
-+/* How to extract and insert information held in the st_info field.  */
-+
-+#define ELF32_ST_BIND(val)		(((unsigned char) (val)) >> 4)
-+#define ELF32_ST_TYPE(val)		((val) & 0xf)
-+#define ELF32_ST_INFO(bind, type)	(((bind) << 4) + ((type) & 0xf))
-+
-+/* Both Elf32_Sym and Elf64_Sym use the same one-byte st_info field.  */
-+#define ELF64_ST_BIND(val)		ELF32_ST_BIND (val)
-+#define ELF64_ST_TYPE(val)		ELF32_ST_TYPE (val)
-+#define ELF64_ST_INFO(bind, type)	ELF32_ST_INFO ((bind), (type))
-+
-+/* Legal values for ST_BIND subfield of st_info (symbol binding).  */
-+
-+#define STB_LOCAL	0		/* Local symbol */
-+#define STB_GLOBAL	1		/* Global symbol */
-+#define STB_WEAK	2		/* Weak symbol */
-+#define	STB_NUM		3		/* Number of defined types.  */
-+#define STB_LOOS	10		/* Start of OS-specific */
-+#define STB_HIOS	12		/* End of OS-specific */
-+#define STB_LOPROC	13		/* Start of processor-specific */
-+#define STB_HIPROC	15		/* End of processor-specific */
-+
-+/* Legal values for ST_TYPE subfield of st_info (symbol type).  */
-+
-+#define STT_NOTYPE	0		/* Symbol type is unspecified */
-+#define STT_OBJECT	1		/* Symbol is a data object */
-+#define STT_FUNC	2		/* Symbol is a code object */
-+#define STT_SECTION	3		/* Symbol associated with a section */
-+#define STT_FILE	4		/* Symbol's name is file name */
-+#define STT_COMMON	5		/* Symbol is a common data object */
-+#define STT_TLS		6		/* Symbol is thread-local data object*/
-+#define	STT_NUM		7		/* Number of defined types.  */
-+#define STT_LOOS	10		/* Start of OS-specific */
-+#define STT_HIOS	12		/* End of OS-specific */
-+#define STT_LOPROC	13		/* Start of processor-specific */
-+#define STT_HIPROC	15		/* End of processor-specific */
-+
-+
-+/* Symbol table indices are found in the hash buckets and chain table
-+   of a symbol hash table section.  This special index value indicates
-+   the end of a chain, meaning no further symbols are found in that bucket.  */
-+
-+#define STN_UNDEF	0		/* End of a chain.  */
-+
-+
-+/* How to extract and insert information held in the st_other field.  */
-+
-+#define ELF32_ST_VISIBILITY(o)	((o) & 0x03)
-+
-+/* For ELF64 the definitions are the same.  */
-+#define ELF64_ST_VISIBILITY(o)	ELF32_ST_VISIBILITY (o)
-+
-+/* Symbol visibility specification encoded in the st_other field.  */
-+#define STV_DEFAULT	0		/* Default symbol visibility rules */
-+#define STV_INTERNAL	1		/* Processor specific hidden class */
-+#define STV_HIDDEN	2		/* Sym unavailable in other modules */
-+#define STV_PROTECTED	3		/* Not preemptible, not exported */
-+
-+
-+/* Relocation table entry without addend (in section of type SHT_REL).  */
-+
-+typedef struct
-+{
-+  Elf32_Addr	r_offset;		/* Address */
-+  Elf32_Word	r_info;			/* Relocation type and symbol index */
-+} Elf32_Rel;
-+
-+/* I have seen two different definitions of the Elf64_Rel and
-+   Elf64_Rela structures, so we'll leave them out until Novell (or
-+   whoever) gets their act together.  */
-+/* The following, at least, is used on Sparc v9, MIPS, and Alpha.  */
-+
-+typedef struct
-+{
-+  Elf64_Addr	r_offset;		/* Address */
-+  Elf64_Xword	r_info;			/* Relocation type and symbol index */
-+} Elf64_Rel;
-+
-+/* Relocation table entry with addend (in section of type SHT_RELA).  */
-+
-+typedef struct
-+{
-+  Elf32_Addr	r_offset;		/* Address */
-+  Elf32_Word	r_info;			/* Relocation type and symbol index */
-+  Elf32_Sword	r_addend;		/* Addend */
-+} Elf32_Rela;
-+
-+typedef struct
-+{
-+  Elf64_Addr	r_offset;		/* Address */
-+  Elf64_Xword	r_info;			/* Relocation type and symbol index */
-+  Elf64_Sxword	r_addend;		/* Addend */
-+} Elf64_Rela;
-+
-+/* How to extract and insert information held in the r_info field.  */
-+
-+#define ELF32_R_SYM(val)		((val) >> 8)
-+#define ELF32_R_TYPE(val)		((val) & 0xff)
-+#define ELF32_R_INFO(sym, type)		(((sym) << 8) + ((type) & 0xff))
-+
-+#define ELF64_R_SYM(i)			((i) >> 32)
-+#define ELF64_R_TYPE(i)			((i) & 0xffffffff)
-+#define ELF64_R_INFO(sym,type)		((((Elf64_Xword) (sym)) << 32) + (type))
-+
-+/* Program segment header.  */
-+
-+typedef struct
-+{
-+  Elf32_Word	p_type;			/* Segment type */
-+  Elf32_Off	p_offset;		/* Segment file offset */
-+  Elf32_Addr	p_vaddr;		/* Segment virtual address */
-+  Elf32_Addr	p_paddr;		/* Segment physical address */
-+  Elf32_Word	p_filesz;		/* Segment size in file */
-+  Elf32_Word	p_memsz;		/* Segment size in memory */
-+  Elf32_Word	p_flags;		/* Segment flags */
-+  Elf32_Word	p_align;		/* Segment alignment */
-+} Elf32_Phdr;
-+
-+typedef struct
-+{
-+  Elf64_Word	p_type;			/* Segment type */
-+  Elf64_Word	p_flags;		/* Segment flags */
-+  Elf64_Off	p_offset;		/* Segment file offset */
-+  Elf64_Addr	p_vaddr;		/* Segment virtual address */
-+  Elf64_Addr	p_paddr;		/* Segment physical address */
-+  Elf64_Xword	p_filesz;		/* Segment size in file */
-+  Elf64_Xword	p_memsz;		/* Segment size in memory */
-+  Elf64_Xword	p_align;		/* Segment alignment */
-+} Elf64_Phdr;
-+
-+/* Legal values for p_type (segment type).  */
-+
-+#define	PT_NULL		0		/* Program header table entry unused */
-+#define PT_LOAD		1		/* Loadable program segment */
-+#define PT_DYNAMIC	2		/* Dynamic linking information */
-+#define PT_INTERP	3		/* Program interpreter */
-+#define PT_NOTE		4		/* Auxiliary information */
-+#define PT_SHLIB	5		/* Reserved */
-+#define PT_PHDR		6		/* Entry for header table itself */
-+#define PT_TLS		7		/* Thread-local storage segment */
-+#define	PT_NUM		8		/* Number of defined types */
-+#define PT_LOOS		0x60000000	/* Start of OS-specific */
-+#define PT_GNU_EH_FRAME	0x6474e550	/* GCC .eh_frame_hdr segment */
-+#define PT_GNU_STACK	0x6474e551	/* Indicates stack executability */
-+#define PT_LOSUNW	0x6ffffffa
-+#define PT_SUNWBSS	0x6ffffffa	/* Sun Specific segment */
-+#define PT_SUNWSTACK	0x6ffffffb	/* Stack segment */
-+#define PT_HISUNW	0x6fffffff
-+#define PT_HIOS		0x6fffffff	/* End of OS-specific */
-+#define PT_LOPROC	0x70000000	/* Start of processor-specific */
-+#define PT_HIPROC	0x7fffffff	/* End of processor-specific */
-+
-+/* Legal values for p_flags (segment flags).  */
-+
-+#define PF_X		(1 << 0)	/* Segment is executable */
-+#define PF_W		(1 << 1)	/* Segment is writable */
-+#define PF_R		(1 << 2)	/* Segment is readable */
-+#define PF_MASKOS	0x0ff00000	/* OS-specific */
-+#define PF_MASKPROC	0xf0000000	/* Processor-specific */
-+
-+/* Legal values for note segment descriptor types for core files. */
-+
-+#define NT_PRSTATUS	1		/* Contains copy of prstatus struct */
-+#define NT_FPREGSET	2		/* Contains copy of fpregset struct */
-+#define NT_PRPSINFO	3		/* Contains copy of prpsinfo struct */
-+#define NT_PRXREG	4		/* Contains copy of prxregset struct */
-+#define NT_TASKSTRUCT	4		/* Contains copy of task structure */
-+#define NT_PLATFORM	5		/* String from sysinfo(SI_PLATFORM) */
-+#define NT_AUXV		6		/* Contains copy of auxv array */
-+#define NT_GWINDOWS	7		/* Contains copy of gwindows struct */
-+#define NT_ASRS		8		/* Contains copy of asrset struct */
-+#define NT_PSTATUS	10		/* Contains copy of pstatus struct */
-+#define NT_PSINFO	13		/* Contains copy of psinfo struct */
-+#define NT_PRCRED	14		/* Contains copy of prcred struct */
-+#define NT_UTSNAME	15		/* Contains copy of utsname struct */
-+#define NT_LWPSTATUS	16		/* Contains copy of lwpstatus struct */
-+#define NT_LWPSINFO	17		/* Contains copy of lwpinfo struct */
-+#define NT_PRFPXREG	20		/* Contains copy of fprxregset struct*/
-+
-+/* Legal values for the note segment descriptor types for object files.  */
-+
-+#define NT_VERSION	1		/* Contains a version string.  */
-+
-+
-+/* Dynamic section entry.  */
-+
-+typedef struct
-+{
-+  Elf32_Sword	d_tag;			/* Dynamic entry type */
-+  union
-+    {
-+      Elf32_Word d_val;			/* Integer value */
-+      Elf32_Addr d_ptr;			/* Address value */
-+    } d_un;
-+} Elf32_Dyn;
-+
-+typedef struct
-+{
-+  Elf64_Sxword	d_tag;			/* Dynamic entry type */
-+  union
-+    {
-+      Elf64_Xword d_val;		/* Integer value */
-+      Elf64_Addr d_ptr;			/* Address value */
-+    } d_un;
-+} Elf64_Dyn;
-+
-+/* Legal values for d_tag (dynamic entry type).  */
-+
-+#define DT_NULL		0		/* Marks end of dynamic section */
-+#define DT_NEEDED	1		/* Name of needed library */
-+#define DT_PLTRELSZ	2		/* Size in bytes of PLT relocs */
-+#define DT_PLTGOT	3		/* Processor defined value */
-+#define DT_HASH		4		/* Address of symbol hash table */
-+#define DT_STRTAB	5		/* Address of string table */
-+#define DT_SYMTAB	6		/* Address of symbol table */
-+#define DT_RELA		7		/* Address of Rela relocs */
-+#define DT_RELASZ	8		/* Total size of Rela relocs */
-+#define DT_RELAENT	9		/* Size of one Rela reloc */
-+#define DT_STRSZ	10		/* Size of string table */
-+#define DT_SYMENT	11		/* Size of one symbol table entry */
-+#define DT_INIT		12		/* Address of init function */
-+#define DT_FINI		13		/* Address of termination function */
-+#define DT_SONAME	14		/* Name of shared object */
-+#define DT_RPATH	15		/* Library search path (deprecated) */
-+#define DT_SYMBOLIC	16		/* Start symbol search here */
-+#define DT_REL		17		/* Address of Rel relocs */
-+#define DT_RELSZ	18		/* Total size of Rel relocs */
-+#define DT_RELENT	19		/* Size of one Rel reloc */
-+#define DT_PLTREL	20		/* Type of reloc in PLT */
-+#define DT_DEBUG	21		/* For debugging; unspecified */
-+#define DT_TEXTREL	22		/* Reloc might modify .text */
-+#define DT_JMPREL	23		/* Address of PLT relocs */
-+#define	DT_BIND_NOW	24		/* Process relocations of object */
-+#define	DT_INIT_ARRAY	25		/* Array with addresses of init fct */
-+#define	DT_FINI_ARRAY	26		/* Array with addresses of fini fct */
-+#define	DT_INIT_ARRAYSZ	27		/* Size in bytes of DT_INIT_ARRAY */
-+#define	DT_FINI_ARRAYSZ	28		/* Size in bytes of DT_FINI_ARRAY */
-+#define DT_RUNPATH	29		/* Library search path */
-+#define DT_FLAGS	30		/* Flags for the object being loaded */
-+#define DT_ENCODING	32		/* Start of encoded range */
-+#define DT_PREINIT_ARRAY 32		/* Array with addresses of preinit fct*/
-+#define DT_PREINIT_ARRAYSZ 33		/* size in bytes of DT_PREINIT_ARRAY */
-+#define	DT_NUM		34		/* Number used */
-+#define DT_LOOS		0x6000000d	/* Start of OS-specific */
-+#define DT_HIOS		0x6ffff000	/* End of OS-specific */
-+#define DT_LOPROC	0x70000000	/* Start of processor-specific */
-+#define DT_HIPROC	0x7fffffff	/* End of processor-specific */
-+#define	DT_PROCNUM	DT_MIPS_NUM	/* Most used by any processor */
-+
-+/* DT_* entries which fall between DT_VALRNGHI & DT_VALRNGLO use the
-+   Dyn.d_un.d_val field of the Elf*_Dyn structure.  This follows Sun's
-+   approach.  */
-+#define DT_VALRNGLO	0x6ffffd00
-+#define DT_GNU_PRELINKED 0x6ffffdf5	/* Prelinking timestamp */
-+#define DT_GNU_CONFLICTSZ 0x6ffffdf6	/* Size of conflict section */
-+#define DT_GNU_LIBLISTSZ 0x6ffffdf7	/* Size of library list */
-+#define DT_CHECKSUM	0x6ffffdf8
-+#define DT_PLTPADSZ	0x6ffffdf9
-+#define DT_MOVEENT	0x6ffffdfa
-+#define DT_MOVESZ	0x6ffffdfb
-+#define DT_FEATURE_1	0x6ffffdfc	/* Feature selection (DTF_*).  */
-+#define DT_POSFLAG_1	0x6ffffdfd	/* Flags for DT_* entries, effecting
-+					   the following DT_* entry.  */
-+#define DT_SYMINSZ	0x6ffffdfe	/* Size of syminfo table (in bytes) */
-+#define DT_SYMINENT	0x6ffffdff	/* Entry size of syminfo */
-+#define DT_VALRNGHI	0x6ffffdff
-+#define DT_VALTAGIDX(tag)	(DT_VALRNGHI - (tag))	/* Reverse order! */
-+#define DT_VALNUM 12
-+
-+/* DT_* entries which fall between DT_ADDRRNGHI & DT_ADDRRNGLO use the
-+   Dyn.d_un.d_ptr field of the Elf*_Dyn structure.
-+
-+   If any adjustment is made to the ELF object after it has been
-+   built these entries will need to be adjusted.  */
-+#define DT_ADDRRNGLO	0x6ffffe00
-+#define DT_GNU_CONFLICT	0x6ffffef8	/* Start of conflict section */
-+#define DT_GNU_LIBLIST	0x6ffffef9	/* Library list */
-+#define DT_CONFIG	0x6ffffefa	/* Configuration information.  */
-+#define DT_DEPAUDIT	0x6ffffefb	/* Dependency auditing.  */
-+#define DT_AUDIT	0x6ffffefc	/* Object auditing.  */
-+#define	DT_PLTPAD	0x6ffffefd	/* PLT padding.  */
-+#define	DT_MOVETAB	0x6ffffefe	/* Move table.  */
-+#define DT_SYMINFO	0x6ffffeff	/* Syminfo table.  */
-+#define DT_ADDRRNGHI	0x6ffffeff
-+#define DT_ADDRTAGIDX(tag)	(DT_ADDRRNGHI - (tag))	/* Reverse order! */
-+#define DT_ADDRNUM 10
-+
-+/* The versioning entry types.  The next are defined as part of the
-+   GNU extension.  */
-+#define DT_VERSYM	0x6ffffff0
-+
-+#define DT_RELACOUNT	0x6ffffff9
-+#define DT_RELCOUNT	0x6ffffffa
-+
-+/* These were chosen by Sun.  */
-+#define DT_FLAGS_1	0x6ffffffb	/* State flags, see DF_1_* below.  */
-+#define	DT_VERDEF	0x6ffffffc	/* Address of version definition
-+					   table */
-+#define	DT_VERDEFNUM	0x6ffffffd	/* Number of version definitions */
-+#define	DT_VERNEED	0x6ffffffe	/* Address of table with needed
-+					   versions */
-+#define	DT_VERNEEDNUM	0x6fffffff	/* Number of needed versions */
-+#define DT_VERSIONTAGIDX(tag)	(DT_VERNEEDNUM - (tag))	/* Reverse order! */
-+#define DT_VERSIONTAGNUM 16
-+
-+/* Sun added these machine-independent extensions in the "processor-specific"
-+   range.  Be compatible.  */
-+#define DT_AUXILIARY    0x7ffffffd      /* Shared object to load before self */
-+#define DT_FILTER       0x7fffffff      /* Shared object to get values from */
-+#define DT_EXTRATAGIDX(tag)	((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1)
-+#define DT_EXTRANUM	3
-+
-+/* Values of `d_un.d_val' in the DT_FLAGS entry.  */
-+#define DF_ORIGIN	0x00000001	/* Object may use DF_ORIGIN */
-+#define DF_SYMBOLIC	0x00000002	/* Symbol resolutions starts here */
-+#define DF_TEXTREL	0x00000004	/* Object contains text relocations */
-+#define DF_BIND_NOW	0x00000008	/* No lazy binding for this object */
-+#define DF_STATIC_TLS	0x00000010	/* Module uses the static TLS model */
-+
-+/* State flags selectable in the `d_un.d_val' element of the DT_FLAGS_1
-+   entry in the dynamic section.  */
-+#define DF_1_NOW	0x00000001	/* Set RTLD_NOW for this object.  */
-+#define DF_1_GLOBAL	0x00000002	/* Set RTLD_GLOBAL for this object.  */
-+#define DF_1_GROUP	0x00000004	/* Set RTLD_GROUP for this object.  */
-+#define DF_1_NODELETE	0x00000008	/* Set RTLD_NODELETE for this object.*/
-+#define DF_1_LOADFLTR	0x00000010	/* Trigger filtee loading at runtime.*/
-+#define DF_1_INITFIRST	0x00000020	/* Set RTLD_INITFIRST for this object*/
-+#define DF_1_NOOPEN	0x00000040	/* Set RTLD_NOOPEN for this object.  */
-+#define DF_1_ORIGIN	0x00000080	/* $ORIGIN must be handled.  */
-+#define DF_1_DIRECT	0x00000100	/* Direct binding enabled.  */
-+#define DF_1_TRANS	0x00000200
-+#define DF_1_INTERPOSE	0x00000400	/* Object is used to interpose.  */
-+#define DF_1_NODEFLIB	0x00000800	/* Ignore default lib search path.  */
-+#define DF_1_NODUMP	0x00001000	/* Object can't be dldump'ed.  */
-+#define DF_1_CONFALT	0x00002000	/* Configuration alternative created.*/
-+#define DF_1_ENDFILTEE	0x00004000	/* Filtee terminates filters search. */
-+#define	DF_1_DISPRELDNE	0x00008000	/* Disp reloc applied at build time. */
-+#define	DF_1_DISPRELPND	0x00010000	/* Disp reloc applied at run-time.  */
-+
-+/* Flags for the feature selection in DT_FEATURE_1.  */
-+#define DTF_1_PARINIT	0x00000001
-+#define DTF_1_CONFEXP	0x00000002
-+
-+/* Flags in the DT_POSFLAG_1 entry effecting only the next DT_* entry.  */
-+#define DF_P1_LAZYLOAD	0x00000001	/* Lazyload following object.  */
-+#define DF_P1_GROUPPERM	0x00000002	/* Symbols from next object are not
-+					   generally available.  */
-+
-+/* Version definition sections.  */
-+
-+typedef struct
-+{
-+  Elf32_Half	vd_version;		/* Version revision */
-+  Elf32_Half	vd_flags;		/* Version information */
-+  Elf32_Half	vd_ndx;			/* Version Index */
-+  Elf32_Half	vd_cnt;			/* Number of associated aux entries */
-+  Elf32_Word	vd_hash;		/* Version name hash value */
-+  Elf32_Word	vd_aux;			/* Offset in bytes to verdaux array */
-+  Elf32_Word	vd_next;		/* Offset in bytes to next verdef
-+					   entry */
-+} Elf32_Verdef;
-+
-+typedef struct
-+{
-+  Elf64_Half	vd_version;		/* Version revision */
-+  Elf64_Half	vd_flags;		/* Version information */
-+  Elf64_Half	vd_ndx;			/* Version Index */
-+  Elf64_Half	vd_cnt;			/* Number of associated aux entries */
-+  Elf64_Word	vd_hash;		/* Version name hash value */
-+  Elf64_Word	vd_aux;			/* Offset in bytes to verdaux array */
-+  Elf64_Word	vd_next;		/* Offset in bytes to next verdef
-+					   entry */
-+} Elf64_Verdef;
-+
-+
-+/* Legal values for vd_version (version revision).  */
-+#define VER_DEF_NONE	0		/* No version */
-+#define VER_DEF_CURRENT	1		/* Current version */
-+#define VER_DEF_NUM	2		/* Given version number */
-+
-+/* Legal values for vd_flags (version information flags).  */
-+#define VER_FLG_BASE	0x1		/* Version definition of file itself */
-+#define VER_FLG_WEAK	0x2		/* Weak version identifier */
-+
-+/* Versym symbol index values.  */
-+#define	VER_NDX_LOCAL		0	/* Symbol is local.  */
-+#define	VER_NDX_GLOBAL		1	/* Symbol is global.  */
-+#define	VER_NDX_LORESERVE	0xff00	/* Beginning of reserved entries.  */
-+#define	VER_NDX_ELIMINATE	0xff01	/* Symbol is to be eliminated.  */
-+
-+/* Auxialiary version information.  */
-+
-+typedef struct
-+{
-+  Elf32_Word	vda_name;		/* Version or dependency names */
-+  Elf32_Word	vda_next;		/* Offset in bytes to next verdaux
-+					   entry */
-+} Elf32_Verdaux;
-+
-+typedef struct
-+{
-+  Elf64_Word	vda_name;		/* Version or dependency names */
-+  Elf64_Word	vda_next;		/* Offset in bytes to next verdaux
-+					   entry */
-+} Elf64_Verdaux;
-+
-+
-+/* Version dependency section.  */
-+
-+typedef struct
-+{
-+  Elf32_Half	vn_version;		/* Version of structure */
-+  Elf32_Half	vn_cnt;			/* Number of associated aux entries */
-+  Elf32_Word	vn_file;		/* Offset of filename for this
-+					   dependency */
-+  Elf32_Word	vn_aux;			/* Offset in bytes to vernaux array */
-+  Elf32_Word	vn_next;		/* Offset in bytes to next verneed
-+					   entry */
-+} Elf32_Verneed;
-+
-+typedef struct
-+{
-+  Elf64_Half	vn_version;		/* Version of structure */
-+  Elf64_Half	vn_cnt;			/* Number of associated aux entries */
-+  Elf64_Word	vn_file;		/* Offset of filename for this
-+					   dependency */
-+  Elf64_Word	vn_aux;			/* Offset in bytes to vernaux array */
-+  Elf64_Word	vn_next;		/* Offset in bytes to next verneed
-+					   entry */
-+} Elf64_Verneed;
-+
-+
-+/* Legal values for vn_version (version revision).  */
-+#define VER_NEED_NONE	 0		/* No version */
-+#define VER_NEED_CURRENT 1		/* Current version */
-+#define VER_NEED_NUM	 2		/* Given version number */
-+
-+/* Auxiliary needed version information.  */
-+
-+typedef struct
-+{
-+  Elf32_Word	vna_hash;		/* Hash value of dependency name */
-+  Elf32_Half	vna_flags;		/* Dependency specific information */
-+  Elf32_Half	vna_other;		/* Unused */
-+  Elf32_Word	vna_name;		/* Dependency name string offset */
-+  Elf32_Word	vna_next;		/* Offset in bytes to next vernaux
-+					   entry */
-+} Elf32_Vernaux;
-+
-+typedef struct
-+{
-+  Elf64_Word	vna_hash;		/* Hash value of dependency name */
-+  Elf64_Half	vna_flags;		/* Dependency specific information */
-+  Elf64_Half	vna_other;		/* Unused */
-+  Elf64_Word	vna_name;		/* Dependency name string offset */
-+  Elf64_Word	vna_next;		/* Offset in bytes to next vernaux
-+					   entry */
-+} Elf64_Vernaux;
-+
-+
-+/* Legal values for vna_flags.  */
-+#define VER_FLG_WEAK	0x2		/* Weak version identifier */
-+
-+
-+/* Auxiliary vector.  */
-+
-+/* This vector is normally only used by the program interpreter.  The
-+   usual definition in an ABI supplement uses the name auxv_t.  The
-+   vector is not usually defined in a standard <elf.h> file, but it
-+   can't hurt.  We rename it to avoid conflicts.  The sizes of these
-+   types are an arrangement between the exec server and the program
-+   interpreter, so we don't fully specify them here.  */
-+
-+typedef struct
-+{
-+  int a_type;			/* Entry type */
-+  union
-+    {
-+      long int a_val;		/* Integer value */
-+      void *a_ptr;		/* Pointer value */
-+      void (*a_fcn) (void);	/* Function pointer value */
-+    } a_un;
-+} Elf32_auxv_t;
-+
-+typedef struct
-+{
-+  long int a_type;		/* Entry type */
-+  union
-+    {
-+      long int a_val;		/* Integer value */
-+      void *a_ptr;		/* Pointer value */
-+      void (*a_fcn) (void);	/* Function pointer value */
-+    } a_un;
-+} Elf64_auxv_t;
-+
-+/* Legal values for a_type (entry type).  */
-+
-+#define AT_NULL		0		/* End of vector */
-+#define AT_IGNORE	1		/* Entry should be ignored */
-+#define AT_EXECFD	2		/* File descriptor of program */
-+#define AT_PHDR		3		/* Program headers for program */
-+#define AT_PHENT	4		/* Size of program header entry */
-+#define AT_PHNUM	5		/* Number of program headers */
-+#define AT_PAGESZ	6		/* System page size */
-+#define AT_BASE		7		/* Base address of interpreter */
-+#define AT_FLAGS	8		/* Flags */
-+#define AT_ENTRY	9		/* Entry point of program */
-+#define AT_NOTELF	10		/* Program is not ELF */
-+#define AT_UID		11		/* Real uid */
-+#define AT_EUID		12		/* Effective uid */
-+#define AT_GID		13		/* Real gid */
-+#define AT_EGID		14		/* Effective gid */
-+#define AT_CLKTCK	17		/* Frequency of times() */
-+
-+/* Some more special a_type values describing the hardware.  */
-+#define AT_PLATFORM	15		/* String identifying platform.  */
-+#define AT_HWCAP	16		/* Machine dependent hints about
-+					   processor capabilities.  */
-+
-+/* This entry gives some information about the FPU initialization
-+   performed by the kernel.  */
-+#define AT_FPUCW	18		/* Used FPU control word.  */
-+
-+/* Cache block sizes.  */
-+#define AT_DCACHEBSIZE	19		/* Data cache block size.  */
-+#define AT_ICACHEBSIZE	20		/* Instruction cache block size.  */
-+#define AT_UCACHEBSIZE	21		/* Unified cache block size.  */
-+
-+/* A special ignored value for PPC, used by the kernel to control the
-+   interpretation of the AUXV. Must be > 16.  */
-+#define AT_IGNOREPPC	22		/* Entry should be ignored.  */
-+
-+#define	AT_SECURE	23		/* Boolean, was exec setuid-like?  */
-+
-+/* Pointer to the global system page used for system calls and other
-+   nice things.  */
-+#define AT_SYSINFO	32
-+#define AT_SYSINFO_EHDR	33
-+
-+
-+/* Note section contents.  Each entry in the note section begins with
-+   a header of a fixed form.  */
-+
-+typedef struct
-+{
-+  Elf32_Word n_namesz;			/* Length of the note's name.  */
-+  Elf32_Word n_descsz;			/* Length of the note's descriptor.  */
-+  Elf32_Word n_type;			/* Type of the note.  */
-+} Elf32_Nhdr;
-+
-+typedef struct
-+{
-+  Elf64_Word n_namesz;			/* Length of the note's name.  */
-+  Elf64_Word n_descsz;			/* Length of the note's descriptor.  */
-+  Elf64_Word n_type;			/* Type of the note.  */
-+} Elf64_Nhdr;
-+
-+/* Known names of notes.  */
-+
-+/* Solaris entries in the note section have this name.  */
-+#define ELF_NOTE_SOLARIS	"SUNW Solaris"
-+
-+/* Note entries for GNU systems have this name.  */
-+#define ELF_NOTE_GNU		"GNU"
-+
-+
-+/* Defined types of notes for Solaris.  */
-+
-+/* Value of descriptor (one word) is desired pagesize for the binary.  */
-+#define ELF_NOTE_PAGESIZE_HINT	1
-+
-+
-+/* Defined note types for GNU systems.  */
-+
-+/* ABI information.  The descriptor consists of words:
-+   word 0: OS descriptor
-+   word 1: major version of the ABI
-+   word 2: minor version of the ABI
-+   word 3: subminor version of the ABI
-+*/
-+#define ELF_NOTE_ABI		1
-+
-+/* Known OSes.  These value can appear in word 0 of an ELF_NOTE_ABI
-+   note section entry.  */
-+#define ELF_NOTE_OS_LINUX	0
-+#define ELF_NOTE_OS_GNU		1
-+#define ELF_NOTE_OS_SOLARIS2	2
-+#define ELF_NOTE_OS_FREEBSD	3
-+
-+
-+/* Move records.  */
-+typedef struct
-+{
-+  Elf32_Xword m_value;		/* Symbol value.