# CMakerer
This script generates `CMakeLists.txt` from arbitrary C/C++ codebases. It is
not intended to produce "buildable" cmake configurations, but instead enable
CLion to load and index the code.
# Installation
```bash
pip3 install --user cmakerer
```
```bash
python3 setup.py sdist bdist_wheel
pip3 install --user dist/cmakerer-*.whl
```
# Usage
```bash
cmakerer -o ~/path/to/cpp/code/CMakeLists.txt -x src/windows -! tests -z ~/path/to/cpp/code
```
# Features
* Detects both standard and system include paths.
* Handles "multi-encoding" C/C++ files
* Exclude directory paths with `-x`
* Exclude (sub)directory segments with `-!`
* Exclude cmake directories with `-z`
* Add compiler defines with `-DVAR` or `-DVAR=value`
* Deterministically add and remove paths with `-I`/`-S`/`-R`
Raw data
{
"_id": null,
"home_page": "https://github.com/ChaosData/cmakerer",
"name": "cmakerer",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6.0",
"maintainer_email": null,
"keywords": "cmake clion",
"author": "Jeff Dileo",
"author_email": "jtdileo@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/71/e5/0208bbdaf71fb34718391b35a6be6b0508b09c8dfd3e387ef0f9718312e4/cmakerer-1.3.0.tar.gz",
"platform": null,
"description": "# CMakerer\n\nThis script generates `CMakeLists.txt` from arbitrary C/C++ codebases. It is\nnot intended to produce \"buildable\" cmake configurations, but instead enable\nCLion to load and index the code.\n\n# Installation\n\n```bash\npip3 install --user cmakerer\n```\n\n```bash\npython3 setup.py sdist bdist_wheel\npip3 install --user dist/cmakerer-*.whl\n```\n\n# Usage\n\n```bash\ncmakerer -o ~/path/to/cpp/code/CMakeLists.txt -x src/windows -! tests -z ~/path/to/cpp/code\n```\n\n# Features\n\n* Detects both standard and system include paths.\n* Handles \"multi-encoding\" C/C++ files\n* Exclude directory paths with `-x`\n* Exclude (sub)directory segments with `-!`\n* Exclude cmake directories with `-z`\n* Add compiler defines with `-DVAR` or `-DVAR=value`\n* Deterministically add and remove paths with `-I`/`-S`/`-R`\n",
"bugtrack_url": null,
"license": "BSD (2 Clause)",
"summary": "Generates CMakeLists.txt files from arbitrary C/C++ codebases.",
"version": "1.3.0",
"project_urls": {
"Homepage": "https://github.com/ChaosData/cmakerer"
},
"split_keywords": [
"cmake",
"clion"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "93626768e1758f223dd3f6b37be42576061d3f2c09c5828bf0b815ac745fc30d",
"md5": "56f8fa4aafee4a656d37acebf2313a5f",
"sha256": "5ba5422bafe2a2f2e347a7c09ed2163829108dadc68bb92a175b005b40e27d5b"
},
"downloads": -1,
"filename": "cmakerer-1.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "56f8fa4aafee4a656d37acebf2313a5f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 8238,
"upload_time": "2024-11-23T04:42:34",
"upload_time_iso_8601": "2024-11-23T04:42:34.718374Z",
"url": "https://files.pythonhosted.org/packages/93/62/6768e1758f223dd3f6b37be42576061d3f2c09c5828bf0b815ac745fc30d/cmakerer-1.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "71e50208bbdaf71fb34718391b35a6be6b0508b09c8dfd3e387ef0f9718312e4",
"md5": "0fc82e34871003257d3765c928bc232c",
"sha256": "be0296b00cc642b09261dd3c9383267ec5d0ef1a5e507d4525fe019b87593e0b"
},
"downloads": -1,
"filename": "cmakerer-1.3.0.tar.gz",
"has_sig": false,
"md5_digest": "0fc82e34871003257d3765c928bc232c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 7617,
"upload_time": "2024-11-23T04:42:36",
"upload_time_iso_8601": "2024-11-23T04:42:36.322665Z",
"url": "https://files.pythonhosted.org/packages/71/e5/0208bbdaf71fb34718391b35a6be6b0508b09c8dfd3e387ef0f9718312e4/cmakerer-1.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-23 04:42:36",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ChaosData",
"github_project": "cmakerer",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "cmakerer"
}