svn commit: r567531 - in head/devel: . libabigail libabigail/files
Adriaan de Groot
adridg at FreeBSD.org
Sun Mar 7 00:53:59 UTC 2021
Author: adridg
Date: Sun Mar 7 00:53:57 2021
New Revision: 567531
URL: https://svnweb.freebsd.org/changeset/ports/567531
Log:
New port devel/libabigail
An ABI-wrestling-suite of libraries and tools. Uses elfutils
to diff, lint, compare and report on compatibility of ABIs
in shared-libraries.
Common use is diffing two .so's, like `abidiff libpkg.so libpkg-devel.so`
Added:
head/devel/libabigail/
head/devel/libabigail/Makefile (contents, props changed)
head/devel/libabigail/distinfo (contents, props changed)
head/devel/libabigail/files/
head/devel/libabigail/files/patch-src_abg-elf-helpers.cc (contents, props changed)
head/devel/libabigail/files/patch-src_abg-tools-utils.cc (contents, props changed)
head/devel/libabigail/files/patch-tools_abisym.cc (contents, props changed)
head/devel/libabigail/pkg-descr (contents, props changed)
head/devel/libabigail/pkg-plist (contents, props changed)
Modified:
head/devel/Makefile
Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile Sun Mar 7 00:29:15 2021 (r567530)
+++ head/devel/Makefile Sun Mar 7 00:53:57 2021 (r567531)
@@ -1092,6 +1092,7 @@
SUBDIR += libCello
SUBDIR += libIDL
SUBDIR += libPropList
+ SUBDIR += libabigail
SUBDIR += libafterbase
SUBDIR += liballium
SUBDIR += libantlr3c
Added: head/devel/libabigail/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/Makefile Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+PORTNAME= libabigail
+DISTVERSION= 1.8.2
+CATEGORIES= devel
+MASTER_SITES= SOURCEWARE/${PORTNAME}/
+
+MAINTAINER= adridg at FreeBSD.org
+COMMENT= ABI Generic Analysis and Instrumentation Library
+
+LICENSE= LGPL3+
+LICENSE_FILE= ${WRKSRC}/COPYING-LGPLV3
+
+LIB_DEPENDS= libxml2.so:textproc/libxml2 \
+ libdw.so:devel/elfutils
+
+USES= gmake libtool localbase pkgconfig python
+
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --enable-cxx11=yes
+
+.include <bsd.port.mk>
Added: head/devel/libabigail/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/distinfo Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1615074410
+SHA256 (libabigail-1.8.2.tar.gz) = 86347c9f0a8666f263fd63f8c3fe4c4f9cb1bdb3ec4260ecbaf117d137e89787
+SIZE (libabigail-1.8.2.tar.gz) = 258919334
Added: head/devel/libabigail/files/patch-src_abg-elf-helpers.cc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/files/patch-src_abg-elf-helpers.cc Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,24 @@
+--- src/abg-elf-helpers.cc.orig 2021-03-07 00:14:31 UTC
++++ src/abg-elf-helpers.cc
+@@ -178,8 +178,10 @@ e_machine_to_string(GElf_Half e_machine)
+ return "elf-motorola-rce";
+ case EM_ARM:
+ return "elf-arm";
++#ifdef EM_FAKE_ALPHA
+ case EM_FAKE_ALPHA:
+ return "elf-digital-alpha";
++#endif
+ case EM_SH:
+ return "elf-hitachi-sh";
+ case EM_SPARCV9:
+@@ -298,8 +300,10 @@ e_machine_to_string(GElf_Half e_machine)
+ return "elf-tilera-tilegx";
+ #endif
+
++#ifdef EM_NUM
+ case EM_NUM:
+ return "elf-last-arch-number";
++#endif
+ case EM_ALPHA:
+ return "elf-non-official-alpha";
+ default:
Added: head/devel/libabigail/files/patch-src_abg-tools-utils.cc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/files/patch-src_abg-tools-utils.cc Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,19 @@
+--- src/abg-tools-utils.cc.orig 2021-03-07 00:11:55 UTC
++++ src/abg-tools-utils.cc
+@@ -1713,6 +1713,16 @@ struct malloced_char_star_deleter
+ {free(ptr);}
+ };
+
++#ifdef __FreeBSD__
++/* get_current_dir_name() is a GNU extension.
++ *
++ */
++char *get_current_dir_name()
++{
++return getcwd(nullptr, 0);
++}
++#endif
++
+ /// Return a copy of the path given in argument, turning it into an
+ /// absolute path by prefixing it with the concatenation of the result
+ /// of get_current_dir_name() and the '/' character.
Added: head/devel/libabigail/files/patch-tools_abisym.cc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/files/patch-tools_abisym.cc Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,10 @@
+--- tools/abisym.cc.orig 2021-03-07 00:17:35 UTC
++++ tools/abisym.cc
+@@ -26,6 +26,7 @@
+ /// in its symbol tables and report what it sees.
+
+ #include <elf.h>
++#include <libgen.h>
+ #include <cstring>
+ #include <iostream>
+ #include <sstream>
Added: head/devel/libabigail/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/pkg-descr Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,13 @@
+ABI Generic Analysis and Instrumentation Library
+
+This project aims at providing a C++ library for constructing, manipulating,
+serializing and de-serializing ABI-relevant artifacts. The set of artifacts
+that we are interested in is made of constructions like types, variables,
+functions and declarations of a given library or program. For a given program
+or library, this set of constructions is called an ABI corpus.
+
+Thus the project aims at providing a library to manipulate ABI corpora, compare
+them, provide detailed information about their differences and help build tools
+to infer interesting conclusions about these differences.
+
+WWW: https://sourceware.org/libabigail/
Added: head/devel/libabigail/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libabigail/pkg-plist Sun Mar 7 00:53:57 2021 (r567531)
@@ -0,0 +1,40 @@
+bin/abicompat
+bin/abidiff
+bin/abidw
+bin/abilint
+bin/abipkgdiff
+bin/kmidiff
+include/libabigail/abg-comp-filter.h
+include/libabigail/abg-comparison.h
+include/libabigail/abg-config.h
+include/libabigail/abg-corpus.h
+include/libabigail/abg-cxx-compat.h
+include/libabigail/abg-diff-utils.h
+include/libabigail/abg-dwarf-reader.h
+include/libabigail/abg-fwd.h
+include/libabigail/abg-hash.h
+include/libabigail/abg-ini.h
+include/libabigail/abg-interned-str.h
+include/libabigail/abg-ir.h
+include/libabigail/abg-libxml-utils.h
+include/libabigail/abg-libzip-utils.h
+include/libabigail/abg-reader.h
+include/libabigail/abg-regex.h
+include/libabigail/abg-reporter.h
+include/libabigail/abg-sptr-utils.h
+include/libabigail/abg-suppression.h
+include/libabigail/abg-tools-utils.h
+include/libabigail/abg-traverse.h
+include/libabigail/abg-version.h
+include/libabigail/abg-viz-common.h
+include/libabigail/abg-viz-dot.h
+include/libabigail/abg-viz-svg.h
+include/libabigail/abg-workers.h
+include/libabigail/abg-writer.h
+lib/libabigail.a
+lib/libabigail.so
+lib/libabigail.so.0
+lib/libabigail.so.0.0.0
+lib/libabigail/default.abignore
+libdata/pkgconfig/libabigail.pc
+share/aclocal/abigail.m4
More information about the svn-ports-all
mailing list