trace: Get the trace file from the GALLIUM_TRACE option itself.
authorJosé Fonseca <jrfonseca@tungstengraphics.com>
Sat, 16 Aug 2008 17:45:00 +0000 (18:45 +0100)
committerJosé Fonseca <jrfonseca@tungstengraphics.com>
Mon, 18 Aug 2008 19:47:40 +0000 (20:47 +0100)
src/gallium/drivers/trace/README
src/gallium/drivers/trace/tr_dump.c
src/gallium/drivers/trace/tr_stream.c
src/gallium/drivers/trace/tr_stream.h

index 5f0ae2c6419b3ed9178541df466b6ceeb6344003..7e98ec24546058022965c725115c5d59e39a9e06 100644 (file)
@@ -8,7 +8,6 @@ To use do
 
  ln -s libGL.so build/linux-x86-debug/gallium/winsys/xlib/libGL.so.1
  export LD_LIBRARY_PATH=$PWD/build/linux-x86-debug/gallium/winsys/xlib
- export GALLIUM_TRACE=y
 
 ensure the right libGL.so is being picked by doing
 
@@ -16,11 +15,11 @@ ensure the right libGL.so is being picked by doing
 
 and then try running
 
- glxinfo
+ GALLIUM_TRACE=tri.trace ./progs/trivial/tri
 
-which should create a gallium.*.trace file, which is an XML file. You can view 
-copying trace.xsl and trace.css to the same directory, and opening with a 
-XSLT capable browser like Firefox or Internet Explorer.
+which should create a tri.trace file, which is an XML file. You can view copying 
+trace.xsl to the same directory, and opening with a XSLT capable browser like 
+Firefox or Internet Explorer.
 
 --
 Jose Fonseca <jrfonseca@tungstengraphics.com>
index c711a56b947bdb8d9c570b253fbbe25c4c90a1c6..ecd0d6830d2eed4106f6a6617d066030faa1f7cc 100644 (file)
@@ -218,12 +218,15 @@ trace_dump_trace_close(void)
 
 boolean trace_dump_trace_begin()
 {
-   if(!debug_get_bool_option("GALLIUM_TRACE", FALSE))
+   const char *filename;
+   
+   filename = debug_get_option("GALLIUM_TRACE", NULL);
+   if(!filename)
       return FALSE;
    
    if(!stream) {
    
-      stream = trace_stream_create("gallium", "trace");
+      stream = trace_stream_create(filename);
       if(!stream)
          return FALSE;
       
index aecc1286b8d2f1c4d4cac9e66347c188c361de35..d008dbac27be0350cf89d367c56133170b3d2b91 100644 (file)
@@ -47,18 +47,14 @@ struct trace_stream
 
 
 struct trace_stream *
-trace_stream_create(const char *name, const char *ext)
+trace_stream_create(const char *filename)
 {
    struct trace_stream *stream;
-   static unsigned file_no = 0; 
-   char filename[1024];
    
    stream = CALLOC_STRUCT(trace_stream);
    if(!stream)
       goto error1;
    
-   snprintf(filename, sizeof(filename), "%s.%u.%s", name, file_no, ext);
-   
 #if defined(PIPE_OS_LINUX)
    stream->file = fopen(filename, "w");
    if(!stream->file)
index 679c4a725d775228041c4d424ddd421780ea0d82..6111174d6a8cd622ea11e742da58c806f676b6f4 100644 (file)
 
 #include "pipe/p_compiler.h"
 
+
 struct trace_stream;
 
 
 struct trace_stream *
-trace_stream_create(const char *name, const char *ext);
+trace_stream_create(const char *filename);
 
 boolean
 trace_stream_write(struct trace_stream *stream, const void *data, size_t size);