Skip to content

Locating Scripts

starkos edited this page Apr 10, 2021 · 2 revisions

⚠️ We have a new website! Visit now for the most update to date documentation.
       This wiki is no longer being maintained.


When Premake needs to load a script file, via a call to dofile() or include(), or a module via a call to require(), it uses the premake.path variable to locate it. This is a semicolon-delimited string which, by default, includes the following locations, in the specified order:

  • Relative to the currently executing script

  • On the path specified by the --scripts command line argument

  • On the paths listed in the PREMAKE_PATH environment variable

  • In the ~/.premake directory

  • In the ~/Library/Application Support/Premake directory (Mac OS X only)

  • In the /usr/local/share/premake directory

  • In the /usr/share/premake directory

  • In the directory containing the currently running Premake executable.

Note that these search paths also work for modules (e.g. ~/.premake/monodevelop) and system scripts.

You are free to add or remove paths from premake.path, in either your project or system scripts. Any requests to load scripts after the change will use your modified path.

Clone this wiki locally