Welcome, Guest!

Here are some links you may find helpful

Xbox build environment variables

Empyreal96

Member
Joined
Jan 12, 2021
Messages
15
Reaction score
12
Points
3
Location
England
Website
github.com
A bit late to the party as it's been floating around for ages..
The past few months I have been tinkering with the Xbox tree seeing how it works.. and much like my work with the NT 5 tree, Environment Variables will totally change a build.

I'm making this thread to list down what environment variables I know (most will already know this) as a reference for me and anyone interested.. Also citation on errors or misinformation is greatly welcomed, I won't be putting the standard "_NT386TREE" kind of ones..

Anything with a * I am unsure about.

These are related to targeting "Retail" and trigger quite a few changes during build.
• RETAILXM3=1
• OFFICIAL_BUILD=1*
or
• RETAILXM3P=1
• OFFICIAL_BUILD=1 *


This one caused a load of errors, I didnt look much into this one yet.
• COVERAGE_BUILD=1 *

For some reason this one was never set for the tree I work with, some postbuild scripts require this.
• _BUILDVER=4400

This one seems to affect more 'closer to production' build options, several postbuild scripts rely on this set.
• COMPUTERNAME=XBuilds

This one needs to be set before razzle gets to "ntuser.cmd" as it specifies build options.
• NTDEBUG=release
Causes:
• 'ltcg ~dm' to be added to %BUILD_OPTIONS%
• sets NTDEBUG=ntsdnodbg
• sets NODEVKIT=1

But setting to:
• NTDEBUG=free
Causes:
• 'ltcg profile' to be added to %BUILD_OPTIONS%
• NODEVKIT=1

These are related to Checked builds.
• BUILD_ALT_DIR=d
• CHECKED_ALT_DIR= *
• FREEBUILD=0 *

This one is presumably set on retail builds
• FREEBUILD=1 *

This one in theory enables some alternative textures and model placements for the dashboard, most likely used during testing.
• COOL_DASH=1 *

This one I am unsure about its purpose, it's referenced throughout the code..
• SILVER=

I will add more as I find them, if anyone else knows any worth noting please add!
 
Last edited:

stuntpenguin

Donator
Donator
Registered
Joined
Dec 6, 2020
Donations
£1,000.48
Messages
42
Reaction score
34
Points
18
AG User Name
stuntpenguin
AG Join Date
2009
I wonder if this can't be standardized somehow. Maybe an instruction to grab service pack of whatever OS, then give a tool to set up toolkits. It would be wild to see this built with free tools. The ReactOS folks have accomplished greater feats. Of course, they are "ground up".

Whats to say we couldn't start at the bottom? Start at some entry point and work along. A docker that builds the xb kernel scares the M$. that's maybe the only thing. I hate external dependencies, but source can be pulled straight from archive.org. It wouldn't give a lot of opportunity to work on the kernel, but at least anyone could build it and blame is deferred to a 3rd party.
 
shape1
shape2
shape3
shape4
shape5
shape6
Top