cmeel


Namecmeel JSON
Version 0.53.3 PyPI version JSON
download
home_pagehttps://github.com/cmake-wheel/cmeel
SummaryCreate Wheel from CMake projects
upload_time2023-12-15 16:31:31
maintainer
docs_urlNone
authorGuilhem Saurel
requires_python>=3.8,<4.0
licenseBSD-2-Clause
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # CMake Wheel: cmeel

[![PyPI version](https://badge.fury.io/py/cmeel.svg)](https://pypi.org/project/cmeel)
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/cmake-wheel/cmeel/main.svg)](https://results.pre-commit.ci/latest/github/cmake-wheel/cmeel/main)
[![Documentation Status](https://readthedocs.org/projects/cmeel/badge/?version=latest)](https://cmeel.readthedocs.io/en/latest/?badge=latest)

[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v1.json)](https://github.com/charliermarsh/ruff)

Wheel build backend using CMake, to package anything with pip and distribute on PyPI.

Following those relevant PEPs:
- [PEP 427](https://peps.python.org/pep-0427/), The Wheel Binary Package Format 1.0
- [PEP 517](https://peps.python.org/pep-0517/), A build-system independent format for source trees
- [PEP 518](https://peps.python.org/pep-0518/), Specifying Minimum Build System Requirements for Python Projects
- [PEP 600](https://peps.python.org/pep-0600/), Future ‘manylinux’ Platform Tags for Portable Linux Built Distributions
- [PEP 621](https://peps.python.org/pep-0621/), Storing project metadata in pyproject.toml
- [PEP 639](https://peps.python.org/pep-0639/), Improving License Clarity with Better Package Metadata, **DRAFT**
- [PEP 660](https://peps.python.org/pep-0660/), Editable installs for pyproject.toml based builds (wheel based)

## Chat

https://matrix.to/#/#cmake-wheel:matrix.org

## Basic idea

Glue between PEP 517 & 660 entry points and modern CMake standard project configuration / build / test / install

This Install in `${PYTHON_SITELIB}/cmeel.prefix/`:
- As there is a dot, it is not a valid python module name, so no risk of importing anything there by mistake
- Play well with others, as everything is confined to `${PYTHON_SITELIB}/cmeel.prefix`
- `${PYTHON_SITELIB}/cmeel.pth` automatically load `${PYTHON_SITELIB}/cmeel.prefix/${PYTHON_SITELIB}`, so python
  packages work out of the box
- Existing `${PYTHON_SITELIB}/cmeel.prefix` are automatically added to `$CMAKE_PREFIX_PATH`, so we can build CMake
  packages whose dependencies are provided by other packages installed with cmeel
- Stuff in `${PYTHON_SITELIB}/cmeel.prefix/bin` is exposed via `cmeel.run:cmeel_run`, or copied if start with a shebang

## Basic pyproject.toml example

extract from  https://github.com/cmake-wheel/cmeel-example/blob/main/pyproject.toml:

```toml
[project]
name = "cmeel-example"
version = "0.4.12"
description = "This is an example project, to show how to use cmeel"
requires-python = ">= 3.7"
license = "BSD-2-Clause"
authors = [{name = "Guilhem Saurel", email = "guilhem.saurel@laas.fr"}]

[project.urls]
homepage = "https://github.com/cmake-wheel/cmeel-example"
repository = "https://github.com/cmake-wheel/cmeel-example.git"
changelog = "https://github.com/cmake-wheel/cmeel-example/blob/main/CHANGELOG.md"

[build-system]
requires = ["cmeel[build]"]
build-backend = "cmeel"
```

Complete specification is available at:
https://packaging.python.org/en/latest/specifications/declaring-project-metadata

## Install

If you want to use the helpers provided by cmeel, to *eg*. test building a project in a manylinux container with
`cmeel docker`, the best way to install cmeel is to use pipx: `pipx install cmeel`

Otherwise, if you just want to use the build backend, there is no need to install anything: your frontent (*eg.* `pip`)
should do this for you

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/cmake-wheel/cmeel",
    "name": "cmeel",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "Guilhem Saurel",
    "author_email": "guilhem.saurel@laas.fr",
    "download_url": "https://files.pythonhosted.org/packages/b2/75/4883d3994945a6ae8d24a4e130b6b2144d06b7041ab99eb8331464b9c839/cmeel-0.53.3.tar.gz",
    "platform": null,
    "description": "# CMake Wheel: cmeel\n\n[![PyPI version](https://badge.fury.io/py/cmeel.svg)](https://pypi.org/project/cmeel)\n[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/cmake-wheel/cmeel/main.svg)](https://results.pre-commit.ci/latest/github/cmake-wheel/cmeel/main)\n[![Documentation Status](https://readthedocs.org/projects/cmeel/badge/?version=latest)](https://cmeel.readthedocs.io/en/latest/?badge=latest)\n\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v1.json)](https://github.com/charliermarsh/ruff)\n\nWheel build backend using CMake, to package anything with pip and distribute on PyPI.\n\nFollowing those relevant PEPs:\n- [PEP 427](https://peps.python.org/pep-0427/), The Wheel Binary Package Format 1.0\n- [PEP 517](https://peps.python.org/pep-0517/), A build-system independent format for source trees\n- [PEP 518](https://peps.python.org/pep-0518/), Specifying Minimum Build System Requirements for Python Projects\n- [PEP 600](https://peps.python.org/pep-0600/), Future \u2018manylinux\u2019 Platform Tags for Portable Linux Built Distributions\n- [PEP 621](https://peps.python.org/pep-0621/), Storing project metadata in pyproject.toml\n- [PEP 639](https://peps.python.org/pep-0639/), Improving License Clarity with Better Package Metadata, **DRAFT**\n- [PEP 660](https://peps.python.org/pep-0660/), Editable installs for pyproject.toml based builds (wheel based)\n\n## Chat\n\nhttps://matrix.to/#/#cmake-wheel:matrix.org\n\n## Basic idea\n\nGlue between PEP 517 & 660 entry points and modern CMake standard project configuration / build / test / install\n\nThis Install in `${PYTHON_SITELIB}/cmeel.prefix/`:\n- As there is a dot, it is not a valid python module name, so no risk of importing anything there by mistake\n- Play well with others, as everything is confined to `${PYTHON_SITELIB}/cmeel.prefix`\n- `${PYTHON_SITELIB}/cmeel.pth` automatically load `${PYTHON_SITELIB}/cmeel.prefix/${PYTHON_SITELIB}`, so python\n  packages work out of the box\n- Existing `${PYTHON_SITELIB}/cmeel.prefix` are automatically added to `$CMAKE_PREFIX_PATH`, so we can build CMake\n  packages whose dependencies are provided by other packages installed with cmeel\n- Stuff in `${PYTHON_SITELIB}/cmeel.prefix/bin` is exposed via `cmeel.run:cmeel_run`, or copied if start with a shebang\n\n## Basic pyproject.toml example\n\nextract from  https://github.com/cmake-wheel/cmeel-example/blob/main/pyproject.toml:\n\n```toml\n[project]\nname = \"cmeel-example\"\nversion = \"0.4.12\"\ndescription = \"This is an example project, to show how to use cmeel\"\nrequires-python = \">= 3.7\"\nlicense = \"BSD-2-Clause\"\nauthors = [{name = \"Guilhem Saurel\", email = \"guilhem.saurel@laas.fr\"}]\n\n[project.urls]\nhomepage = \"https://github.com/cmake-wheel/cmeel-example\"\nrepository = \"https://github.com/cmake-wheel/cmeel-example.git\"\nchangelog = \"https://github.com/cmake-wheel/cmeel-example/blob/main/CHANGELOG.md\"\n\n[build-system]\nrequires = [\"cmeel[build]\"]\nbuild-backend = \"cmeel\"\n```\n\nComplete specification is available at:\nhttps://packaging.python.org/en/latest/specifications/declaring-project-metadata\n\n## Install\n\nIf you want to use the helpers provided by cmeel, to *eg*. test building a project in a manylinux container with\n`cmeel docker`, the best way to install cmeel is to use pipx: `pipx install cmeel`\n\nOtherwise, if you just want to use the build backend, there is no need to install anything: your frontent (*eg.* `pip`)\nshould do this for you\n",
    "bugtrack_url": null,
    "license": "BSD-2-Clause",
    "summary": "Create Wheel from CMake projects",
    "version": "0.53.3",
    "project_urls": {
        "Documentation": "https://cmeel.readthedocs.io/",
        "Homepage": "https://github.com/cmake-wheel/cmeel",
        "changelog": "https://github.com/cmake-wheel/cmeel/blob/main/CHANGELOG.md"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4622774a41b02269f6f0c521cf4fcf5b32536e0906256da6c284a093c7262ce6",
                "md5": "2becbdfebf5ba47ae8def68fc7ea6b75",
                "sha256": "26472fa9d57610cc5cb2c2ed0911b272b928e9e580a9d3c51e3ca90a919f3fad"
            },
            "downloads": -1,
            "filename": "cmeel-0.53.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2becbdfebf5ba47ae8def68fc7ea6b75",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 20945,
            "upload_time": "2023-12-15T16:31:30",
            "upload_time_iso_8601": "2023-12-15T16:31:30.296020Z",
            "url": "https://files.pythonhosted.org/packages/46/22/774a41b02269f6f0c521cf4fcf5b32536e0906256da6c284a093c7262ce6/cmeel-0.53.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b2754883d3994945a6ae8d24a4e130b6b2144d06b7041ab99eb8331464b9c839",
                "md5": "311fe62113ad35ffd7fa61ab4472c5bd",
                "sha256": "f40761e3b997910d5a3153a35d9635c3bc849fc21a79a8b57d67a3617006d359"
            },
            "downloads": -1,
            "filename": "cmeel-0.53.3.tar.gz",
            "has_sig": false,
            "md5_digest": "311fe62113ad35ffd7fa61ab4472c5bd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 16922,
            "upload_time": "2023-12-15T16:31:31",
            "upload_time_iso_8601": "2023-12-15T16:31:31.793476Z",
            "url": "https://files.pythonhosted.org/packages/b2/75/4883d3994945a6ae8d24a4e130b6b2144d06b7041ab99eb8331464b9c839/cmeel-0.53.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-15 16:31:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "cmake-wheel",
    "github_project": "cmeel",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "cmeel"
}
        
Elapsed time: 2.69509s