提交 457be4dd 编写于 作者: 5991120's avatar 5991120

modify setup.py and paddle_build.sh

上级 71bc8e99
...@@ -21,8 +21,8 @@ import platform ...@@ -21,8 +21,8 @@ import platform
import re import re
import shutil import shutil
import subprocess import subprocess
import sysconfig
import sys import sys
import sysconfig
from contextlib import contextmanager from contextlib import contextmanager
from distutils.spawn import find_executable from distutils.spawn import find_executable
from subprocess import CalledProcessError from subprocess import CalledProcessError
...@@ -50,20 +50,21 @@ assert ( ...@@ -50,20 +50,21 @@ assert (
CMAKE CMAKE
), 'The "cmake" executable is not found. Please check if Cmake is installed.' ), 'The "cmake" executable is not found. Please check if Cmake is installed.'
#CMAKE: full path to python library # CMAKE: full path to python library
if (platform.system() == "Windows"): if platform.system() == "Windows":
cmake_python_library = "{}/libs/python{}.lib".format( cmake_python_library = "{}/libs/python{}.lib".format(
sysconfig.get_config_var("prefix"), sysconfig.get_config_var("prefix"), sysconfig.get_config_var("VERSION")
sysconfig.get_config_var("VERSION")) )
# Fix virtualenv builds # Fix virtualenv builds
if not os.path.exists(cmake_python_library): if not os.path.exists(cmake_python_library):
cmake_python_library = "{}/libs/python{}.lib".format( cmake_python_library = "{}/libs/python{}.lib".format(
sys.base_prefix, sys.base_prefix, sysconfig.get_config_var("VERSION")
sysconfig.get_config_var("VERSION")) )
else: else:
cmake_python_library = "{}/{}".format( cmake_python_library = "{}/{}".format(
sysconfig.get_config_var("LIBDIR"), sysconfig.get_config_var("LIBDIR"),
sysconfig.get_config_var("INSTSONAME")) sysconfig.get_config_var("INSTSONAME"),
)
TOP_DIR = os.path.dirname(os.path.realpath(__file__)) TOP_DIR = os.path.dirname(os.path.realpath(__file__))
...@@ -571,14 +572,17 @@ def options_process(args, build_options): ...@@ -571,14 +572,17 @@ def options_process(args, build_options):
for key, value in sorted(build_options.items()): for key, value in sorted(build_options.items()):
if value is not None: if value is not None:
args.append("-D{}={}".format(key, value)) args.append("-D{}={}".format(key, value))
if ('PYTHON_EXECUTABLE:FILEPATH' not in build_options.keys()): if 'PYTHON_EXECUTABLE:FILEPATH' not in build_options.keys():
args.append("-D{}={}".format('PYTHON_EXECUTABLE',sys.executable)) args.append("-D{}={}".format('PYTHON_EXECUTABLE', sys.executable))
if ('PYTHON_INCLUDE_DIR:PATH' not in build_options.keys()): if 'PYTHON_INCLUDE_DIR:PATH' not in build_options.keys():
args.append('-D{}={}'.format('PYTHON_INCLUDE_DIR',sysconfig.get_path("include"))) args.append(
if ('PYTHON_LIBRARY:FILEPATH' not in build_options.keys()): '-D{}={}'.format(
args.append('-D{}={}'.format('PYTHON_LIBRARY',cmake_python_library)) 'PYTHON_INCLUDE_DIR', sysconfig.get_path("include")
)
)
if 'PYTHON_LIBRARY:FILEPATH' not in build_options.keys():
args.append('-D{}={}'.format('PYTHON_LIBRARY', cmake_python_library))
def get_cmake_generator(): def get_cmake_generator():
if os.getenv("CMAKE_GENERATOR"): if os.getenv("CMAKE_GENERATOR"):
...@@ -698,11 +702,13 @@ def build_steps(): ...@@ -698,11 +702,13 @@ def build_steps():
# if rerun_cmake is True,remove CMakeCache.txt and rerun camke # if rerun_cmake is True,remove CMakeCache.txt and rerun camke
if os.path.isfile(cmake_cache_file_path) and rerun_cmake is True: if os.path.isfile(cmake_cache_file_path) and rerun_cmake is True:
os.remove(cmake_cache_file_path) os.remove(cmake_cache_file_path)
CMAKE_GENERATOR = get_cmake_generator() CMAKE_GENERATOR = get_cmake_generator()
bool_ninja = (CMAKE_GENERATOR == "Ninja") bool_ninja = CMAKE_GENERATOR == "Ninja"
build_ninja_file_path = os.path.join(build_path, "build.ninja") build_ninja_file_path = os.path.join(build_path, "build.ninja")
if os.path.exists(cmake_cache_file_path) and not (bool_ninja and not os.path.exists(build_ninja_file_path)): if os.path.exists(cmake_cache_file_path) and not (
bool_ninja and not os.path.exists(build_ninja_file_path)
):
print("Do not need rerun camke,everything is ready,run build now") print("Do not need rerun camke,everything is ready,run build now")
else: else:
cmake_run(build_path) cmake_run(build_path)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册