sbsv2/raptor/notes/tcom_allbefore.txt
author jascui
Tue, 16 Nov 2010 15:54:07 +0800
changeset 682 2c32f186fa1f
parent 616 24e4ef208cca
permissions -rw-r--r--
Solving incorrect handling when processing ExportName=SymbolName@Ordinal syntax.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
616
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     1
This change causes trace compilation to be performed for all source files in a 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     2
component before any of those files is compiled.
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     3
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     4
This should reduce the impact of clashes where the tracecompiler ends up writing the same
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     5
trace headers twice if two mmps in a component share source code.  The reduced impact is 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     6
that the clash can be detected before any dependent object files are built thus the
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     7
rebuilding that normally happens after a clash detection is not necessary.
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     8
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
     9
There is another problem where some components have static libraries and dlls 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    10
that share common source files.  If tracing is enabled for the DLL these common 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    11
files try to include their trace headers.  When the source files are being built
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    12
into the static library they also try to include trace headers which may not have 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    13
been generated yet because tracing is not enabled for static libraries at this time
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    14
since they don't have UIDs or any unique id to associate any trace points with.
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    15
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    16
This change cannot fix this problem just as it doesn't prevent clashes but it at
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    17
least makes sure that all trace headers exist before anything could possibly try 
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    18
to use them. This helps the build succeed while work is done to remove clashes and the static
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    19
library tracing problem and it is no more incorrect than the current situation.
24e4ef208cca sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
diff changeset
    20