1CMake is used to build ReactOS.
2
3Here you will find what you'll need to write nice CMakeLists.txt files for ReactOS.
4CMake standard functions are available too. See http://www.cmake.org/, or type cmake --help-html in your shell to get the full documentation.
5
6Optional arguments are marked with [brackets], input is marked with <comparison signs>.
7
8---------------------------------------------------------------------------------------------------------------------------------------------
9set_module_type(<target> <type> [UNICODE] [BASEADDRESS <baseaddress>] [ENTRYPOINT <entrypoint> <stacksize>])
10
11This sets the type of the module, and takes care of setting common linker options or definitions to the specified target, module file extension, etc. Please always use this when adding a module to ReactOS build.
12
13ARGUMENTS:
14<target>: name of the target. The module must have been added with add_executable or add_library before calling this function.
15<type>: one of win32gui, win32cui, win32dll, win32ocx, cpl, nativecui, nativedll, kernelmodedriver.
16UNICODE: provide this if the module was written for unicode API.
17<baseaddress>: provide this if you want your module to have a different base address than the default one (according to <type>). For win32dll modules, please use baseaddress.cmake instead.
18<entrypoint>: name of the function which will be the entry point of the module. If it's not provided, it's guessed from the module type.
19<stacksize>: Size of stack required for the parameters of <entrypoint>.
20
21TYPICAL USE:
22set_module_type(msvcrt win32dll ENTRYPOINT DllMain 12)
23