https://github.com/assignuser/cmake-refactor
A python package to refactor your projects CMakeLists
https://github.com/assignuser/cmake-refactor
cmake refactoring-tools
Last synced: 6 months ago
JSON representation
A python package to refactor your projects CMakeLists
- Host: GitHub
- URL: https://github.com/assignuser/cmake-refactor
- Owner: assignUser
- License: apache-2.0
- Created: 2023-07-29T03:49:35.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-08-24T15:30:58.000Z (almost 3 years ago)
- Last Synced: 2025-02-01T22:12:59.275Z (over 1 year ago)
- Topics: cmake, refactoring-tools
- Language: Python
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# cmake-refactor
This package was initially created to update around 300 targets in the [Velox](https://github.com/facebookincubator/velox) build system to use `target_link_libraries` with the appropriate keyword (`PRIVAT|PUBLIC|INTERFACE`) to resolve circluar dependencies and align with 'modern CMake' practices.
The package currently contains hardcoded assumptions that are tailored to the Velox directory and code hierarchy. An ongoing goal is to remove these assumptions and make the package usable by other projects.
## Parser
This repo contains a ANTLRv4 grammar for CMake that is used to generate a fast parser that provides listener and visitor classes. This parser will also likely be generalized and extended.
## Contributions
Contributions are welcome, please open an issue to discuss your plans (unless it's a typo ;)).