--- Begin Message ---
Subject: |
[PATCH] gnu: Add libabigail. |
Date: |
Sun, 9 Sep 2018 14:09:00 +0200 |
* gnu/packages/linux.scm (libabigail): New public variable.
---
Notes:
Guix,
Look at this tool I found:
$ abidiff
/gnu/store/qx0hmn4scjd31w1nj4dr7hzr566gcls4-ghostscript-9.23/lib/libgs.so
/gnu/store/l60v1b0xs8h9blzzf7b2m4ry55k76bhb-ghostscript-9.24/lib/libgs.so
Functions changes summary: 0 Removed, 0 Changed, 0 Added function
Variables changes summary: 0 Removed, 0 Changed, 0 Added variable
Function symbols changes summary: 2 Removed, 20 Added function symbols not
referenced by debug info
Variable symbols changes summary: 0 Removed, 2 Added variable symbols not
referenced by debug info
2 Removed function symbols not referenced by debug info:
cmsChangeBuffersFormat
gsicc_profile_reference
20 Added function symbols not referenced by debug info:
_cmsAdjustReferenceCount
cmsCloneTransformChangingFormats
default_subclass_finalize
dorestore
epo_check_and_install
epo_disable
gsicc_adjust_profile_rc
gsicc_getprofilevers
gx_change_color_model
gx_get_cmapper
opj_j2k_set_decoded_components
opj_jp2_set_decoded_components
opj_sparse_array_int32_create
opj_sparse_array_int32_free
opj_sparse_array_int32_read
opj_sparse_array_int32_write
opj_sparse_array_is_region_valid
opj_tcd_is_subband_area_of_interest
restore_check_save
tiff_open_s
2 Added variable symbols not referenced by debug info:
gs_epo_device
st_epo_device
gnu/packages/linux.scm | 45 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 02d723316..f7aa2eb65 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1439,6 +1439,51 @@ a router). Since forwarding is done at Layer 2, all
protocols can go
transparently through a bridge.")
(license license:gpl2+)))
+(define-public libabigail
+ (package
+ (name "libabigail")
+ (home-page "https://sourceware.org/libabigail/")
+ (version "1.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://sourceware.org/pub/" name
+ "/" name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "17r8i60lxykvdd9pdidmnvkzgf9k8zman0c1czl3zbx0znhlx497"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--disable-static")
+ #:make-flags '("V=1")
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda _
+ (substitute* "build-aux/ltmain.sh"
+ ;; Don't add
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld
+ ;; to the GCC command line.
+ (("compiler_flags=\"-specs=.*")
+ "compiler-flags=\n"))
+ #t))
+ (add-before 'check 'set-test-environment
+ (lambda _
+ ;; Some tests need a writeable $HOME.
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("python" ,python))) ;for tests
+ (propagated-inputs
+ `(("elfutils" ,elfutils) ;libabigail.la says -lelf
+ ("libxml2" ,libxml2))) ;in Requires.private of libabigail.pc
+ (synopsis "Analyze Application Binary Interfaces")
+ (description
+ "@dfn{ABIGAIL} stands for the Application Binary Interface Generic
+Analysis and Instrumentation Library. It is a framework which aims at
+helping developers and software distributors to spot ABI-related issues
+like interface incompatibility in ELF shared libraries by performing a
+static analysis of the ELF binaries at hand.")
+ (license license:lgpl3+)))
+
(define-public libnl
(package
(name "libnl")
--
2.18.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: [bug#32670] [PATCH] gnu: Add libabigail. |
Date: |
Mon, 10 Sep 2018 20:33:47 +0200 |
User-agent: |
Notmuch/0.27 (https://notmuchmail.org) Emacs/26.1 (x86_64-pc-linux-gnu) |
address@hidden (Ludovic Courtès) writes:
> Marius Bakke <address@hidden> skribis:
>
>> * gnu/packages/linux.scm (libabigail): New public variable.
>
> I think this shouldn’t go in linux.scm because it’s unrelated to Linux.
> What about elf.scm instead?
That makes sense.
>> + (synopsis "Analyze Application Binary Interfaces")
>
> What about “Analyze application binary interfaces (ABIs)”?
Yes, that's better. Pushed with these changes, plus documentation and
bash completions!
Thanks for reviewing, as always. :-)
signature.asc
Description: PGP signature
--- End Message ---