]> git.pld-linux.org Git - SPECS.git/blob - libabigail.spec
SPECS updated Wed 28 Jul 14:48:01 CEST 2021
[SPECS.git] / libabigail.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # Doxygen based API documentation
4 %bcond_without  static_libs     # static library
5 #
6 Summary:        Application Binary Interface Generic Analysis and Instrumentation Library
7 Summary(pl.UTF-8):      Biblioteka do ogólnej analizy i porównywania ABI
8 Name:           libabigail
9 Version:        1.6
10 Release:        1
11 License:        LGPL v3+
12 Group:          Libraries
13 Source0:        ftp://sourceware.org/pub/libabigail/%{name}-%{version}.tar.gz
14 # Source0-md5:  538bb4513a57e6d47365e8adb838c2e1
15 Patch0:         %{name}-info.patch
16 URL:            http://www.sourceware.org/libabigail/
17 BuildRequires:  autoconf >= 2.63
18 BuildRequires:  automake >= 1:1.11.1
19 %{?with_apidocs:BuildRequires:  doxygen}
20 BuildRequires:  elfutils-devel
21 BuildRequires:  libstdc++-devel >= 6:4.7
22 BuildRequires:  libtool >= 2:2.2
23 BuildRequires:  libxml2-devel >= 1:2.6.22
24 # for zip-archive (disabled by default)
25 #BuildRequires: libzip-devel >= 0.10.1
26 BuildRequires:  pkgconfig
27 BuildRequires:  python >= 1:2.6.6
28 BuildRequires:  python3 >= 1:3.5
29 BuildRequires:  sphinx-pdg
30 BuildRequires:  texinfo
31 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32
33 %description
34 This is the Application Binary Interface Generic Analysis and
35 Instrumentation Library.
36
37 It aims at constructing, manipulating, serializing and de-serializing
38 ABI-relevant artifacts.
39
40 The set of artifacts of interest is made of quantities like types,
41 variable, functions and declarations of a given library or program.
42 For a given library or program this set of quantities is called an
43 ABI corpus.
44
45 This library aims at (among other things) providing a way to compare
46 two ABI Corpora (plural of corpus), provide detailed information about
47 their differences, and help build tools to infer interesting
48 conclusions about these differences.
49
50 %description -l pl.UTF-8
51 Ten pakiet zawiera bibliotekę ABIGAIL (Application Binary Interface
52 Generic Analysis and Instrumentation Library), służącą do analizy i
53 porównywania binarnych interfejsów aplikacji (ABI).
54
55 Celem jest konstruowanie, operowanie, serializacja i deserializacja
56 artefaktów związanych z ABI.
57
58 Zbiór artefaktów, o których tu mowa, powstaje z wielkości takich jak
59 typy, zmienne, funkcje i deklaracje z danej biblioteki czy programu.
60 Dla danej biblioteki czy programu ten zbiór wielkości jest nazywany
61 ogółem ABI.
62
63 Celem biblioteki jest (m.in.) zapewnienie sposobu porównywania dwóch
64 ogółów ABI, udostępnianie szczegółowych informacji o różnicach oraz
65 pomoc w tworzeniu narzędzi, potrafiących wysnuwać interesujące wnioski
66 w oparciu o te różnice.
67
68 %package -n bash-completion-libabigail
69 Summary:        Bash completion for ABIGAIL commands
70 Summary(pl.UTF-8):      Bashowe uzupełnianie parametrów poleceń ABIGAIL
71 Group:          Applications/Shells
72 Requires:       %{name} = %{version}-%{release}
73 Requires:       bash-completion >= 2.0
74
75 %description -n bash-completion-libabigail
76 Bash completion for ABIGAIL commands.
77
78 %description -n bash-completion-libabigail -l pl.UTF-8
79 Bashowe uzupełnianie parametrów poleceń ABIGAIL.
80
81 %package devel
82 Summary:        Header files for ABIGAIL library
83 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki ABIGAIL
84 Group:          Development/Libraries
85 Requires:       %{name} = %{version}-%{release}
86 Requires:       libxml2-devel >= 1:2.6.22
87
88 %description devel
89 Header files for ABIGAIL library.
90
91 %description devel -l pl.UTF-8
92 Pliki nagłówkowe biblioteki ABIGAIL.
93
94 %package static
95 Summary:        Static ABIGAIL library
96 Summary(pl.UTF-8):      Statyczna biblioteka ABIGAIL
97 Group:          Development/Libraries
98 Requires:       %{name}-devel = %{version}-%{release}
99
100 %description static
101 Static ABIGAIL library.
102
103 %description static -l pl.UTF-8
104 Statyczna biblioteka ABIGAIL.
105
106 %package apidocs
107 Summary:        API documentation for ABIGAIL library
108 Summary(pl.UTF-8):      Dokumentacja API biblioteki ABIGAIL 
109 Group:          Documentation
110 BuildArch:      noarch
111
112 %description apidocs
113 API documentation for ABIGAIL library.
114
115 %description apidocs -l pl.UTF-8
116 Dokumentacja API biblioteki ABIGAIL.
117
118 %prep
119 %setup -q
120 %patch0 -p1
121
122 %build
123 # must rebuild, supplied libtool contains RH-specific hack (-specs=/usr/lib/rpm/redhat/redhat-hardened-ld)
124 %{__libtoolize}
125 %{__aclocal} -I m4
126 %{__autoconf}
127 %{__autoheader}
128 %{__automake}
129 %configure \
130         %{?with_apidocs:--enable-apidoc} \
131         --enable-bash-completion \
132         --enable-cxx11 \
133         --enable-deb \
134         --disable-fedabipkgdiff \
135         --enable-manual \
136         --enable-rpm \
137         --disable-silent-rules \
138         %{!?with_static_libs:--disable-static} \
139         --enable-tar
140 %{__make}
141
142 %if %{with apidocs}
143 %{__make} -C doc apidoc-html-doxygen
144 %endif
145
146 %{__make} -C doc/manuals info man
147 # generated by Sphinx with no way to align, so do it now
148 # (summary should start at 41st column)
149 %{__sed} -i -e 's/\.info//;s/ <SPACER>/\t\t\t/' doc/manuals/texinfo/abigail.info
150
151 %install
152 rm -rf $RPM_BUILD_ROOT
153
154 %{__make} install \
155         DESTDIR=$RPM_BUILD_ROOT
156
157 # obsoleted by pkg-config
158 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libabigail.la
159
160 # not covered by make install
161 %{__make} -C doc/manuals install-man-and-info-doc \
162         DESTDIR=$RPM_BUILD_ROOT
163
164 # install disabled in makefiles (as of 1.6)
165 install -d $RPM_BUILD_ROOT%{bash_compdir}
166 cp -p bash-completion/abi* $RPM_BUILD_ROOT%{bash_compdir}
167
168 %clean
169 rm -rf $RPM_BUILD_ROOT
170
171 %post   -p /sbin/postshell
172 -/sbin/ldconfig
173 -/usr/sbin/fix-info-dir -c %{_infodir}
174
175 %postun -p /sbin/postshell
176 -/sbin/ldconfig
177 -/usr/sbin/fix-info-dir -c %{_infodir}
178
179 %files
180 %defattr(644,root,root,755)
181 %doc AUTHORS COPYING ChangeLog NEWS README
182 %attr(755,root,root) %{_bindir}/abicompat
183 %attr(755,root,root) %{_bindir}/abidiff
184 %attr(755,root,root) %{_bindir}/abidw
185 %attr(755,root,root) %{_bindir}/abilint
186 %attr(755,root,root) %{_bindir}/abipkgdiff
187 %attr(755,root,root) %{_bindir}/kmidiff
188 %attr(755,root,root) %{_libdir}/libabigail.so.*.*.*
189 %attr(755,root,root) %ghost %{_libdir}/libabigail.so.0
190 %dir %{_libdir}/libabigail
191 %{_libdir}/libabigail/default.abignore
192 %{_infodir}/abigail.info*
193 %{_mandir}/man1/abicompat.1*
194 %{_mandir}/man1/abidiff.1*
195 %{_mandir}/man1/abidw.1*
196 %{_mandir}/man1/abilint.1*
197 %{_mandir}/man1/abipkgdiff.1*
198 %{_mandir}/man7/libabigail.7*
199
200 %files -n bash-completion-libabigail
201 %defattr(644,root,root,755)
202 %{bash_compdir}/abicompat
203 %{bash_compdir}/abidiff
204 %{bash_compdir}/abidw
205 %{bash_compdir}/abilint
206 %{bash_compdir}/abinilint
207 %{bash_compdir}/abipkgdiff
208 %{bash_compdir}/abisym
209
210 %files devel
211 %defattr(644,root,root,755)
212 %attr(755,root,root) %{_libdir}/libabigail.so
213 %{_includedir}/libabigail
214 %{_pkgconfigdir}/libabigail.pc
215 %{_aclocaldir}/abigail.m4
216
217 %if %{with static_libs}
218 %files static
219 %defattr(644,root,root,755)
220 %{_libdir}/libabigail.a
221 %endif
222
223 %if %{with apidocs}
224 %files apidocs
225 %defattr(644,root,root,755)
226 %doc doc/api/html/*
227 %endif
This page took 0.245001 seconds and 3 git commands to generate.