Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Jan 2017 16:28:05 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r432435 - in head/devel/abi-compliance-checker: . files
Message-ID:  <201701251628.v0PGS51A094568@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib (src committer)
Date: Wed Jan 25 16:28:05 2017
New Revision: 432435
URL: https://svnweb.freebsd.org/changeset/ports/432435

Log:
  Update devel/abi-compliance-checker to the current git snapshot.
  
  The script now depends on two tools abi-dumper and vtable-dumper.  The
  only purpose of the tools is to provide neccessary services to the
  abi-compliance-checker, so I included all of them into the updated
  port, instead of providing dependencies.
  
  Sponsored by:	The FreeBSD Foundation
  Reviewed, tested and approved by:	ehaupt
  Differential revision:	https://reviews.freebsd.org/D9315

Added:
  head/devel/abi-compliance-checker/files/
  head/devel/abi-compliance-checker/files/patch-vdumper_Makefile   (contents, props changed)
  head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.c   (contents, props changed)
  head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.h   (contents, props changed)
Modified:
  head/devel/abi-compliance-checker/Makefile
  head/devel/abi-compliance-checker/distinfo

Modified: head/devel/abi-compliance-checker/Makefile
==============================================================================
--- head/devel/abi-compliance-checker/Makefile	Wed Jan 25 16:27:35 2017	(r432434)
+++ head/devel/abi-compliance-checker/Makefile	Wed Jan 25 16:28:05 2017	(r432435)
@@ -2,10 +2,8 @@
 # $FreeBSD$
 
 PORTNAME=	abi-compliance-checker
-PORTVERSION=	1.99
-PORTREVISION=	1
+DISTVERSION=	2.0b1
 CATEGORIES=	devel perl5
-MASTER_SITES=	LOCAL/bf/${PORTNAME}
 
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Checks binary compatibility of two versions of a C/C++ shared library
@@ -13,30 +11,39 @@ COMMENT=	Checks binary compatibility of 
 LICENSE=	LGPL20 GPLv2
 LICENSE_COMB=	dual
 
-USES=		perl5 shebangfix
-SHEBANG_FILES=	*.pl
-USE_GITHUB=	yes
-GH_ACCOUNT=	lvc
+RUN_DEPENDS=	exctags:devel/ctags
+RUN_DEPENDS+=	eu-readelf:devel/elfutils
 
-.if defined(MAINTAINER_MODE) || defined(PACKAGE_BUILDING)
-BUILD_DEPENDS?=	exctags:devel/ctags
-.else
+OPTIONS_DEFINE=	DOCS PORTS_BINUTILS
+PORTS_BINUTILS_DESC=	Use binutils from ports
+
+USES=		gmake perl5 shebangfix
 USE_PERL5=	run
-.endif
-RUN_DEPENDS?=	exctags:devel/ctags
-USE_GCC=	any
 
