On Thu, 31 Aug 2017 08:07:45 -0400 Jeremy Bicha <jbi...@ubuntu.com> wrote: > This bug is still unfixed in Debian right? It makes debci less useful > for packages that use dh-acc. >
you are right the following debdiff is going in unstable *right now* (I also took the gcc fixes from Ubuntu) thanks! G. > Thanks, > Jeremy Bicha > >
diff -Nru abi-compliance-checker-1.99.22/debian/changelog abi-compliance-checker-1.99.22/debian/changelog --- abi-compliance-checker-1.99.22/debian/changelog 2016-07-16 21:24:13.000000000 +0200 +++ abi-compliance-checker-1.99.22/debian/changelog 2017-09-01 07:51:53.000000000 +0200 @@ -1,3 +1,16 @@ +abi-compliance-checker (1.99.22-1.1) unstable; urgency=high + + [ Dmitry Shachnev ] + * Add a patch to fix tests compilation with new GCC. + * Add a patch to not rely on GCC for symbols mangling, it is not working + with GCC 6 and GCC 7 because of PR c++/78040. + + [ Gianfranco Costamagna ] + * Non-maintainer upload + * Fix autopkgtests, due to bad doit call (Closes: #868473) + + -- Gianfranco Costamagna <locutusofb...@debian.org> Fri, 01 Sep 2017 07:51:53 +0200 + abi-compliance-checker (1.99.22-1) unstable; urgency=medium * New upstream release diff -Nru abi-compliance-checker-1.99.22/debian/dh/dh_acc abi-compliance-checker-1.99.22/debian/dh/dh_acc --- abi-compliance-checker-1.99.22/debian/dh/dh_acc 2016-07-16 21:23:50.000000000 +0200 +++ abi-compliance-checker-1.99.22/debian/dh/dh_acc 2017-09-01 07:51:12.000000000 +0200 @@ -56,11 +56,11 @@ if ($definition) { # TODO if next command fails, should output debug/log info? - doit("abi-compliance-checker -q -l $package -v1 $version -dump $definition -dump-path $abidump"); + doit('abi-compliance-checker', '-q', '-l', $package, '-v1', $version, '-dump', $definition, '-dump-path', $abidump); } if ($base) { - doit("abi-compliance-checker -l $package -d1 $base -d2 $abidump -report-path ${path}_report.html"); - doit("abi-compliance-checker -q -l $package -d1 $base -d2 $abidump -xml -report-path ${path}_report.xml"); + doit('abi-compliance-checker', '-l', $package, '-d1', $base, '-d2', $abidump, '-report-path', ${path}.'_report.html'); + doit('abi-compliance-checker', '-q', '-l', $package, '-d1', $base, '-d2', $abidump, '-xml', '-report-path', ${path}.'_report.xml'); } # TODO clean up temp files & logs } diff -Nru abi-compliance-checker-1.99.22/debian/patches/emergency-mode.patch abi-compliance-checker-1.99.22/debian/patches/emergency-mode.patch --- abi-compliance-checker-1.99.22/debian/patches/emergency-mode.patch 1970-01-01 01:00:00.000000000 +0100 +++ abi-compliance-checker-1.99.22/debian/patches/emergency-mode.patch 2017-09-01 07:51:12.000000000 +0200 @@ -0,0 +1,27 @@ +Description: enable emergency mode for newer GCC versions too, not only 4.8 + GCC 6 and newer do not mangle symbols, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78040. +Author: Dmitry Shachnev <mity...@debian.org> +Bug: https://github.com/lvc/abi-compliance-checker/issues/62 +Forwarded: no +Last-Update: 2017-08-13 + +--- a/abi-compliance-checker.pl ++++ b/abi-compliance-checker.pl +@@ -4939,7 +4939,7 @@ + # try to mangle symbol + if((not check_gcc($GCC_PATH, "4") and $SymbolInfo{$Version}{$InfoId}{"Class"}) + or (check_gcc($GCC_PATH, "4") and not $SymbolInfo{$Version}{$InfoId}{"Class"}) +- or $EMERGENCY_MODE_48) ++ or true) + { # GCC 3.x doesn't mangle class methods names in the TU dump (only functions and global data) + # GCC 4.x doesn't mangle C++ functions in the TU dump (only class methods) except extern "C" functions + # GCC 4.8.[012] doesn't mangle anything +@@ -4951,7 +4951,7 @@ + } + if($CheckHeadersOnly + or not $BinaryOnly +- or $EMERGENCY_MODE_48) ++ or true) + { # 1. --headers-only mode + # 2. not mangled src-only symbols + if(my $Mangled = mangle_symbol($InfoId, $Version, "GCC")) { diff -Nru abi-compliance-checker-1.99.22/debian/patches/fix-test-compilation.patch abi-compliance-checker-1.99.22/debian/patches/fix-test-compilation.patch --- abi-compliance-checker-1.99.22/debian/patches/fix-test-compilation.patch 1970-01-01 01:00:00.000000000 +0100 +++ abi-compliance-checker-1.99.22/debian/patches/fix-test-compilation.patch 2017-09-01 07:51:12.000000000 +0200 @@ -0,0 +1,17 @@ +Description: fix test compilation with new GCC + The implicit constructor is implicitly deleted because the const + member is not initialized. So we have to use an explicit one. +Author: Dmitry Shachnev <mity...@debian.org> +Forwarded: no (this test is disabled upstream) +Last-Update: 2017-08-13 + +--- a/modules/Internals/RegTests.pm ++++ b/modules/Internals/RegTests.pm +@@ -81,6 +81,7 @@ + T array[_P]; + typedef int My; + My var; ++ ChangedTemplate(): field(nullptr) {}; + }; + ChangedTemplate<int, 1>* changedTemplate();"; + $SOURCE1 .= " diff -Nru abi-compliance-checker-1.99.22/debian/patches/series abi-compliance-checker-1.99.22/debian/patches/series --- abi-compliance-checker-1.99.22/debian/patches/series 2016-07-16 21:23:50.000000000 +0200 +++ abi-compliance-checker-1.99.22/debian/patches/series 2017-09-01 07:51:12.000000000 +0200 @@ -1,3 +1,5 @@ remove-gcc-check.patch bug798481.patch typos.patch +fix-test-compilation.patch +emergency-mode.patch
signature.asc
Description: OpenPGP digital signature