mirror of
https://github.com/Z3Prover/z3
synced 2025-04-15 13:28:47 +00:00
Merge branch 'master' of https://github.com/z3prover/z3
This commit is contained in:
commit
d73b7267e3
|
@ -10,13 +10,14 @@ from distutils.util import get_platform
|
||||||
from distutils.errors import LibError
|
from distutils.errors import LibError
|
||||||
from distutils.command.build import build as _build
|
from distutils.command.build import build as _build
|
||||||
from distutils.command.sdist import sdist as _sdist
|
from distutils.command.sdist import sdist as _sdist
|
||||||
|
from distutils.command.clean import clean as _clean
|
||||||
from setuptools.command.develop import develop as _develop
|
from setuptools.command.develop import develop as _develop
|
||||||
from setuptools.command.bdist_egg import bdist_egg as _bdist_egg
|
from setuptools.command.bdist_egg import bdist_egg as _bdist_egg
|
||||||
|
|
||||||
|
|
||||||
build_env = dict(os.environ)
|
build_env = dict(os.environ)
|
||||||
build_env['PYTHON'] = sys.executable
|
build_env['PYTHON'] = sys.executable
|
||||||
build_env['CXXFLAGS'] = "-std=c++11"
|
build_env['CXXFLAGS'] = build_env.get('CXXFLAGS', '') + " -std=c++11"
|
||||||
|
|
||||||
ROOT_DIR = os.path.abspath(os.path.dirname(__file__))
|
ROOT_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||||
SRC_DIR_LOCAL = os.path.join(ROOT_DIR, 'core')
|
SRC_DIR_LOCAL = os.path.join(ROOT_DIR, 'core')
|
||||||
|
@ -37,13 +38,23 @@ else:
|
||||||
LIBRARY_FILE = "libz3.so"
|
LIBRARY_FILE = "libz3.so"
|
||||||
EXECUTABLE_FILE = "z3"
|
EXECUTABLE_FILE = "z3"
|
||||||
|
|
||||||
|
def rmtree(tree):
|
||||||
|
if os.path.exists(tree):
|
||||||
|
shutil.rmtree(tree, ignore_errors=False)
|
||||||
|
|
||||||
def _clean_bins():
|
def _clean_bins():
|
||||||
"""
|
"""
|
||||||
Clean up the binary files and headers that are installed along with the bindings
|
Clean up the binary files and headers that are installed along with the bindings
|
||||||
"""
|
"""
|
||||||
shutil.rmtree(LIBS_DIR, ignore_errors=True)
|
rmtree(LIBS_DIR)
|
||||||
shutil.rmtree(BINS_DIR, ignore_errors=True)
|
rmtree(BINS_DIR)
|
||||||
shutil.rmtree(HEADERS_DIR, ignore_errors=True)
|
rmtree(HEADERS_DIR)
|
||||||
|
|
||||||
|
def _clean_native_build():
|
||||||
|
"""
|
||||||
|
Clean the "build" directory in the z3 native root
|
||||||
|
"""
|
||||||
|
rmtree(BUILD_DIR)
|
||||||
|
|
||||||
def _z3_version():
|
def _z3_version():
|
||||||
post = os.getenv('Z3_VERSION_SUFFIX', '')
|
post = os.getenv('Z3_VERSION_SUFFIX', '')
|
||||||
|
@ -146,10 +157,16 @@ class bdist_egg(_bdist_egg):
|
||||||
|
|
||||||
class sdist(_sdist):
|
class sdist(_sdist):
|
||||||
def run(self):
|
def run(self):
|
||||||
self.execute(_clean_bins, (), msg="Cleaning binary files")
|
self.execute(_clean_bins, (), msg="Cleaning binary files and headers")
|
||||||
self.execute(_copy_sources, (), msg="Copying source files")
|
self.execute(_copy_sources, (), msg="Copying source files")
|
||||||
_sdist.run(self)
|
_sdist.run(self)
|
||||||
|
|
||||||
|
class clean(_clean):
|
||||||
|
def run(self):
|
||||||
|
self.execute(_clean_bins, (), msg="Cleaning binary files and headers")
|
||||||
|
self.execute(_clean_native_build, (), msg="Cleaning native build")
|
||||||
|
_clean.run(self)
|
||||||
|
|
||||||
# the build directory needs to exist
|
# the build directory needs to exist
|
||||||
#try: os.makedirs(os.path.join(ROOT_DIR, 'build'))
|
#try: os.makedirs(os.path.join(ROOT_DIR, 'build'))
|
||||||
#except OSError: pass
|
#except OSError: pass
|
||||||
|
@ -191,5 +208,5 @@ setup(
|
||||||
'z3': [os.path.join('lib', '*'), os.path.join('include', '*.h'), os.path.join('include', 'c++', '*.h')]
|
'z3': [os.path.join('lib', '*'), os.path.join('include', '*.h'), os.path.join('include', 'c++', '*.h')]
|
||||||
},
|
},
|
||||||
data_files=[('bin',[os.path.join('bin',EXECUTABLE_FILE)])],
|
data_files=[('bin',[os.path.join('bin',EXECUTABLE_FILE)])],
|
||||||
cmdclass={'build': build, 'develop': develop, 'sdist': sdist, 'bdist_egg': bdist_egg},
|
cmdclass={'build': build, 'develop': develop, 'sdist': sdist, 'bdist_egg': bdist_egg, 'clean': clean},
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue