IT IS A WORK IN PROGRESS PROJECT
The main prupose of this project is the ability to work on all major platforms like Unices and Windows platforms. It is mainly tested on Linux (Debian like), Darwin (OS X) and Windows (NT 6).
You should be able to easily build, test and deploy your software on all platforms or just accordingly to the supported platforms. The core of this project is written in JavaScript and powered by Node.js. The package managing is forwarded to WPKG (a dpkg/apt-get like package manager).
The name comes from X for Cross and craft for WarCraft (the video game). You will see sometimes tools with funny names like zog or lokthar.
There are two shells. The hight level shell is named zog, the second one
(low level) is named xcraft.
Look for zog -h and xcraft -h for the common help.
The xcraft command will open the Xcraft shell if no argument are provided.
The main purpose of this shell concerns the deployment of the toolchain. This
one should not be used in a common use case.
This command is used in order to init the main xcraft configuration file. This
file will be located to ./etc/xcraft/config.json. You can provide some paths
to add to the PATH environment variable.
? Xcraft> init /mysysroot/bin /mysysroot/usr/binSome Xcraft packages have they own configuration file. This command provides a way in order to generate these files with the default values.
? Xcraft> defaultsInstead of just having the default values for the Xcraft packages configuration files, you can edit these values with this command.
? Xcraft> configureThe Zog shell is only available if it was installed by ./xcraft install. This
shell is used in order to work with the high level functionalities of Xcraft.
It is the common shell for the toolchain.
The commands provided by the Zog shell depends directly of the xcraft packages which were installed. The Zog shell starts the Xcraft server, then it asks for the list of commands to the commands registry.
Xcraft is shipped with pluggable front-end's running on the same infrastructure. The Goblin is able to display gagdet's for tweaking and playing with the toolchain under all platforms.
The XDK pretend to help non-core developpers to extend Xcraft features. It's an early set of shell commands for generating UI gadgets and high level 'contrib' modules.