initial pyelftools
This commit is contained in:
commit
356d2743b1
127
pyelftools-0.24-construct.patch
Normal file
127
pyelftools-0.24-construct.patch
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
diff --git a/elftools/common/construct_utils.py b/elftools/common/construct_utils.py
|
||||||
|
index 8ace30e..321ab51 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 d8acefa..f6d017c 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 9140f91..17f5c74 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
|
||||||
|
from ..common.py3compat import iteritems
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/elftools/dwarf/structs.py b/elftools/dwarf/structs.py
|
||||||
|
index e25dc84..cfc4a85 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/enums.py b/elftools/elf/enums.py
|
||||||
|
index dbeb20e..5767d41 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/notes.py b/elftools/elf/notes.py
|
||||||
|
index b3a41d6..526135c 100644
|
||||||
|
--- a/elftools/elf/notes.py
|
||||||
|
+++ b/elftools/elf/notes.py
|
||||||
|
@@ -8,7 +8,7 @@
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
from ..common.py3compat import bytes2str
|
||||||
|
from ..common.utils import struct_parse, roundup
|
||||||
|
-from ..construct import CString
|
||||||
|
+from construct import CString
|
||||||
|
|
||||||
|
|
||||||
|
def iter_notes(elffile, offset, size):
|
||||||
|
diff --git a/elftools/elf/segments.py b/elftools/elf/segments.py
|
||||||
|
index c1c0279..8464248 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
|
||||||
|
from .notes import iter_notes
|
||||||
|
diff --git a/elftools/elf/structs.py b/elftools/elf/structs.py
|
||||||
|
index d2404ab..2570b4f 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,
|
||||||
|
--- a/setup.py~ 2016-08-05 05:18:18.000000000 +0200
|
||||||
|
+++ b/setup.py 2018-06-17 13:51:23.961881845 +0200
|
||||||
|
@@ -41,7 +41,6 @@
|
||||||
|
'elftools.elf',
|
||||||
|
'elftools.common',
|
||||||
|
'elftools.dwarf',
|
||||||
|
- 'elftools.construct', 'elftools.construct.lib',
|
||||||
|
],
|
||||||
|
|
||||||
|
scripts=['scripts/readelf.py']
|
||||||
BIN
pyelftools-0.24.tar.gz
Normal file
BIN
pyelftools-0.24.tar.gz
Normal file
Binary file not shown.
65
pyelftools.spec
Normal file
65
pyelftools.spec
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
Name: pyelftools
|
||||||
|
Version: 0.24
|
||||||
|
Release: 4
|
||||||
|
License: Public Domain
|
||||||
|
Summary: Parsing ELF and DWARF in Python
|
||||||
|
URL: https://github.com/eliben/pyelftools
|
||||||
|
Source0: https://files.pythonhosted.org/packages/source/p/pyelftools/pyelftools-%{version}.tar.gz
|
||||||
|
Patch0001: pyelftools-0.24-construct.patch
|
||||||
|
BuildRequires: python2-devel python2-setuptools python2-construct python3-devel python3-setuptools python3-construct
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description
|
||||||
|
This package provides a python library for parsing and
|
||||||
|
analyzing ELF files and DWARF debugging information.
|
||||||
|
|
||||||
|
%package -n python2-pyelftools
|
||||||
|
Summary: Parsing ELF and DWARF in Python
|
||||||
|
Requires: python2-construct
|
||||||
|
%{?python_provide:%python_provide python2-pyelftools}
|
||||||
|
%description -n python2-pyelftools
|
||||||
|
This package provides a python library for parsing and
|
||||||
|
analyzing ELF files and DWARF debugging information.
|
||||||
|
|
||||||
|
%package -n python3-pyelftools
|
||||||
|
Summary: Parsing ELF and DWARF in Python
|
||||||
|
Requires: python3-construct
|
||||||
|
%{?python_provide:%python_provide python3-pyelftools}
|
||||||
|
%description -n python3-pyelftools
|
||||||
|
This package provides a python library for parsing and
|
||||||
|
analyzing ELF files and DWARF debugging information.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1
|
||||||
|
rm -rf elftools/construct
|
||||||
|
|
||||||
|
%build
|
||||||
|
%{py2_build}
|
||||||
|
%{py3_build}
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{py2_install}
|
||||||
|
mv %{buildroot}/usr/bin/readelf.py %{buildroot}/usr/bin/py2readelf
|
||||||
|
%{py3_install}
|
||||||
|
mv %{buildroot}/usr/bin/readelf.py %{buildroot}/usr/bin/pyreadelf
|
||||||
|
|
||||||
|
%check
|
||||||
|
%{__python2} test/run_all_unittests.py
|
||||||
|
%{__python2} test/run_examples_test.py
|
||||||
|
%{__python2} test/run_readelf_tests.py || :
|
||||||
|
%{__python3} test/run_all_unittests.py
|
||||||
|
%{__python3} test/run_examples_test.py
|
||||||
|
%{__python3} test/run_readelf_tests.py || :
|
||||||
|
|
||||||
|
%files -n python2-pyelftools
|
||||||
|
%doc CHANGES LICENSE
|
||||||
|
%{_bindir}/py2readelf
|
||||||
|
%{python2_sitelib}/*
|
||||||
|
%files -n python3-pyelftools
|
||||||
|
%doc CHANGES LICENSE
|
||||||
|
%{_bindir}/pyreadelf
|
||||||
|
%{python3_sitelib}/*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Dec 2 2019 likexin<likexin4@huawei.com> - 0.24-4
|
||||||
|
- Package init
|
||||||
Loading…
x
Reference in New Issue
Block a user