Просмотр исходного кода

gdb: fix compilation for x86_64 with musl

Signed-off-by: Steven Barth <[email protected]>

SVN-Revision: 46249
Steven Barth 10 лет назад
Родитель
Сommit
e71141ef23
2 измененных файлов с 65 добавлено и 1 удалено
  1. 1 1
      package/devel/gdb/Makefile
  2. 64 0
      package/devel/gdb/patches/101-musl-fix-x86_64.patch

+ 1 - 1
package/devel/gdb/Makefile

@@ -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

+ 64 - 0
package/devel/gdb/patches/101-musl-fix-x86_64.patch

@@ -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