Getting Started: Difference between revisions

No edit summary
Official builds
Line 1: Line 1:
This guide tested under Windows XP, 7 SP1, 8.1 & 10 x86/x64, results may vary under other operating systems (if you will copy/paste source code at many times). For legacy version of the guide visit [https://rentry.co/build-win2k3 build-win2k3].
This guide tested under Windows XP, Server 2003, 7 SP1, 8.1 & 10 and 11 (all architectures). For version of the guide made by anons, visit [https://rentry.co/build-win2k3 build-win2k3]. Note that the guide provided by anons isn't supported in any way by OpenXP developers.


== Preparing for Build ==
== Preparing for Build ==
Line 173: Line 173:
Other options are not described here, see <code>razzle.cmd /?</code> for details.
Other options are not described here, see <code>razzle.cmd /?</code> for details.


=== 'OfficialBuild' parameter / BuildMachines.txt ===
=== Official builds ===
The <code>OfficialBuild</code> razzle parameter changes a few things in the build, which will make it match up closer to the retail builds, should be useful if you need to compare against retail for any reason.
The <code>official</code> parameter sets global definitions for official builds, which will make it match up closer to the retail builds, should be useful if you need to compare against retail for any reason. In difference of <code>offline</code> and similar flags, all binaries in this mode are built in retail mode and won't contain any private information, as well as postbuild logging will be enabled.


For a list of things affected by the OfficialBuild parameter see <nowiki>https://pastebin.com/VgVph3Xv</nowiki> & <nowiki>https://pastebin.com/gYzWGLM5</nowiki>, thanks to the anon that compiled them! (note that these aren't complete lists, and not all things mentioned here are guaranteed to take effect).
In latest patch kit from OpenXP, the useless checks of build machines in <code>''BuildMachines.txt''</code> have been '''removed completely''', and instead, any machine which is considered as "verified" is able to construct official builds. Also, the <code>OfficialBuild</code> parameter have been shortened to simply <code>official</code>, in order to make things more consistent.
 
'''However, using this parameter requires a file to be updated with info about your build machine first!'''
 
An easy way to update the file required is to run the following command inside a razzle window, at the root of the source tree:
 
<code>echo %COMPUTERNAME%,primary,%_BuildBranch%,%_BuildArch%,%_BuildType%,ntblus >> tools\BuildMachines.txt</code>
 
After that you can run <code>tools\verifybuildmachine</code> to make sure it was setup correctly, if there's any problem an error message will show, otherwise the command will return without any message.
 
With that in place you should now be able to use the <code>OfficialBuild</code> parameter next time you init razzle, eg. <code>tools\razzle.cmd free offline officialbuild</code>
 
Some small notes to be aware of:
 
* if you change build arch or build type (eg. to amd64, or to a checked build) you'll need to run the echo command again to add your machine for that build arch/type combination
* if you see <code>Clearing OFFICIAL_BUILD_MACHINE variable</code> after initializing razzle, rerun the echo command and then close down/re-initalize razzle again, else the build won't properly count itself as official.


=== Building specific components ===
=== Building specific components ===