This page collects information about [http://grass.osgeo.org/wiki/GRASS_AddOns GRASS AddOns] management from developer point of view.
== !AddOns XML file ==
GRASS !AddOns metadata XML file can be created by [source:grass-addons/tools/addons/build-xml.py build-xml.py] Python script available from SVN. It's creating XML file `modules.xml` in `~/.grass6/addons` for GRASS 6 and in `~/.grass7/addons` for GRASS 7.
Example:
{{{
#!xml
Starts a graphics display monitor which can be controlled from the command line.
display,CLI
Generate ground control points for image group to be rectified.
imagery,ground control points
...
Unpacks a vector map packed with r.pack.
vector,import,copying
}}}
There is also available script called [source:grass-addons/tools/addons/compile-xml.sh compile-xml.sh] which compiles GRASS !AddOns modules for GRASS 6 and GRASS 7 and creates XML metadata file. This script simply calls `compile.sh` and `build-xml.py`. When running the script the main log file is stored in `~/grass/addons/make.log` and each modules log in `~/.grass/addons/log/.log`. Beside that the script also print basic information about progress to standard output
{{{
At revision 49265.
-----------------------------------------------------
AddOns '/home/landa/.grass7/addons'...
-----------------------------------------------------
Compiling d.mon2... SUCCESS
Compiling i.points.auto... SUCCESS
...
Compiling v.unpack... SUCCESS
-----------------------------------------------------
AddOns '/home/landa/.grass6/addons'...
-----------------------------------------------------
Compiling d.barb... SUCCESS
Compiling d.edit.rast... SUCCESS
...
Compiling v.what.rast.buffer... SUCCESS
-----------------------------------------------------
Creating XML file '/home/landa/.grass7/addons/modules.xml'...
-----------------------------------------------------
Parsing ... SUCCESS
Parsing ... SUCCESS
...
Parsing ... SUCCESS
-----------------------------------------------------
Creating XML file '/home/landa/.grass6/addons/modules.xml'...
-----------------------------------------------------
Parsing ... FAILED
Parsing ... SUCCESS
...
Parsing ... SUCCESS
}}}
== Compile !AddOns on MS Windows ==
Background: `g.extension` in winGRASS is not trying to compile given !AddOn as on GNU/Linux, it just downloads pre-compiled binaries from the server.
The GRASS !AddOns binaries are downloaded in winGRASS by default from http://wingrass.fsv.cvut.cz, eg. for GRASS 7 it's http://wingrass.fsv.cvut.cz/grass70/addons. The GRASS !AddOns are compiled on that server by script [source:grass-addons/tools/addons/compile.sh compile.sh] available from SVN.