New Projucer feature on the develop branch - default module search paths

This commit adds a new feature to the Projucer that has been on our backlog for some time - default module search paths. You can now specify a separate global path for both JUCE and user-created modules that will be used either as a fallback path when an exporter’s path field is empty (1) or by default if you select the “Use global path” option in the settings page of an individual module (2) or the “Enable/disable global path for all modules…” button in the main module settings page (3):

(1)

(2)

(3)

These paths are stored locally, which means that loading a Projucer project on different machine with a different JUCE install path should now be relatively painless as it will search for the module using the path stored locally on that machine instead of the exporter paths saved with the project. The paths can be set via the “Global Search Paths…” menu item under either “Projucer” (Mac) or “File” (Windows and Linux):

The “Add a module…” menu item in the Modules tree now displays modules found in the global JUCE modules, global user modules and exporter paths separately so it is easier to distinguish modules if you have multiple installations of JUCE:

If you have any feedback or bug reports using this new feature please post them in this thread.

12 Likes

I want to give it a triple like!! And thanks that you added both, the juce and the user module path. I’ll have to try that soon!

OMG :wink: Might have to upgrade just for this…

hey @ed95 where is the global path stored? I’d like to make a setup script that clones juce, builds the projucer and sets the global path to the local cloned “modules” folder, so I can have a clean dev environment in one single step.

Hoped that projucer had a command line input for that, but this does not seem the case.

thanks!

[update] My bad - should have looked into projucer’s source instead of asking…
~/Library/Application Support/Projucer/Projucer.settings
…<VALUE name=“PROJECT_DEFAULT_SETTINGS”>…

Will try to update that part using sed…but It would be really nice to have a “projucer set-global-path <platform> <newpath>” from the command line" :slight_smile:

I’ve added this to develop here. There’s now a command line option set-global-search-path that you can use with the arguments os identifier path so for example to set the global user path for OS X you would do --set-global-search-path osx defaultJuceModulePath "~/some/path/here. If you type --help when invoking the Projucer from the command line you can see all the possible valid identifiers that you can use.

1 Like

@ed95 aWEsome, thanks!