1 %define gpl 0 2 Summary: A collection of utilities and DSOs to handle compiled objects. 3 Name: elfutils 4 Version: @PACKAGE_VERSION@ 5 Release: 1 6 Copyright: OSL 7 Group: Development/Tools 8 #URL: file://home/devel/drepper/ 9 Source: elfutils-%{version}.tar.gz 10 Obsoletes: libelf libelf-devel 11 Requires: elfutils-libelf = %{version}-%{release} 12 %if %{gpl} 13 Requires: binutils >= 2.14.90.0.4-26.2 14 %endif 15 16 # ExcludeArch: xxx 17 18 BuildRoot: %{_tmppath}/%{name}-root 19 BuildRequires: gcc >= 3.2 20 BuildRequires: bison >= 1.875 21 BuildRequires: flex >= 2.5.4a 22 23 %define _gnu %{nil} 24 %define _programprefix eu- 25 26 %description 27 Elfutils is a collection of utilities, including ld (a linker), 28 nm (for listing symbols from object files), size (for listing the 29 section sizes of an object or archive file), strip (for discarding 30 symbols), readelf (to see the raw ELF file structures), and elflint 31 (to check for well-formed ELF files). Also included are numerous 32 helper libraries which implement DWARF, ELF, and machine-specific ELF 33 handling. 34 35 %package devel 36 Summary: Development libraries to handle compiled objects. 37 Group: Development/Tools 38 Copyright: OSL 39 Requires: elfutils = %{version}-%{release} 40 Requires: elfutils-libelf-devel = %{version}-%{release} 41 42 %description devel 43 The elfutils-devel package contains the libraries to create 44 applications for handling compiled objects. libebl provides some 45 higher-level ELF access functionality. libdw provides access to 46 the DWARF debugging information. libasm provides a programmable 47 assembler interface. 48 49 %package libelf 50 Summary: Library to read and write ELF files. 51 Group: Development/Tools 52 %if %{gpl} 53 Copyright: GPL 54 %endif 55 56 %description libelf 57 The elfutils-libelf package provides a DSO which allows reading and 58 writing ELF files on a high level. Third party programs depend on 59 this package to read internals of ELF files. The programs of the 60 elfutils package use it also to generate new ELF files. 61 62 %package libelf-devel 63 Summary: Development support for libelf 64 Group: Development/Tools 65 Requires: elfutils-libelf = %{version}-%{release} 66 Conflicts: libelf-devel 67 %if %{gpl} 68 Copyright: GPL 69 %endif 70 71 %description libelf-devel 72 The elfutils-libelf-devel package contains the libraries to create 73 applications for handling compiled objects. libelf allows you to 74 access the internals of the ELF object file format, so you can see the 75 different sections of an ELF file. 76 77 %prep 78 %setup -q 79 80 %build 81 mkdir build-%{_target_platform} 82 cd build-%{_target_platform} 83 ../configure \ 84 --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} \ 85 --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} \ 86 --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} \ 87 --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} \ 88 --sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} \ 89 --infodir=%{_infodir} --program-prefix=%{_programprefix} --enable-shared 90 cd .. 91 92 %install 93 rm -rf ${RPM_BUILD_ROOT} 94 mkdir -p ${RPM_BUILD_ROOT}%{_prefix} 95 96 cd build-%{_target_platform} 97 #make check 98 %makeinstall 99 100 chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so* 101 %if !%{gpl} 102 chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/elfutils/lib*.so* 103 %endif 104 105 cd .. 106 107 %if !%{gpl} 108 # XXX Nuke unpackaged files 109 { cd ${RPM_BUILD_ROOT} 110 rm -f .%{_bindir}/eu-ld 111 rm -f .%{_includedir}/elfutils/libasm.h 112 rm -f .%{_includedir}/elfutils/libdw.h 113 rm -f .%{_libdir}/libasm-%{version}.so 114 rm -f .%{_libdir}/libasm.a 115 rm -f .%{_libdir}/libdw.so 116 rm -f .%{_libdir}/libdw.a 117 } 118 %endif 119 120 %check 121 cd build-%{_target_platform} 122 make check 123 124 %clean 125 rm -rf ${RPM_BUILD_ROOT} 126 127 %post -p /sbin/ldconfig 128 129 %postun -p /sbin/ldconfig 130 131 %post libelf -p /sbin/ldconfig 132 133 %postun libelf -p /sbin/ldconfig 134 135 %files 136 %defattr(-,root,root) 137 %doc README TODO 138 %if %{gpl} 139 %doc fake-src/FULL 140 %endif 141 %{_bindir}/eu-elflint 142 %{_bindir}/eu-nm 143 %{_bindir}/eu-readelf 144 %{_bindir}/eu-size 145 %{_bindir}/eu-strip 146 %if !%{gpl} 147 #%{_bindir}/eu-ld 148 #%{_libdir}/libasm-%{version}.so 149 %{_libdir}/libdw-%{version}.so 150 #%{_libdir}/libasm*.so.* 151 %{_libdir}/libdw*.so.* 152 %dir %{_libdir}/elfutils 153 %{_libdir}/elfutils/lib*.so 154 %endif 155 156 %files devel 157 %defattr(-,root,root) 158 %{_includedir}/dwarf.h 159 %dir %{_includedir}/elfutils 160 %{_includedir}/elfutils/elf-knowledge.h 161 %if !%{gpl} 162 %{_includedir}/elfutils/libebl.h 163 #%{_libdir}/libasm.a 164 %{_libdir}/libebl.a 165 #%{_libdir}/libdw.a 166 #%{_libdir}/libasm.so 167 #%{_libdir}/libdw.so 168 %endif 169 170 %files libelf 171 %defattr(-,root,root) 172 %{_libdir}/libelf-%{version}.so 173 %{_libdir}/libelf*.so.* 174 175 %files libelf-devel 176 %defattr(-,root,root) 177 %{_includedir}/libelf.h 178 %{_includedir}/gelf.h 179 %{_includedir}/nlist.h 180 %{_libdir}/libelf.a 181 %{_libdir}/libelf.so 182 183 %changelog 184 * Fri Jan 16 2004 Jakub Jelinek <jakub (a] redhat.com> 0.94-1 185 - upgrade to 0.94 186 187 * Fri Jan 16 2004 Jakub Jelinek <jakub (a] redhat.com> 0.93-1 188 - upgrade to 0.93 189 190 * Thu Jan 8 2004 Jakub Jelinek <jakub (a] redhat.com> 0.92-1 191 - full version 192 - macroized spec file for GPL or OSL builds 193 - include only libelf under GPL plus wrapper scripts 194 195 * Wed Jan 7 2004 Jakub Jelinek <jakub (a] redhat.com> 0.91-2 196 - macroized spec file for GPL or OSL builds 197 198 * Wed Jan 7 2004 Ulrich Drepper <drepper (a] redhat.com> 199 - split elfutils-devel into two packages. 200 201 * Wed Jan 7 2004 Jakub Jelinek <jakub (a] redhat.com> 0.91-1 202 - include only libelf under GPL plus wrapper scripts 203 204 * Tue Dec 23 2003 Jeff Johnson <jbj (a] redhat.com> 0.89-3 205 - readelf, not readline, in %%description (#111214). 206 207 * Fri Sep 26 2003 Bill Nottingham <notting (a] redhat.com> 0.89-1 208 - update to 0.89 (fix eu-strip) 209 210 * Tue Sep 23 2003 Jakub Jelinek <jakub (a] redhat.com> 0.86-3 211 - update to 0.86 (fix eu-strip on s390x/alpha) 212 - libebl is an archive now; remove references to DSO 213 214 * Mon Jul 14 2003 Jeff Johnson <jbj (a] redhat.com> 0.84-3 215 - upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed). 216 217 * Fri Jul 11 2003 Jeff Johnson <jbj (a] redhat.com> 0.83-3 218 - upgrade to 0.83 (fix invalid ELf handle on *.so strip, more). 219 220 * Wed Jul 9 2003 Jeff Johnson <jbj (a] redhat.com> 0.82-3 221 - upgrade to 0.82 (strip tests fixed on big-endian). 222 223 * Tue Jul 8 2003 Jeff Johnson <jbj (a] redhat.com> 0.81-3 224 - upgrade to 0.81 (strip excludes unused symtable entries, test borked). 225 226 * Thu Jun 26 2003 Jeff Johnson <jbj (a] redhat.com> 0.80-3 227 - upgrade to 0.80 (debugedit changes for kernel in progress). 228 229 * Wed Jun 04 2003 Elliot Lee <sopwith (a] redhat.com> 230 - rebuilt 231 232 * Wed May 21 2003 Jeff Johnson <jbj (a] redhat.com> 0.79-2 233 - upgrade to 0.79 (correct formats for size_t, more of libdw "works"). 234 235 * Mon May 19 2003 Jeff Johnson <jbj (a] redhat.com> 0.78-2 236 - upgrade to 0.78 (libdwarf bugfix, libdw additions). 237 238 * Mon Feb 24 2003 Elliot Lee <sopwith (a] redhat.com> 239 - debuginfo rebuild 240 241 * Thu Feb 20 2003 Jeff Johnson <jbj (a] redhat.com> 0.76-2 242 - use the correct way of identifying the section via the sh_info link. 243 244 * Sat Feb 15 2003 Jakub Jelinek <jakub (a] redhat.com> 0.75-2 245 - update to 0.75 (eu-strip -g fix) 246 247 * Tue Feb 11 2003 Jakub Jelinek <jakub (a] redhat.com> 0.74-2 248 - update to 0.74 (fix for writing with some non-dirty sections) 249 250 * Thu Feb 6 2003 Jeff Johnson <jbj (a] redhat.com> 0.73-3 251 - another -0.73 update (with sparc fixes). 252 - do "make check" in %%check, not %%install, section. 253 254 * Mon Jan 27 2003 Jeff Johnson <jbj (a] redhat.com> 0.73-2 255 - update to 0.73 (with s390 fixes). 256 257 * Wed Jan 22 2003 Tim Powers <timp (a] redhat.com> 258 - rebuilt 259 260 * Wed Jan 22 2003 Jakub Jelinek <jakub (a] redhat.com> 0.72-4 261 - fix arguments to gelf_getsymshndx and elf_getshstrndx 262 - fix other warnings 263 - reenable checks on s390x 264 265 * Sat Jan 11 2003 Karsten Hopp <karsten (a] redhat.de> 0.72-3 266 - temporarily disable checks on s390x, until someone has 267 time to look at it 268 269 * Thu Dec 12 2002 Jakub Jelinek <jakub (a] redhat.com> 0.72-2 270 - update to 0.72 271 272 * Wed Dec 11 2002 Jakub Jelinek <jakub (a] redhat.com> 0.71-2 273 - update to 0.71 274 275 * Wed Dec 11 2002 Jeff Johnson <jbj (a] redhat.com> 0.69-4 276 - update to 0.69. 277 - add "make check" and segfault avoidance patch. 278 - elfutils-libelf needs to run ldconfig. 279 280 * Tue Dec 10 2002 Jeff Johnson <jbj (a] redhat.com> 0.68-2 281 - update to 0.68. 282 283 * Fri Dec 6 2002 Jeff Johnson <jbj (a] redhat.com> 0.67-2 284 - update to 0.67. 285 286 * Tue Dec 3 2002 Jeff Johnson <jbj (a] redhat.com> 0.65-2 287 - update to 0.65. 288 289 * Mon Dec 2 2002 Jeff Johnson <jbj (a] redhat.com> 0.64-2 290 - update to 0.64. 291 292 * Sun Dec 1 2002 Ulrich Drepper <drepper (a] redhat.com> 0.64 293 - split packages further into elfutils-libelf 294 295 * Sat Nov 30 2002 Jeff Johnson <jbj (a] redhat.com> 0.63-2 296 - update to 0.63. 297 298 * Fri Nov 29 2002 Ulrich Drepper <drepper (a] redhat.com> 0.62 299 - Adjust for dropping libtool 300 301 * Sun Nov 24 2002 Jeff Johnson <jbj (a] redhat.com> 0.59-2 302 - update to 0.59 303 304 * Thu Nov 14 2002 Jeff Johnson <jbj (a] redhat.com> 0.56-2 305 - update to 0.56 306 307 * Thu Nov 7 2002 Jeff Johnson <jbj (a] redhat.com> 0.54-2 308 - update to 0.54 309 310 * Sun Oct 27 2002 Jeff Johnson <jbj (a] redhat.com> 0.53-2 311 - update to 0.53 312 - drop x86_64 hack, ICE fixed in gcc-3.2-11. 313 314 * Sat Oct 26 2002 Jeff Johnson <jbj (a] redhat.com> 0.52-3 315 - get beehive to punch a rhpkg generated package. 316 317 * Wed Oct 23 2002 Jeff Johnson <jbj (a] redhat.com> 0.52-2 318 - build in 8.0.1. 319 - x86_64: avoid gcc-3.2 ICE on x86_64 for now. 320 321 * Tue Oct 22 2002 Ulrich Drepper <drepper (a] redhat.com> 0.52 322 - Add libelf-devel to conflicts for elfutils-devel 323 324 * Mon Oct 21 2002 Ulrich Drepper <drepper (a] redhat.com> 0.50 325 - Split into runtime and devel package 326 327 * Fri Oct 18 2002 Ulrich Drepper <drepper (a] redhat.com> 0.49 328 - integrate into official sources 329 330 * Wed Oct 16 2002 Jeff Johnson <jbj (a] redhat.com> 0.46-1 331 - Swaddle. 332