Intial import (#829676)
This commit is contained in:
		
							parent
							
								
									d35755991b
								
							
						
					
					
						commit
						8b33398520
					
				
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -0,0 +1,4 @@ | |||||||
|  | *~ | ||||||
|  | *.rpm | ||||||
|  | *.tar* | ||||||
|  | results_*/ | ||||||
							
								
								
									
										2
									
								
								README
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								README
									
									
									
									
									
								
							| @ -1,2 +0,0 @@ | |||||||
| There's currently no "python-construct" build avail for el6.  We'll build  |  | ||||||
| this when it will be avail. |  | ||||||
							
								
								
									
										142
									
								
								pyelftools-0.22-construct.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										142
									
								
								pyelftools-0.22-construct.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,142 @@ | |||||||
|  | diff --git a/elftools/common/construct_utils.py b/elftools/common/construct_utils.py
 | ||||||
|  | index 53caa97..41c2815 100644
 | ||||||
|  | --- a/elftools/common/construct_utils.py
 | ||||||
|  | +++ b/elftools/common/construct_utils.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import Subconstruct, ConstructError, ArrayError
 | ||||||
|  | +from construct import Subconstruct, ConstructError, ArrayError
 | ||||||
|  |   | ||||||
|  |   | ||||||
|  |  class RepeatUntilExcluding(Subconstruct): | ||||||
|  | diff --git a/elftools/common/utils.py b/elftools/common/utils.py
 | ||||||
|  | index 7bd1d5b..8b2400b 100644
 | ||||||
|  | --- a/elftools/common/utils.py
 | ||||||
|  | +++ b/elftools/common/utils.py
 | ||||||
|  | @@ -9,7 +9,7 @@
 | ||||||
|  |  from contextlib import contextmanager | ||||||
|  |  from .exceptions import ELFParseError, ELFError, DWARFError | ||||||
|  |  from .py3compat import int2byte | ||||||
|  | -from ..construct import ConstructError
 | ||||||
|  | +from construct import ConstructError
 | ||||||
|  |   | ||||||
|  |   | ||||||
|  |  def bytelist2string(bytelist): | ||||||
|  | diff --git a/elftools/dwarf/enums.py b/elftools/dwarf/enums.py
 | ||||||
|  | index 6508764..a474d32 100644
 | ||||||
|  | --- a/elftools/dwarf/enums.py
 | ||||||
|  | +++ b/elftools/dwarf/enums.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import Pass
 | ||||||
|  | +from construct import Pass
 | ||||||
|  |   | ||||||
|  |   | ||||||
|  |  ENUM_DW_TAG = dict( | ||||||
|  | diff --git a/elftools/dwarf/structs.py b/elftools/dwarf/structs.py
 | ||||||
|  | index 39e4815..c50a874 100644
 | ||||||
|  | --- a/elftools/dwarf/structs.py
 | ||||||
|  | +++ b/elftools/dwarf/structs.py
 | ||||||
|  | @@ -7,7 +7,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import (
 | ||||||
|  | +from construct import (
 | ||||||
|  |      UBInt8, UBInt16, UBInt32, UBInt64, ULInt8, ULInt16, ULInt32, ULInt64, | ||||||
|  |      SBInt8, SBInt16, SBInt32, SBInt64, SLInt8, SLInt16, SLInt32, SLInt64, | ||||||
|  |      Adapter, Struct, ConstructError, If, RepeatUntil, Field, Rename, Enum, | ||||||
|  | diff --git a/elftools/elf/elffile.py b/elftools/elf/elffile.py
 | ||||||
|  | index 458273f..a4d62bd 100644
 | ||||||
|  | --- a/elftools/elf/elffile.py
 | ||||||
|  | +++ b/elftools/elf/elffile.py
 | ||||||
|  | @@ -9,7 +9,7 @@
 | ||||||
|  |  from ..common.py3compat import BytesIO | ||||||
|  |  from ..common.exceptions import ELFError | ||||||
|  |  from ..common.utils import struct_parse, elf_assert | ||||||
|  | -from ..construct import ConstructError
 | ||||||
|  | +from construct import ConstructError
 | ||||||
|  |  from .structs import ELFStructs | ||||||
|  |  from .sections import ( | ||||||
|  |          Section, StringTableSection, SymbolTableSection, | ||||||
|  | diff --git a/elftools/elf/enums.py b/elftools/elf/enums.py
 | ||||||
|  | index deb9f35..7b778c7 100644
 | ||||||
|  | --- a/elftools/elf/enums.py
 | ||||||
|  | +++ b/elftools/elf/enums.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import Pass
 | ||||||
|  | +from construct import Pass
 | ||||||
|  |   | ||||||
|  |   | ||||||
|  |  # e_ident[EI_CLASS] in the ELF header | ||||||
|  | diff --git a/elftools/elf/gnuversions.py b/elftools/elf/gnuversions.py
 | ||||||
|  | index 4a4473f..d4f4b75 100644
 | ||||||
|  | --- a/elftools/elf/gnuversions.py
 | ||||||
|  | +++ b/elftools/elf/gnuversions.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Yann Rouillard (yann@pleiades.fr.eu.org) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------ | ||||||
|  | -from ..construct import CString
 | ||||||
|  | +from construct import CString
 | ||||||
|  |  from ..common.utils import struct_parse, elf_assert | ||||||
|  |  from .sections import Section, Symbol | ||||||
|  |   | ||||||
|  | diff --git a/elftools/elf/sections.py b/elftools/elf/sections.py
 | ||||||
|  | index ce62450..99b6613 100644
 | ||||||
|  | --- a/elftools/elf/sections.py
 | ||||||
|  | +++ b/elftools/elf/sections.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import CString
 | ||||||
|  | +from construct import CString
 | ||||||
|  |  from ..common.utils import struct_parse, elf_assert, parse_cstring_from_stream | ||||||
|  |   | ||||||
|  |   | ||||||
|  | diff --git a/elftools/elf/segments.py b/elftools/elf/segments.py
 | ||||||
|  | index bc54da2..dfb3a14 100644
 | ||||||
|  | --- a/elftools/elf/segments.py
 | ||||||
|  | +++ b/elftools/elf/segments.py
 | ||||||
|  | @@ -6,7 +6,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import CString
 | ||||||
|  | +from construct import CString
 | ||||||
|  |  from ..common.utils import struct_parse | ||||||
|  |  from .constants import SH_FLAGS | ||||||
|  |   | ||||||
|  | diff --git a/elftools/elf/structs.py b/elftools/elf/structs.py
 | ||||||
|  | index 0862400..51b1715 100644
 | ||||||
|  | --- a/elftools/elf/structs.py
 | ||||||
|  | +++ b/elftools/elf/structs.py
 | ||||||
|  | @@ -7,7 +7,7 @@
 | ||||||
|  |  # Eli Bendersky (eliben@gmail.com) | ||||||
|  |  # This code is in the public domain | ||||||
|  |  #------------------------------------------------------------------------------- | ||||||
|  | -from ..construct import (
 | ||||||
|  | +from construct import (
 | ||||||
|  |      UBInt8, UBInt16, UBInt32, UBInt64, | ||||||
|  |      ULInt8, ULInt16, ULInt32, ULInt64, | ||||||
|  |      SBInt32, SLInt32, SBInt64, SLInt64, | ||||||
|  | diff --git a/setup.py b/setup.py
 | ||||||
|  | index a105774..d8cd590 100644
 | ||||||
|  | --- a/setup.py
 | ||||||
|  | +++ b/setup.py
 | ||||||
|  | @@ -41,7 +41,6 @@ setup(
 | ||||||
|  |          'elftools.elf', | ||||||
|  |          'elftools.common', | ||||||
|  |          'elftools.dwarf', | ||||||
|  | -        'elftools.construct', 'elftools.construct.lib',
 | ||||||
|  |          ], | ||||||
|  |   | ||||||
|  |      scripts=['scripts/readelf.py'] | ||||||
							
								
								
									
										148
									
								
								pyelftools.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										148
									
								
								pyelftools.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,148 @@ | |||||||
|  | %global debug_package %{nil} | ||||||
|  | %global commitdate 20130619 | ||||||
|  | %global commit a1d968102e82fea06692c367849bc25418780f77 | ||||||
|  | %global shortcommit %(c=%{commit}; echo ${c:0:7}) | ||||||
|  | 
 | ||||||
|  | Name:		pyelftools | ||||||
|  | Version:	0.22 | ||||||
|  | Release:	0.1.git%{commitdate}.%{shortcommit}%{?dist} | ||||||
|  | Summary:	Pure-Python library for parsing and analyzing ELF files | ||||||
|  | 
 | ||||||
|  | License:	Public Domain | ||||||
|  | URL:		https://github.com/eliben/%{name} | ||||||
|  | 
 | ||||||
|  | # We 'll use git snapshots, because upstream keeps master-branch | ||||||
|  | # in a usable, working state.  See: | ||||||
|  | # https://github.com/eliben/pyelftools/wiki/Hacking-guide#contributing | ||||||
|  | Source0:	%{url}/archive/%{commit}/%{name}-%{version}.git%{commitdate}.%{shortcommit}.tar.gz | ||||||
|  | 
 | ||||||
|  | Patch0:		pyelftools-0.22-construct.patch | ||||||
|  | 
 | ||||||
|  | BuildRequires:	python2-devel | ||||||
|  | BuildRequires:	python-setuptools | ||||||
|  | BuildRequires:	python-construct | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | BuildRequires:	python3-devel | ||||||
|  | BuildRequires:	python3-setuptools | ||||||
|  | BuildRequires:	python3-construct | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %description | ||||||
|  | Pure-Python library for parsing and analyzing ELF files | ||||||
|  | and DWARF debugging information. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %package -n python-%{name} | ||||||
|  | Summary:	Pure-Python library for parsing and analyzing ELF files | ||||||
|  | 
 | ||||||
|  | BuildArch:	noarch | ||||||
|  | Requires:	python-construct | ||||||
|  | Provides:	%{name} = %{version}-%{release} | ||||||
|  | 
 | ||||||
|  | %description -n python-%{name} | ||||||
|  | Pure-Python library for parsing and analyzing ELF files | ||||||
|  | and DWARF debugging information. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | %package -n python3-%{name} | ||||||
|  | Summary:	Pure-Python library for parsing and analyzing ELF files | ||||||
|  | 
 | ||||||
|  | BuildArch:	noarch | ||||||
|  | Requires:	python3-construct | ||||||
|  | 
 | ||||||
|  | %description -n python3-%{name} | ||||||
|  | Pure-Python library for parsing and analyzing ELF files | ||||||
|  | and DWARF debugging information. | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %prep | ||||||
|  | %setup -qn %{name}-%{commit} | ||||||
|  | %patch0 -p1 | ||||||
|  | 
 | ||||||
|  | # remove bundled construct lib | ||||||
|  | rm -rf elftools/construct | ||||||
|  | 
 | ||||||
|  | # python3-package | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | rm -rf %{py3dir} | ||||||
|  | cp -a . %{py3dir} | ||||||
|  | 
 | ||||||
|  | # fix hashbang | ||||||
|  | sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python3|' %{py3dir}/scripts/readelf.py | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | sed -i -e 's|#!/usr/bin/env python|#!/usr/bin/python2|' scripts/readelf.py | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | %{__python} setup.py build | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | pushd %{py3dir} | ||||||
|  | %{__python3} setup.py build | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %install | ||||||
|  | %{__python} setup.py install -O1 --skip-build --root %{buildroot} | ||||||
|  | mv %{buildroot}/usr/bin/readelf.py %{buildroot}/usr/bin/pyreadelf | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | pushd %{py3dir} | ||||||
|  | %{__python3} setup.py install -O1 --skip-build --root %{buildroot} | ||||||
|  | mv %{buildroot}/usr/bin/readelf.py %{buildroot}/usr/bin/py3readelf | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %check | ||||||
|  | %{__python} test/run_all_unittests.py | ||||||
|  | %{__python} test/run_examples_test.py | ||||||
|  | # tests may fail because of differences in output-formatting | ||||||
|  | # from binutils' readelf.  See: | ||||||
|  | # https://github.com/eliben/pyelftools/wiki/Hacking-guide#tests | ||||||
|  | %{__python} test/run_readelf_tests.py || : | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | %{__python3} test/run_all_unittests.py | ||||||
|  | %{__python3} test/run_examples_test.py | ||||||
|  | # tests may fail because of differences in output-formatting | ||||||
|  | # from binutils' readelf.  See: | ||||||
|  | # https://github.com/eliben/pyelftools/wiki/Hacking-guide#tests | ||||||
|  | %{__python3} test/run_readelf_tests.py || : | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %files -n python-%{name} | ||||||
|  | %doc CHANGES LICENSE README* TODO | ||||||
|  | %{python_sitelib}/*elftools* | ||||||
|  | %{_bindir}/pyreadelf | ||||||
|  | 
 | ||||||
|  | %if 0%{?fedora} || 0%{?rhel} >= 7 | ||||||
|  | %files -n python3-%{name} | ||||||
|  | %doc CHANGES LICENSE README* TODO | ||||||
|  | %{python3_sitelib}/*elftools* | ||||||
|  | %{_bindir}/py3readelf | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %changelog | ||||||
|  | * Fri Aug 16 2013 Björn Esser <bjoern.esser@gmail.com> - 0.22-0.1.git20130619.a1d9681 | ||||||
|  | - update to latest pre-release git snapshot | ||||||
|  | - add python3-package | ||||||
|  | - build on all arches to get some conclusion from testsuite, | ||||||
|  |   but create noarch pkgs | ||||||
|  | 
 | ||||||
|  | * Sat Jun 08 2013 Terje Rosten <terje.rosten@ntnu.no> - 0.21-2 | ||||||
|  | - Remove bundled construct lib | ||||||
|  | 
 | ||||||
|  | * Thu May 09 2013 Terje Rosten <terje.rosten@ntnu.no> - 0.21-1 | ||||||
|  | - 0.21 | ||||||
|  | - Run test | ||||||
|  | - Updated source url | ||||||
|  | - Drop defattr | ||||||
|  | 
 | ||||||
|  | * Wed Jun 06 2012 Kushal Das <kushal@fedoraproject.org> 0.20-1 | ||||||
|  | - Intial package (#829676) | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user