OBS User unknown 2008-05-16 12:39:23 +00:00 committed by Git OBS Bridge
parent 7fcca6be12
commit 48aef0c3f9
7 changed files with 103 additions and 127 deletions

View File

@ -1,8 +0,0 @@
--- src/elf64.c.orig 2008-04-18 15:23:25.000000000 +0000
+++ src/elf64.c 2008-04-18 15:23:34.000000000 +0000
@@ -1,4 +1,5 @@
#ifndef UNW_REMOTE_ONLY
+# include <stdio.h>
# include "elf64.h"
# include "elfxx.c"
#endif

View File

@ -1,111 +0,0 @@
--- src/ia64/Gcreate_addr_space.c
+++ src/ia64/Gcreate_addr_space.c
@@ -33,14 +33,7 @@
#ifdef UNW_LOCAL_ONLY
return NULL;
#else
- unw_addr_space_t as = malloc (sizeof (*as));
-
- if (!as)
- return NULL;
-
- memset (as, 0, sizeof (*as));
-
- as->acc = *a;
+ unw_addr_space_t as;
/*
* IA-64 supports only big or little-endian, not weird stuff like
@@ -51,6 +44,14 @@
&& byte_order != __BIG_ENDIAN)
return NULL;
+ as = malloc (sizeof (*as));
+ if (!as)
+ return NULL;
+
+ memset (as, 0, sizeof (*as));
+
+ as->acc = *a;
+
if (byte_order == 0)
/* use host default: */
as->big_endian = (__BYTE_ORDER == __BIG_ENDIAN);
--- src/x86_64/Gresume.c
+++ src/x86_64/Gresume.c
@@ -35,6 +35,7 @@
x86_64_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
{
# warning Implement me!
+ return -UNW_EINVAL;
}
#endif /* !UNW_REMOTE_ONLY */
--- tests/Gtest-concurrent.c
+++ tests/Gtest-concurrent.c
@@ -84,9 +84,10 @@
int i;
for (i = 0; i < NTHREADS; ++i)
- pthread_create (th + i, NULL, worker, NULL);
+ if (pthread_create (th + i, NULL, worker, NULL))
+ break;
- for (i = 0; i < NTHREADS; ++i)
+ while (i-- > 0)
pthread_join (th[i], NULL);
}
--- tests/Makefile.am
+++ tests/Makefile.am
@@ -22,8 +22,7 @@
check_PROGRAMS_arch = Gia64-test-stack Lia64-test-stack \
Gia64-test-nat Lia64-test-nat \
Gia64-test-rbs Lia64-test-rbs \
- Gia64-test-readonly Lia64-test-readonly \
- ia64-test-setjmp ia64-test-sig
+ ia64-test-sig
endif
check_SCRIPTS_cdep = run-ptrace-mapper run-ptrace-misc
check_PROGRAMS_cdep = Gtest-bt Ltest-bt Gtest-exc Ltest-exc \
@@ -57,8 +56,6 @@
noinst_PROGRAMS = $(noinst_PROGRAMS_common) $(noinst_PROGRAMS_cdep) \
$(noinst_PROGRAMS_arch)
-Lia64_test_readonly_SOURCES = Lia64-test-readonly.c ia64-test-readonly-asm.S
-Gia64_test_readonly_SOURCES = Gia64-test-readonly.c ia64-test-readonly-asm.S
Lia64_test_stack_SOURCES = Lia64-test-stack.c ia64-test-stack-asm.S \
ia64-test-stack.h
Gia64_test_stack_SOURCES = Gia64-test-stack.c ia64-test-stack-asm.S \
--- tests/Makefile.in
+++ tests/Makefile.in
@@ -73,9 +73,6 @@
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-nat$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-rbs$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-rbs$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-readonly$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig$(EXEEXT)
am__EXEEXT_4 =
@REMOTE_ONLY_FALSE@am__EXEEXT_5 = forker$(EXEEXT) mapper$(EXEEXT) \
@@ -455,8 +452,7 @@
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@check_PROGRAMS_arch = Gia64-test-stack Lia64-test-stack \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-nat Lia64-test-nat \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-rbs Lia64-test-rbs \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly Lia64-test-readonly \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp ia64-test-sig
+@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig
check_SCRIPTS = $(check_SCRIPTS_common) $(check_SCRIPTS_cdep) \
$(check_SCRIPTS_arch)
--- tests/ia64-test-setjmp.c
+++ tests/ia64-test-setjmp.c
@@ -34,6 +34,7 @@
#include <setjmp.h>
#include <signal.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
#include <sys/mman.h>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:62c585e7939569b8c1bfb8988a536d0c270a4dfea7aa3a74199a9385c000b918
size 543170

80
libunwind-0.98.6.diff Normal file
View File