-NO_BUILD=	yes
-PLIST_FILES=	bin/${PORTNAME}.pl
+USE_GITHUB=	nodefault
+GH_ACCOUNT=	lvc
+GH_PROJECT=	vtable-dumper:vdumper abi-dumper:adumper \
+		abi-compliance-checker:checker
+GH_TAGNAME=	0e04246:vdumper 46aae79:adumper a6554a1:checker
+
+PLIST_FILES=	bin/${PORTNAME}.pl bin/abi-dumper.pl bin/vtable-dumper
+SHEBANG_FILES=	checker/*.pl adumper/*.pl
 
-OPTIONS_DEFINE=	DOCS
+PORTDATA=	*
+PORTDOCS=	*
+
+CTAGS?=		exctags
 
 .include <bsd.port.options.mk>
 
+.if ${PORT_OPTIONS:MPORTS_BINUTILS}
+RUN_DEPENDS+=	readelf:devel/binutils
+CPPFILT?=	${PREFIX}/bin/c++filt
+READELF?=	${PREFIX}/bin/readelf
+OBJDUMP?=	${PREFIX}/bin/objdump
+.else
 CPPFILT?=	/usr/bin/c++filt
-CTAGS?=		exctags
-GZ?=		/usr/bin/gzip
-READELF?=	/usr/bin/readelf
+.endif
 
 .if ${ARCH} == "sparc64"
 PICFLAG?=	-fPIC
@@ -44,9 +51,15 @@ PICFLAG?=	-fPIC
 PICFLAG?=	-fpic
 .endif
 
-PORTDATA=	*
-
-PORTDOCS=	*
+post-extract:
+	@${MKDIR} ${WRKSRC}
+	@${MV} ${WRKSRC_vdumper} ${WRKSRC}/vdumper
+	@${MV} ${WRKSRC_adumper} ${WRKSRC}/adumper
+	@${MV} ${WRKSRC_checker} ${WRKSRC}/checker
+
+do-build:
+	cd ${WRKSRC}/vdumper && \
+	    ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${_MAKE_JOBS} ${MAKE_ARGS}
 
 post-patch:
 	@${REINPLACE_CMD} \
@@ -55,28 +68,25 @@ post-patch:
 		-e "\|get_CmdPath(\"gcc\")|s|\"gcc\"|\"${CC}\"|" \
 		-e "\|get_CmdPath(\"objdump\")|s|\"objdump\"|\"${OBJDUMP}\"|" \
 		-e "\|get_CmdPath(\"readelf\")|s|\"readelf\"|\"${READELF}\"|" \
-		-e "\|my \$$GzipCmd =|s|=.*|= \"${GZ}\";|" \
+		-e "\|my \$$GzipCmd =|s|=.*|= \"${GZIP_CMD}\";|" \
 		-e "\|my \$$TarCmd =|s|=.*|= \"${TAR}\";|" \
 		-e "\|TarCmd -xv.*>|{h; s| >.*|\");|; x; s|-xv|-t|; G;}" \
 		-e "s|ACC_MODULES_INSTALL_PATH|${DATADIR}|" \
-		${WRKSRC}/${PORTNAME}.pl
+		${WRKSRC}/checker/${PORTNAME}.pl
 	@${SED} -i "" -e "\|BuildCmd|s|GCC_PATH.\"|& ${PICFLAG}|" \
-		${WRKSRC}/modules/Internals/RegTests.pm
+		${WRKSRC}/checker/modules/Internals/RegTests.pm
 
 do-install:
-	@${INSTALL_SCRIPT} ${WRKSRC}/${PORTNAME}.pl ${STAGEDIR}${PREFIX}/bin
+	${INSTALL_PROGRAM} ${WRKSRC}/vdumper/vtable-dumper \
+		${STAGEDIR}${PREFIX}/bin
+	${INSTALL_SCRIPT} ${WRKSRC}/adumper/abi-dumper.pl \
+		${STAGEDIR}${PREFIX}/bin
+	${INSTALL_SCRIPT} ${WRKSRC}/checker/${PORTNAME}.pl \
+		${STAGEDIR}${PREFIX}/bin
 	@${MKDIR} ${STAGEDIR}${DOCSDIR}
-	@(cd ${WRKSRC}/doc && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR})
+	(cd ${WRKSRC}/checker/doc && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR})
 	@${MKDIR} ${STAGEDIR}${DATADIR}
-	@(cd ${WRKSRC} && ${COPYTREE_SHARE} \
-	"modules/Internals modules/*.xml modules/Targets/unix" ${STAGEDIR}${DATADIR})
-
-.if defined(MAINTAINER_MODE) || defined(PACKAGE_BUILDING)
-check regression-test test: build
-	cd ${WRKSRC}; \
-	${PERL} ./${PORTNAME}.pl -test; \
-	${PERL} ./${PORTNAME}.pl -test-dump
-
-.endif
+	(cd ${WRKSRC}/checker && ${COPYTREE_SHARE} \
+		"modules/Internals modules/*.xml" ${STAGEDIR}${DATADIR})
 
 .include <bsd.port.mk>

Modified: head/devel/abi-compliance-checker/distinfo
==============================================================================
--- head/devel/abi-compliance-checker/distinfo	Wed Jan 25 16:27:35 2017	(r432434)
+++ head/devel/abi-compliance-checker/distinfo	Wed Jan 25 16:28:05 2017	(r432435)
@@ -1,2 +1,7 @@
-SHA256 (lvc-abi-compliance-checker-1.99_GH0.tar.gz) = c9b065c74685f6837592a6c8cf021f3ee9d6d61b6e6604fa58f2ce419ffc6f5d
-SIZE (lvc-abi-compliance-checker-1.99_GH0.tar.gz) = 264903
+TIMESTAMP = 1484248548
+SHA256 (lvc-vtable-dumper-0e04246_GH0.tar.gz) = 4eeadbaeb78c8d7603e0d84f72300b50a1b4d45e61994ba6196318d27cd4a23c
+SIZE (lvc-vtable-dumper-0e04246_GH0.tar.gz) = 16037
+SHA256 (lvc-abi-dumper-46aae79_GH0.tar.gz) = 9dc4232445d87b34eb614e286316ace6bf1ece367f8d644e4ab4a1839e818524
+SIZE (lvc-abi-dumper-46aae79_GH0.tar.gz) = 45264
+SHA256 (lvc-abi-compliance-checker-a6554a1_GH0.tar.gz) = 3b86001090b83f4c8389edab8483e276ab7dcab25f55a9df2ee8014a8081cdd1
+SIZE (lvc-abi-compliance-checker-a6554a1_GH0.tar.gz) = 228549

Added: head/devel/abi-compliance-checker/files/patch-vdumper_Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/abi-compliance-checker/files/patch-vdumper_Makefile	Wed Jan 25 16:28:05 2017	(r432435)
@@ -0,0 +1,22 @@
+--- vdumper/Makefile.orig	2016-10-04 16:28:00 UTC
++++ vdumper/Makefile
+@@ -7,8 +7,18 @@ install: vtable-dumper
+ 	mkdir -p $(DESTDIR)$(prefix)/bin/
+ 	install vtable-dumper $(DESTDIR)$(prefix)/bin/
+ 
++OS=$(shell uname -s)
++ifeq ($(OS), Linux)
++LIBDL=-ldl
++else  ifeq ($(OS), FreeBSD)
++LIBDL=
++else
++LIBDL=UNKNOWN
++endif
++
+ vtable-dumper: dump-vtable.c dump-vtable.h
+-	$(CC) $(CFLAGS) $(LDFLAGS) -o vtable-dumper dump-vtable.c -ldl -lelf -lstdc++
++	$(CC) $(CFLAGS) $(LDFLAGS) -o vtable-dumper dump-vtable.c \
++		$(LIBDL) -lelf -lstdc++
+ 
+ uninstall:
+ 	rm -f $(DESTDIR)$(prefix)/bin/vtable-dumper

Added: head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.c	Wed Jan 25 16:28:05 2017	(r432435)
@@ -0,0 +1,16 @@
+--- vdumper/dump-vtable.c.orig	2016-10-04 16:28:00 UTC
++++ vdumper/dump-vtable.c
+@@ -355,11 +355,11 @@ void print_VTable(void *dlhndl, vtable_i
+             {
+                 if ((ptrdiff_t)vfuncp < 0)
+                 {
+-                    printf("(int (*)(...)) -%016p\n", (void*) -(ptrdiff_t)vfuncp);
++                    printf("(int (*)(...)) -%16p\n", (void*) -(ptrdiff_t)vfuncp);
+                 }
+                 else
+                 {
+-                    printf("(int (*)(...)) %016p\n", vfuncp);
++                    printf("(int (*)(...)) %16p\n", vfuncp);
+                 }
+             }
+         }

Added: head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/abi-compliance-checker/files/patch-vdumper_dump-vtable.h	Wed Jan 25 16:28:05 2017	(r432435)
@@ -0,0 +1,10 @@
+--- vdumper/dump-vtable.h.orig	2016-10-04 16:28:00 UTC
++++ vdumper/dump-vtable.h
+@@ -22,6 +22,7 @@
+ 
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <stdint.h>
+ #include <dlfcn.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201701251628.v0PGS51A094568>