Skip to content
Snippets Groups Projects
Verified Commit ab08069a authored by Max Rees's avatar Max Rees
Browse files

experimental/libabigail: new package

Problems:

  * Test suite relies on non-reproducible binaries. Lots of tests fail
    presumably because it expects a glibc-based system.
  * Can't seem to get the tools to actually work on musl-produced
    binaries. No significant output is generated.
parent 420a64fe
No related branches found
No related tags found
1 merge request!315Misc changes, 2019.08.07
# Contributor: Max Rees <maxcrees@me.com>
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=libabigail
pkgver=1.6
pkgrel=0
pkgdesc="The ABI Generic Analysis and Instrumentation Library"
url="https://sourceware.org/libabigail/"
arch="all"
options="!check" # Relies on checking non-reproducible binaries.
license="LGPL-3.0+"
depends=""
depends_dev=""
makedepends="$depends_dev elfutils-dev fts-dev libxml2-dev"
subpackages="$pkgname-dev"
source="http://mirrors.kernel.org/sourceware/libabigail/$pkgname-$pkgver.tar.gz
musl-basename.patch
musl-fts.patch
redhat-bs.patch"
prepare() {
default_prepare
autoreconf -vif
}
build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--localstatedir=/var
make
}
check() {
make check
}
package() {
make DESTDIR="$pkgdir" install
}
sha512sums="2ba775bd836b53265dae60e66065fc2106e7f633e890cc70b6abacb8426e04ec0b7b38593c21336f5785cf5e4eb8d110fb15ce63124cddc59f660f31c7b25b3c libabigail-1.6.tar.gz
ef5c7db0ce05dff36c654e4a6345ded43032b76bdc9159da60a5fdc59b3c70943881cb19c87a4c6b30eccb774c6c7767e790b395564058f5dbaa6e3f3e0b1373 musl-fts.patch
0f5dcee3fbb1ee949df22e13a8ad248a8e39a086cb4c3561f5f45235c2f27cc589a07886560e2ecf7ee040811f64892c0e74ed653e0a1a5d20e62ab360c388a4 redhat-bs.patch"
--- libabigail-1.6/tools/abisym.cc 2019-03-27 05:31:13.000000000 -0400
+++ libabigail-1.6/tools/abisym.cc 2019-07-18 07:19:28.999752604 -0400
@@ -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>
--- libabigail-1.6/configure.ac 2019-03-27 05:31:13.000000000 -0400
+++ libabigail-1.6/configure.ac 2019-07-18 07:12:25.129755599 -0400
@@ -147,20 +147,6 @@ fi
AC_SUBST(VISIBILITY_FLAGS)
-dnl Older glibc had a broken fts that didn't work with Large File Systems.
-dnl We want the version that can handler LFS, but include workaround if we
-dnl get a bad one. Add define to CFLAGS (not AC_DEFINE it) since we need to
-dnl check it before including config.h (which might define _FILE_OFFSET_BITS).
-AC_CACHE_CHECK([whether including fts.h with _FILE_OFFSET_BITS set breaks], ac_cv_bad_fts,
- [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
- #define _FILE_OFFSET_BITS 64
- #include <fts.h>
- ]])],
- ac_cv_bad_fts=no, ac_cv_bad_fts=yes)])
-AS_IF([test "x$ac_cv_bad_fts" = "xyes"],
- [CFLAGS="$CFLAGS -DBAD_FTS=1",
- CXXFLAGS="$CXXFLAGS -DBAD_FTS=1"])
-
dnl Check for dependency: libelf, libdw, libebl (elfutils)
dnl Note that we need to use at least elfutils 0.159 but
dnl at that time elfutils didnt have pkgconfig capabilities
@@ -577,7 +563,7 @@ AX_VALGRIND_CHECK
dnl Set the list of libraries libabigail depends on
-DEPS_LIBS="$XML_LIBS $LIBZIP_LIBS $ELF_LIBS $DW_LIBS"
+DEPS_LIBS="$XML_LIBS $LIBZIP_LIBS $ELF_LIBS $DW_LIBS -lfts"
AC_SUBST(DEPS_LIBS)
if test x$ABIGAIL_DEVEL != x; then
--- libabigail-1.6/build-aux/ltmain.sh 2015-04-24 08:08:19.000000000 -0400
+++ libabigail-1.6/build-aux/ltmain.sh 2019-07-18 07:03:18.589759461 -0400
@@ -6523,7 +6523,7 @@ func_mode_link ()
old_convenience=
deplibs=
old_deplibs=
- compiler_flags="-specs=/usr/lib/rpm/redhat/redhat-hardened-ld"
+ compiler_flags=
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment