%global date 20150720 %global git_revision ab1316b %global checkout %{date}git%{git_revision} %global tarball_name %{name}-%{version}-git-%{git_revision} Name: libabigail Version: 1.0 Release: 0.4.%{checkout}%{?dist} Summary: Set of ABI analysis tools License: LGPLv3+ URL: https://sourceware.org/libabigail/ # This tarball was constructed from pulling the source code of # libabigail from its Git repository by doing: # git clone git://sourceware.org/git/libabigail.git # pushd libabigail # git archive --prefix %%{tarball_name}/ -o %%{tarball_name}.tar.gz %%{git_revision} Source0: %{tarball_name}.tar.gz BuildRequires: libtool BuildRequires: elfutils-devel BuildRequires: libxml2-devel BuildRequires: doxygen BuildRequires: python-sphinx BuildRequires: texinfo BuildRequires: dos2unix %description The libabigail package comprises four command line utilities: abidiff, abicompat, abidw and abilint. The abidiff command line tool compares the ABI of two ELF shared libraries and emits meaningful textual reports about changes impacting exported functions, variables and their types. abicompat checks if a subsequent version of a shared library is still compatible with an application that is linked against it. abidw emits an XML representation of the ABI of a given ELF shared library. abilint checks that a given XML representation of the ABI of a shared library is correct. Install libabigail if you need to compare the ABI of ELF shared libraries. %package devel Summary: Shared library and header files to write ABI analysis tools Requires: %{name}%{?_isa} = %{version}-%{release} %description devel This package contains a shared library and the associated header files that are necessary to develop applications that use the C++ Libabigail library. The library provides facilities to analyze and compare application binary interfaces of shared libraries in the ELF format. %package doc Summary: Man pages, texinfo files and html manuals of libabigail Requires(post): info Requires(preun): info %description doc This package contains documentation for the libabigail tools in the form of man pages, texinfo documentation and API documentation in html format. %prep %setup -n %{tarball_name} %build autoreconf -i %configure --disable-silent-rules --disable-zip-archive --disable-static make %{?_smp_mflags} pushd doc make html-doc pushd manuals make html-doc make man make info popd popd %install %make_install find %{buildroot} -name '*.la' -exec rm -f {} ';' # Install man and texinfo files as they are not installed by the # default 'install' target of the makefile. make -C doc/manuals install-man-and-info-doc DESTDIR=%{buildroot} dos2unix doc/manuals/html/_static/jquery.js %check make check if [ $1 -eq 0 ]; then cat tests/test-suite.log fi %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post doc /usr/sbin/install-info %{_infodir}/abigail.info* %{_infodir}/dir 2>/dev/null || : %preun doc if [ $1 -eq 0 ]; then /usr/sbin/install-info --delete %{_infodir}/abigail.info* %{_infodir}/dir 2>/dev/null || : fi %files %{_bindir}/abicompat %{_bindir}/abidiff %{_bindir}/abidw %{_bindir}/abilint %{_bindir}/abipkgdiff %{_libdir}/libabigail.so.0 %{_libdir}/libabigail.so.0.0.0 %doc AUTHORS ChangeLog %license COPYING COPYING-LGPLV3 COPYING-GPLV3 %files devel %{_libdir}/libabigail.so %{_libdir}/pkgconfig/libabigail.pc %{_includedir}/* %{_datadir}/aclocal/abigail.m4 %files doc %license COPYING COPYING-LGPLV3 COPYING-GPLV3 %doc doc/manuals/html/* %{_mandir}/man1/* %{_mandir}/man7/* %{_infodir}/abigail.info* %changelog * Mon Jul 20 2015 Sinny Kumari - 1.0-0.4.20150720gitab1316b - Update to upstream git commit hash ab1316b. It brings various bug fixes and a new abipkgdiff tool to detect abi changes at package level. - Install abipkgdiff binary in bindir - Adjust date, git_revision and Release macros * Thu Jun 25 2015 Dodji Seketeli - 1.0-0.3.20150625git43c06a8 - Update to upstream git commit hash 43c06a8 (pre-release of 1.0). This brings lots of bug fixes as well as some improvements in change report suppression capabilities in the library and in the abidiff tool. - Tarball name format is now clearer: %%{name}-%%{version}-git-%%{git_revision} - Add new macro tarball_name for that - Adjust the Source0, git_revision, date, Release macros - Adjust the %setup directive to the fact that the tarball now extracts to a directory named %%{name}-%%{version}-git-%%{git_revision} - Adjust the packaging of the man pages as some of them moved from section 7 to section 1. * Wed Jun 17 2015 Fedora Release Engineering - 1.0-0.2.20150422gita9582d8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Wed Apr 22 2015 Sinny Kumari - 1.0-0.1.20150420gita9582d8 - Add COPYING-GPLV3 license file as well - Remove python-sphinx-latex from BuildRequires - Package latest source tar with git revision a9582d8 * Sat Jan 24 2015 Sinny Kumari - 1.0-0.3.20150114git63c81f0 - Specify only sub-packgae name instead of giving full package name - Add info as post and preun Requires for doc sub-package * Fri Jan 23 2015 Sinny Kumari - 1.0-0.2.20150114git63c81f0 - Add python-sphinx-latex as BuildRequires - Use license instead of doc macro for license file installation - Update checkout value * Sun Jan 18 2015 Sinny Kumari - 1.0-0.1.git.63c81f0 - Initial build of the libabigail package using source code from git revision 63c81f0.