Razzle
Appearance
Razzle is the build environment of Windows NT operating systems, which is used in OpenXP too. It is named after the codename of Windows NT 3.1 and it's purpose is to define building variables and set up an environment for building necessary components and source code of Windows NT. It was also used in OS/2 before the partnership refusal between Microsoft and IBM in plan of OS/2 development.
Usage
The common arguments of Razzle are following:
free
- retail build,chk
- checked build, which contains additional debugging information and therefore slower in execution,offline
- isolates source code from Source Depot or similar linked programs. Without this argument, Razzle tries to connect with the source server viasd.exe
, but due to internal addresses absence, it goes abrupt and errors start to appear. This workaround is fixed in OpenXP internally, changing points to Git.
Architectures
By default, Razzle builds for x86 platforms. To specify another one, you should append one of these arguments after previous one:
win64
- choosing an Intel Itanium 64 (IA-64) target for build. If you appendamd64
, it will build for AMD64 targets,pocketpc
- builds ARMv4 target, prevailingly for Windows CE 2003 (or Windows Mobile 2003).
Miscellaneous
Miscellaneous arguments of Razzle are these:
verbose
- executes Razzle script suite and outputs every action happening,ntttest
- builds NT test sources (if they exist),emulation
- builds sources runnable on various simulators of processors and their architectures,chkkernel
- builds checked versions of NT kernel,no_opt
- disables compiler optimizations which may lead to larger file sizes,mui_magic
- generates language-neutral (or pseudo language) build. Highly incomplete and needs workarounds,no_binaries
- compiles without creating specific directory for binaries (e.g.binaries.x86fre
),binaries_dir
- specifies custom path of binaries different from original one,sepchar
- replaces dot in binaries path with custom symbol, specified by user,postbld_dir
- specifies path of post-build directory,temp
- specifies custom temporary folder,no_title
- disallows title change of Command Prompt to "Build Environment",no_certcheck
- doesn't check for code signing certificate existence,no_sdrefresh
- doesn't update Source Depot client (sd.exe),restricted_path
- sets path to the same restricted path that build uses (for debugging "why can't build find my tool" problems),officialbuild
- makes retail builds, reducing remnants of development code. It checks for tools/BuildMachines.txt, and if exists, the specific values to build official builds,exec
- optional arguments to execute after Razzle initiation,enigma
- turns on CSP signing and CSP signature checks,vaultsign
- requires CSP's to be vault signed with the Microsoft key.