-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build babelized projects with meson (#90)
* Move zest.releaser config to pyproject.toml * Set up Meson build for a single Fortran component This is WIP, but the project files are in the right place. * Remove setuptools config from pyproject.toml * Set version, but not readme, in dynamic metadata It looks like meson doesn't allow readme in dynamic metadata. Be sure to install _version.py. * Read package dependencies from babel.toml file I got help on this from https://stackoverflow.com/a/30517735. * Filter dependencies on default empty string * Update bmi-example-fortran * Get the name of the first component to babelize This is a temporary fix until I can handle multiple components in the `meson.build` file. * Set --no-build-isolation for editable installs This is a *meson-python* behavior. See https://meson-python.readthedocs.io/en/stable/how-to-guides/editable-installs.html * Include package requirements for example * use conda; install bmiheatf in _inst; create bmiheatf.pc * add bmiheatf as a dependency * remove requirements from babel.toml * install build tools on a per language basis * add bmi-tester as a testing dependency * install language-specific build tools * create a pkg-config file for heatf; back to using conda * add c and cpp to builds * update setup-miniconda * install pkg-config in test environment * fix heatf pkg-config file and bmic, bmicxx pkg-config names * update c, cxx submodules * back to lowercase for pkg-config names * use setuptools for pure-python projects * build multiple extension; remove bmiheat dependency * remove setup.py, setup_utils.py * bump versions of setup-miniconda, checkout * remove meson.build for python projects * remove setup.py setup_utils.py from prettification * Update bmi-example-fortran to tip of mdpiper/use-pkgconfig branch * Remove hardcoded pkg-config files * Clean lint * Add a news fragment * Update bmi-example-fortran to v2.1.3 * Remove Makefile; trim .gitignore * Include brief instructions for installing from source --------- Co-authored-by: mcflugen <mcflugen@gmail.com>
- Loading branch information
Showing
19 changed files
with
193 additions
and
382 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,114 +1,25 @@ | ||
# Byte-compiled / optimized / DLL files | ||
.DS_Store | ||
__pycache__/ | ||
*.py[cod] | ||
*$py.class | ||
|
||
# C extensions | ||
*.so | ||
|
||
# Distribution / packaging | ||
.Python | ||
env/ | ||
.ipynb_checkpoints | ||
build/ | ||
develop-eggs/ | ||
dist/ | ||
downloads/ | ||
eggs/ | ||
.eggs/ | ||
# lib/ | ||
lib64/ | ||
parts/ | ||
sdist/ | ||
var/ | ||
wheels/ | ||
*.egg-info/ | ||
.installed.cfg | ||
*.egg | ||
|
||
# PyInstaller | ||
# Usually these files are written by a python script from a template | ||
# before PyInstaller builds the exe, so as to inject date/other infos into it. | ||
*.manifest | ||
*.spec | ||
|
||
# Installer logs | ||
pip-log.txt | ||
pip-delete-this-directory.txt | ||
|
||
# Unit test / coverage reports | ||
htmlcov/ | ||
.tox/ | ||
.coverage | ||
.coverage.* | ||
.cache | ||
nosetests.xml | ||
coverage.xml | ||
*.cover | ||
.hypothesis/ | ||
|
||
# Translations | ||
*.mo | ||
*.pot | ||
|
||
# Django stuff: | ||
*.log | ||
local_settings.py | ||
|
||
# Flask stuff: | ||
instance/ | ||
.webassets-cache | ||
|
||
# Scrapy stuff: | ||
.scrapy | ||
|
||
# Sphinx documentation | ||
docs/_build/ | ||
|
||
# PyBuilder | ||
target/ | ||
|
||
# Jupyter Notebook | ||
.ipynb_checkpoints | ||
|
||
# pyenv | ||
.python-version | ||
|
||
# celery beat schedule file | ||
celerybeat-schedule | ||
|
||
# SageMath parsed files | ||
*.sage.py | ||
|
||
# dotenv | ||
.env | ||
|
||
# virtualenv | ||
docs/_generated/ | ||
.venv | ||
venv/ | ||
ENV/ | ||
|
||
# Spyder project settings | ||
.spyderproject | ||
.spyproject | ||
|
||
# Rope project settings | ||
.ropeproject | ||
|
||
# mkdocs documentation | ||
/site | ||
|
||
# mypy | ||
.mypy_cache/ | ||
|
||
# nox virtual envs | ||
.nox/ | ||
*.so | ||
*.o | ||
*.mod | ||
*.smod | ||
|
||
{% if cookiecutter.language == 'fortran' -%} | ||
{%- if cookiecutter.language != 'python' -%} | ||
{%- for babelized_class in cookiecutter.components %} | ||
# Fortran files generated by the babelizer | ||
{{cookiecutter.package_name}}/lib/bmi_interoperability.mod | ||
{{cookiecutter.package_name}}/lib/bmi_interoperability.smod | ||
{{cookiecutter.package_name}}/lib/bmi_interoperability.o | ||
{{cookiecutter.package_name}}/lib/{{ babelized_class|lower }}.c | ||
{%- endfor %} | ||
{%- endif %} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.