fix to build on manylinux

This commit is contained in:
Robert Taylor 2022-12-14 03:24:07 +00:00
parent 4da93f3394
commit 05fbfbe7fe
27 changed files with 38 additions and 33 deletions

View File

@ -20,7 +20,7 @@
setup_qt() setup_qt()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)

View File

@ -19,7 +19,7 @@
setup_boost() setup_boost()
setup_qt() setup_qt()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)

View File

@ -11,7 +11,7 @@
list(INSERT CMAKE_MODULE_PATH 0 "${Bootstrap_SOURCE_DIR}/cmake_modules/") list(INSERT CMAKE_MODULE_PATH 0 "${Bootstrap_SOURCE_DIR}/cmake_modules/")
find_package(Bootstrap REQUIRED) find_package(Bootstrap REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development ) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module )
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
print_cmake_module_path() print_cmake_module_path()

View File

@ -20,7 +20,7 @@
setup_qwt() setup_qwt()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)

View File

@ -5,18 +5,18 @@ import platform
import re import re
import subprocess import subprocess
import sys import sys
import sysconfig
from distutils.version import LooseVersion from distutils.version import LooseVersion
from distutils.dir_util import copy_tree, remove_tree from distutils.dir_util import copy_tree, remove_tree
from distutils.sysconfig import get_python_inc from distutils.sysconfig import get_python_inc
import distutils.sysconfig as sysconfig from distutils import sysconfig
from find_libpython import find_libpython from find_libpython import find_libpython
from typing import Any, Dict from typing import Any, Dict
from setuptools.command.build_ext import build_ext from setuptools.command.build_ext import build_ext
from setuptools.extension import Extension from setuptools.extension import Extension
class CMakeExtension(Extension): class CMakeExtension(Extension):
name: str # exists, even though IDE doesn't find it name: str # exists, even though IDE doesn't find it
@ -86,7 +86,6 @@ class ExtensionBuilder(build_ext):
cmake_args += [f"-DCORIOLIS_USER_TOP={install_dir}"] cmake_args += [f"-DCORIOLIS_USER_TOP={install_dir}"]
cmake_args += [f"-DPython_EXECUTABLE={sys.executable}"] cmake_args += [f"-DPython_EXECUTABLE={sys.executable}"]
cmake_args += [f"-DPython_LIBRARY={find_libpython()}"]
cmake_args += ["-DPOETRY=1"] cmake_args += ["-DPOETRY=1"]
cmake_args += ["-DWITH_QT5=1"] cmake_args += ["-DWITH_QT5=1"]
@ -96,6 +95,8 @@ class ExtensionBuilder(build_ext):
cmake_args += ["-DCMAKE_INSTALL_RPATH='$ORIGIN/lib:$ORIGIN'"] cmake_args += ["-DCMAKE_INSTALL_RPATH='$ORIGIN/lib:$ORIGIN'"]
cmake_args += ["-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE"] cmake_args += ["-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE"]
print(f"Using cmake args: {cmake_args}")
subprocess.check_call(["cmake", "--debug-find", "--trace-redirect=build.cmake.trace", "--trace-expand", ext.sourcedir] + cmake_args, cwd=build_dir, env=env) subprocess.check_call(["cmake", "--debug-find", "--trace-redirect=build.cmake.trace", "--trace-expand", ext.sourcedir] + cmake_args, cwd=build_dir, env=env)
subprocess.check_call(["cmake", "--build", "."] + build_args, cwd=build_dir) subprocess.check_call(["cmake", "--build", "."] + build_args, cwd=build_dir)
subprocess.check_call(["cmake", "--install", ".", "--prefix", install_dir] + install_args, cwd=build_dir) subprocess.check_call(["cmake", "--install", ".", "--prefix", install_dir] + install_args, cwd=build_dir)

View File

@ -28,7 +28,7 @@
find_package(Libbfd) find_package(Libbfd)
endif() endif()
find_package(BZip2 REQUIRED) find_package(BZip2 REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(BISON REQUIRED) find_package(BISON REQUIRED)
find_package(FLEX REQUIRED) find_package(FLEX REQUIRED)

View File

@ -15,7 +15,7 @@
set_cmake_policies() set_cmake_policies()
setup_sysconfdir("${CMAKE_INSTALL_PREFIX}") setup_sysconfdir("${CMAKE_INSTALL_PREFIX}")
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -19,7 +19,7 @@
setup_boost(program_options) setup_boost(program_options)
setup_qt() setup_qt()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)

View File

@ -19,7 +19,7 @@
setup_boost(program_options) setup_boost(program_options)
setup_qt() setup_qt()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)

View File

@ -14,7 +14,7 @@
setup_boost(program_options) setup_boost(program_options)
setup_qt() setup_qt()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -18,7 +18,7 @@
setup_boost(program_options python) setup_boost(program_options python)
find_package(LibXml2 REQUIRED) find_package(LibXml2 REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(BISON REQUIRED) find_package(BISON REQUIRED)
find_package(FLEX REQUIRED) find_package(FLEX REQUIRED)

View File

@ -18,7 +18,7 @@
set_cmake_policies() set_cmake_policies()
setup_boost(program_options) setup_boost(program_options)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
#find_package(KATABATIC REQUIRED) #find_package(KATABATIC REQUIRED)

View File

@ -17,7 +17,7 @@
check_distribution() check_distribution()
setup_sysconfdir( "${CMAKE_INSTALL_PREFIX}" ) setup_sysconfdir( "${CMAKE_INSTALL_PREFIX}" )
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -20,7 +20,7 @@
setup_qt() setup_qt()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)

View File

@ -24,7 +24,7 @@
find_package(BZip2 REQUIRED) find_package(BZip2 REQUIRED)
find_package(BISON REQUIRED) find_package(BISON REQUIRED)
find_package(FLEX REQUIRED) find_package(FLEX REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development ) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module )
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
if (USE_LIBBFD) if (USE_LIBBFD)

View File

@ -17,7 +17,7 @@
set(QT_USE_QTXML "true") set(QT_USE_QTXML "true")
find_package(Qt4 REQUIRED) find_package(Qt4 REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -15,7 +15,7 @@
check_distribution() check_distribution()
setup_sysconfdir("${CMAKE_INSTALL_PREFIX}") setup_sysconfdir("${CMAKE_INSTALL_PREFIX}")
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -20,7 +20,7 @@
setup_qt() setup_qt()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(FLUTE REQUIRED) find_package(FLUTE REQUIRED)

View File

@ -15,7 +15,7 @@
setup_boost(program_options) setup_boost(program_options)
setup_qt() setup_qt()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -14,7 +14,7 @@
set_cmake_policies() set_cmake_policies()
setup_boost() setup_boost()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -18,7 +18,7 @@
if (USE_LIBBFD) if (USE_LIBBFD)
find_package(Libbfd) find_package(Libbfd)
endif() endif()
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

6
poetry.lock generated
View File

@ -33,7 +33,7 @@ test = ["codecov (>=2.0.5)", "coverage (>=4.2)", "flake8 (>=3.0.4)", "path.py (>
name = "find-libpython" name = "find-libpython"
version = "0.3.0" version = "0.3.0"
description = "Finds the libpython associated with your environment, wherever it may be hiding" description = "Finds the libpython associated with your environment, wherever it may be hiding"
category = "dev" category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -43,5 +43,5 @@ files = [
[metadata] [metadata]
lock-version = "2.0" lock-version = "2.0"
python-versions = "^3.6" python-versions = "^3.8"
content-hash = "3977d779a407995475d178890d20631837483f241de6836600bb92b3d211766b" content-hash = "abbc1ba1fde22ac8e6b5fc0fe7430c18cad5c97aea6a80ea9283c0b11099c71d"

View File

@ -3,13 +3,14 @@ name = "Coriolis"
version = "2.5.0" version = "2.5.0"
description = "Place and Route for semiconductors" description = "Place and Route for semiconductors"
authors = ["Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr>"] authors = ["Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr>"]
build = "build.py" build = "builder.py"
packages = [ packages = [
{ include = "Coriolis"} { include = "Coriolis"}
] ]
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = "^3.6" python = "^3.8"
find-libpython = "^0.3.0"
[tool.poetry.dev-dependencies] [tool.poetry.dev-dependencies]
cmake = ">=3" cmake = ">=3"
@ -23,10 +24,12 @@ unittests = 'Coriolis:unittests'
yosys_coriolis = 'Coriolis:yosys_coriolis' yosys_coriolis = 'Coriolis:yosys_coriolis'
[build-system] [build-system]
requires = ["poetry-core", "setuptools", "cmake", "patchelf", "find_libpython"] requires = ["poetry-core", "setuptools", "cmake", "patchelf", "find-libpython"]
build-backend = "poetry.core.masonry.api" build-backend = "poetry.core.masonry.api"
[tool.cibuildwheel.linux] [tool.cibuildwheel.linux]
skip = ["cp36-*", "cp37-*", "pp*"]
build-frontend = "build"
before-all = ''' before-all = '''
yum install -y \ yum install -y \
qt5-qtbase-devel qt5-qtsvg-devel \ qt5-qtbase-devel qt5-qtsvg-devel \
@ -37,3 +40,4 @@ before-all = '''
python3-devel libxml2-devel \ python3-devel libxml2-devel \
qwt-devel qwt-devel
''' '''
build-verbosity=2

View File

@ -19,7 +19,7 @@
cmake_policy(SET CMP0002 OLD) cmake_policy(SET CMP0002 OLD)
setup_sysconfdir("${CMAKE_INSTALL_PREFIX}") setup_sysconfdir("${CMAKE_INSTALL_PREFIX}")
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)
find_package(CORIOLIS REQUIRED) find_package(CORIOLIS REQUIRED)

View File

@ -19,7 +19,7 @@
setup_qt() setup_qt()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)

View File

@ -24,7 +24,7 @@
find_package(Libbfd) find_package(Libbfd)
endif() endif()
find_package(BZip2 REQUIRED) find_package(BZip2 REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF REQUIRED) find_package(LEFDEF REQUIRED)
find_package(COLOQUINTE) find_package(COLOQUINTE)

View File

@ -27,7 +27,7 @@
endif() endif()
find_package(Libexecinfo REQUIRED) find_package(Libexecinfo REQUIRED)
find_package(BZip2 REQUIRED) find_package(BZip2 REQUIRED)
find_package(Python 3 REQUIRED COMPONENTS Interpreter Development) find_package(Python 3 REQUIRED COMPONENTS Interpreter Development.Module)
find_package(PythonSitePackages REQUIRED) find_package(PythonSitePackages REQUIRED)
find_package(LEFDEF) find_package(LEFDEF)
find_package(HURRICANE REQUIRED) find_package(HURRICANE REQUIRED)