Code Monkey home page Code Monkey logo

gcmake-rust's Introduction

gcmake-rust

gcmake-rust is a C/C++ project configuration tool which acts as an abstraction layer over CMake.

Example GIF

Documentation

Documentation is found in docs/Docs_Home.md.

About

This project uses CPM.cmake v0.38.7 for dependency management.

Among other things, this tool is able to:

  • Generate full CMake configurations for an entire project tree.
  • Generate new C/C++ projects, subprojects, and test projects.
  • Generate header, source, and template-impl files in-tree.

Project Overview

The project overview is part of the documentation, and is found in docs/overview.md.

Build Requirements

Usage Requirements

  • Git 1.6.5 or higher must be installed on the system
  • CMake 3.25 or higher

Installation

For common use cases, see the project overview docs page.

  1. Clone the repository: git clone --recurse-submodules [email protected]:scupit/gcmake-rust.git
  2. cd into the cloned repository.
  3. Switch to the desired branch or release tag: git checkout v1.6.8.
  4. Run cargo install --path . to create an optimized build and install the resulting gcmake-rust executable to $HOME/.cargo/bin (or %USERPROFILE%\.cargo\bin on Windows).
  5. Optionally, alias gcmake-rust to just gcmake.
  6. Run the executable: gcmake-rust dep-config update to install the external dependency compatibility configuration repository

The tool is now fully installed and ready to go.

To get started, try creating a new project with gcmake-rust new root-project 'your-project-name'. After stepping through the initializer, you will have a fully functioning CMake-compatible project.

Getting Started

After building and installing GCMake, step through the project initializer with gcmake-rust new root-project 'your-project-name'. Once it finishes, you'll have a fully working, fully CMake compatible project.

After making any change to cmake_data.yaml in your project, run gcmake-rust to regenerate the CMakeLists.txt and Config.cmake.in files and re-run all validation checks.

GCMake Repository Links

gcmake-rust's People

Contributors

scupit avatar

Stargazers

Stas Lyahnovich avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.