|
|
ad918e3 |
%define libname libdwarves
|
|
|
ad918e3 |
%define libver 1
|
|
|
ad918e3 |
|
|
|
ad918e3 |
Name: dwarves
|
|
Arnaldo Carvalho de Melo |
70ff229 |
Version: 1.10
|
|
Arnaldo Carvalho de Melo |
eaf9314 |
Release: 1%{?dist}
|
|
|
ad918e3 |
License: GPLv2
|
|
|
88c3a80 |
Summary: Debugging Information Manipulation Tools
|
|
|
ad918e3 |
Group: Development/Tools
|
|
Arnaldo Carvalho de Melo |
70ff229 |
URL: http://acmel.wordpress.com
|
|
|
df33e5f |
Source: http://fedorapeople.org/~acme/dwarves/%{name}-%{version}.tar.bz2
|
|
|
ad918e3 |
BuildRequires: cmake
|
|
|
809b44e |
BuildRequires: zlib-devel
|
|
|
88c3a80 |
BuildRequires: elfutils-devel >= 0.130
|
|
|
ad918e3 |
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%description
|
|
|
88c3a80 |
dwarves is a set of tools that use the debugging information inserted in
|
|
|
ad918e3 |
ELF binaries by compilers such as GCC, used by well known debuggers such as
|
|
|
ad918e3 |
GDB, and more recent ones such as systemtap.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
Utilities in the dwarves suite include pahole, that can be used to find
|
|
|
ad918e3 |
alignment holes in structs and classes in languages such as C, C++, but not
|
|
|
ad918e3 |
limited to these.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
It also extracts other information such as CPU cacheline alignment, helping
|
|
|
ad918e3 |
pack those structures to achieve more cache hits.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
A diff like tool, codiff can be used to compare the effects changes in source
|
|
|
ad918e3 |
code generate on the resulting binaries.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
Another tool is pfunct, that can be used to find all sorts of information about
|
|
|
ad918e3 |
functions, inlines, decisions made by the compiler about inlining, etc.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%package -n %{libname}%{libver}
|
|
|
88c3a80 |
Summary: Debugging information processing library
|
|
|
ad918e3 |
Group: Development/Libraries
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%description -n %{libname}%{libver}
|
|
|
88c3a80 |
Debugging information processing library.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%package -n %{libname}%{libver}-devel
|
|
|
88c3a80 |
Summary: Debugging information library development files
|
|
|
ad918e3 |
Group: Development/Libraries
|
|
|
ad918e3 |
Requires: %{libname}%{libver} = %{version}-%{release}
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%description -n %{libname}%{libver}-devel
|
|
|
88c3a80 |
Debugging information processing library development files.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%prep
|
|
|
ad918e3 |
%setup -q -c -n %{name}-%{version}
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%build
|
|
|
ad918e3 |
%cmake .
|
|
|
ad918e3 |
make VERBOSE=1 %{?_smp_mflags}
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%install
|
|
|
ad918e3 |
rm -Rf %{buildroot}
|
|
|
ad918e3 |
make install DESTDIR=%{buildroot}
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%post -n %{libname}%{libver} -p /sbin/ldconfig
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%postun -n %{libname}%{libver} -p /sbin/ldconfig
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%clean
|
|
|
ad918e3 |
rm -rf %{buildroot}
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%files
|
|
|
ad918e3 |
%defattr(0644,root,root,0755)
|
|
|
ad918e3 |
%doc README.ctracer
|
|
|
ad918e3 |
%doc NEWS
|
|
|
ad918e3 |
%defattr(0755,root,root,0755)
|
|
|
ad918e3 |
%{_bindir}/codiff
|
|
|
ad918e3 |
%{_bindir}/ctracer
|
|
|
ad918e3 |
%{_bindir}/dtagnames
|
|
|
ad918e3 |
%{_bindir}/pahole
|
|
|
ad918e3 |
%{_bindir}/pdwtags
|
|
|
ad918e3 |
%{_bindir}/pfunct
|
|
|
ad918e3 |
%{_bindir}/pglobal
|
|
|
ad918e3 |
%{_bindir}/prefcnt
|
|
Arnaldo Carvalho de Melo |
eaf9314 |
%{_bindir}/scncopy
|
|
|
ad918e3 |
%{_bindir}/syscse
|
|
|
ad918e3 |
%{_bindir}/ostra-cg
|
|
|
df33e5f |
%dir %{_datadir}/dwarves/
|
|
|
ad918e3 |
%dir %{_datadir}/dwarves/runtime/
|
|
|
ad918e3 |
%dir %{_datadir}/dwarves/runtime/python/
|
|
|
ad918e3 |
%defattr(0644,root,root,0755)
|
|
|
df33e5f |
%{_mandir}/man1/pahole.1*
|
|
|
ad918e3 |
%{_datadir}/dwarves/runtime/Makefile
|
|
|
ad918e3 |
%{_datadir}/dwarves/runtime/linux.blacklist.cu
|
|
|
ad918e3 |
%{_datadir}/dwarves/runtime/ctracer_relay.c
|
|
|
ad918e3 |
%{_datadir}/dwarves/runtime/ctracer_relay.h
|
|
|
ad918e3 |
%attr(0755,root,root) %{_datadir}/dwarves/runtime/python/ostra.py*
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%files -n %{libname}%{libver}
|
|
|
ad918e3 |
%defattr(0644,root,root,0755)
|
|
|
ad918e3 |
%{_libdir}/%{libname}.so.*
|
|
|
ad918e3 |
%{_libdir}/%{libname}_emit.so.*
|
|
|
ad918e3 |
%{_libdir}/%{libname}_reorganize.so.*
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%files -n %{libname}%{libver}-devel
|
|
|
ad918e3 |
%defattr(0644,root,root,0755)
|
|
|
ad918e3 |
%doc MANIFEST README
|
|
|
88c3a80 |
%{_includedir}/dwarves/dwarves.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/dwarves_emit.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/dwarves_reorganize.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/dutil.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/gobuffer.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/list.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/rbtree.h
|
|
|
88c3a80 |
%{_includedir}/dwarves/strings.h
|
|
|
ad918e3 |
%{_libdir}/%{libname}.so
|
|
|
ad918e3 |
%{_libdir}/%{libname}_emit.so
|
|
|
ad918e3 |
%{_libdir}/%{libname}_reorganize.so
|
|
|
ad918e3 |
|
|
|
ad918e3 |
%changelog
|
|
Arnaldo Carvalho de Melo |
70ff229 |
* Wed May 30 2012 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.10-1
|
|
Arnaldo Carvalho de Melo |
70ff229 |
- New release
|
|
Arnaldo Carvalho de Melo |
70ff229 |
|
|
Arnaldo Carvalho de Melo |
70ff229 |
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.9-2
|
|
Arnaldo Carvalho de Melo |
70ff229 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
Arnaldo Carvalho de Melo |
70ff229 |
|
|
Arnaldo Carvalho de Melo |
eaf9314 |
* Mon Feb 28 2011 * Arnaldo Carvalho de Melo <acme@redhat.com> - 1.9-1
|
|
Arnaldo Carvalho de Melo |
eaf9314 |
- New release
|
|
Arnaldo Carvalho de Melo |
eaf9314 |
|
|
|
098c0d8 |
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8-2
|
|
|
098c0d8 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
|
098c0d8 |
|
|
|
88c3a80 |
* Fri Dec 4 2009 Apr 23 2009 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.8-1
|
|
|
88c3a80 |
- New release
|
|
|
809b44e |
|
|
|
df33e5f |
* Fri Feb 13 2009 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.7-2
|
|
|
df33e5f |
- Own /usr/share/dwarves, fixes #473645
|
|
|
df33e5f |
|
|
|
df33e5f |
* Fri Feb 13 2009 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.7-1
|
|
|
df33e5f |
- A CTF decoder based on work done by David S. Miller
|
|
|
df33e5f |
- Handle DW_TAG_class_type,
|
|
|
df33e5f |
- Add support for showing classes with a prefix
|
|
|
df33e5f |
- Add support to DW_TAG_ptr_to_member_type
|
|
|
df33e5f |
- Handle typedef definitions in functions
|
|
|
df33e5f |
- Print the number of members in a struct/class
|
|
|
df33e5f |
- Handle the empty base optimization trick (Zero sized C++ class)
|
|
|
df33e5f |
- codiff detect changes in the prototype even when function size doesn't change
|
|
|
df33e5f |
- pfunct: Implement --expand_types
|
|
|
df33e5f |
- Reduce memory consumption by using a strings table
|
|
|
df33e5f |
- Speed up struct search by name
|
|
|
df33e5f |
- Several minor bug fixes and infrastructure improvements.
|
|
|
df33e5f |
- Initial man page for pahole
|
|
|
df33e5f |
|
|
|
3ba6b9b |
* Mon Feb 11 2008 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.6-1
|
|
|
3ba6b9b |
- c83d935a4fd561a3807f520c126c2a61ae1f4d83
|
|
|
3ba6b9b |
- [DWARVES]: Use a hash table for the tags in a CU
|
|
|
3ba6b9b |
|
|
|
1b81b07 |
* Thu Feb 7 2008 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.5-1
|
|
|
1b81b07 |
- c4e49add9e48ff08a8ba4187ea43d795af995136
|
|
|
1b81b07 |
- PAHOLE: Introduce --defined_in
|
|
|
1b81b07 |
- DWARVES: Another fix for DW_TAG_base_type entries without DW_AT_name
|
|
|
1b81b07 |
- PAHOLE: Cope with DW_TAG_basic_type entries without DW_AT_name
|
|
|
1b81b07 |
- CODIFF: Allow passing /dev/null as one of the files to compare
|
|
|
1b81b07 |
- DWARVES: Allow passing NULL as self to cu__find_
|
|
|
1b81b07 |
- DWARVES: Fixup usage messages
|
|
|
1b81b07 |
- DWARVES: Find holes in inner, nameless structs
|
|
|
1b81b07 |
- DWARVES: Adopt tag__follow_typedef from pahole
|
|
|
1b81b07 |
- DWARVES: Add some destructors: tag, cu, namespace
|
|
|
1b81b07 |
- CODIFF: Check if the objects are the same when we have build-id
|
|
|
1b81b07 |
- DWARVES: Introduce cu__same_build_id
|
|
|
1b81b07 |
- DWARVES_REORGANIZE: Proper tail padding fixup
|
|
|
1b81b07 |
- DWARVES: Don't search in empty structs
|
|
|
1b81b07 |
- DWARVES: Follow const and volatile tags to its ultimate types
|
|
|
1b81b07 |
- PAHOLE: Add a newline after the --class_dwarf_offset output
|
|
|
1b81b07 |
- PAHOLE: Expose type__find_first_biggest_size_base_type_member
|
|
|
1b81b07 |
- DWARVES: Introduce type__find_first_biggest_size_base_type_member
|
|
|
1b81b07 |
- PAHOLE: Account arrays properly when changing word-size
|
|
|
1b81b07 |
- PAHOLE: Follow typedefs too when resizing unions
|
|
|
1b81b07 |
- PAHOLE: Follow typedefs to find if they are resized structs/unions
|
|
|
1b81b07 |
- PAHOLE: Check if types of struct and union members were already resized
|
|
|
1b81b07 |
- DWARVES_REORGANIZE: Fixup class__fixup_alingment
|
|
|
1b81b07 |
- PAHOLE: Allow changing the architecture word-size
|
|
|
1b81b07 |
- DWARVES_REORGANIZE: Adopt class__add_offsets_from and class__fixup_alignment from ctracer
|
|
|
1b81b07 |
- DWARVES: build id support requires a recent elfutils package
|
|
|
1b81b07 |
|
|
|
1b81b07 |
* Sat Jan 5 2008 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.4-1
|
|
|
ad918e3 |
- 8e099cf5d1f204e9ea1a9c8c0f1a09a43458d9d3
|
|
|
ad918e3 |
- codiff fixes
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sun Dec 9 2007 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.3-2
|
|
|
ad918e3 |
- c6c71398cd2481e219ea3ef63f32c6479ba4f08f
|
|
|
ad918e3 |
- SPEC file adjustments to follow http://fedoraproject.org/wiki/Packaging/cmake
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sat Dec 8 2007 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.3-1
|
|
|
ad918e3 |
- c4ee21aa122f51f2601893b2118b7f7902d2f410
|
|
|
ad918e3 |
- Fixed bitfield byte offset handling, now there are no
|
|
|
ad918e3 |
more BRAIN FART alerts on a x86_64 linux kernel and on
|
|
|
ad918e3 |
an old openbsd kernel image.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Thu Dec 6 2007 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.2-1
|
|
|
ad918e3 |
- 07e0974f2c3798acb8e9a2d06f6b2ece7a01c508
|
|
|
ad918e3 |
- Fix a patological bitfield case
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Thu Dec 6 2007 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.1-1
|
|
|
ad918e3 |
- 2c01420b51e889196b42a204910b46811ab22f1a
|
|
|
ad918e3 |
- ctracer now generates systemtap scripts
|
|
|
ad918e3 |
- Lots of other fixes, see git changelog.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Tue May 8 2007 Arnaldo Carvalho de Melo <acme@redhat.com> - 1.0-1
|
|
|
ad918e3 |
- 161c6712f4ae1b7e2ea50df3a0d5c28310905cec
|
|
|
ad918e3 |
- handle --help, -? --usage on with_executable_option()
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Tue May 8 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- b8eb5eb214f3897ea6faa3272879baa8bf2573c0
|
|
|
ad918e3 |
- Fix cus__loadfl detection of --executable
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sun May 6 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 05351ece16e5203717dd21a6fc1ad2e6ff87c203
|
|
|
ad918e3 |
- libdwarves_emit
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Tue Apr 3 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- f3c4f527f70053e39b402005107ead6cb10e0b4a
|
|
|
ad918e3 |
- Fix some --reorganize bugs
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Mon Apr 2 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 1ec66565a12ce7f197cd40e3901ed6be84935781
|
|
|
ad918e3 |
- --reorganize improvements
|
|
|
ad918e3 |
- --packable uses --reorganize code to show structs that can be packed by
|
|
|
ad918e3 |
reorganization done with --reorganize.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Mar 30 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- fd3542317508d04e8178c5d391385d2aa50d6fb7
|
|
|
ad918e3 |
- Use libdwfl in all tools that handle just one file, codiff and ctracer
|
|
|
ad918e3 |
still need work and are still using plain libdw.
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sun Feb 25 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 3c148cd84b74b89663febdefab23356952906502
|
|
|
ad918e3 |
- _snprintf routines changed to _fprintf
|
|
|
ad918e3 |
- codiff shows diffs in number and total size of inline expansions
|
|
|
ad918e3 |
- codiff shows diffs in the number of lexblocks
|
|
|
ad918e3 |
- better alignment in the --expand_types case
|
|
|
ad918e3 |
- CMake improvements
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Feb 2 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- d37f41df58c375412badf827e24dfc346cea2ff2
|
|
|
ad918e3 |
- ostra-cg
|
|
|
ad918e3 |
- relay/debugfs
|
|
|
ad918e3 |
- mini-structs
|
|
|
ad918e3 |
- ctracer2ostra
|
|
|
ad918e3 |
- All this in the Makefile
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Feb 2 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- b7cad1782d683571ffb2601b429ab151bddad5d7
|
|
|
ad918e3 |
- pglobal, by Davi Arnaut
|
|
|
ad918e3 |
- pahole --show_reorg_steps
|
|
|
ad918e3 |
- Reorganize bitfields in pahole --reorganize
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Tue Jan 30 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 8e236f4ca37b8a3d2057f4ede5a14ab1fa99f73c
|
|
|
ad918e3 |
- x86-64 lib install fixes
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Tue Jan 30 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 4a4b75e75a6d7f34215d320cc4a9f669b6ba4075
|
|
|
ad918e3 |
- pahole --reorganize
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Mon Jan 29 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 2de67fcaf401ac1e20feca5fa88dfc63fbc4203e
|
|
|
ad918e3 |
- Type expansion!
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sat Jan 27 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- 6bf2d2d7707b65e7ca21a13706d8d07824cd6f2f
|
|
|
ad918e3 |
- ctracer improvements, /usr/lib/ctracer/, etc
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Jan 26 2007 Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
|
ad918e3 |
- c49f2c963425d5c09c429370e10d9af3d7d7fe32
|
|
|
ad918e3 |
- Emit typedefs of typedef arrays
|
|
|
ad918e3 |
- Detect typedef loops
|
|
|
ad918e3 |
- Fix emission of arrays of structs, unions, etc
|
|
|
ad918e3 |
- use sysconf for the default cacheline size
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Wed Jan 18 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- fab0db03ea9046893ca110bb2b7d71b764f61033
|
|
|
ad918e3 |
- pdwtags added
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Wed Jan 17 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- e3786105c007a39ff3dbfb36a3037e786021e0c6
|
|
|
ad918e3 |
- First Fedora native build
|
|
|
ad918e3 |
- struct, enum, enum, void typedefs
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Sat Jan 13 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- 9a413e60a3875980d99817722bf019cba3a24573
|
|
|
ad918e3 |
- pahole --nr_methods, improvements in tag__print, better support for unions
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Jan 12 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- a1f5422656a91568a8b4edbcebaae9c1837b5cbd
|
|
|
ad918e3 |
- Support a DW_TAG_reference_type
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Fri Jan 12 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- 0ad467a32187e1929c14054a0fc7326bc4d235c8
|
|
|
ad918e3 |
- Added a description
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Thu Jan 11 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- new release with type not found asserts replaced by error messages
|
|
|
ad918e3 |
|
|
|
ad918e3 |
* Thu Jan 11 2007 Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
|
|
|
ad918e3 |
- package created
|