Browse Source

add tips on building failure

tags/0.7.0-beta
liangyongxiong 5 years ago
parent
commit
5aca64dae3
1 changed files with 49 additions and 28 deletions
  1. +49
    -28
      setup.py

+ 49
- 28
setup.py View File

@@ -30,7 +30,12 @@ from setuptools.command.install import install




def get_version(): def get_version():
"""Get version."""
"""
Get version.

Returns:
str, mindinsight version.
"""
machinery = import_module('importlib.machinery') machinery = import_module('importlib.machinery')
version_path = os.path.join(os.path.dirname(__file__), 'mindinsight', '_version.py') version_path = os.path.join(os.path.dirname(__file__), 'mindinsight', '_version.py')
module_name = '__mindinsightversion__' module_name = '__mindinsightversion__'
@@ -40,15 +45,24 @@ def get_version():
return version_module.VERSION return version_module.VERSION




def get_os():
"""Get OS."""
os_system = platform.system().lower()
return os_system
def get_platform():
"""
Get platform name.

Returns:
str, platform name in lowercase.
"""
return platform.system().lower()




def get_description(): def get_description():
"""Get description."""
os_info = get_os()
"""
Get description.

Returns:
str, wheel package description.
"""
os_info = get_platform()
cpu_info = platform.machine() cpu_info = platform.machine()


cmd = "git log --format='[sha1]:%h, [branch]:%d' -1" cmd = "git log --format='[sha1]:%h, [branch]:%d' -1"
@@ -68,7 +82,12 @@ def get_description():




def get_install_requires(): def get_install_requires():
"""Get install requirements."""
"""
Get install requirements.

Returns:
list, list of dependent packages.
"""
with open('requirements.txt') as file: with open('requirements.txt') as file:
return file.read().splitlines() return file.read().splitlines()


@@ -95,15 +114,34 @@ def run_script(script):


Args: Args:
script (str): Target script file path. script (str): Target script file path.

Returns:
int, return code.
""" """
cmd = '/bin/bash {}'.format(script) cmd = '/bin/bash {}'.format(script)
process = subprocess.Popen( process = subprocess.Popen(
shlex.split(cmd), shlex.split(cmd),
shell=False shell=False
) )
return process.wait()



rc = process.wait()
def build_dependencies():
"""Build dependencies."""
build_dir = os.path.join(os.path.dirname(__file__), 'build')

sys.stdout.write('building crc32 ...\n')
crc32_script = os.path.join(build_dir, 'scripts', 'crc32.sh')
rc = run_script(crc32_script)
if rc:
sys.stdout.write('building crc32 failure\n')
sys.exit(1)

sys.stdout.write('building ui ...\n')
ui_script = os.path.join(build_dir, 'scripts', 'ui.sh')
rc = run_script(ui_script)
if rc: if rc:
sys.stdout.write('building ui failure\n')
sys.exit(1) sys.exit(1)




@@ -111,26 +149,12 @@ class EggInfo(egg_info):
"""Egg info.""" """Egg info."""


def run(self): def run(self):
self.build_dependencies()

build_dependencies()
egg_info_dir = os.path.join(os.path.dirname(__file__), 'mindinsight.egg-info') egg_info_dir = os.path.join(os.path.dirname(__file__), 'mindinsight.egg-info')
shutil.rmtree(egg_info_dir, ignore_errors=True) shutil.rmtree(egg_info_dir, ignore_errors=True)

super().run() super().run()

update_permissions(egg_info_dir) update_permissions(egg_info_dir)


def build_dependencies(self):
build_dir = os.path.join(os.path.dirname(__file__), 'build')

sys.stdout.write('building crc32 ...\n')
crc32_script = os.path.join(build_dir, 'scripts', 'crc32.sh')
run_script(crc32_script)

sys.stdout.write('building ui ...\n')
ui_script = os.path.join(build_dir, 'scripts', 'ui.sh')
run_script(ui_script)



class BuildPy(build_py): class BuildPy(build_py):
"""Build py files.""" """Build py files."""
@@ -138,9 +162,7 @@ class BuildPy(build_py):
def run(self): def run(self):
mindinsight_lib_dir = os.path.join(os.path.dirname(__file__), 'build', 'lib', 'mindinsight') mindinsight_lib_dir = os.path.join(os.path.dirname(__file__), 'build', 'lib', 'mindinsight')
shutil.rmtree(mindinsight_lib_dir, ignore_errors=True) shutil.rmtree(mindinsight_lib_dir, ignore_errors=True)

super().run() super().run()

update_permissions(mindinsight_lib_dir) update_permissions(mindinsight_lib_dir)




@@ -149,7 +171,6 @@ class Install(install):


def run(self): def run(self):
super().run() super().run()

if sys.argv[-1] == 'install': if sys.argv[-1] == 'install':
pip = import_module('pip') pip = import_module('pip')
mindinsight_dir = os.path.join(os.path.dirname(pip.__path__[0]), 'mindinsight') mindinsight_dir = os.path.join(os.path.dirname(pip.__path__[0]), 'mindinsight')
@@ -175,7 +196,7 @@ if __name__ == '__main__':
}, },
description=get_description(), description=get_description(),
packages=['mindinsight'], packages=['mindinsight'],
platforms=[get_os()],
platforms=[get_platform()],
include_package_data=True, include_package_data=True,
cmdclass={ cmdclass={
'egg_info': EggInfo, 'egg_info': EggInfo,


Loading…
Cancel
Save