{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}{\f1\froman\fcharset0 Times New Roman;}} {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\fi-1800\li1800\tx1800\cf1\b\f0\fs20 From:\b0\tab Alex Armanasu\par \b Sent:\b0\tab Monday, January 31, 2000 8:19 PM\par \b To:\b0\tab NTW Migration Services Dev\par \b Subject:\b0\tab Building our code\par \pard\cf0\f1\par I have successfully managed to build all the depots that we use. Here are the rules for building the depots. Murthy will be producing complete checkin guidelines soon. One of the rules is that you have to try to check in code that compiles and doesn't cause anyone else's code to stop compiling (don't break the build). The obvious way to accomplish that is to always build the depot before checking in. This does not work because it takes 6 hours to clean build all the depots we use. Unfortunately, incremental builds of the depots aren't guarenteed to work. For now, everyone should try to build all the depots they are enlisted in at least once. We will clean build every time we check in a header file used outside our binaries.\par \par \b Depot\tab\tab\tab Our Binaries\tab\tab\tab Disk space required to clean build\b0\par windows\tab\tab winstate\tab\tab\tab\tab 1G\par ds\tab\tab\tab Roaming User Profiles\tab\tab 1.7G\par shell\tab\tab\tab Roaming User Profiles applet\tab 1.8G\par com\tab\tab\tab storage\tab\tab\tab\tab 1G\par tools\tab\tab\tab\tab\tab\tab\tab 50M\par public\tab\tab\tab\tab\tab\tab\tab 350M\par \par When you create your razzle window, do not use the no_opt option. The no_opt option tells the compiler not to optimized the code. This is very useful for debugging. You should use the no_opt option when you compile code to debug. However, when clean building, some code will not compile with no_opt, so don't use it.\par \par When you create your razzle window, do use the no_binaries option. Normally build tries to create a cd image for installing that is huge. We don't have enough disk space for it. Until I get more disks for everyone, use no_binaries so you don't get the install image.\par \par rem This command gives you exactly the same files that are on the lab 4 branch build machines.\par rem Use this command from 12PM to 8PM, when the build lab is not syncing the days changes.\par rem You can also use "sdx sync @mgmtx86free" to sync all depots you are enlisted in.\par cd \\nt\\\par sd sync @mgmtx86fre\par \par rem Use this command to build. You must use uppercase Z or header files will not get built in the correct order.\par rem If you have sunk or changed multiple depots, you must run this command from \\nt so that header files from\par rem all depots get built before any other files.\par build -cZ\par \par The command "perl \\nt\\tools\\timebuild.pl" does a scorch, sync, and clean build. This is the command that the build lab uses. Unfortunately, it does not process its options correctly, so it will always try to build the setup binaries. Also, it has some race conditions so that the build does not always complete successfully. Do not use this command at this time.\par \par \par \pard\fi-1800\li1800\tx1800\cf1\f0\par }