Date: Wed, 17 Feb 2010 19:31:30 GMT From: bf <bf1783@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/144048: [PATCH]devel/abi-compliance-checker: update to 1.13 Message-ID: <201002171931.o1HJVUDD059836@www.freebsd.org> Resent-Message-ID: <201002171940.o1HJe3kr078641@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 144048 >Category: ports >Synopsis: [PATCH]devel/abi-compliance-checker: update to 1.13 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Wed Feb 17 19:40:03 UTC 2010 >Closed-Date: >Last-Modified: >Originator: bf >Release: 9-CURRENT amd64 >Organization: - >Environment: >Description: Unfortunately, the upstream maintainer made some changes that rely upon behavior specific to GNU sed, so I had to temporarily add gsed as a run-time dependency. I will try to remove this dependency later. I also updated the pkg-descr, and tried to make it a bit more readable. >How-To-Repeat: >Fix: Patch attached with submission follows: diff -x 'old.*' -x 'new.*' -ruN abi-compliance-checker.orig/Makefile abi-compliance-checker/Makefile --- abi-compliance-checker.orig/Makefile 2009-11-13 20:32:00.000000000 -0500 +++ abi-compliance-checker/Makefile 2010-02-17 14:15:50.000000000 -0500 @@ -6,14 +6,16 @@ # PORTNAME= abi-compliance-checker -PORTVERSION= 1.10 +PORTVERSION= 1.13 CATEGORIES= devel perl5 -MASTER_SITES= http://ispras.linux-foundation.org/images/3/34/ +MASTER_SITES= http://ispras.linux-foundation.org/images/b/ba/ DISTFILES= ${PORTNAME:S/^a/A/}-${PORTVERSION}${EXTRACT_SUFX} MAINTAINER= bf1783@gmail.com COMMENT= Checks binary compatibility of two versions of a C/C++ shared library +RUN_DEPENDS= ${LOCALBASE}/bin/gsed:${PORTSDIR}/textproc/gsed + NO_BUILD= yes USE_PERL5_RUN= yes @@ -26,6 +28,7 @@ ${REINPLACE_CMD} -e "s|c++filt|${CPPFILT}|g" \ -e "s|readelf|${READELF}|g" -e "s|g++|${CXX}|g" \ -e "s|\"gcc|\"${CC}|g" -e "s|-shared|& -fPIC|g" \ + -e "s|gsed|${LOCALBASE}/bin/gsed|g" \ ${WRKSRC}/${PORTNAME}.pl do-install: diff -x 'old.*' -x 'new.*' -ruN abi-compliance-checker.orig/distinfo abi-compliance-checker/distinfo --- abi-compliance-checker.orig/distinfo 2009-11-13 20:32:00.000000000 -0500 +++ abi-compliance-checker/distinfo 2010-02-17 12:30:02.000000000 -0500 @@ -1,3 +1,3 @@ -MD5 (Abi-compliance-checker-1.10.tar.gz) = 2e591097462d4fa60460ee7ddf023325 -SHA256 (Abi-compliance-checker-1.10.tar.gz) = 8b54c500745b333ae8db69d2d81236f8676d21e9195ad041a27b82af40e7abe0 -SIZE (Abi-compliance-checker-1.10.tar.gz) = 49323 +MD5 (Abi-compliance-checker-1.13.tar.gz) = 9c21a3dae0cfbc5ea2c3636551a52b49 +SHA256 (Abi-compliance-checker-1.13.tar.gz) = a2bb611b24754c7e0b3ea406911f79ed6c8b12e07a719f83b5d0740aef3efba3 +SIZE (Abi-compliance-checker-1.13.tar.gz) = 51118 diff -x 'old.*' -x 'new.*' -ruN abi-compliance-checker.orig/files/patch-abi-compliance-checker.pl abi-compliance-checker/files/patch-abi-compliance-checker.pl --- abi-compliance-checker.orig/files/patch-abi-compliance-checker.pl 2009-11-13 20:32:00.000000000 -0500 +++ abi-compliance-checker/files/patch-abi-compliance-checker.pl 2010-02-17 13:45:20.000000000 -0500 @@ -1,14 +1,23 @@ ---- abi-compliance-checker.pl.orig 2009-11-08 14:27:20.000000000 -0500 -+++ abi-compliance-checker.pl 2009-11-08 14:33:06.000000000 -0500 -@@ -6673,9 +6673,9 @@ - } - else +--- abi-compliance-checker.pl.orig 2010-02-16 07:13:09.000000000 -0500 ++++ abi-compliance-checker.pl 2010-02-17 13:20:46.000000000 -0500 +@@ -481,7 +481,7 @@ + return if(not $InfoPath or not -f $InfoPath); + my $InfoPath_New = $InfoPath.".1"; + #my $Keywords = join("\\|", keys(%check_node));#|grep "$Keywords" +- system("sed ':a;N;\$!ba;s/\\n[^\@]//g' ".esc($InfoPath)."|sed 's/ [ ]\\+/ /g' > ".esc($InfoPath_New)); ++ system("gsed ':a;N;\$!ba;s/\\n[^\@]//g' ".esc($InfoPath)."|gsed 's/ [ ]\\+/ /g' > ".esc($InfoPath_New)); + system("rm", "-fr", $InfoPath); + #getting info + open(INFO, $InfoPath_New) || die ("can't open file '\$InfoPath_New\': $!\n"); +@@ -7123,9 +7123,9 @@ + + sub get_solib_default_paths() + { +- foreach my $Line (split("\n", `ldconfig -p`)) ++ foreach my $Line (split("\n", `ldconfig -r`)) { -- foreach my $Line (split("\n", `ldconfig -p`)) -+ foreach my $Line (split("\n", `ldconfig -r`)) +- if($Line=~/\A[ \t]*([^ \t]+) .* \=\> (.+)\Z/) ++ if($Line=~/\A\t[0-9]*:(.+) \=\> (.+)\Z/) { -- if($Line=~/\A[ \t]*([^ \t]+) .* \=\> (.+)\Z/) -+ if($Line=~/\A\t[0-9]*:(.+) \=\> (.+)\Z/) - { - my ($SoCandidate, $Path) = ($1, $2); - + $SoLib_DefaultPath{$1} = $2; + } diff -x 'old.*' -x 'new.*' -ruN abi-compliance-checker.orig/pkg-descr abi-compliance-checker/pkg-descr --- abi-compliance-checker.orig/pkg-descr 2009-11-13 20:32:00.000000000 -0500 +++ abi-compliance-checker/pkg-descr 2010-02-17 14:06:33.000000000 -0500 @@ -3,18 +3,18 @@ XML format, abi-compliance-checker searches for the following kinds of binary compatibility problems: ---Added/withdrawn interfaces (functions, global variables) ---Problems in Data Types: - --Classes: added/withdrawn virtual functions (changes in layout of +--added/withdrawn interfaces (functions, global variables) +--changes to constants +--problems in data types: + --classes: added/withdrawn virtual functions (changes in layout of virtual table), virtual function positions, virtual function redefinitions - --Structural data types: added/withdrawn members (changes in layout of - type structure), - changes in members, size changes - --Enumerations: member value changes ---Interface problems: - --Parameters and return type changes - --Static property changes + --structural data types: added/withdrawn members (changes in layout of + type structure), changes in members, size changes + --enumerations: member value changes +--interface problems: + --parameter and return type changes + --incorrect symbol versions The checker then generates a report that assesses the risks of any potential problems detected. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002171931.o1HJVUDD059836>