Reworks r1770 so that users who have replaced SkUserConfig don't have to
make any changes to continue compiling successfully.



git-svn-id: http://skia.googlecode.com/svn/trunk@1779 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrContext.cpp b/gpu/src/GrContext.cpp
index eee73d9..b75c917 100644
--- a/gpu/src/GrContext.cpp
+++ b/gpu/src/GrContext.cpp
@@ -24,7 +24,7 @@
 #include "GrPathUtils.h"
 #include "GrTextureCache.h"
 #include "GrTextStrike.h"
-#include SK_USER_TRACE_INCLUDE_FILE
+#include "SkTrace.h"
 
 // Using MSAA seems to be slower for some yet unknown reason.
 #define PREFER_MSAA_OFFSCREEN_AA 0
diff --git a/gpu/src/GrGLProgram.cpp b/gpu/src/GrGLProgram.cpp
index 733e705..31571ab 100644
--- a/gpu/src/GrGLProgram.cpp
+++ b/gpu/src/GrGLProgram.cpp
@@ -19,8 +19,8 @@
 #include "GrBinHashKey.h"
 #include "GrGLConfig.h"
 
+#include "SkTrace.h"
 #include "SkXfermode.h"
-#include SK_USER_TRACE_INCLUDE_FILE
 
 namespace {
 
diff --git a/gpu/src/GrPathRenderer.cpp b/gpu/src/GrPathRenderer.cpp
index b103880..61670da 100644
--- a/gpu/src/GrPathRenderer.cpp
+++ b/gpu/src/GrPathRenderer.cpp
@@ -7,8 +7,7 @@
 
 #include "SkString.h"
 #include "SkTemplates.h"
-
-#include SK_USER_TRACE_INCLUDE_FILE
+#include "SkTrace.h"
 
 GrPathRenderer::GrPathRenderer()
     : fCurveTolerance (GR_Scalar1)
diff --git a/include/config/SkUserConfig.h b/include/config/SkUserConfig.h
index 6ee5146..48f6379 100644
--- a/include/config/SkUserConfig.h
+++ b/include/config/SkUserConfig.h
@@ -148,17 +148,17 @@
 //#define SK_SUPPORT_UNITTEST
 #endif
 
-/* If your system embeds skia and has complex event logging, redefine this
-   symbol to point to a file that maps the following macros to your system's
+/* If your system embeds skia and has complex event logging, define this
+   symbol to name a file that maps the following macros to your system's
    equivalents:
        SK_TRACE_EVENT0(event)
        SK_TRACE_EVENT1(event, name1, value1)
        SK_TRACE_EVENT2(event, name1, value1, name2, value2)
-   include/config/SkUserTrace.h has a no-op implementation, while
    src/utils/SkDebugTrace.h has a trivial implementation that writes to
-   the debug output stream.
+   the debug output stream. If SK_USER_TRACE_INCLUDE_FILE is not defined,
+   SkTrace.h will define the above three macros to do nothing.
 */
-#define SK_USER_TRACE_INCLUDE_FILE "../../include/config/SkUserTrace.h"
+//#undef SK_USER_TRACE_INCLUDE_FILE
 
 /*  Change the ordering to work in X windows.
  */
diff --git a/include/config/SkUserTrace.h b/include/core/SkTrace.h
similarity index 64%
rename from include/config/SkUserTrace.h
rename to include/core/SkTrace.h
index c5d168a..f43d135 100644
--- a/include/config/SkUserTrace.h
+++ b/include/core/SkTrace.h
@@ -1,5 +1,5 @@
 /*
-    Copyright 2010 Google Inc.
+    Copyright 2011 Google Inc.
 
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
@@ -13,12 +13,17 @@
     See the License for the specific language governing permissions and
     limitations under the License.
  */
-#ifndef SkUserTrace_DEFINED
-#define SkUserTrace_DEFINED
+#ifndef SkTrace_DEFINED
+#define SkTrace_DEFINED
 
-/* If your system embeds skia and has complex event logging, define these
-   to map to your system's equivalents. A trivial example is given in
-   src/utils/SkDebugTrace.h.
+#ifdef SK_USER_TRACE_INCLUDE_FILE
+
+/* If your system embeds skia and has complex event logging, in
+   src/config/SkUserConfig.h:
+     - define the three SK_TRACE_EVENT macros to map to your system's
+       equivalents,
+     - define the name of the include file in SK_USER_TRACE_INCLUDE_FILE
+   A trivial example is given in src/utils/SkDebugTrace.h.
 
    All arguments are const char*. Skia typically passes the name of
    the object and function (and sometimes region of interest within
@@ -33,9 +38,16 @@
     SK_TRACE_EVENT1("GrDefaultPathRenderer::onDrawPath::renderPasses",
                     "verts", SkStringPrintf("%i", vert - base).c_str());
 */
-#define SK_TRACE_EVENT0(event)
-#define SK_TRACE_EVENT1(event, name1, value1)
-#define SK_TRACE_EVENT2(event, name1, value1, name2, value2)
+
+    #include SK_USER_TRACE_INCLUDE_FILE
+
+#else
+
+    #define SK_TRACE_EVENT0(event)
+    #define SK_TRACE_EVENT1(event, name1, value1)
+    #define SK_TRACE_EVENT2(event, name1, value1, name2, value2)
+
+#endif
 
 #endif