
provider
~~~~~~~~
The provider section gives information on where to find the source code for the core. If the provider section is missing, the core is assumed to be local, with the directory of the .core file as the root directory.

[cols="2,1,5",options="header"]
|==============================
|Name | Type | Description
|name | String | The name option selects which provider backend to use. All other provider options are specific to the selected provider. Currently supported backends are github, git, opencores, submodule and url.
|cachable | boolean | If the cachable option is set to false, FuseSoc will unconditionally refetch the core even if it is found in the cache. Default is true
|==============================

Provider-specific options:

github
^^^^^^
* *user :* Name of the github user or organisation.

* *repo :* Name of the GIT repository.

* *version :* Name of the GIT ref (i.e. commit SHA, branch or tag) to use

git
^^^
* *repo :* URL of the GIT repository.

* *version :* Name of the GIT ref (i.e. commit SHA, branch or tag) to use


opencores
^^^^^^^^^
* *repo_name :* Name of the opencores project. Can be found under Details on the project homepage.

* *repo_root :* The sub directory in the repo that contains the files of interest. In most cases the value "trunk" is used to avoid pulling in tags and branches.

* *revision :* The svn revision of the repository.

url
^^^
* *url :* URL of the core file (or archive).

* *filetype :* File type (zip, tar, simple).

Known issues
------------

. The configparser in python 2 doesn't handle spaces before values in multiline options.
+
.Illegal comment style
--------------
src_files =
 clkgen.v
 #gpio.v
 fusesoc_top.v
--------------
+
This is not legal in python 2, while:
+
.Legal comment style
--------------
src_files =
 clkgen.v
# gpio.v
 fusesoc_top.v
--------------
+
is ok in python 2 and python 3.
+
. Spaces are not allowed anywhere in the paths.
