gdb: fix compilation for x86_64 with musl
authorSteven Barth <cyrus@openwrt.org>
Tue, 7 Jul 2015 17:30:08 +0000 (17:30 +0000)
committerSteven Barth <cyrus@openwrt.org>
Tue, 7 Jul 2015 17:30:08 +0000 (17:30 +0000)
Signed-off-by: Steven Barth <steven@midlink.org>
SVN-Revision: 46249

package/devel/gdb/Makefile
package/devel/gdb/patches/101-musl-fix-x86_64.patch [new file with mode: 0644]

index 7d053a9..772d197 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=gdb
 PKG_VERSION:=7.8
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@GNU/gdb
diff --git a/package/devel/gdb/patches/101-musl-fix-x86_64.patch b/package/devel/gdb/patches/101-musl-fix-x86_64.patch
new file mode 100644 (file)
index 0000000..e7d380e
--- /dev/null
@@ -0,0 +1,64 @@
+diff -u -r -N gdb-7.3.1-org//gdb/amd64-linux-nat.c gdb-7.3.1-patched//gdb/amd64-linux-nat.c
+--- gdb-7.3.1-org//gdb/amd64-linux-nat.c       1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.3.1-patched//gdb/amd64-linux-nat.c   2011-09-22 22:20:23.438841813 +0000
+@@ -32,7 +32,7 @@
+ #include "elf/common.h"
+ #include <sys/uio.h>
+ #include <sys/ptrace.h>
+-#include <sys/debugreg.h>
++#include "debugreg.h"
+ #include <sys/syscall.h>
+ #include <sys/procfs.h>
+ #include <asm/prctl.h>
+diff -u -r -N gdb-7.3.1-org//gdb/debugreg.h gdb-7.3.1-patched//gdb/debugreg.h
+--- gdb-7.3.1-org//gdb/debugreg.h      1970-01-01 00:00:00.000000000 +0000
++++ gdb-7.3.1-patched//gdb/debugreg.h  2011-09-22 22:20:01.381841813 +0000
+@@ -0,0 +1,48 @@
++#ifndef SYS_DEBUGREG_H
++#define SYS_DEBUGREG_H
++
++#include <stdint.h>
++
++#define DR_FIRSTADDR 0
++#define DR_LASTADDR 3
++
++#define DR_STATUS 6
++#define DR_CONTROL 7
++
++#define DR_TRAP0        (0x1)
++#define DR_TRAP1        (0x2)
++#define DR_TRAP2        (0x4)
++#define DR_TRAP3        (0x8)
++
++#define DR_STEP         (0x4000)
++#define DR_SWITCH       (0x8000)
++
++#define DR_CONTROL_SHIFT 16
++#define DR_CONTROL_SIZE  4
++
++#define DR_RW_EXECUTE   (0x0)
++#define DR_RW_WRITE     (0x1)
++#define DR_RW_READ      (0x3)
++
++#define DR_LEN_1 (0x0)
++#define DR_LEN_2 (0x4)
++#define DR_LEN_4 (0xC)
++#define DR_LEN_8 (0x8)
++
++#define DR_LOCAL_ENABLE_SHIFT  0
++#define DR_GLOBAL_ENABLE_SHIFT 1
++#define DR_ENABLE_SIZE         2
++
++#define DR_LOCAL_ENABLE_MASK  (0x55)
++#define DR_GLOBAL_ENABLE_MASK (0xAA)
++
++
++#if SIZE_MAX > 4294967295
++# define DR_CONTROL_RESERVED (0xFFFFFFFF0000FC00UL)
++#else
++# define DR_CONTROL_RESERVED (0x00FC00U)
++#endif
++#define DR_LOCAL_SLOWDOWN   (0x100)
++#define DR_GLOBAL_SLOWDOWN  (0x200)
++
++#endif