User's Guide updates:
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Fri, 3 Oct 2008 23:06:51 +0000 (23:06 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Fri, 3 Oct 2008 23:06:51 +0000 (23:06 +0000)
Mostly MSVC compilation lines so the /Fo is at the beginning of the
output line.  Also some new/modified variables in the environment dump
in the Troubleshooting appendix, and removing a leftover XXX todo comment.

git-svn-id: http://scons.tigris.org/svn/scons/trunk@3547 fdb21ef1-2011-0410-befe-b5e4ea1792b1

doc/user/add-method.xml
doc/user/builders-built-in.xml
doc/user/depends.xml
doc/user/less-simple.xml
doc/user/libraries.xml
doc/user/main.xml
doc/user/nodes.xml
doc/user/parseflags.xml
doc/user/simple.xml
doc/user/troubleshoot.xml
doc/user/variants.xml

index e6f2a670a12ddaaa7d89543985be092620c81998..d4a484e9ec4be71189d91f44f1e4e4afac617933 100644 (file)
   <screen>
     C:\><userinput>scons -Q</userinput>
     rc /fores.res res.rc
-    cl /nologo /c test_stuff.c /Fotest_stuff.obj
+    cl /Fotest_stuff.obj /c test_stuff.c /nologo
     link /nologo /OUT:tests\test_stuff.exe test_stuff.obj res.res
   </screen>
 
index cf09fd5cc73c1c0716f61f1409fbada5fa29ee1c..738683bce276b3c5ff72f6ef477621e053330d92 100644 (file)
 
     <screen>
       C:\><userinput>scons -Q</userinput>
-      cl /nologo /c goodbye.c /Fogoodbye.obj
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fogoodbye.obj /c goodbye.c /nologo
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe /LIBPATH:\usr\dir1 /LIBPATH:dir2 foo1.lib foo2.lib hello.obj goodbye.obj
     </screen>
 
index 39866e2be49d5f8aa2899cecd36ea5e271338ac8..512ac6895df402984cc45dbe304ad91f57977734 100644 (file)
 
     <screen>
        C:\><userinput>scons -Q hello.exe</userinput>
-       cl /nologo /Iinclude /I\home\project\inc /c hello.c /Fohello.obj
+       cl /Fohello.obj /c hello.c /nologo /Iinclude /I\home\project\inc
        link /nologo /OUT:hello.exe hello.obj
     </screen>
 
index 35b6b608a9048bc5042708c939b82095f3178577..28fc0537b428d4f6f4c5f266a734812ffe18efc1 100644 (file)
 
     <screen>
        C:\><userinput>scons -Q</userinput>
-       cl /nologo /c hello.c /Fohello.obj
+       cl /Fohello.obj /c hello.c /nologo
        link /nologo /OUT:new_hello.exe hello.obj
     </screen>
 
 
     <screen>
        C:\><userinput>scons -Q</userinput>
-       cl /nologo /c file1.c /Fofile1.obj
-       cl /nologo /c file2.c /Fofile2.obj
-       cl /nologo /c prog.c /Foprog.obj
+       cl /Fofile1.obj /c file1.c /nologo
+       cl /Fofile2.obj /c file2.c /nologo
+       cl /Foprog.obj /c prog.c /nologo
        link /nologo /OUT:program.exe prog.obj file1.obj file2.obj
     </screen>
 
index da7d835f7d76e6635e5ed4475460a83be42dd498..1fa06af9c9e4dcf9d91c708e72d1321755e1a8f1 100644 (file)
@@ -73,9 +73,9 @@
 
     <screen>
       C:\><userinput>scons -Q</userinput>
-      cl /nologo /c f1.c /Fof1.obj
-      cl /nologo /c f2.c /Fof2.obj
-      cl /nologo /c f3.c /Fof3.obj
+      cl /Fof1.obj /c f1.c /nologo
+      cl /Fof2.obj /c f2.c /nologo
+      cl /Fof3.obj /c f3.c /nologo
       lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj
     </screen>
 
 
       <screen>
         C:\><userinput>scons -Q</userinput>
-        cl /nologo /c f1.c /Fof1.obj
-        cl /nologo /c f2.c /Fof2.obj
-        cl /nologo /c f3.c /Fof3.obj
+        cl /Fof1.obj /c f1.c /nologo
+        cl /Fof2.obj /c f2.c /nologo
+        cl /Fof3.obj /c f3.c /nologo
         link /nologo /dll /out:foo.dll /implib:foo.lib f1.obj f2.obj f3.obj
         RegServerFunc(target, source, env)
       </screen>
 
     <screen>
       C:\><userinput>scons -Q</userinput>
-      cl /nologo /c f1.c /Fof1.obj
-      cl /nologo /c f2.c /Fof2.obj
-      cl /nologo /c f3.c /Fof3.obj
+      cl /Fof1.obj /c f1.c /nologo
+      cl /Fof2.obj /c f2.c /nologo
+      cl /Fof3.obj /c f3.c /nologo
       lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj
-      cl /nologo /c prog.c /Foprog.obj
+      cl /Foprog.obj /c prog.c /nologo
       link /nologo /OUT:prog.exe /LIBPATH:. foo.lib bar.lib prog.obj
     </screen>
 
 
     <screen>
       C:\><userinput>scons -Q</userinput>
-      cl /nologo /c prog.c /Foprog.obj
+      cl /Foprog.obj /c prog.c /nologo
       link /nologo /OUT:prog.exe /LIBPATH:\usr\lib /LIBPATH:\usr\local\lib m.lib prog.obj
     </screen>
     <!-- The link command is too wide in the PDF version. 
index 181b2a8df631093591a213065bfa0bea4a584ce2..4c2c1b84e57a3ad52b84c11d26b874a7f3e3ce58 100644 (file)
   XXX ParseDepends()
   XXX Platform()
   XXX SConsignFile()
-  XXX SideEffect()
   XXX Tools()
 
   XXX GetOption('duplicate')
index 4ada5b74c3397491c692411e3a5e108752cb9ff7..28af9736822e7d5ae715cca063b72d2a9de3df71 100644 (file)
 
     <screen>
        C:\><userinput>scons -Q</userinput>
-       cl -DGOODBYE /c goodbye.c /Fogoodbye.obj
-       cl -DHELLO /c hello.c /Fohello.obj
+       cl /Fogoodbye.obj /c goodbye.c -DGOODBYE
+       cl /Fohello.obj /c hello.c -DHELLO
        link /nologo /OUT:hello.exe hello.obj goodbye.obj
     </screen>
 
       C:\><userinput>scons -Q</userinput>
       The object file is: hello.obj
       The program file is: hello.exe
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe hello.obj
     </screen>
 
index e52bd780549430be6aaad8ba843eaf6b032a7260..632077e5f141e4febd9621a23291557219b88c44 100644 (file)
@@ -91,7 +91,7 @@
     CPPPATH ['/opt/include']
     LIBPATH ['/opt/lib']
     LIBS ['foo']
-    cl /nologo /I\opt\include /c f1.c /Fof1.obj
+    cl /Fof1.obj /c f1.c /nologo /I\opt\include
     link /nologo /OUT:f1.exe /LIBPATH:\opt\lib foo.lib f1.obj
  </screen>
 
index 4e4ff0ebf349fcc4c6e8e8632c9e50747c8633dc..82452370154c6d117a2e1ff02ecb834b32084339 100644 (file)
       scons: Reading SConscript files ...
       scons: done reading SConscript files.
       scons: Building targets ...
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe hello.obj
       scons: done building targets.
    </screen>
       scons: Reading SConscript files ...
       scons: done reading SConscript files.
       scons: Building targets ...
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       scons: done building targets.
    </screen>
 
       scons: Reading SConscript files ...
       scons: done reading SConscript files.
       scons: Building targets ...
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe hello.obj
       scons: done building targets.
       C:\><userinput>scons -c</userinput>
       scons: Reading SConscript files ...
       scons: done reading SConscript files.
       scons: Building targets ...
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe hello.obj
       scons: done building targets.
    </screen>
 
    <screen>
       C:\><userinput>scons -Q</userinput>
-      cl /nologo /c hello.c /Fohello.obj
+      cl /Fohello.obj /c hello.c /nologo
       link /nologo /OUT:hello.exe hello.obj
    </screen>
 
index 2d525b9e24b313e3d5f55a46a4614f664482fd95..75079d90f6cbf4e09f5a15d71efc3e2b74bab6b4 100644 (file)
       { 'BUILDERS': {'_InternalInstall': &lt;function InstallBuilderWrapper at 0x700000&gt;, 'Object': &lt;SCons.Builder.CompositeBuilder instance at 0x700000&gt;, 'PCH': &lt;SCons.Builder.BuilderBase instance at 0x700000&gt;, 'RES': &lt;SCons.Builder.BuilderBase instance at 0x700000&gt;, 'SharedObject': &lt;SCons.Builder.CompositeBuilder instance at 0x700000&gt;, 'StaticObject': &lt;SCons.Builder.CompositeBuilder instance at 0x700000&gt;, '_InternalInstallAs': &lt;function InstallAsBuilderWrapper at 0x700000&gt;},
         'CC': 'cl',
         'CCCOM': &lt;SCons.Action.FunctionAction instance at 0x700000&gt;,
-        'CCCOMFLAGS': '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Fo$TARGET $CCPCHFLAGS $CCPDBFLAGS',
         'CCFLAGS': ['/nologo'],
         'CCPCHFLAGS': ['${(PCH and "/Yu%s /Fp%s"%(PCHSTOP or "",File(PCH))) or ""}'],
         'CCPDBFLAGS': ['${(PDB and "/Z7") or ""}'],
                          '.spp',
                          '.SPP'],
         'CXX': '$CC',
-        'CXXCOM': '$CXX $CXXFLAGS $CCCOMFLAGS',
+        'CXXCOM': '$CXX /Fo$TARGET /c $SOURCES $CXXFLAGS $CCFLAGS $_CCCOMCOM',
         'CXXFILESUFFIX': '.cc',
         'CXXFLAGS': ['$CCFLAGS', '$(', '/TP', '$)'],
         'DSUFFIXES': ['.d'],
         'RC': 'rc',
         'RCCOM': &lt;SCons.Action.FunctionAction instance at 0x700000&gt;,
         'RCFLAGS': [],
+        'RCSUFFIXES': ['.rc', '.rc2'],
         'RDirs': &lt;SCons.Defaults.Variable_Method_Caller instance at 0x700000&gt;,
         'SCANNERS': [],
         'SHCC': '$CC',
         'SHCCFLAGS': ['$CCFLAGS'],
         'SHCFLAGS': ['$CFLAGS'],
         'SHCXX': '$CXX',
-        'SHCXXCOM': '$SHCXX $SHCXXFLAGS $CCCOMFLAGS',
+        'SHCXXCOM': '$SHCXX /Fo$TARGET /c $SOURCES $SHCXXFLAGS $SHCCFLAGS $_CCCOMCOM',
         'SHCXXFLAGS': ['$CXXFLAGS'],
         'SHELL': None,
         'SHLIBPREFIX': '',
         'TEMPFILE': &lt;class SCons.Platform.TempFileMunge at 0x700000&gt;,
         'TEMPFILEPREFIX': '@',
         'TOOLS': ['msvc', 'install', 'install'],
+        '_CCCOMCOM': '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $CCPCHFLAGS $CCPDBFLAGS',
         '_CPPDEFFLAGS': '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}',
         '_CPPINCFLAGS': '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
         '_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
       % <userinput>scons -Q --debug=stacktrace</userinput>
       scons: *** Source `prog.c' not found, needed by target `prog.o'.  Stop.
       scons: internal stack trace:
-        File "bootstrap/src/engine/SCons/Job.py", line 198, in start
-        File "bootstrap/src/engine/SCons/Script/Main.py", line 169, in prepare
-        File "bootstrap/src/engine/SCons/Taskmaster.py", line 184, in prepare
+        File "bootstrap/src/engine/SCons/Job.py", line 197, in start
+        File "bootstrap/src/engine/SCons/Script/Main.py", line 167, in prepare
+        File "bootstrap/src/engine/SCons/Taskmaster.py", line 182, in prepare
         File "bootstrap/src/engine/SCons/Executor.py", line 171, in prepare
     </screen>
 
index 3b570cdff5b3b5ccd90e593a6ebff053c5de31c9..3ae3e4a8042f5d7537ae2ee64ba502a792e17eab 100644 (file)
@@ -109,8 +109,8 @@ is pretty smart about rebuilding things when you change options.
   <screen>
     C:\><userinput>scons -Q OS=windows</userinput>
     Install file: "build/windows/world/world.h" as "export/windows/include/world.h"
-    cl /nologo /Iexport\windows\include /c build\windows\hello\hello.c /Fobuild\windows\hello\hello.obj
-    cl /nologo /Iexport\windows\include /c build\windows\world\world.c /Fobuild\windows\world\world.obj
+    cl /Fobuild\windows\hello\hello.obj /c build\windows\hello\hello.c /nologo /Iexport\windows\include
+    cl /Fobuild\windows\world\world.obj /c build\windows\world\world.c /nologo /Iexport\windows\include
     lib /nologo /OUT:build\windows\world\world.lib build\windows\world\world.obj
     Install file: "build/windows/world/world.lib" as "export/windows/lib/world.lib"
     link /nologo /OUT:build\windows\hello\hello.exe /LIBPATH:export\windows\lib world.lib build\windows\hello\hello.obj