android build: p4a to build pyqt5 using "hostpython" instead of sys py
The current system python in the docker baseimage is py3.9, while the targetpython and hostpython built by p4a are py3.8, and this was causing linker issues in the pyqt5 build. It is also cleaner IMHO to have p4a handle what is needed for a recipe instead of assuming it is available in the system. (and I think this is how other existing recipes work) fixes https://github.com/spesmilo/electrum/issues/8016
This commit is contained in:
@@ -176,10 +176,11 @@ RUN cd /opt \
|
||||
&& git remote add sombernight https://github.com/SomberNight/python-for-android \
|
||||
&& git remote add accumulator https://github.com/accumulator/python-for-android \
|
||||
&& git fetch --all \
|
||||
# commit: from branch sombernight/qt5-wip
|
||||
&& git checkout "c6e39ae1fb4eb8d547eb70b26b89beda7e6ff4b6^{commit}" \
|
||||
# commit: from branch sombernight/electrum_20210421d
|
||||
&& git checkout "4535a333f9928e894caedefc4f746f9c6a0dc50f^{commit}" \
|
||||
&& python3 -m pip install --no-build-isolation --no-dependencies --user -e .
|
||||
|
||||
# build env vars
|
||||
ENV USE_SDK_WRAPPER=1
|
||||
ENV GRADLE_OPTS="-Xmx1536M -Dorg.gradle.jvmargs='-Xmx1536M'"
|
||||
#ENV P4A_FULL_DEBUG=1
|
||||
|
||||
13
contrib/android/p4a_recipes/packaging/__init__.py
Normal file
13
contrib/android/p4a_recipes/packaging/__init__.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from pythonforandroid.recipes.packaging import PackagingRecipe
|
||||
|
||||
|
||||
assert PackagingRecipe._version == "21.3"
|
||||
assert PackagingRecipe.depends == ["setuptools", "pyparsing", "python3"]
|
||||
assert PackagingRecipe.python_depends == []
|
||||
|
||||
|
||||
class PackagingRecipePinned(PackagingRecipe):
|
||||
sha512sum = "2e3aa276a4229ac7dc0654d586799473ced9761a83aa4159660d37ae1a2a8f30e987248dd0e260e2834106b589f259a57ce9936eef0dcc3c430a99ac6b663e05"
|
||||
|
||||
|
||||
recipe = PackagingRecipePinned()
|
||||
13
contrib/android/p4a_recipes/pyparsing/__init__.py
Normal file
13
contrib/android/p4a_recipes/pyparsing/__init__.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from pythonforandroid.recipes.pyparsing import PyparsingRecipe
|
||||
|
||||
|
||||
assert PyparsingRecipe._version == "3.0.7"
|
||||
assert PyparsingRecipe.depends == ["setuptools", "python3"]
|
||||
assert PyparsingRecipe.python_depends == []
|
||||
|
||||
|
||||
class PyparsingRecipePinned(PyparsingRecipe):
|
||||
sha512sum = "1e692f4cdaa6b6e8ca2729d0a3e2ba16d978f1957c538b6de3a4220ec7d996bdbe87c41c43abab851fffa3b0498a05841373e435602917b8c095042e273badb5"
|
||||
|
||||
|
||||
recipe = PyparsingRecipePinned()
|
||||
@@ -7,7 +7,7 @@ util = load_source('util', os.path.join(os.path.dirname(os.path.dirname(__file__
|
||||
|
||||
|
||||
assert PyQt5Recipe._version == "5.15.6"
|
||||
assert PyQt5Recipe.depends == ['qt5', 'pyjnius', 'setuptools', 'pyqt5sip']
|
||||
assert PyQt5Recipe.depends == ['qt5', 'pyjnius', 'setuptools', 'pyqt5sip', 'hostpython3', 'pyqt_builder']
|
||||
assert PyQt5Recipe.python_depends == []
|
||||
|
||||
|
||||
|
||||
13
contrib/android/p4a_recipes/pyqt_builder/__init__.py
Normal file
13
contrib/android/p4a_recipes/pyqt_builder/__init__.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from pythonforandroid.recipes.pyqt_builder import PyQtBuilderRecipe
|
||||
|
||||
|
||||
assert PyQtBuilderRecipe._version == "1.12.2"
|
||||
assert PyQtBuilderRecipe.depends == ["sip", "packaging", "python3"]
|
||||
assert PyQtBuilderRecipe.python_depends == []
|
||||
|
||||
|
||||
class PyQtBuilderRecipePinned(PyQtBuilderRecipe):
|
||||
sha512sum = "022f2cd40c100543c4b442fc5b27bbf2ec853d94b531f8f6dc1d7f92b07bcc20e8f0a4eb64feb96d094ba0d5f01fddcc8aed23ddf67a61417e07983a73918230"
|
||||
|
||||
|
||||
recipe = PyQtBuilderRecipePinned()
|
||||
13
contrib/android/p4a_recipes/sip/__init__.py
Normal file
13
contrib/android/p4a_recipes/sip/__init__.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from pythonforandroid.recipes.sip import SipRecipe
|
||||
|
||||
|
||||
assert SipRecipe._version == "6.5.1"
|
||||
assert SipRecipe.depends == ["setuptools", "packaging", "toml", "python3"]
|
||||
assert SipRecipe.python_depends == []
|
||||
|
||||
|
||||
class SipRecipePinned(SipRecipe):
|
||||
sha512sum = "2d6f225e653873462d97dfdc85bd308a26b66996e1bb98e2c3aa60a3b260db745021f1d3182db8e943fd216ee27a2f65731b96d287e94f8f2e7972c5df971c69"
|
||||
|
||||
|
||||
recipe = SipRecipePinned()
|
||||
13
contrib/android/p4a_recipes/toml/__init__.py
Normal file
13
contrib/android/p4a_recipes/toml/__init__.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from pythonforandroid.recipes.toml import TomlRecipe
|
||||
|
||||
|
||||
assert TomlRecipe._version == "0.10.2"
|
||||
assert TomlRecipe.depends == ["setuptools", "python3"]
|
||||
assert TomlRecipe.python_depends == []
|
||||
|
||||
|
||||
class TomlRecipePinned(TomlRecipe):
|
||||
sha512sum = "ede2c8fed610a3827dba828f6e7ab7a8dbd5745e8ef7c0cd955219afdc83b9caea714deee09e853627f05ad1c525dc60426a6e9e16f58758aa028cb4d3db4b39"
|
||||
|
||||
|
||||
recipe = TomlRecipePinned()
|
||||
Reference in New Issue
Block a user