Giter Club home page Giter Club logo

arduino_glove's Introduction

JUCE CMake Repo Prototype

A prototype to model a way to create an entire repo using JUCE 6 and CMake.

This is inspired by a desire to keep the environment setting of my projects to minimum, making sure the the environment is identical for every developer/machine.

The main concept is to set all the different variables (where JUCE is, custom modules, etc) in the top CMakeLists.txt, then add all your projects with very little setup time.

Another important concept is to share all 'related' projects under the same configuration, which I prefer, since it encourages code-sharing and build system settings sharing. In some of the examples I added minimal usages of juce-style modules to illustrate how that can be done.

To build, all you have to do is load this project in your favorite IDE (CLion/Visual Studio/VSCode/etc) and click 'build' for one of the targets (templates, JUCE examples, Projucer, etc).

You can also generate a project for an IDE by using (Mac):

cmake -G Xcode -B build

Windows:

cmake -G "Visual Studio 16 2019" -B build

For package management, I'm using the amazing CPM.cmake: #https://github.com/TheLartians/CPM.cmake It automatically fetches JUCE from git, but you can also set the variable: CPM_JUCE_SOURCE to point it to a local folder, by using: -DCPM_JUCE_SOURCE="Path_To_JUCE" when invoking CMake

JUCE can be found here: #https://github.com/juce-framework/JUCE

License: Anything from me in this repo is completely free to use for any purpose. However, please check the licenses for CPM and JUCE as described in their repo.

arduino_glove's People

Contributors

eyalamirmusic avatar

Watchers

 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.