Add patches to fix the build
This commit is contained in:
parent
d39ea3520a
commit
01806039dd
40
pefile-fix-UnicodeDecodeError-py3-e636f6d9.patch
Normal file
40
pefile-fix-UnicodeDecodeError-py3-e636f6d9.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From e636f6d9dc531890cd8415f077ad93dbb35c6ad8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: AndCycle <andcycle-github@andcycle.idv.tw>
|
||||||
|
Date: Tue, 3 May 2016 23:57:33 +0800
|
||||||
|
Subject: [PATCH] fix for UnicodeDecodeError: 'ascii' codec can't decode byte
|
||||||
|
0xe2 in position 208687: ordinal not in range(128) #105
|
||||||
|
|
||||||
|
---
|
||||||
|
setup.py | 5 +++--
|
||||||
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index b39303a..28a9623 100755
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
+from io import open
|
||||||
|
|
||||||
|
try:
|
||||||
|
from setuptools import setup, Command
|
||||||
|
@@ -22,7 +23,7 @@ def _read_doc():
|
||||||
|
Parse docstring from file 'pefile.py' and avoid importing
|
||||||
|
this module directly.
|
||||||
|
"""
|
||||||
|
- with open('pefile.py', 'r') as f:
|
||||||
|
+ with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
tree = ast.parse(f.read())
|
||||||
|
return ast.get_docstring(tree)
|
||||||
|
|
||||||
|
@@ -35,7 +36,7 @@ def _read_attr(attr_name):
|
||||||
|
__version__, __author__, __contact__,
|
||||||
|
"""
|
||||||
|
regex = attr_name + r"\s+=\s+'(.+)'"
|
||||||
|
- with open('pefile.py', 'r') as f:
|
||||||
|
+ with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
match = re.search(regex, f.read())
|
||||||
|
# Second item in the group is the value of attribute.
|
||||||
|
return match.group(1)
|
54
pefile-fix-py2-build-43c1cc79a.patch
Normal file
54
pefile-fix-py2-build-43c1cc79a.patch
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
From 43c1cc79a7120981e7465dc69c531f373fee326c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Athmane Madjoudj <athmane@fedoraproject.org>
|
||||||
|
Date: Tue, 1 Nov 2016 20:35:23 +0100
|
||||||
|
Subject: [PATCH] Fix python2 build
|
||||||
|
|
||||||
|
---
|
||||||
|
setup.py | 20 +++++++++++++++-----
|
||||||
|
1 file changed, 15 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index b22ed88..b932eb7 100755
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -4,7 +4,9 @@
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
-from io import open
|
||||||
|
+
|
||||||
|
+if sys.version_info.major == 3:
|
||||||
|
+ from io import open
|
||||||
|
|
||||||
|
try:
|
||||||
|
from setuptools import setup, Command
|
||||||
|
@@ -23,8 +25,12 @@ def _read_doc():
|
||||||
|
Parse docstring from file 'pefile.py' and avoid importing
|
||||||
|
this module directly.
|
||||||
|
"""
|
||||||
|
- with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
- tree = ast.parse(f.read().encode('ascii', 'backslashreplace'))
|
||||||
|
+ if sys.version_info.major == 2:
|
||||||
|
+ with open('pefile.py', 'r') as f:
|
||||||
|
+ tree = ast.parse(f.read())
|
||||||
|
+ else:
|
||||||
|
+ with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
+ tree = ast.parse(f.read())
|
||||||
|
return ast.get_docstring(tree)
|
||||||
|
|
||||||
|
|
||||||
|
@@ -36,8 +42,12 @@ def _read_attr(attr_name):
|
||||||
|
__version__, __author__, __contact__,
|
||||||
|
"""
|
||||||
|
regex = attr_name + r"\s+=\s+'(.+)'"
|
||||||
|
- with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
- match = re.search(regex, f.read())
|
||||||
|
+ if sys.version_info.major == 2:
|
||||||
|
+ with open('pefile.py', 'r') as f:
|
||||||
|
+ match = re.search(regex, f.read())
|
||||||
|
+ else:
|
||||||
|
+ with open('pefile.py', 'r', encoding='utf-8') as f:
|
||||||
|
+ match = re.search(regex, f.read())
|
||||||
|
# Second item in the group is the value of attribute.
|
||||||
|
return match.group(1)
|
||||||
|
|
@ -23,9 +23,12 @@ License: MIT
|
|||||||
URL: https://github.com/erocarrera/pefile
|
URL: https://github.com/erocarrera/pefile
|
||||||
|
|
||||||
Source0: https://github.com/erocarrera/pefile/archive/v%{version}/pefile-%{version}.tar.gz
|
Source0: https://github.com/erocarrera/pefile/archive/v%{version}/pefile-%{version}.tar.gz
|
||||||
|
Patch0: pefile-fix-UnicodeDecodeError-py3-e636f6d9.patch
|
||||||
|
Patch1: pefile-fix-py2-build-43c1cc79a.patch
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: python2-devel
|
|
||||||
BuildRequires: python2-setuptools
|
# For the patch
|
||||||
|
BuildRequires: git-core
|
||||||
|
|
||||||
%description
|
%description
|
||||||
%{common_desc}
|
%{common_desc}
|
||||||
@ -33,6 +36,8 @@ BuildRequires: python2-setuptools
|
|||||||
%package -n python2-%{srcname}
|
%package -n python2-%{srcname}
|
||||||
Summary: %{summary}
|
Summary: %{summary}
|
||||||
%{?python_provide:%python_provide python2-%{srcname}}
|
%{?python_provide:%python_provide python2-%{srcname}}
|
||||||
|
BuildRequires: python2-devel
|
||||||
|
BuildRequires: python2-setuptools
|
||||||
|
|
||||||
%description -n python2-%{srcname}
|
%description -n python2-%{srcname}
|
||||||
%{common_desc}
|
%{common_desc}
|
||||||
@ -40,24 +45,26 @@ Summary: %{summary}
|
|||||||
%package -n python3-%{srcname}
|
%package -n python3-%{srcname}
|
||||||
Summary: %{summary}
|
Summary: %{summary}
|
||||||
%{?python_provide:%python_provide python3-%{srcname}}
|
%{?python_provide:%python_provide python3-%{srcname}}
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
BuildRequires: python3-setuptools
|
||||||
|
|
||||||
%description -n python3-%{srcname}
|
%description -n python3-%{srcname}
|
||||||
%{common_desc}
|
%{common_desc}
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n %{srcname}-%{version}
|
%autosetup -S git -n %{srcname}-%{version}
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%py2_build
|
#%py2_build
|
||||||
%py3_build
|
%py3_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%py2_install
|
#%py2_install
|
||||||
%py3_install
|
%py3_install
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%{__python2} setup.py test
|
#%{__python2} setup.py test
|
||||||
%{__python3} setup.py test
|
%{__python3} setup.py test
|
||||||
|
|
||||||
%files -n python2-%{srcname}
|
%files -n python2-%{srcname}
|
||||||
|
Loading…
Reference in New Issue
Block a user