Building Modules
There are many applications, tests, and extra subsystems in the ReactOS SVN. We don't include them because they're usually not part of everyday's development/testing/use.
Contents |
Available Modules
We currently have the following modules in the SVN Tree:
- rosapps - Various non-core applications, like additional screensavers, devutils and cmdutils.
- rostests - Home of our testing framework (Winetests and Rostests), which includes API conformance tests (both usermode and kernelmode APIs), plus the automatic application testing suite (based on AutoHotkey)
- wallpaper - Several wallpapers for ReactOS Desktop.
Downloading the Modules
The following example will show how to download the "rostests" module. To download any other module follow the same steps but using the name of the desired module.
Step 1
Find the reactos\modules (Windows) or reactos/modules (Unix) folder
Step 2
As we want to download the "rostests" module create a folder named rostests.
Step 3
Right click in that new folder and select checkout("SVN Checkout..")
Step 4
The "URL of repository" of "rostest" is: svn://svn.reactos.org/reactos/trunk/rostests
Step 5
Hit OK. It'll begin downloading the needed files. Compile as usual and you'll have the modules integrated in the ISO.
If you want to download the rosapps or wallpaper module, just create a rosapps or wallpaper folder inside reactos/modules and use the following links as the URL of repository:
- Rosapps: svn://svn.reactos.org/reactos/trunk/rostests
- Wallpaper: svn://svn.reactos.org/reactos/trunk/wallpaper
Removing a Module
If you remove a Module folder after cmake picks it up, it will not notice, until you tell it to reconfigure.
The reconfigure command depends on the Build System you are using. It could be:
ninja rebuild_cache nmake rebuild_cache make rebuild_cache #etc...
Technical information
In the reactos/modules or reactos\modules folder, depending on whether you're on a UNIX or Windows system, there is a file called directory.cmake.
The Build system will read the directory.cmake file and look if the subfolders named in this file exist. If a folder exists, the Build System will process its directory.cmake file. This way the folder gets integrated into the building process.