@ -0,0 +1,80 @@
--- include/internal.h
+++ include/internal.h
@@ -201,11 +201,11 @@ extern int unwi_dyn_validate_cache (unw_
extern unw_dyn_info_list_t _U_dyn_info_list;
extern pthread_mutex_t _U_dyn_info_list_lock;
+#include <stdio.h>
#if UNW_DEBUG
#define unwi_debug_level UNWI_ARCH_OBJ(debug_level)
extern long unwi_debug_level;
-# include <stdio.h>
# define Debug(level,format...) \
do { \
if (unwi_debug_level > level) \
--- src/x86_64/Gresume.c
+++ src/x86_64/Gresume.c
@@ -35,6 +35,7 @@ HIDDEN inline int
x86_64_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
{
# warning Implement me!
+ return -UNW_EINVAL;
}
#endif /* !UNW_REMOTE_ONLY */
--- tests/Gtest-concurrent.c
+++ tests/Gtest-concurrent.c
@@ -84,9 +84,10 @@ doit (void)
int i;
for (i = 0; i < NTHREADS; ++i)
- pthread_create (th + i, NULL, worker, NULL);
+ if (pthread_create (th + i, NULL, worker, NULL))
+ break;
- for (i = 0; i < NTHREADS; ++i)
+ while (i-- > 0)
pthread_join (th[i], NULL);
}
--- tests/Makefile.am
+++ tests/Makefile.am
@@ -23,7 +23,7 @@ if ARCH_IA64
Gia64-test-nat Lia64-test-nat \
Gia64-test-rbs Lia64-test-rbs \
Gia64-test-readonly Lia64-test-readonly \
- ia64-test-setjmp ia64-test-sig
+ ia64-test-sig
endif
check_SCRIPTS_cdep = run-ptrace-mapper run-ptrace-misc
check_PROGRAMS_cdep = Gtest-bt Ltest-bt Gtest-exc Ltest-exc \
--- tests/Makefile.in
+++ tests/Makefile.in
@@ -73,7 +73,6 @@ am__EXEEXT_1 = test-proc-info$(EXEEXT) t
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-rbs$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-readonly$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig$(EXEEXT)
am__EXEEXT_4 =
@REMOTE_ONLY_FALSE@am__EXEEXT_5 = forker$(EXEEXT) mapper$(EXEEXT) \
@@ -459,7 +458,7 @@ check_SCRIPTS_common = run-check-namespa
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-nat Lia64-test-nat \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-rbs Lia64-test-rbs \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly Lia64-test-readonly \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp ia64-test-sig
+@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig
check_SCRIPTS = $(check_SCRIPTS_common) $(check_SCRIPTS_cdep) \
$(check_SCRIPTS_arch)
--- tests/ia64-test-setjmp.c
+++ tests/ia64-test-setjmp.c
@@ -34,6 +34,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DE
#include <setjmp.h>
#include <signal.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
#include <sys/mman.h>

3
libunwind-0.98.6.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fdfdbbfb03d735f75c30ea3c968535baf38fa8f77a432f15afad64d2fdc4dde1
size 555902

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Tue May 13 18:09:29 CEST 2008 - schwab@suse.de
- Update to libunwind 0.98.6.
** Fix address-leak triggered by invalid byte-order. Fixed by Andreas Schwab.
** On ia64, get_static_proc_name() no longer uses a weak reference to
_Uelf64_get_proc_name(), since that was causing problems with archive
libraries and no longer served any apparent purpose. Fixed by
Curt Wohlgemuth.
-------------------------------------------------------------------
Fri Apr 18 17:26:49 CEST 2008 - rguenther@suse.de

View File

@ -1,5 +1,5 @@
#
# spec file for package libunwind (Version 0.98.5)
# spec file for package libunwind (Version 0.98.6)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@ -15,13 +15,12 @@ Name: libunwind
BuildRequires: gcc-c++
Url: http://savannah.nongnu.org/projects/libunwind/
Summary: Unwind Library
Version: 0.98.5
Release: 108
Version: 0.98.6
Release: 1
Group: System/Base
License: X11/MIT
Source: libunwind-%{version}.tar.gz
Patch: libunwind-%{version}.diff
Patch1: libunwind-%{version}-buildfix.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: %ix86 ia64 x86_64
@ -55,7 +54,6 @@ Authors:
%prep
%setup -q
%patch
%patch1
%build
#chmod +w aclocal.m4 configure
@ -99,6 +97,13 @@ rm -rf $RPM_BUILD_ROOT
%doc %{_mandir}/man?/*
%changelog
* Tue May 13 2008 schwab@suse.de
- Update to libunwind 0.98.6.
** Fix address-leak triggered by invalid byte-order. Fixed by Andreas Schwab.
** On ia64, get_static_proc_name() no longer uses a weak reference to
_Uelf64_get_proc_name(), since that was causing problems with archive
libraries and no longer served any apparent purpose. Fixed by
Curt Wohlgemuth.
* Fri Apr 18 2008 rguenther@suse.de
- Fix build.
* Wed Jun 06 2007 schwab@suse.de