author | timothy.murphy@nokia.com |
Fri, 30 Apr 2010 16:07:17 +0100 | |
branch | fix |
changeset 511 | 7581d432643a |
parent 300 | e87b08dc4b44 |
child 515 | 49a9c0e288ac |
permissions | -rw-r--r-- |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
1 |
# Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). |
3 | 2 |
# All rights reserved. |
3 |
# This component and the accompanying materials are made available |
|
4 |
# under the terms of the License "Eclipse Public License v1.0" |
|
5 |
# which accompanies this distribution, and is available |
|
6 |
# at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 |
# |
|
8 |
# Initial Contributors: |
|
9 |
# Nokia Corporation - initial contribution. |
|
10 |
# |
|
11 |
# Contributors: |
|
12 |
# |
|
13 |
# Description: |
|
14 |
# Run Trace Compiler on source files to generate trace headers and decode files |
|
15 |
||
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
16 |
# Set project name as <mmp_name> |
3 | 17 |
TRACE_PRJNAME:=$(basename $(notdir $(PROJECT_META))) |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
18 |
|
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
19 |
TARGETEXT:=$(if $(REQUESTEDTARGETEXT),$(REQUESTEDTARGETEXT),$(POSTLINKFILETYPE)) |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
20 |
|
3 | 21 |
# Find out TRACE_PATH |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
22 |
# first look for .*/traces/traces_<target_name>_<target_extension> |
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
23 |
TRACE_PATH:=$(strip $(foreach DIR,$(USERINCLUDE) $(SYSTEMINCLUDE),$(filter %/traces/$(TARGET)_$(TARGETEXT),$(DIR)))) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
24 |
|
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
25 |
|
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
26 |
ifneq ($(TRACE_PATH),) |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
27 |
# set project name as <target_name>_<target_extension> instead of <mmp_name> |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
28 |
TRACE_PRJNAME:=$(TARGET)_$(TARGETEXT) |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
29 |
endif |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
30 |
|
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
31 |
|
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
32 |
# if not found look for .*/traces_<target_name>_<target_type> |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
33 |
ifeq ($(TRACE_PATH),) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
34 |
TRACE_PATH:=$(strip $(foreach DIR,$(USERINCLUDE) $(SYSTEMINCLUDE),$(filter %/traces_$(TARGET)_$(TARGETTYPE),$(DIR)))) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
35 |
# set project name as <target_name>_<target_type> instead of <mmp_name> |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
36 |
ifneq ($(TRACE_PATH),) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
37 |
TRACE_PRJNAME:=$(TARGET)_$(TARGETTYPE) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
38 |
endif |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
39 |
endif |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
40 |
|
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
41 |
# if not found look for .*/traces_<mmp_name> |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
42 |
ifeq ($(TRACE_PATH),) |
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
43 |
TRACE_PATH:=$(strip $(foreach DIR,$(USERINCLUDE) $(SYSTEMINCLUDE),$(filter %/traces_$(TRACE_PRJNAME),$(DIR)))) |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
44 |
endif |
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
45 |
|
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
46 |
# if not found look for .*/traces |
3 | 47 |
ifeq ($(TRACE_PATH),) |
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
48 |
TRACE_PATH:=$(strip $(foreach DIR,$(USERINCLUDE) $(SYSTEMINCLUDE),$(filter %/traces,$(DIR)))) |
3 | 49 |
endif |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
50 |
|
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
51 |
# if not found look for .*/traces_<target_name>_<target_type> |
3 | 52 |
ifeq ($(TRACE_PATH),) |
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
53 |
TRACE_PATH:=$(strip $(foreach DIR,$(USERINCLUDE) $(SYSTEMINCLUDE),$(filter %/traces_$(TARGET)_$(TARGETTYPE),$(DIR)))) |
277
dbd582b8c0ab
SF Bug 1562 - [Raptor] Tracecompiler SYSTEMINCLUDE should be based on TARGETEXT not TARGETTYPE
timothy.murphy@nokia.com
parents:
236
diff
changeset
|
54 |
# set project name as <target_name>_<target_type> instead of <mmp_name> |
3 | 55 |
TRACE_PRJNAME:=$(TARGET)_$(TARGETTYPE) |
56 |
endif |
|
57 |
||
236
a2dc04c8e649
fix: Don't print what information if we have no intention of running the trace compiler.
timothy.murphy@nokia.com
parents:
173
diff
changeset
|
58 |
# initialise (so what output will be correct if we don't actually run the TC) |
a2dc04c8e649
fix: Don't print what information if we have no intention of running the trace compiler.
timothy.murphy@nokia.com
parents:
173
diff
changeset
|
59 |
TRACE_DICTIONARY:= |
a2dc04c8e649
fix: Don't print what information if we have no intention of running the trace compiler.
timothy.murphy@nokia.com
parents:
173
diff
changeset
|
60 |
AUTOGEN_HEADER:= |
161
62c28226cde4
Bug 1494 - Trace compiler files not in whatlog - FIX and TESTS though UNTESTED
Iain Williamson <iain.williamson@nokia.com>
parents:
3
diff
changeset
|
61 |
|
3 | 62 |
$(if $(FLMDEBUG),$(info <debug>TRACE_PATH = $(TRACE_PATH)</debug>)) |
63 |
||
64 |
# Run trace compiler only if TRACE_PATH exists |
|
65 |
ifneq ($(TRACE_PATH),) |
|
66 |
TRACE_MARKER:=$(TRACE_MARKER_PATH)/tracecompile_$(TRACE_PRJNAME)_$(UID_TC).done |
|
67 |
TRACE_HEADERS:= |
|
68 |
||
69 |
TRACE_SOURCE_LIST:=$(TRACE_MARKER_PATH)/tracecompile_$(TRACE_PRJNAME)_$(UID_TC).sourcelist |
|
70 |
||
71 |
# 1. Append to or create the list of source files for trace compiler to process |
|
72 |
# 2. Check if the hash in trace marker remain unchanged. If not, remove marker so trace compiler will run again. |
|
73 |
X:=$(shell set -x ; $(GNUMKDIR) -p $(TRACE_MARKER_PATH) ; $(GNUTOUCH) $(TRACE_SOURCE_LIST) ; echo -e "$(subst $(CHAR_SPACE),\\n,$(SOURCE))" | $(GNUSORT) -u $(TRACE_SOURCE_LIST) - > $(TRACE_SOURCE_LIST).tmp && $(GNUMV) $(TRACE_SOURCE_LIST).tmp $(TRACE_SOURCE_LIST) ; $(GNUMD5SUM) -c $(TRACE_MARKER) || $(GNURM) $(TRACE_MARKER)) |
|
74 |
||
75 |
$(if $(FLMDEBUG),$(info <debug>Trace Compiler sourcelist generation output: $(X)</debug>)) |
|
76 |
||
77 |
$(TRACE_MARKER) : $(SOURCE) |
|
78 |
||
79 |
TRACE_HEADERS:=$(foreach SRC,$(SOURCE),$(TRACE_PATH)/$(basename $(notdir $(SRC)))Traces.h) |
|
80 |
||
81 |
$(TRACE_HEADERS): $(TRACE_MARKER) |
|
82 |
||
83 |
ifeq ($(GUARD_$(call sanitise,$(TRACE_MARKER))),) |
|
84 |
GUARD_$(call sanitise,$(TRACE_MARKER)):=1 |
|
85 |
||
300
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
86 |
# The trace compiler likes to change . into _ so we must do the same in the case of mmps with a name like |
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
87 |
# fred.prd.mmp we want fred_prd |
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
88 |
TRACE_PRJNAME_SANITISED:=$(subst .,_,$(TRACE_PRJNAME)) |
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
89 |
|
236
a2dc04c8e649
fix: Don't print what information if we have no intention of running the trace compiler.
timothy.murphy@nokia.com
parents:
173
diff
changeset
|
90 |
|
3 | 91 |
JAVA_COMMAND:=$(SBS_JAVATC) |
92 |
TRACE_COMPILER_PATH:=$(EPOCROOT)/epoc32/tools |
|
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
93 |
|
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
94 |
# |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
95 |
#try to find TraceCompilerMain.class (the new posix-like interface) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
96 |
# |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
97 |
ifeq ($(trace_compile),) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
98 |
TCClass:=$(wildcard $(TRACE_COMPILER_PATH)/tracecompiler/com/nokia/tracecompiler/TraceCompilerMain.class) |
3 | 99 |
|
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
100 |
ifneq ($(TCClass),) #New Interface |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
101 |
TCAUTOGENDIR:=platform |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
102 |
TRACE_COMPILER_START:=-classpath $(TRACE_COMPILER_PATH)/tracecompiler com.nokia.tracecompiler.TraceCompilerMain |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
103 |
define trace_compile |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
104 |
$(TRACE_MARKER) : $(PROJECT_META) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
105 |
$(call startrule,tracecompile) \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
106 |
( $(GNUCAT) $(TRACE_SOURCE_LIST); \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
107 |
echo -en "*ENDOFSOURCEFILES*\n" ) | \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
108 |
$(JAVA_COMMAND) $(TRACE_COMPILER_START) -d --uid=$(UID_TC) --project=$(TRACE_PRJNAME) --mmp=$(PROJECT_META) --traces=$(TRACE_PATH) && \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
109 |
$(GNUMD5SUM) $(TRACE_SOURCE_LIST) > $(TRACE_MARKER) && \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
110 |
{ $(GNUTOUCH) $(TRACE_DICTIONARY) $(AUTOGEN_HEADER); \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
111 |
$(GNUCAT) $(TRACE_SOURCE_LIST) ; true ; } \ |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
112 |
$(call endrule,tracecompile) |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
113 |
endef |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
114 |
else # Old inteface |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
115 |
TCAUTOGENDIR:=internal |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
116 |
TRACE_COMPILER_START:=-classpath $(TRACE_COMPILER_PATH)/tracecompiler com.nokia.tracecompiler.TraceCompiler |
3 | 117 |
# 1. Use pipe to send inputs to trace compiler to process |
118 |
# 2. Create a hash regarding to source names and put it in marker. |
|
119 |
# 3. Show source names that are processed by trace compiler |
|
120 |
define trace_compile |
|
121 |
$(TRACE_MARKER) : $(PROJECT_META) |
|
122 |
$(call startrule,tracecompile) \ |
|
123 |
( echo -en "$(TRACE_PRJNAME)\n$(PROJECT_META)\n"; \ |
|
124 |
$(GNUCAT) $(TRACE_SOURCE_LIST); \ |
|
125 |
echo -en "*ENDOFSOURCEFILES*\n" ) | \ |
|
293
5bbbb5fd2a8a
fix: remove OSTv2 dependency so we will still work with the old one
timothy.murphy@nokia.com
parents:
291
diff
changeset
|
126 |
$(JAVA_COMMAND) $(TRACE_COMPILER_START) $(UID_TC) && \ |
89
315b0aa777bd
Make TC fail when there is an error. This is hypothetical in this version but the next version of the TC is in testing.
timothy.murphy@nokia.com
parents:
3
diff
changeset
|
127 |
$(GNUMD5SUM) $(TRACE_SOURCE_LIST) > $(TRACE_MARKER) && \ |
300
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
128 |
{ $(GNUTOUCH) $(TRACE_DICTIONARY) $(AUTOGEN_HEADER); \ |
e87b08dc4b44
SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp
timothy.murphy@nokia.com
parents:
293
diff
changeset
|
129 |
$(GNUCAT) $(TRACE_SOURCE_LIST) ; true ; } \ |
3 | 130 |
$(call endrule,tracecompile) |
131 |
endef |
|
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
132 |
endif |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
133 |
|
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
134 |
endif |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
135 |
|
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
136 |
TRACE_DICTIONARY:=$(EPOCROOT)/epoc32/ost_dictionaries/$(TRACE_PRJNAME_SANITISED)_0x$(UID_TC)_Dictionary.xml |
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
137 |
AUTOGEN_HEADER:=$(EPOCROOT)/epoc32/include/$(TCAUTOGENDIR)/symbiantraces/autogen/$(TRACE_PRJNAME_SANITISED)_0x$(UID_TC)_TraceDefinitions.h |
3 | 138 |
|
139 |
$(eval $(trace_compile)) |
|
140 |
||
141 |
$(eval $(call GenerateStandardCleanTarget, $(TRACE_PATH)/tracebuilder.cache $(TRACE_MARKER) $(TRACE_SOURCE_LIST),,)) |
|
142 |
||
511
7581d432643a
fix: support new trace compiler features for preventing clashes. Automatically turn on OST_TRACE_COMPILER_IN_USE macro. Look for trace header in systemincludes. Make directories in makefile parse to prevent clashes during build. Correct path for autogen headers. Correct case issue with autogen headers on Linux.
timothy.murphy@nokia.com
parents:
300
diff
changeset
|
143 |
$(call makepath,$(TRACE_PATH) $(dir $(TRACE_DICTIONARY) $(AUTOGEN_HEADER))) |
3 | 144 |
# End sanity guard |
145 |
endif |
|
146 |
||
147 |
$(eval $(call GenerateStandardCleanTarget,$(TRACE_HEADERS),,)) |
|
148 |
||
149 |
else |
|
150 |
# Indicate to following parts of the FLM that we actually won't run |
|
151 |
# trace compiler so they can set dependencies accordingly. |
|
152 |
USE_TRACE_COMPILER:= |
|
153 |
endif |
|
154 |