Merge pull request #465 from AndreMiras/feature/use_cd_context_manager

Uses new `cd` context manager more
This commit is contained in:
Andre Miras 2020-05-03 16:04:20 +02:00 committed by GitHub
commit 136d19473d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 9 deletions

View file

@ -1,8 +1,7 @@
# pure-python package, this can be removed when we'll support any python package
from toolchain import PythonRecipe, shprint
from toolchain import PythonRecipe, shprint, cd
from os.path import join
import sh
import os
class ItsDangerousRecipe(PythonRecipe):
@ -13,14 +12,14 @@ class ItsDangerousRecipe(PythonRecipe):
def install(self):
arch = list(self.filtered_archs)[0]
build_dir = self.get_build_dir(arch.arch)
os.chdir(build_dir)
hostpython = sh.Command(self.ctx.hostpython)
build_env = arch.get_env()
dest_dir = join(self.ctx.dist_dir, "root", "python")
build_env['PYTHONPATH'] = join(dest_dir, 'lib', 'python2.7', 'site-packages')
cmd = sh.Command("sed")
shprint(cmd, "-i", "", "s/setuptools/distutils.core/g", "./setup.py", _env=build_env)
shprint(hostpython, "setup.py", "install", "--prefix", dest_dir, _env=build_env)
with cd(build_dir):
shprint(cmd, "-i", "", "s/setuptools/distutils.core/g", "./setup.py", _env=build_env)
shprint(hostpython, "setup.py", "install", "--prefix", dest_dir, _env=build_env)
recipe = ItsDangerousRecipe()

View file

@ -1,9 +1,8 @@
'''Recipe for pycrypto on ios
'''
from toolchain import CythonRecipe, shprint
from toolchain import CythonRecipe, shprint, cd
from os.path import join
import sh
import os
class PycryptoRecipe(CythonRecipe):
@ -31,12 +30,12 @@ class PycryptoRecipe(CythonRecipe):
def install(self):
arch = list(self.filtered_archs)[0]
build_dir = self.get_build_dir(arch.arch)
os.chdir(build_dir)
hostpython = sh.Command(self.ctx.hostpython)
build_env = arch.get_env()
dest_dir = join(self.ctx.dist_dir, "root", "python")
build_env['PYTHONPATH'] = join(dest_dir, 'lib', 'python2.7', 'site-packages')
shprint(hostpython, "setup.py", "install", "--prefix", dest_dir, _env=build_env)
with cd(build_dir):
shprint(hostpython, "setup.py", "install", "--prefix", dest_dir, _env=build_env)
recipe = PycryptoRecipe()

View file

@ -62,10 +62,12 @@ IS_PY2 = sys.version_info[0] == 2
@contextmanager
def cd(newdir):
prevdir = getcwd()
logger.info("cd {}".format(newdir))
chdir(expanduser(newdir))
try:
yield
finally:
logger.info("cd {}".format(prevdir))
chdir(prevdir)