This is an automated email from the git hooks/post-receive script. abe pushed a commit to branch master in repository libapp-stacktrace-perl.
commit 46dabb1f94fdef78d946427317c4a9dc3f175651 Author: Axel Beckert <a...@deuxchevaux.org> Date: Sat Dec 10 03:27:11 2016 +0100 Add patch by Niko Tyni to fix FTBFS with newer toolchain Thanks Niko! Addresses: #775744 --- debian/changelog | 4 + .../0001-Pointers-should-be-long-not-int.patch | 372 +++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 377 insertions(+) diff --git a/debian/changelog b/debian/changelog index 3de9ba2..22dea18 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,10 @@ libapp-stacktrace-perl (0.09-2) UNRELEASED; urgency=medium * debian/upstream/metadata: change GitHub/CPAN URL(s) to HTTPS. * debian/upstream/metadata: use HTTPS for GitHub URLs. + [ Axel Beckert ] + * Add patch by Niko Tyni to fix FTBFS with newer toolchain. Thanks! + (Addresses: #775744) + -- Salvatore Bonaccorso <car...@debian.org> Sat, 30 Jan 2016 20:02:54 +0100 libapp-stacktrace-perl (0.09-1) unstable; urgency=low diff --git a/debian/patches/0001-Pointers-should-be-long-not-int.patch b/debian/patches/0001-Pointers-should-be-long-not-int.patch new file mode 100644 index 0000000..6156c3f --- /dev/null +++ b/debian/patches/0001-Pointers-should-be-long-not-int.patch @@ -0,0 +1,372 @@ +From 6712a7b680bf5e88cf30a5251b90872418c320f2 Mon Sep 17 00:00:00 2001 +From: Niko Tyni <nt...@debian.org> +Date: Tue, 6 Dec 2016 13:56:46 +0200 +Subject: [PATCH] Pointers should be long not int + +Casting pointers to int types breaks on 64-bit platforms where Perl uses +memory areas with pointers over 32 bits, which seems to be the case for +PIE (position independent executable) builds. + +This only touches the code path relevant to Debian; 5.8, 5.10, +and unthreaded code paths are intended to be unaffected. + +The changes to thread dumping parts are untested as they are not covered +by the test suite. + +Bug-Debian: https://bugs.debian.org/775744 +--- + lib/App/Stacktrace/perl_backtrace_raw.txt | 118 +++++++++++++++--------------- + 1 file changed, 59 insertions(+), 59 deletions(-) + +diff --git a/lib/App/Stacktrace/perl_backtrace_raw.txt b/lib/App/Stacktrace/perl_backtrace_raw.txt +index 9480e4d..41cf4e6 100644 +--- a/lib/App/Stacktrace/perl_backtrace_raw.txt ++++ b/lib/App/Stacktrace/perl_backtrace_raw.txt +@@ -60,13 +60,13 @@ define perl_backtrace_an_interp + printf "interpreter=%#x\n", $interpreter + if $interpreter + x/128xw $interpreter +- print $stackinfo = (int) *((int*) ($INTERPRETER_curstackinfo + (int) $interpreter)) ++ print $stackinfo = (long) *((long*) ($INTERPRETER_curstackinfo + (long) $interpreter)) + else +- print $stackinfo = (int) *((int*) ($INTERPRETER_curstackinfo + (int) $interpreter)) ++ print $stackinfo = (long) *((long*) ($INTERPRETER_curstackinfo + (long) $interpreter)) + end + else + if $interpreter +- set $stackinfo = (int) *((int*) ($INTERPRETER_curstackinfo + (int) $interpreter)) ++ set $stackinfo = (long) *((long*) ($INTERPRETER_curstackinfo + (long) $interpreter)) + else + set $stackinfo = 0 + end +@@ -76,13 +76,13 @@ define perl_backtrace_an_interp + printf "stackinfo=%#x\n", $stackinfo + if $stackinfo + x/128xw $stackinfo +- print $cxstack = (int) *((int*) ($STACKINFO_cxstack + (int) $stackinfo)) ++ print $cxstack = (long) *((long*) ($STACKINFO_cxstack + (long) $stackinfo)) + else +- print $cxstack = (int) *((int*) ($STACKINFO_cxstack + (int) $stackinfo)) ++ print $cxstack = (long) *((long*) ($STACKINFO_cxstack + (long) $stackinfo)) + end + else + if $stackinfo +- set $cxstack = (int) *((int*) ($STACKINFO_cxstack + (int) $stackinfo)) ++ set $cxstack = (long) *((long*) ($STACKINFO_cxstack + (long) $stackinfo)) + else + set $cxstack = 0 + end +@@ -91,13 +91,13 @@ define perl_backtrace_an_interp + printf "stackinfo=%#x\n", $stackinfo + if $stackinfo + x/128xw $stackinfo +- print $cxix = (int) *((int*) ($STACKINFO_cxix + (int) $stackinfo)) ++ print $cxix = (int) *((int*) ($STACKINFO_cxix + (long) $stackinfo)) + else +- print $cxix = (int) *((int*) ($STACKINFO_cxix + (int) $stackinfo)) ++ print $cxix = (int) *((int*) ($STACKINFO_cxix + (long) $stackinfo)) + end + else + if $stackinfo +- set $cxix = (int) *((int*) ($STACKINFO_cxix + (int) $stackinfo)) ++ set $cxix = (int) *((int*) ($STACKINFO_cxix + (long) $stackinfo)) + else + set $cxix = 0 + end +@@ -108,13 +108,13 @@ define perl_backtrace_an_interp + printf "cxstack=%#x\n", $cxstack + if $cxstack + x/128xw $cxstack +- print $context = (int) (($CONTEXT_sizeof * $i) + (int) $cxstack) ++ print $context = (long) (($CONTEXT_sizeof * $i) + (long) $cxstack) + else +- print $context = (int) (($CONTEXT_sizeof * $i) + (int) $cxstack) ++ print $context = (long) (($CONTEXT_sizeof * $i) + (long) $cxstack) + end + else + if $cxstack +- set $context = (int) (($CONTEXT_sizeof * $i) + (int) $cxstack) ++ set $context = (long) (($CONTEXT_sizeof * $i) + (long) $cxstack) + else + set $context = 0 + end +@@ -123,13 +123,13 @@ define perl_backtrace_an_interp + printf "context=%#x\n", $context + if $context + x/128xw $context +- print $type = (int) (((int) *((int*) ($CONTEXT_type + (int) $context))) & $CXTYPEMASK) ++ print $type = (int) (((int) *((int*) ($CONTEXT_type + (long) $context))) & $CXTYPEMASK) + else +- print $type = (int) (((int) *((int*) ($CONTEXT_type + (int) $context))) & $CXTYPEMASK) ++ print $type = (int) (((int) *((int*) ($CONTEXT_type + (long) $context))) & $CXTYPEMASK) + end + else + if $context +- set $type = (int) (((int) *((int*) ($CONTEXT_type + (int) $context))) & $CXTYPEMASK) ++ set $type = (int) (((int) *((int*) ($CONTEXT_type + (long) $context))) & $CXTYPEMASK) + else + set $type = 0 + end +@@ -140,13 +140,13 @@ define perl_backtrace_an_interp + printf "context=%#x\n", $context + if $context + x/128xw $context +- print $cop = (int) *((int*) ($CONTEXT_cop + (int) $context)) ++ print $cop = (long) *((long*) ($CONTEXT_cop + (long) $context)) + else +- print $cop = (int) *((int*) ($CONTEXT_cop + (int) $context)) ++ print $cop = (long) *((long*) ($CONTEXT_cop + (long) $context)) + end + else + if $context +- set $cop = (int) *((int*) ($CONTEXT_cop + (int) $context)) ++ set $cop = (long) *((long*) ($CONTEXT_cop + (long) $context)) + else + set $cop = 0 + end +@@ -155,13 +155,13 @@ define perl_backtrace_an_interp + printf "cop=%#x\n", $cop + if $cop + x/128xw $cop +- print $file = (char*) *(int*) ($COP_file + (int) $cop) ++ print $file = (char*) *(long*) ($COP_file + (long) $cop) + else +- print $file = (char*) *(int*) ($COP_file + (int) $cop) ++ print $file = (char*) *(long*) ($COP_file + (long) $cop) + end + else + if $cop +- set $file = (char*) *(int*) ($COP_file + (int) $cop) ++ set $file = (char*) *(long*) ($COP_file + (long) $cop) + else + set $file = 0 + end +@@ -173,13 +173,13 @@ define perl_backtrace_an_interp + printf "cop=%#x\n", $cop + if $cop + x/128xw $cop +- print $line = (int) *((int*) ($COP_line + (int) $cop)) ++ print $line = (int) *((int*) ($COP_line + (long) $cop)) + else +- print $line = (int) *((int*) ($COP_line + (int) $cop)) ++ print $line = (int) *((int*) ($COP_line + (long) $cop)) + end + else + if $cop +- set $line = (int) *((int*) ($COP_line + (int) $cop)) ++ set $line = (int) *((int*) ($COP_line + (long) $cop)) + else + set $line = 0 + end +@@ -196,13 +196,13 @@ define perl_backtrace_an_interp + printf "stackinfo=%#x\n", $stackinfo + if $stackinfo + x/128xw $stackinfo +- print $stackinfo = (int) *((int*) ($STACKINFO_prev + (int) $stackinfo)) ++ print $stackinfo = (long) *((long*) ($STACKINFO_prev + (long) $stackinfo)) + else +- print $stackinfo = (int) *((int*) ($STACKINFO_prev + (int) $stackinfo)) ++ print $stackinfo = (long) *((long*) ($STACKINFO_prev + (long) $stackinfo)) + end + else + if $stackinfo +- set $stackinfo = (int) *((int*) ($STACKINFO_prev + (int) $stackinfo)) ++ set $stackinfo = (long) *((long*) ($STACKINFO_prev + (long) $stackinfo)) + else + set $stackinfo = 0 + end +@@ -214,13 +214,13 @@ define perl_backtrace_a_thread + printf "thread=%#x\n", $thread + if $thread + x/128xw $thread +- print $tid = (int) *((int*) ($THREAD_tid + (int) $thread)) ++ print $tid = (int) *((int*) ($THREAD_tid + (long) $thread)) + else +- print $tid = (int) *((int*) ($THREAD_tid + (int) $thread)) ++ print $tid = (int) *((int*) ($THREAD_tid + (long) $thread)) + end + else + if $thread +- set $tid = (int) *((int*) ($THREAD_tid + (int) $thread)) ++ set $tid = (int) *((int*) ($THREAD_tid + (long) $thread)) + else + set $tid = 0 + end +@@ -229,9 +229,9 @@ define perl_backtrace_a_thread + printf "thread=%#x\n", $thread + if $thread + x/128xw $thread +- print $statei = (int) *((int*) ($THREAD_state + (int) $thread)) ++ print $statei = (int) *((int*) ($THREAD_state + (long) $thread)) + else +- print $statei = (int) *((int*) ($THREAD_state + (int) $thread)) ++ print $statei = (int) *((int*) ($THREAD_state + (long) $thread)) + end + else + if $thread +@@ -274,13 +274,13 @@ define perl_backtrace_a_thread + printf "thread=%#x\n", $thread + if $thread + x/128xw $thread +- print $interpreter = (int) *((int*) ($THREAD_interpreter + (int) $thread)) ++ print $interpreter = (int) *((int*) ($THREAD_interpreter + (long) $thread)) + else +- print $interpreter = (int) *((int*) ($THREAD_interpreter + (int) $thread)) ++ print $interpreter = (int) *((int*) ($THREAD_interpreter + (long) $thread)) + end + else + if $thread +- set $interpreter = (int) *((int*) ($THREAD_interpreter + (int) $thread)) ++ set $interpreter = (int) *((int*) ($THREAD_interpreter + (long) $thread)) + else + set $interpreter = 0 + end +@@ -1399,13 +1399,13 @@ define perl_backtrace_5_12_threads + printf "interpreter=%#x\n", $interpreter + if $interpreter + x/128xw $interpreter +- print $modglobal = (int) *((int*) ($INTERPRETER_modglobal + (int) $interpreter)) ++ print $modglobal = (long) *((long*) ($INTERPRETER_modglobal + (long) $interpreter)) + else +- print $modglobal = (int) *((int*) ($INTERPRETER_modglobal + (int) $interpreter)) ++ print $modglobal = (long) *((long*) ($INTERPRETER_modglobal + (long) $interpreter)) + end + else + if $interpreter +- set $modglobal = (int) *((int*) ($INTERPRETER_modglobal + (int) $interpreter)) ++ set $modglobal = (long) *((long*) ($INTERPRETER_modglobal + (long) $interpreter)) + else + set $modglobal = 0 + end +@@ -1417,7 +1417,7 @@ define perl_backtrace_5_12_threads + x/128xw $interpreter + printf "modglobal=%#x\n", $modglobal + x/128xw $modglobal +- print $my_pool_svp = (int) Perl_hv_fetch((int) $interpreter, (int) $modglobal, $POOL_KEY, $POOL_KEY_LEN, 0) ++ print $my_pool_svp = (long) Perl_hv_fetch((long) $interpreter, (long) $modglobal, $POOL_KEY, $POOL_KEY_LEN, 0) + else + printf "interpreter=%#x\n", $interpreter + x/128xw $interpreter +@@ -1439,7 +1439,7 @@ define perl_backtrace_5_12_threads + else + if $interpreter + if $modglobal +- set $my_pool_svp = (int) Perl_hv_fetch((int) $interpreter, (int) $modglobal, $POOL_KEY, $POOL_KEY_LEN, 0) ++ set $my_pool_svp = (long) Perl_hv_fetch((long) $interpreter, (long) $modglobal, $POOL_KEY, $POOL_KEY_LEN, 0) + else + set $my_pool_svp = 0 + end +@@ -1452,13 +1452,13 @@ define perl_backtrace_5_12_threads + printf "my_pool_svp=%#x\n", $my_pool_svp + if $my_pool_svp + x/128xw $my_pool_svp +- print $my_pool_sv = (int) *((int*) (int) $my_pool_svp) ++ print $my_pool_sv = (long) *((long*) (long) $my_pool_svp) + else +- print $my_pool_sv = (int) *((int*) (int) $my_pool_svp) ++ print $my_pool_sv = (long) *((long*) (long) $my_pool_svp) + end + else + if $my_pool_svp +- set $my_pool_sv = (int) *((int*) (int) $my_pool_svp) ++ set $my_pool_sv = (long) *((long*) (long) $my_pool_svp) + else + set $my_pool_sv = 0 + end +@@ -1467,13 +1467,13 @@ define perl_backtrace_5_12_threads + printf "my_pool_sv=%#x\n", $my_pool_sv + if $my_pool_sv + x/128xw $my_pool_sv +- print $my_pool_svval = (int) *((int*) ($SV_any + (int) $my_pool_sv)) ++ print $my_pool_svval = (long) *((long*) ($SV_any + (long) $my_pool_sv)) + else +- print $my_pool_svval = (int) *((int*) ($SV_any + (int) $my_pool_sv)) ++ print $my_pool_svval = (long) *((long*) ($SV_any + (long) $my_pool_sv)) + end + else + if $my_pool_sv +- set $my_pool_svval = (int) *((int*) ($SV_any + (int) $my_pool_sv)) ++ set $my_pool_svval = (long) *((long*) ($SV_any + (long) $my_pool_sv)) + else + set $my_pool_svval = 0 + end +@@ -1482,13 +1482,13 @@ define perl_backtrace_5_12_threads + printf "my_pool_svval=%#x\n", $my_pool_svval + if $my_pool_svval + x/128xw $my_pool_svval +- print $my_poolp = (int) *((int*) ($SV_uv + (int) $my_pool_svval)) ++ print $my_poolp = (long) *((long*) ($SV_uv + (long) $my_pool_svval)) + else +- print $my_poolp = (int) *((int*) ($SV_uv + (int) $my_pool_svval)) ++ print $my_poolp = (long) *((long*) ($SV_uv + (long) $my_pool_svval)) + end + else + if $my_pool_svval +- set $my_poolp = (int) *((int*) ($SV_uv + (int) $my_pool_svval)) ++ set $my_poolp = (long) *((long*) ($SV_uv + (long) $my_pool_svval)) + else + set $my_poolp = 0 + end +@@ -1497,13 +1497,13 @@ define perl_backtrace_5_12_threads + printf "my_poolp=%#x\n", $my_poolp + if $my_poolp + x/128xw $my_poolp +- print $main_thread = $POOLP_main_thread + (int) $my_poolp ++ print $main_thread = $POOLP_main_thread + (long) $my_poolp + else +- print $main_thread = $POOLP_main_thread + (int) $my_poolp ++ print $main_thread = $POOLP_main_thread + (long) $my_poolp + end + else + if $my_poolp +- set $main_thread = $POOLP_main_thread + (int) $my_poolp ++ set $main_thread = $POOLP_main_thread + (long) $my_poolp + else + set $main_thread = 0 + end +@@ -1528,13 +1528,13 @@ define perl_backtrace_5_12_threads + printf "main_thread=%#x\n", $main_thread + if $main_thread + x/128xw $main_thread +- print $thread = (int) *((int*) ($THREAD_next + (int) $main_thread)) ++ print $thread = (long) *((long*) ($THREAD_next + (long) $main_thread)) + else +- print $thread = (int) *((int*) ($THREAD_next + (int) $main_thread)) ++ print $thread = (long) *((long*) ($THREAD_next + (long) $main_thread)) + end + else + if $main_thread +- set $thread = (int) *((int*) ($THREAD_next + (int) $main_thread)) ++ set $thread = (long) *((long*) ($THREAD_next + (long) $main_thread)) + else + set $thread = 0 + end +@@ -1545,13 +1545,13 @@ define perl_backtrace_5_12_threads + printf "thread=%#x\n", $thread + if $thread + x/128xw $thread +- print $thread = (int) *((int*) ($THREAD_next + (int) $thread)) ++ print $thread = (long) *((long*) ($THREAD_next + (long) $thread)) + else +- print $thread = (int) *((int*) ($THREAD_next + (int) $thread)) ++ print $thread = (long) *((long*) ($THREAD_next + (long) $thread)) + end + else + if $thread +- set $thread = (int) *((int*) ($THREAD_next + (int) $thread)) ++ set $thread = (long) *((long*) ($THREAD_next + (long) $thread)) + else + set $thread = 0 + end +@@ -1562,7 +1562,7 @@ define perl_backtrace_5_12_threads + end + end + define perl_backtrace_5_12_x +- set $interpreter = (int) Perl_get_context() ++ set $interpreter = (long) Perl_get_context() + if $interpreter + perl_backtrace_5_12_threads + else +-- +2.10.2 + diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..1d02bec --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +0001-Pointers-should-be-long-not-int.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libapp-stacktrace-perl.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkg-perl-cvs-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits