forked from pyoomph/pyoomph
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
110 lines (102 loc) · 3.9 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
[project]
name = "pyoomph"
description = "pyoomph - a multi-physics finite element framework based on oomph-lib and GiNaC"
dependencies = [
'meshio>=5.3.4',
'pygmsh>=7.1.17',
'numpy>=1.24.4',
'scipy>=1.10.1',
'matplotlib>=3.7.5',
'more_itertools>=10.2.0',
'tccbox>=2024.3.18',
'setuptools>=69.5.1',
'mkl>=2021.4.0; sys_platform != "darwin"',
'mkl==2021.4.0; sys_platform == "darwin"'
]
readme = "README.md"
requires-python = ">=3.8"
authors = [ { name="Christian Diddens", email="[email protected]" }, { name="Duarte Rocha", email="[email protected]" }, ]
license = { file = "COPYING" }
classifiers=[
'Development Status :: 3 - Alpha',
'Intended Audience :: Science/Research',
'Natural Language :: English',
'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
'Operating System :: POSIX :: Linux',
'Operating System :: Unix',
'Operating System :: MacOS :: MacOS X',
'Operating System :: Microsoft :: Windows :: Windows 10',
'Operating System :: Microsoft :: Windows :: Windows 11',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Topic :: Scientific/Engineering',
'Topic :: Scientific/Engineering :: Mathematics',
'Topic :: Scientific/Engineering :: Physics'
]
dynamic = ["version"]
[tool.setuptools_scm]
[project.urls]
homepage = "https://pyoomph.github.io"
documentation = "https://pyoomph.readthedocs.io/en/latest/index.html"
source = "https://github.com/pyoomph/pyoomph"
download = "https://pypi.org/project/pyoomph/"
tracker = "https://github.com/pyoomph/pyoomph/issues"
[build-system]
requires = ["setuptools>=68.0","pybind11>=2.5.0","setuptools-scm>=8"]
build-backend = "setuptools.build_meta:__legacy__"
[tool.cibuildwheel]
manylinux-x86_64-image = "manylinux2014"
build-frontend = { name = "pip", args = ["--no-build-isolation", "--verbose"] }
#test-requires = "pytest"
#test-command = "pytest {package}/tests" # does not work, since the gmsh library has unresolvable requirements
[tool.cibuildwheel.linux]
environment={PYOOMPH_CONFIG_FILE="/project/citools/pyoomph_config_linuxwheel.env"}
before-all = [
"export PYOOMPH_CONFIG_FILE=$(readlink -f ./citools/pyoomph_config_linuxwheel.env)",
"source $PYOOMPH_CONFIG_FILE",
"echo Loaded $PYOOMPH_CONFIG_FILE",
"mkdir -p $PYOOMPH_GINAC_INCLUDE_DIR",
"export PYOOMPH_CXXFLAGS_EXTRA=-I`readlink -f $PYOOMPH_GINAC_INCLUDE_DIR`",
"echo set extra flags to $PYOOMPH_CXXFLAGS_EXTRA",
"source {project}/citools/before_build_linux.sh {project}",
"./clean.sh all",
"bash citools/download_and_build_static_ginac.sh",
"bash ./prebuild.sh",
"make -C src clean",
"make -C src -B"
]
before-build = [
"export PYOOMPH_CONFIG_FILE={project}/citools/pyoomph_config_linuxwheel.env",
"echo SOURCING $PYOOMPH_CONFIG_FILE",
"source $PYOOMPH_CONFIG_FILE",
"python -m pip install pybind11",
"rm -rf build/"
]
[tool.cibuildwheel.macos]
environment={PYOOMPH_CONFIG_FILE="./citools/pyoomph_config_macwheel.env"}
before-all = [
"export PYOOMPH_CONFIG_FILE=$(readlink -f ./citools/pyoomph_config_macwheel.env)",
"source $PYOOMPH_CONFIG_FILE",
"echo Loaded $PYOOMPH_CONFIG_FILE",
"mkdir -p $PYOOMPH_GINAC_INCLUDE_DIR",
"export PYOOMPH_CXXFLAGS_EXTRA=-I`readlink -f $PYOOMPH_GINAC_INCLUDE_DIR`",
"echo set extra flags to $PYOOMPH_CXXFLAGS_EXTRA",
"./clean.sh all",
"brew install automake",
"bash citools/download_and_build_static_ginac.sh",
"bash ./prebuild.sh",
"make -C src clean",
"make -C src -B"
]
before-build = [
"export PYOOMPH_CONFIG_FILE=$(readlink -f ./citools/pyoomph_config_macwheel.env)",
"echo SOURCING $PYOOMPH_CONFIG_FILE",
"source $PYOOMPH_CONFIG_FILE",
"python -m pip install pybind11 setuptools wheel",
"rm -rf build/"
]