summaryrefslogtreecommitdiff
path: root/include_server/test_data
diff options
context:
space:
mode:
authorklarlund <klarlund@gmail.com>2008-03-28 02:48:48 +0000
committerklarlund <klarlund@gmail.com>2008-03-28 02:48:48 +0000
commitd6532ae1d997a31884a67c51ec2bc75756242eed (patch)
tree995faab42744ddcb755996469397b865b88cc048 /include_server/test_data
downloaddistcc-git-d6532ae1d997a31884a67c51ec2bc75756242eed.tar.gz
Initial submission @6805748, not fully baked yet.
Diffstat (limited to 'include_server/test_data')
-rwxr-xr-xinclude_server/test_data/abc_post.c1
-rwxr-xr-xinclude_server/test_data/abc_pre.c1
-rwxr-xr-xinclude_server/test_data/computed_includes.c10
-rw-r--r--include_server/test_data/contains_abs_include.c1
-rw-r--r--include_server/test_data/dbar/dbar1/bar.h1
-rwxr-xr-xinclude_server/test_data/dbar/foo.h1
-rwxr-xr-xinclude_server/test_data/dfoo/foo.h2
-rw-r--r--include_server/test_data/dfoo/foo2.h3
-rw-r--r--include_server/test_data/dfoo/i_am_perhaps_a_directory.h0
-rw-r--r--include_server/test_data/dfoo/include_dotdot_foo1
-rwxr-xr-xinclude_server/test_data/dfoo/include_next_foo.h1
-rw-r--r--include_server/test_data/dfoo/stat_triggers.h0
-rw-r--r--include_server/test_data/distcc/README1
-rw-r--r--include_server/test_data/distcc/src/bulk.h51
-rw-r--r--include_server/test_data/distcc/src/compile.h38
-rw-r--r--include_server/test_data/distcc/src/config.h256
-rw-r--r--include_server/test_data/distcc/src/distcc.c221
-rw-r--r--include_server/test_data/distcc/src/distcc.h336
-rw-r--r--include_server/test_data/distcc/src/emaillog.h10
-rw-r--r--include_server/test_data/distcc/src/exitcode.h61
-rw-r--r--include_server/test_data/distcc/src/hosts.h87
-rw-r--r--include_server/test_data/distcc/src/implicit.h25
-rw-r--r--include_server/test_data/distcc/src/include_me.h0
-rw-r--r--include_server/test_data/distcc/src/state.h91
-rw-r--r--include_server/test_data/distcc/src/trace.h230
-rw-r--r--include_server/test_data/distcc/src/util.h55
-rw-r--r--include_server/test_data/func_macro.c1
-rw-r--r--include_server/test_data/gws-main.o.cmd1
-rw-r--r--include_server/test_data/i_am_perhaps_a_directory.h/empty_file0
-rwxr-xr-xinclude_server/test_data/include_include_next_foo.h1
-rw-r--r--include_server/test_data/maps/foo.tpl.varnames.h1
-rw-r--r--include_server/test_data/more_macros.c14
-rwxr-xr-xinclude_server/test_data/p1.h1
-rw-r--r--include_server/test_data/parse.c8
-rw-r--r--include_server/test_data/stat_triggers.c1
-rw-r--r--include_server/test_data/stat_triggers.h0
l---------include_server/test_data/symlink_farm/abc_post.c1
l---------include_server/test_data/symlink_farm/abc_pre.c1
l---------include_server/test_data/symlink_farm/computed_includes.c1
l---------include_server/test_data/symlink_farm/dbar1
l---------include_server/test_data/symlink_farm/dfoo1
-rw-r--r--include_server/test_data/symlink_farm/foo1
l---------include_server/test_data/symlink_farm/p1.h1
l---------include_server/test_data/symlink_farm/parse.c1
l---------include_server/test_data/symlink_farm/sub_farm/link_to_dotdot_dotdot_dfoo_include_dotdot_foo1
l---------include_server/test_data/symlink_farm/test_directory_probing.c1
l---------include_server/test_data/symlink_farm/test_include_next1
-rw-r--r--include_server/test_data/test_computed_includes/helper.c1
-rw-r--r--include_server/test_data/test_computed_includes/incl.h1
-rw-r--r--include_server/test_data/test_computed_includes/inclA.h1
-rw-r--r--include_server/test_data/test_computed_includes/src.c9
-rw-r--r--include_server/test_data/test_computed_includes/srcA.c9
-rw-r--r--include_server/test_data/test_directory_probing.c4
-rwxr-xr-xinclude_server/test_data/test_include_next/bar/x.h3
-rwxr-xr-xinclude_server/test_data/test_include_next/bar/y.h3
-rwxr-xr-xinclude_server/test_data/test_include_next/baz/start_x.c2
-rwxr-xr-xinclude_server/test_data/test_include_next/baz/start_y.c2
-rwxr-xr-xinclude_server/test_data/test_include_next/baz/x.h3
-rwxr-xr-xinclude_server/test_data/test_include_next/baz/y.h6
-rwxr-xr-xinclude_server/test_data/test_include_next/biz/x.h1
-rwxr-xr-xinclude_server/test_data/test_include_next/foo/x.h2
-rwxr-xr-xinclude_server/test_data/test_include_next/foo/y.h2
62 files changed, 1572 insertions, 0 deletions
diff --git a/include_server/test_data/abc_post.c b/include_server/test_data/abc_post.c
new file mode 100755
index 0000000..5934e6c
--- /dev/null
+++ b/include_server/test_data/abc_post.c
@@ -0,0 +1 @@
+/* Used by computed_includes.c */
diff --git a/include_server/test_data/abc_pre.c b/include_server/test_data/abc_pre.c
new file mode 100755
index 0000000..c9e98a6
--- /dev/null
+++ b/include_server/test_data/abc_pre.c
@@ -0,0 +1 @@
+/* Used by computed_includes.c */
diff --git a/include_server/test_data/computed_includes.c b/include_server/test_data/computed_includes.c
new file mode 100755
index 0000000..11b18f5
--- /dev/null
+++ b/include_server/test_data/computed_includes.c
@@ -0,0 +1,10 @@
+#define A "p1.h"
+#include A
+
+#ifdef C
+ #define m(a) <a##_pre.c>
+#else
+ #define m(a) <a##_post.c>
+#endif
+#include m(abc) // <abc_post.c>
+
diff --git a/include_server/test_data/contains_abs_include.c b/include_server/test_data/contains_abs_include.c
new file mode 100644
index 0000000..a442e31
--- /dev/null
+++ b/include_server/test_data/contains_abs_include.c
@@ -0,0 +1 @@
+#include "/love/of/my/life"
diff --git a/include_server/test_data/dbar/dbar1/bar.h b/include_server/test_data/dbar/dbar1/bar.h
new file mode 100644
index 0000000..91bb28c
--- /dev/null
+++ b/include_server/test_data/dbar/dbar1/bar.h
@@ -0,0 +1 @@
+#define dbar_dbar1_bar_h
diff --git a/include_server/test_data/dbar/foo.h b/include_server/test_data/dbar/foo.h
new file mode 100755
index 0000000..692ba26
--- /dev/null
+++ b/include_server/test_data/dbar/foo.h
@@ -0,0 +1 @@
+#include "foo2.h"
diff --git a/include_server/test_data/dfoo/foo.h b/include_server/test_data/dfoo/foo.h
new file mode 100755
index 0000000..018d262
--- /dev/null
+++ b/include_server/test_data/dfoo/foo.h
@@ -0,0 +1,2 @@
+#include "foo2.h"
+#include "../dbar/dbar1/bar.h"
diff --git a/include_server/test_data/dfoo/foo2.h b/include_server/test_data/dfoo/foo2.h
new file mode 100644
index 0000000..9db0ee1
--- /dev/null
+++ b/include_server/test_data/dfoo/foo2.h
@@ -0,0 +1,3 @@
+#define dfoo_foo2_h
+// The include below is not valid syntax and should be ignored.
+#include ../dbar/foo.h
diff --git a/include_server/test_data/dfoo/i_am_perhaps_a_directory.h b/include_server/test_data/dfoo/i_am_perhaps_a_directory.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/include_server/test_data/dfoo/i_am_perhaps_a_directory.h
diff --git a/include_server/test_data/dfoo/include_dotdot_foo b/include_server/test_data/dfoo/include_dotdot_foo
new file mode 100644
index 0000000..ec77c1d
--- /dev/null
+++ b/include_server/test_data/dfoo/include_dotdot_foo
@@ -0,0 +1 @@
+#include "../foo"
diff --git a/include_server/test_data/dfoo/include_next_foo.h b/include_server/test_data/dfoo/include_next_foo.h
new file mode 100755
index 0000000..caf8d79
--- /dev/null
+++ b/include_server/test_data/dfoo/include_next_foo.h
@@ -0,0 +1 @@
+#include_next <foo.h>
diff --git a/include_server/test_data/dfoo/stat_triggers.h b/include_server/test_data/dfoo/stat_triggers.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/include_server/test_data/dfoo/stat_triggers.h
diff --git a/include_server/test_data/distcc/README b/include_server/test_data/distcc/README
new file mode 100644
index 0000000..5474801
--- /dev/null
+++ b/include_server/test_data/distcc/README
@@ -0,0 +1 @@
+This is just part of the distcc code, used for testing.
diff --git a/include_server/test_data/distcc/src/bulk.h b/include_server/test_data/distcc/src/bulk.h
new file mode 100644
index 0000000..7f37109
--- /dev/null
+++ b/include_server/test_data/distcc/src/bulk.h
@@ -0,0 +1,51 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil; fill-column: 78; -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003, 2004 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+int dcc_r_file(int ifd, const char *filename, unsigned,
+ enum dcc_compress);
+int dcc_r_fifo(int ifd, const char *fifo_name, size_t len);
+
+int dcc_x_file(int ofd, const char *fname, const char *token,
+ enum dcc_compress compression,
+ off_t *);
+
+int dcc_r_file_timed(int ifd, const char *fname, unsigned size,
+ enum dcc_compress);
+
+int dcc_r_token_file(int ifd,
+ const char *token,
+ const char *fname,
+ enum dcc_compress compr);
+
+int dcc_open_read(const char *fname, int *ifd, off_t *fsize);
+int dcc_copy_file_to_fd(const char *in_fname, int out_fd);
+
+/* clirpc.c */
+int dcc_x_many_files(int ofd,
+ unsigned int n_files,
+ char **fnames);
+
+/* srvrpc.c */
+int dcc_r_many_files(int in_fd,
+ const char *dirname,
+ enum dcc_compress compr);
+
diff --git a/include_server/test_data/distcc/src/compile.h b/include_server/test_data/distcc/src/compile.h
new file mode 100644
index 0000000..6876bab
--- /dev/null
+++ b/include_server/test_data/distcc/src/compile.h
@@ -0,0 +1,38 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+/* remote.c */
+int dcc_compile_remote(char **argv,
+ char *input_fname,
+ char *cpp_fname,
+ char **file_names,
+ char *output_fname,
+ char *deps_fname,
+ char *server_stderr_fname,
+ pid_t cpp_pid,
+ int local_cpu_lock_fd,
+ struct dcc_hostdef *host,
+ int *status);
+
+int dcc_build_somewhere_timed(char *argv[],
+ int sg_level,
+ int *status);
diff --git a/include_server/test_data/distcc/src/config.h b/include_server/test_data/distcc/src/config.h
new file mode 100644
index 0000000..975565e
--- /dev/null
+++ b/include_server/test_data/distcc/src/config.h
@@ -0,0 +1,256 @@
+/* src/config.h. Generated by configure. */
+/* src/config.h.in. Generated from configure.ac by autoheader. */
+
+/* Use getaddrinfo(), getnameinfo(), etc */
+/* #undef ENABLE_RFC2553 */
+
+/* Your gnu-style host triple */
+#define GNU_HOST "x86_64-unknown-linux-gnu"
+
+/* Define to 1 if you have the <alloca.h> header file. */
+#define HAVE_ALLOCA_H 1
+
+/* Define to 1 if you have the <arpa/nameser.h> header file. */
+#define HAVE_ARPA_NAMESER_H 1
+
+/* Define to 1 if you have the `asprintf' function. */
+#define HAVE_ASPRINTF 1
+
+/* define if vsnprintf is C99 compliant */
+#define HAVE_C99_VSNPRINTF 1
+
+/* Define to 1 if you have the <ctype.h> header file. */
+#define HAVE_CTYPE_H 1
+
+/* Define to 1 if you have the declaration of `asprintf', and to 0 if you
+ don't. */
+#define HAVE_DECL_ASPRINTF 1
+
+/* Define to 1 if you have the declaration of `snprintf', and to 0 if you
+ don't. */
+#define HAVE_DECL_SNPRINTF 1
+
+/* Define to 1 if you have the declaration of `strndup', and to 0 if you
+ don't. */
+#define HAVE_DECL_STRNDUP 1
+
+/* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
+ don't. */
+#define HAVE_DECL_VASPRINTF 1
+
+/* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you
+ don't. */
+#define HAVE_DECL_VSNPRINTF 1
+
+/* Define to 1 if you have the <float.h> header file. */
+#define HAVE_FLOAT_H 1
+
+/* Define to 1 if you have the `flock' function. */
+#define HAVE_FLOCK 1
+
+/* Define to 1 if you have the `getaddrinfo' function. */
+#define HAVE_GETADDRINFO 1
+
+/* Define to 1 if you have the `getcwd' function. */
+#define HAVE_GETCWD 1
+
+/* Define to 1 if you have the `geteuid' function. */
+#define HAVE_GETEUID 1
+
+/* Define to 1 if you have the `getloadavg' function. */
+#define HAVE_GETLOADAVG 1
+
+/* Define to 1 if you have the `getnameinfo' function. */
+#define HAVE_GETNAMEINFO 1
+
+/* Define to 1 if you have the `getrusage' function. */
+#define HAVE_GETRUSAGE 1
+
+/* Define to 1 if you have the `gettimeofday' function. */
+#define HAVE_GETTIMEOFDAY 1
+
+/* Define to 1 if you have the `getuid' function. */
+#define HAVE_GETUID 1
+
+/* Define to 1 if you have the `getpagesize' function. */
+#define HAVE_GETPAGESIZE 1
+
+/* Define to 1 if you have the `getwd' function. */
+#define HAVE_GETWD 1
+
+/* Define to 1 if you have the `hstrerror' function. */
+#define HAVE_HSTRERROR 1
+
+/* Define to 1 if you have the `inet_ntoa' function. */
+#define HAVE_INET_NTOA 1
+
+/* Define to 1 if you have the `inet_ntop' function. */
+#define HAVE_INET_NTOP 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if the system has the type `in_addr_t'. */
+#define HAVE_IN_ADDR_T 1
+
+/* Define to 1 if the system has the type `in_port_t'. */
+#define HAVE_IN_PORT_T 1
+
+/* Define to 1 if you have the `lockf' function. */
+#define HAVE_LOCKF 1
+
+/* Define to 1 if you have the `mcheck' function. */
+#define HAVE_MCHECK 1
+
+/* Define to 1 if you have the <mcheck.h> header file. */
+#define HAVE_MCHECK_H 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the `mmap' function. */
+#define HAVE_MMAP 1
+
+/* Define to 1 if you have the <netinet/in.h> header file. */
+#define HAVE_NETINET_IN_H 1
+
+/* Define to 1 if you have the <resolv.h> header file. */
+#define HAVE_RESOLV_H 1
+
+/* Define to 1 if you have the `sendfile' function. */
+#define HAVE_SENDFILE 1
+
+/* Define to 1 if you have the `setgroups' function. */
+#define HAVE_SETGROUPS 1
+
+/* Define to 1 if you have the `setreuid' function. */
+#define HAVE_SETREUID 1
+
+/* Define to 1 if you have the `setsid' function. */
+#define HAVE_SETSID 1
+
+/* Define to 1 if you have the `setuid' function. */
+#define HAVE_SETUID 1
+
+/* Define to 1 if you have the `snprintf' function. */
+#define HAVE_SNPRINTF 1
+
+/* define if you have struct sockaddr_storage */
+#define HAVE_SOCKADDR_STORAGE 1
+
+/* define if you have a working socketpair */
+#define HAVE_SOCKETPAIR 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the `strerror' function. */
+#define HAVE_STRERROR 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strlcpy' function. */
+/* #undef HAVE_STRLCPY */
+
+/* Define to 1 if you have the `strndup' function. */
+#define HAVE_STRNDUP 1
+
+/* Define to 1 if you have the `strsignal' function. */
+#define HAVE_STRSIGNAL 1
+
+/* Define to 1 if you have the <sys/loadavg.h> header file. */
+/* #undef HAVE_SYS_LOADAVG_H */
+
+/* Define to 1 if you have the <sys/mman.h> header file. */
+#define HAVE_SYS_MMAN_H 1
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#define HAVE_SYS_RESOURCE_H 1
+
+/* Define to 1 if you have the <sys/select.h> header file. */
+#define HAVE_SYS_SELECT_H 1
+
+/* Define to 1 if you have the <sys/sendfile.h> header file. */
+#define HAVE_SYS_SENDFILE_H 1
+
+/* Define to 1 if you have the <sys/signal.h> header file. */
+#define HAVE_SYS_SIGNAL_H 1
+
+/* Define to 1 if you have the <sys/socket.h> header file. */
+#define HAVE_SYS_SOCKET_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define if your cpp has vararg macros */
+#define HAVE_VARARG_MACROS
+
+/* Define to 1 if you have the `vasprintf' function. */
+#define HAVE_VASPRINTF 1
+
+/* Whether __va_copy() is available */
+#define HAVE_VA_COPY 1
+
+/* Define to 1 if you have the `vsnprintf' function. */
+#define HAVE_VSNPRINTF 1
+
+/* Define to 1 if you have the `wait3' function. */
+#define HAVE_WAIT3 1
+
+/* Define to 1 if you have the `wait4' function. */
+#define HAVE_WAIT4 1
+
+/* Define to 1 if you have the `waitpid' function. */
+#define HAVE_WAITPID 1
+
+/* Define if MAP_FAILED constant not available */
+#define MAP_FAILED (void *)-1L
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "distcc-pump@google.com"
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "distcc"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "distcc 2.18.3-17gg-pump6"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "distcc"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "2.18.3-17gg-pump6"
+
+/* Define as the return type of signal handlers (`int' or `void'). */
+#define RETSIGTYPE void
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Use GNOME */
+/* #undef WITH_GNOME */
+
+/* Use GTK+ */
+/* #undef WITH_GTK */
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+ calls it, or to nothing if 'inline' is not supported under any name. */
+#ifndef __cplusplus
+/* #undef inline */
+#endif
+
+/* type to use in place of socklen_t if not defined */
+/* #undef socklen_t */
diff --git a/include_server/test_data/distcc/src/distcc.c b/include_server/test_data/distcc/src/distcc.c
new file mode 100644
index 0000000..2bf4b52
--- /dev/null
+++ b/include_server/test_data/distcc/src/distcc.c
@@ -0,0 +1,221 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003, 2004 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+
+ /* 4: The noise of a multitude in the
+ * mountains, like as of a great people; a
+ * tumultuous noise of the kingdoms of nations
+ * gathered together: the LORD of hosts
+ * mustereth the host of the battle.
+ * -- Isaiah 13 */
+
+
+
+#include "config.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <signal.h>
+
+#include "distcc.h"
+#include "trace.h"
+#include "exitcode.h"
+#include "util.h"
+#include "hosts.h"
+#include "bulk.h"
+#include "implicit.h"
+#include "compile.h"
+#include "emaillog.h"
+
+
+/* Name of this program, for trace.c */
+const char *rs_program_name = "distcc";
+
+
+/**
+ * @file
+ *
+ * Entry point for the distcc client.
+ *
+ * There are three methods of use for distcc: explicit (distcc gcc -c
+ * foo.c), implicit (distcc -c foo.c) and masqueraded (gcc -c foo.c,
+ * where gcc is really a link to distcc).
+ *
+ * Detecting these is relatively easy by examining the first one or
+ * two words of the command. We also need to make sure that when we
+ * go to run the compiler, we run the one intended by the user.
+ *
+ * In particular, for masqueraded mode, we want to make sure that we
+ * don't invoke distcc recursively.
+ **/
+
+static void dcc_show_usage(void)
+{
+ dcc_show_version("distcc");
+ printf(
+"Usage:\n"
+" distcc [COMPILER] [compile options] -o OBJECT -c SOURCE\n"
+" distcc --help\n"
+"\n"
+"Options:\n"
+" COMPILER defaults to \"cc\"\n"
+" --help explain usage and exit\n"
+" --version show version and exit\n"
+"\n"
+"Environment variables:\n"
+" See the manual page for a complete list.\n"
+" DISTCC_VERBOSE=1 give debug messages\n"
+" DISTCC_LOG send messages to file, not stderr\n"
+" DISTCC_SSH command to run to open SSH connections\n"
+" DISTCC_DIR directory for host list and locks\n"
+"\n"
+"Server specification:\n"
+"A list of servers is taken from the environment variable $DISTCC_HOSTS, or\n"
+"$DISTCC_DIR/hosts, or ~/.distcc/hosts, or %s/distcc/hosts.\n"
+"Each host can be given in any of these forms, see the manual for details:\n"
+"\n"
+" localhost run in place\n"
+" HOST TCP connection, port %d\n"
+" HOST:PORT TCP connection, specified port\n"
+" @HOST SSH connection\n"
+" USER@HOST SSH connection to specified host\n"
+" --randomize Randomize the server list before execution\n"
+"\n"
+"distcc distributes compilation jobs across volunteer machines running\n"
+"distccd. Jobs that cannot be distributed, such as linking or \n"
+"preprocessing are run locally. distcc should be used with make's -jN\n"
+"option to execute in parallel on several machines.\n",
+ SYSCONFDIR,
+ DISTCC_DEFAULT_PORT);
+}
+
+
+static RETSIGTYPE dcc_client_signalled (int whichsig)
+{
+ signal(whichsig, SIG_DFL);
+
+#ifdef HAVE_STRSIGNAL
+ rs_log_info("%s", strsignal(whichsig));
+#else
+ rs_log_info("terminated by signal %d", whichsig);
+#endif
+
+ dcc_cleanup_tempfiles_from_signal_handler();
+
+ raise(whichsig);
+
+}
+
+
+static void dcc_client_catch_signals(void)
+{
+ signal(SIGTERM, &dcc_client_signalled);
+ signal(SIGINT, &dcc_client_signalled);
+ signal(SIGHUP, &dcc_client_signalled);
+}
+
+
+
+/**
+ * distcc client entry point.
+ *
+ * This is typically called by make in place of the real compiler.
+ *
+ * Performs basic setup and checks for distcc arguments, and then kicks off
+ * dcc_build_somewhere().
+ **/
+int main(int argc, char **argv)
+{
+ int status, sg_level, tweaked_path = 0;
+ char **compiler_args;
+ char *compiler_name;
+ int ret;
+
+ dcc_client_catch_signals();
+ atexit(dcc_cleanup_tempfiles);
+ atexit(dcc_remove_state_file);
+
+ dcc_set_trace_from_env();
+ dcc_setup_log_email();
+
+ dcc_trace_version();
+
+ compiler_name = (char *) dcc_find_basename(argv[0]);
+
+ /* Ignore SIGPIPE; we consistently check error codes and will
+ * see the EPIPE. */
+ dcc_ignore_sigpipe(1);
+
+ sg_level = dcc_recursion_safeguard();
+
+ rs_trace("compiler name is \"%s\"", compiler_name);
+
+ if (strstr(compiler_name, "distcc") != NULL) {
+ /* Either "distcc -c hello.c" or "distcc gcc -c hello.c" */
+ if (argc <= 1 || !strcmp(argv[1], "--help")) {
+ dcc_show_usage();
+ ret = 0;
+ goto out;
+ }
+ if (!strcmp(argv[1], "--version")) {
+ dcc_show_version("distcc");
+ ret = 0;
+ goto out;
+ }
+
+ dcc_find_compiler(argv, &compiler_args);
+ /* compiler_args is now respectively either "cc -c hello.c" or
+ * "gcc -c hello.c" */
+
+#if 0
+ /* I don't think we need to call this: if we reached this
+ * line, our invocation name is something like 'distcc', and
+ * that's never a problem for masquerading loops. */
+ if ((ret = dcc_trim_path(compiler_name)) != 0)
+ goto out;
+#endif
+ } else {
+ /* Invoked as "cc -c hello.c", with masqueraded path */
+ if ((ret = dcc_support_masquerade(argv, compiler_name,
+ &tweaked_path)) != 0)
+ goto out;
+
+ dcc_copy_argv(argv, &compiler_args, 0);
+ compiler_args[0] = compiler_name;
+ }
+
+ if (sg_level - tweaked_path > 0) {
+ rs_log_crit("distcc seems to have invoked itself recursively!");
+ ret = EXIT_RECURSION;
+ goto out;
+ }
+
+ ret = dcc_build_somewhere_timed(compiler_args, sg_level, &status);
+
+ out:
+ dcc_maybe_send_email();
+ dcc_exit(ret);
+}
diff --git a/include_server/test_data/distcc/src/distcc.h b/include_server/test_data/distcc/src/distcc.h
new file mode 100644
index 0000000..c0686a7
--- /dev/null
+++ b/include_server/test_data/distcc/src/distcc.h
@@ -0,0 +1,336 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil; fill-column: 78 -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003, 2004 by Martin Pool
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+/* distcc.h -- common internal-use header file */
+
+#include <sys/types.h>
+
+
+#ifdef NORETURN
+/* nothing */
+#elif defined(__GNUC__)
+# define NORETURN __attribute__((noreturn))
+#elif defined(__LCLINT__)
+# define NORETURN /*@noreturn@*/ x
+#else /* !__GNUC__ && !__LCLINT__ */
+# define NORETURN
+#endif /* !__GNUC__ && !__LCLINT__ */
+
+#ifdef UNUSED
+/* nothing */
+#elif defined(__GNUC__)
+# define UNUSED(x) UNUSED_ ## x __attribute__((unused))
+#elif defined(__LCLINT__)
+# define UNUSED(x) /*@unused@*/ x
+#else /* !__GNUC__ && !__LCLINT__ */
+# define UNUSED(x) x
+#endif /* !__GNUC__ && !__LCLINT__ */
+
+
+#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ > 3))
+/* This works on Gentoo's (patched?) gcc 3.3.3 but not 3.2.3, and not Debian's
+ * 3.3.4. It should be standard on 3.4. */
+# define WARN_UNUSED __attribute__((warn_unused_result))
+#else
+# define WARN_UNUSED
+#endif
+
+
+#ifndef TRUE
+# define TRUE 1
+# define FALSE 0
+#endif
+
+
+struct dcc_hostdef;
+
+
+
+#include "state.h"
+
+
+
+
+enum dcc_compress {
+ /* wierd values to catch errors */
+ DCC_COMPRESS_NONE = 69,
+ DCC_COMPRESS_LZO1X
+};
+
+enum dcc_cpp_where {
+ /* wierd values to catch errors */
+ DCC_CPP_ON_CLIENT = 42,
+ DCC_CPP_ON_SERVER
+};
+
+enum dcc_protover {
+ DCC_VER_1 = 1, /**< vanilla */
+ DCC_VER_2 = 2, /**< LZO sprinkles */
+ DCC_VER_3 = 3 /**< server-side cpp */
+};
+
+
+
+
+
+int str_endswith(const char *tail, const char *tiger);
+
+
+
+
+/* A macro so that we get the right __FUNCTION__ in the trace message.
+ *
+ * We condition on rs_trace_enabled so that we don't do the to-string
+ * conversion unless the user will actually see the result, because it's a
+ * little expensive. */
+#define dcc_trace_argv(_message, _argv) \
+ if (rs_trace_enabled()) { \
+ char *_astr; \
+ _astr = dcc_argv_tostr(_argv); \
+ rs_trace("%s: %s", _message, _astr); \
+ free(_astr); \
+ } else {}
+
+
+/* help.c */
+int dcc_trace_version(void);
+int dcc_show_version(const char *prog);
+
+
+/* hosts.c */
+int dcc_parse_hosts_env(struct dcc_hostdef **ret_list,
+ int *ret_nhosts);
+int dcc_parse_hosts(const char *where, const char *source_name,
+ struct dcc_hostdef **ret_list,
+ int *ret_nhosts);
+
+/* ncpu.c */
+int dcc_ncpus(int *);
+
+/* ssh.c */
+int dcc_ssh_connect(char *ssh_cmd, char *user,
+ char *machine, char *path,
+ int *f_in, int *f_out,
+ pid_t *ssh_pid);
+
+/* safeguard.c */
+int dcc_increment_safeguard(void);
+int dcc_recursion_safeguard(void);
+
+/* clirpc.c */
+int dcc_x_req_header(int fd,
+ enum dcc_protover protover);
+int dcc_x_argv(int fd, char **argv);
+int dcc_x_cwd(int fd);
+
+/* srvrpc.c */
+int dcc_r_cwd(int ifd, char **cwd);
+
+/* remote.c */
+int dcc_send_job_corked(int net_fd,
+ char **argv,
+ pid_t cpp_pid,
+ int *status,
+ const char *,
+ const char *cpp_fname,
+ struct dcc_hostdef *);
+
+int dcc_retrieve_results(int net_fd,
+ int *status,
+ const char *output_fname,
+ const char *deps_fname,
+ const char *server_stderr_fname,
+ struct dcc_hostdef *);
+
+/* climasq.c */
+int dcc_support_masquerade(char *argv[], char *progname, int *);
+
+
+/* backoff.c */
+int dcc_enjoyed_host(const struct dcc_hostdef *host);
+int dcc_disliked_host(const struct dcc_hostdef *host);
+int dcc_remove_disliked(struct dcc_hostdef **hostlist);
+
+
+
+#define DISTCC_DEFAULT_PORT 3632
+#define DISTCC_DEFAULT_STATS_ENABLED 0
+#define DISTCC_DEFAULT_STATS_PORT 3633
+
+
+
+#ifndef WAIT_ANY
+# define WAIT_ANY (-1)
+#endif
+
+
+/* If --enable-rfc2553 was given, then we will try to enable compile-time IPv6
+ * support. This means we must have a sockaddr_storage large enough to hold
+ * IPv6 addresses. If not, we'll just use a plain sockaddr, which is more
+ * likely to compile correctly. */
+#ifdef ENABLE_RFC2553
+# ifndef HAVE_SOCKADDR_STORAGE
+# error You can't use RFC2553 because you don't have a sockaddr_storage type
+# endif /* HAVE_SOCKADDR_STORAGE */
+# define dcc_sockaddr_storage sockaddr_storage
+#else /* !ENABLE_RFC2553 */
+# define dcc_sockaddr_storage sockaddr
+#endif /* !ENABLE_RFC2553 */
+
+#ifndef O_BINARY
+# define O_BINARY 0
+#endif
+
+
+void dcc_set_trace_from_env(void);
+
+
+/* compress.c */
+int dcc_r_bulk_lzo1x(int outf_fd,
+ int in_fd,
+ unsigned in_len);
+
+
+
+int dcc_compress_file_lzo1x(int in_fd,
+ size_t in_len,
+ char **out_buf,
+ size_t *out_len);
+
+int dcc_compress_lzo1x_alloc(const char *in_buf,
+ size_t in_len,
+ char **out_buf_ret,
+ size_t *out_len_ret);
+
+
+
+/* bulk.h */
+void dcc_calc_rate(off_t size_out,
+ struct timeval *before,
+ struct timeval *after,
+ double *secs,
+ double *rate);
+
+/* arg.c */
+int dcc_set_action_opt(char **, const char *);
+int dcc_set_output(char **, char *);
+int dcc_set_input(char **, char *);
+int dcc_scan_args(char *argv[], /*@out@*/ /*@relnull@*/ char **orig_o,
+ char **orig_i, char ***ret_newargv);
+
+/* argutil.c */
+unsigned int dcc_argv_len(char **a);
+int dcc_argv_search(char **a, const char *);
+int dcc_copy_argv(char **argv, char ***out_argv, int extra_args);
+int dcc_argv_append(char **argv, char *toadd);
+char *dcc_argv_tostr(char **a);
+void dcc_free_argv(char **argv);
+
+/* tempfile.c */
+int dcc_get_tempdir(const char **);
+int dcc_make_tmpnam(const char *, const char *suffix, char **);
+int dcc_get_new_tmpdir(char **tmpdir);
+int dcc_mk_tmpdir(const char *path);
+int dcc_mkdir(const char *path);
+
+int dcc_get_lock_dir(char **path_ret) WARN_UNUSED;
+int dcc_get_state_dir(char **path_ret) WARN_UNUSED;
+int dcc_get_top_dir(char **path_ret) WARN_UNUSED;
+int dcc_get_tmp_top(const char **p_ret) WARN_UNUSED;
+
+int dcc_mk_tmp_ancestor_dirs(const char* file);
+
+/* cleanup.c */
+void dcc_cleanup_tempfiles(void);
+void dcc_cleanup_tempfiles_from_signal_handler(void);
+int dcc_add_cleanup(const char *filename) WARN_UNUSED;
+
+/* strip.c */
+int dcc_strip_local_args(char **from, char ***out_argv);
+int dcc_strip_dasho(char **from, char ***out_argv);
+
+/* cpp.c */
+int dcc_cpp_maybe(char **argv, char *input_fname, char **cpp_fname,
+ pid_t *cpp_pid);
+
+/* filename.c */
+int dcc_is_source(const char *sfile);
+int dcc_is_preprocessed(const char *sfile);
+int dcc_is_object(const char *filename);
+int dcc_source_needs_local(const char *);
+
+char * dcc_find_extension(char *sfile);
+int dcc_output_from_source(const char *sfile, const char *out_extn,
+ char **ofile);
+
+const char * dcc_preproc_exten(const char *e);
+const char * dcc_find_basename(const char *sfile);
+void dcc_truncate_to_dirname(char *file);
+
+
+/* io.c */
+
+int dcc_writex(int fd, const void *buf, size_t len);
+
+int dcc_r_token(int ifd, char *token);
+
+int dcc_readx(int fd, void *buf, size_t len);
+int dcc_pump_sendfile(int ofd, int ifd, size_t n);
+int dcc_r_str_alloc(int fd, unsigned len, char **buf);
+
+int tcp_cork_sock(int fd, int corked);
+int dcc_close(int fd);
+int dcc_want_mmap(void);
+
+
+int dcc_select_for_write(int fd, int timeout);
+int dcc_select_for_read(int fd, int timeout);
+
+/* loadfile.c */
+int dcc_load_file_string(const char *filename,
+ char **retbuf);
+
+
+extern const int dcc_connect_timeout, dcc_io_timeout;
+
+
+/* pump.c */
+int dcc_r_bulk(int ofd,
+ int ifd,
+ unsigned f_size,
+ enum dcc_compress compression);
+
+int dcc_pump_readwrite(int ofd, int ifd, size_t n);
+
+/* mapfile.c */
+int dcc_map_input_file(int in_fd, off_t in_size, char **buf_ret);
+
+/* XXX: Kind of kludgy, we should do dynamic allocation. But this will do for
+ * now. */
+#ifndef MAXPATHLEN
+#define MAXPATHLEN 4096
+#endif
+
+
+#ifndef WCOREDUMP
+# define WCOREDUMP(status) 0
+#endif
diff --git a/include_server/test_data/distcc/src/emaillog.h b/include_server/test_data/distcc/src/emaillog.h
new file mode 100644
index 0000000..3b1c33a
--- /dev/null
+++ b/include_server/test_data/distcc/src/emaillog.h
@@ -0,0 +1,10 @@
+#ifndef DCC_EMAILLOG_H
+#define DCC_EMAILLOG_H
+
+#define DCC_EMAILLOG_WHOM_TO_BLAME "distcc-pump-errors@google.com"
+void dcc_please_send_email(void);
+void dcc_setup_log_email(void);
+void dcc_maybe_send_email(void);
+int dcc_add_file_to_log_email(const char *description, const char *fname);
+
+#endif /* EMAILLOG_H */
diff --git a/include_server/test_data/distcc/src/exitcode.h b/include_server/test_data/distcc/src/exitcode.h
new file mode 100644
index 0000000..29a595a
--- /dev/null
+++ b/include_server/test_data/distcc/src/exitcode.h
@@ -0,0 +1,61 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil; fill-column: 78 -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003, 2004 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+#ifndef _DISTCC_EXITCODE_H
+#define _DISTCC_EXITCODE_H
+
+/**
+ * @file
+ *
+ * Common exit codes.
+ **/
+
+/**
+ * Common exit codes for both client and server.
+ *
+ * These need to be in [1,255] so that they can be used as exit()
+ * codes.
+ **/
+enum dcc_exitcode {
+ EXIT_DISTCC_FAILED = 100, /**< General failure */
+ EXIT_BAD_ARGUMENTS = 101,
+ EXIT_BIND_FAILED = 102,
+ EXIT_CONNECT_FAILED = 103,
+ EXIT_COMPILER_CRASHED = 104,
+ EXIT_OUT_OF_MEMORY = 105,
+ EXIT_BAD_HOSTSPEC = 106,
+ EXIT_IO_ERROR = 107,
+ EXIT_TRUNCATED = 108,
+ EXIT_PROTOCOL_ERROR = 109,
+ EXIT_COMPILER_MISSING = 110, /**< Compiler executable not found */
+ EXIT_RECURSION = 111, /**< distcc called itself */
+ EXIT_SETUID_FAILED = 112, /**< Failed to discard privileges */
+ EXIT_ACCESS_DENIED = 113, /**< Network access denied */
+ EXIT_BUSY = 114, /**< In use by another process. */
+ EXIT_NO_SUCH_FILE = 115,
+ EXIT_NO_HOSTS = 116,
+ EXIT_GONE = 117, /**< No longer relevant */
+ EXIT_TIMEOUT = 118
+};
+
+
+#endif /* _DISTCC_EXITCODE_H */
diff --git a/include_server/test_data/distcc/src/hosts.h b/include_server/test_data/distcc/src/hosts.h
new file mode 100644
index 0000000..674ac85
--- /dev/null
+++ b/include_server/test_data/distcc/src/hosts.h
@@ -0,0 +1,87 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+/**
+ * @file
+ *
+ * Declarations for distcc host selection stuff.
+ **/
+
+/**
+ * A simple linked list of host definitions. All strings are mallocd.
+ **/
+struct dcc_hostdef {
+ enum {
+ DCC_MODE_TCP = 1,
+ DCC_MODE_SSH,
+ DCC_MODE_LOCAL
+ } mode;
+ char * user;
+ char * hostname;
+ int port;
+ char * ssh_command;
+
+ /** Mark the host as up == 1, by default, or down == 0, if !hostname */
+ int is_up;
+
+ /** Number of tasks that can be dispatched concurrently to this machine. */
+ int n_slots;
+
+ /** The full name of this host, taken verbatim from the host
+ * definition. **/
+ char * hostdef_string;
+
+ enum dcc_protover protover;
+
+ /** The kind of compression to use for this host */
+ enum dcc_compress compr;
+
+ /** Where are we doing preprocessing? */
+ enum dcc_cpp_where cpp_where;
+
+ struct dcc_hostdef *next;
+};
+
+/** Static definition of localhost **/
+extern struct dcc_hostdef *dcc_hostdef_local;
+extern struct dcc_hostdef *dcc_hostdef_local_cpp;
+
+/* hosts.c */
+int dcc_get_hostlist(struct dcc_hostdef **ret_list,
+ int *ret_nhosts);
+
+int dcc_free_hostdef(struct dcc_hostdef *host);
+
+int dcc_get_features_from_protover(enum dcc_protover protover,
+ enum dcc_compress *compr,
+ enum dcc_cpp_where *cpp_where);
+
+int dcc_get_protover_from_features(enum dcc_compress compr,
+ enum dcc_cpp_where cpp_where,
+ enum dcc_protover *protover);
+
+/* hostfile.c */
+int dcc_parse_hosts_file(const char *fname,
+ struct dcc_hostdef **ret_list,
+ int *ret_nhosts);
+
+
diff --git a/include_server/test_data/distcc/src/implicit.h b/include_server/test_data/distcc/src/implicit.h
new file mode 100644
index 0000000..371657d
--- /dev/null
+++ b/include_server/test_data/distcc/src/implicit.h
@@ -0,0 +1,25 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ * $Header: /data/cvs/distcc/src/implicit.h,v 1.3 2002/09/18 06:57:45 mbp Exp $
+ *
+ * Copyright (C) 2002 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+int dcc_find_compiler(char **argv, char ***);
+
diff --git a/include_server/test_data/distcc/src/include_me.h b/include_server/test_data/distcc/src/include_me.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/include_server/test_data/distcc/src/include_me.h
diff --git a/include_server/test_data/distcc/src/state.h b/include_server/test_data/distcc/src/state.h
new file mode 100644
index 0000000..63486fe
--- /dev/null
+++ b/include_server/test_data/distcc/src/state.h
@@ -0,0 +1,91 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2003 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+#ifndef _DISTCC_STATE_H
+#define _DISTCC_STATE_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int dcc_get_state_dir (char **p);
+int dcc_open_state_file (int *p_fd);
+
+
+/* Note that these must be in the order in which they are encountered
+ * for the state file to work properly. It's OK if some are skipped
+ * though. */
+enum dcc_phase {
+ DCC_PHASE_STARTUP,
+ DCC_PHASE_BLOCKED,
+ DCC_PHASE_CONNECT,
+ DCC_PHASE_CPP,
+ DCC_PHASE_SEND,
+ DCC_PHASE_COMPILE, /**< or unknown */
+ DCC_PHASE_RECEIVE,
+ DCC_PHASE_DONE /**< MUST be last */
+};
+
+
+int dcc_note_state (enum dcc_phase state,
+ const char *file,
+ const char *host);
+void dcc_remove_state_file (void);
+
+
+extern const char *dcc_state_prefix;
+
+
+#define DCC_STATE_MAGIC 0x44494800 /* DIH\0 */
+
+/**
+ * State and history of a distcc process. Used in memory and also in native
+ * format for binary state files.
+ *
+ * This should be <4kB, so that it will normally be written out
+ * atomically.
+ **/
+struct dcc_task_state {
+ size_t struct_size;
+ unsigned long magic;
+ unsigned long cpid; /**< Client pid */
+ char file[128]; /**< Input filename */
+ char host[128]; /**< Destination host description */
+ int slot; /**< Which CPU slot for this host */
+
+ enum dcc_phase curr_phase;
+
+ /** In memory, point to the next in a list of all tasks. In the
+ * file, undefined. */
+ struct dcc_task_state *next;
+};
+
+
+const char *dcc_get_phase_name(enum dcc_phase);
+
+void dcc_note_state_slot(int slot);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _DISTCC_STATE_H */
diff --git a/include_server/test_data/distcc/src/trace.h b/include_server/test_data/distcc/src/trace.h
new file mode 100644
index 0000000..0d99e0f
--- /dev/null
+++ b/include_server/test_data/distcc/src/trace.h
@@ -0,0 +1,230 @@
+/*= -*- c-basic-offset: 4; indent-tabs-mode: nil; -*-
+ *
+ * librsync -- generate and apply network deltas
+ *
+ * Copyright (C) 2000, 2001, 2002, 2003, 2004 by Martin Pool
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+
+/**
+ * @file
+ *
+ * Reusable trace library.
+ *
+ * @todo A function like perror that includes strerror output. Apache
+ * does this by adding flags as well as the severity level which say
+ * whether such information should be included.
+ *
+ * @todo Also check in configure for the C9X predefined identifier `_function', or
+ * whatever it's called.
+ **/
+
+/* Provide simple macro statement wrappers (adapted from glib, and originally from Perl):
+ * RS_STMT_START { statements; } RS_STMT_END;
+ * can be used as a single statement, as in
+ * if (x) RS_STMT_START { ... } RS_STMT_END; else ...
+ *
+ * For gcc we will wrap the statements within `({' and `})' braces.
+ * For SunOS they will be wrapped within `if (1)' and `else (void) 0',
+ * and otherwise within `do' and `while (0)'.
+ */
+#if !(defined (RS_STMT_START) && defined (RS_STMT_END))
+# if defined (__GNUC__) && !defined (__STRICT_ANSI__) && !defined (__cplusplus)
+# define RS_STMT_START (void)(
+# define RS_STMT_END )
+# else
+# if (defined (sun) || defined (__sun__))
+# define RS_STMT_START if (1)
+# define RS_STMT_END else (void)0
+# else
+# define RS_STMT_START do
+# define RS_STMT_END while (0)
+# endif
+# endif
+#endif
+
+
+#include <stdarg.h>
+
+/* unconditionally on */
+#define DO_RS_TRACE
+
+/**
+ * Log severity levels.
+ *
+ * These have the same numeric values as the levels for syslog, at
+ * least in glibc.
+ *
+ * Trace may be turned off.
+ *
+ * Error is always on, but you can return and continue in some way.
+ */
+typedef enum {
+ RS_LOG_EMERG = 0, /**< System is unusable */
+ RS_LOG_ALERT = 1, /**< Action must be taken immediately */
+ RS_LOG_CRIT = 2, /**< Critical conditions */
+ RS_LOG_ERR = 3, /**< Error conditions */
+ RS_LOG_WARNING = 4, /**< Warning conditions */
+ RS_LOG_NOTICE = 5, /**< Normal but significant condition */
+ RS_LOG_INFO = 6, /**< Informational */
+ RS_LOG_DEBUG = 7 /**< Debug-level messages */
+} rs_loglevel;
+
+int rs_loglevel_from_name(const char *name);
+
+enum {
+ RS_LOG_PRIMASK = 7, /**< Mask to extract priority
+ part. \internal */
+
+ RS_LOG_NONAME = 8, /**< \b Don't show function name in
+ message. */
+
+ RS_LOG_NO_PROGRAM = 16,
+ RS_LOG_NO_PID = 32
+};
+
+
+/**
+ * \typedef rs_logger_fn
+ * \brief Callback to write out log messages.
+ * \param level a syslog level.
+ * \param msg message to be logged.
+ *
+ * \param private Opaque data passed in when logger was added. For
+ * example, pointer to file descriptor.
+ */
+typedef void rs_logger_fn(int flags, const char *fn,
+ char const *msg, va_list,
+ void *private_ptr, int private_int);
+
+void rs_format_msg(char *buf, size_t, int, const char *,
+ const char *fmt, va_list);
+
+void rs_trace_set_level(rs_loglevel level);
+
+void rs_add_logger(rs_logger_fn *, int level, void *, int);
+void rs_remove_logger(rs_logger_fn *, int level, void *, int);
+void rs_remove_all_loggers(void);
+
+
+void rs_logger_file(int level, const char *fn, char const *fmt, va_list va,
+ void *, int);
+
+void rs_logger_syslog(int level, const char *fn, char const *fmt, va_list va,
+ void *, int);
+
+/** Check whether the library was compiled with debugging trace suport. */
+int rs_supports_trace(void);
+
+void rs_log0(int level, char const *fn, char const *fmt, ...)
+#if defined(__GNUC__)
+ __attribute__ ((format(printf, 3, 4)))
+#endif /* __GNUC__ */
+ ;
+
+
+ /* TODO: Check for the __FUNCTION__ thing, rather than gnuc */
+#if defined(HAVE_VARARG_MACROS) && defined(__GNUC__)
+
+#if 1 || defined(DO_RS_TRACE)
+# define rs_trace(fmt, arg...) \
+ do { rs_log0(RS_LOG_DEBUG, __FUNCTION__, fmt , ##arg); \
+ } while (0)
+#else
+# define rs_trace(s, str...)
+#endif /* !DO_RS_TRACE */
+
+#define rs_log(l, s, str...) do { \
+ rs_log0((l), __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+
+#define rs_log_crit(s, str...) do { \
+ rs_log0(RS_LOG_CRIT, __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+#define rs_log_error(s, str...) do { \
+ rs_log0(RS_LOG_ERR, __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+#define rs_log_notice(s, str...) do { \
+ rs_log0(RS_LOG_NOTICE, __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+#define rs_log_warning(s, str...) do { \
+ rs_log0(RS_LOG_WARNING, __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+#define rs_log_info(s, str...) do { \
+ rs_log0(RS_LOG_INFO, __FUNCTION__, (s) , ##str); \
+ } while (0)
+
+#else /* not defined HAVE_VARARG_MACROS */
+
+/* If we don't have gcc vararg macros, then we fall back to making the
+ * log routines just plain functions. On platforms without gcc (boo
+ * hiss!) this means at least you get some messages, but not the nice
+ * function names etc. */
+#define rs_log rs_log0_nofn
+
+#define rs_trace rs_log_trace_nofn
+#define rs_log_info rs_log_info_nofn
+#define rs_log_notice rs_log_notice_nofn
+#define rs_log_warning rs_log_warning_nofn
+#define rs_log_error rs_log_error_nofn
+#define rs_log_crit rs_log_critical_nofn
+#endif /* HAVE_VARARG_MACROS */
+
+
+
+void rs_log_trace_nofn(char const *s, ...);
+void rs_log_info_nofn(char const *, ...);
+void rs_log_notice_nofn(char const *, ...);
+void rs_log_warning_nofn(char const *s, ...);
+void rs_log_error_nofn(char const *s, ...);
+void rs_log_critical_nofn(char const *, ...);
+
+void rs_log0_nofn(int level, char const *fmt, ...);
+
+
+
+/**
+ * \macro rs_trace_enabled()
+ *
+ * Call this before putting too much effort into generating trace
+ * messages.
+ */
+
+extern int rs_trace_level;
+
+#ifdef DO_RS_TRACE
+# define rs_trace_enabled() ((rs_trace_level & RS_LOG_PRIMASK) >= RS_LOG_DEBUG)
+#else
+# define rs_trace_enabled() 0
+#endif
+
+/**
+ * Name of the program, to be included in log messages.
+ *
+ * @note This must be defined exactly once in each program that links to
+ * trace.c
+ **/
+extern const char *rs_program_name;
+
+void dcc_job_summary_clear(void);
+void dcc_job_summary(void);
+void dcc_job_summary_append(const char *s);
diff --git a/include_server/test_data/distcc/src/util.h b/include_server/test_data/distcc/src/util.h
new file mode 100644
index 0000000..e2aefed
--- /dev/null
+++ b/include_server/test_data/distcc/src/util.h
@@ -0,0 +1,55 @@
+/* -*- c-file-style: "java"; indent-tabs-mode: nil -*-
+ *
+ * distcc -- A simple distributed compiler system
+ *
+ * Copyright (C) 2002, 2003 by Martin Pool <mbp@samba.org>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ */
+
+#include <setjmp.h>
+
+/* util.c */
+int dcc_getcurrentload(void);
+void dcc_getloadavg(double loadavg[3]);
+int argv_contains(char **argv, const char *s);
+int dcc_redirect_fd(int, const char *fname, int);
+int str_startswith(const char *head, const char *worm);
+char *dcc_gethostname(void);
+void dcc_exit(int exitcode) NORETURN;
+int dcc_getenv_bool(const char *name, int def_value);
+int set_cloexec_flag (int desc, int value);
+int dcc_ignore_sigpipe(int val);
+int dcc_remove_if_exists(const char *fname);
+int dcc_trim_path(const char *compiler_name);
+int dcc_set_path(const char *newpath);
+char *dcc_abspath(const char *path, int path_len);
+int dcc_get_dns_domain(const char **domain_name);
+
+#define str_equal(a, b) (!strcmp((a), (b)))
+
+
+void dcc_get_proc_stats(int *num_D, int *max_RSS, char **max_RSS_name);
+void dcc_get_disk_io_stats(int *n_reads, int *n_writes);
+
+
+int dcc_dup_part(const char **psrc, char **pdst, const char *sep);
+
+#ifndef HAVE_STRLCPY
+size_t strlcpy(char *d, const char *s, size_t bufsize);
+#endif
+
+int dcc_tokenize_string(const char *in, char ***argv_ptr);
diff --git a/include_server/test_data/func_macro.c b/include_server/test_data/func_macro.c
new file mode 100644
index 0000000..9eef80d
--- /dev/null
+++ b/include_server/test_data/func_macro.c
@@ -0,0 +1 @@
+#include FINCLUDE(foo.h)
diff --git a/include_server/test_data/gws-main.o.cmd b/include_server/test_data/gws-main.o.cmd
new file mode 100644
index 0000000..0b0cc28
--- /dev/null
+++ b/include_server/test_data/gws-main.o.cmd
@@ -0,0 +1 @@
+/usr/crosstool/v8/gcc-4.1.0-glibc-2.2.2/blah/gcc -Wall -Werror -Wwrite-strings -fno-exceptions -funsigned-char -D__STDC_FORMAT_MACROS -g0 -D_REENTRANT -DCOMPILER_GCC3 -DCOMPILER_GCC4 -DARCH_PIII -DOS_LINUX -fmessage-length=0 -fno-strict-aliasing -Wno-sign-compare -Wno-char-subscripts -DXP_UNIX -D_REENTRANT -DHAS_vsnprintf -DPOSIX_MALLOC_THRESHOLD=10 -DMAX_DUPLENGTH=100000 -DSUPPORT_UTF8 -DSUPPORT_UCP -DHAVE_OPENSSL -D_REENTRANT -DHASH_NAMESPACE=__gnu_cxx -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/musicsearch/frontend -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/musicsearch/frontend -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/musicsearch/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/musicsearch/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web/manybox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web/manybox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/freshness/queryclassifier/public/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/freshness/queryclassifier/public/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blogsearch/parsers/feedparser/protos -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blogsearch/parsers/feedparser/protos -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/extern_js -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/extern_js -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/images -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/images -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/one_google -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/one_google -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/web -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/webserver -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/webserver -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/wireless -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates/wireless -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/daily/mustang/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/daily/mustang/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/extractor/client/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/extractor/client/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/extractor/server/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/extractor/server/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www/ftb/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www/ftb/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/quicklinks/public/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/quicklinks/public/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/search/learning/booster -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/search/learning/booster -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/mustang/servlets -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/mustang/servlets -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/superroot/corpusroot/web/extras -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/superroot/corpusroot/web/extras -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/tv/showings/frontend/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/tv/showings/frontend/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/index/personalizedsearch/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/index/personalizedsearch/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/stats/relatedvideos/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/stats/relatedvideos/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/weboftrust/prose/data_analysis/video -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/weboftrust/prose/data_analysis/video -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/sms/frontend/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/sms/frontend/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/adsearch/servlets -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/adsearch/servlets -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/experiments/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/experiments/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/messenger/adsnapshots -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/messenger/adsnapshots -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/messenger/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/messenger/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/proto/creatives -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/proto/creatives -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/chubby/lib/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/chubby/lib/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/chubby/svelte/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/chubby/svelte/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/classifier/phil/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/classifier/phil/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/shoppinglist/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/shoppinglist/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/community/introductions/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/community/introductions/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/cat2/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/cat2/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/analysis/javascript -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/analysis/javascript -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/sitemaps/common -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/sitemaps/common -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/sitemaps/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/crawler/sitemaps/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/enterprise/onebox/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/enterprise/onebox/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/enterprise/superroot/ent_search_params -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/enterprise/superroot/ent_search_params -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/gfs/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/gfs/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googlebase/mustang/protos -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googlebase/mustang/protos -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googledata/html/templates -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/segmenter/common -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/segmenter/common -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/mustang/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/mustang/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/search/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/image/search/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/learning/rephil/api -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/learning/rephil/api -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/frontend/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/frontend/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/geomap_server/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/geomap_server/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/mustang/servlet -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/mustang/servlet -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/oblocalsearch/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/oblocalsearch/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/waldo/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/waldo/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/waldo/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/waldo/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/wireless/mobilegw -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/wireless/mobilegw -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/maps/soprano/client -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/maps/soprano/client -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/aggregation/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/aggregation/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www/navboost -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www/navboost -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/commerce -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/commerce -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/mobile -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/mobile -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/querycount -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/querycount -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/video -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets/video -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/proto/xml2proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/proto/xml2proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/news/frontend/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/news/frontend/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/news/personalization/nps -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/news/personalization/nps -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/data/docinfo -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/data/docinfo -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/metadata/ids -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/metadata/ids -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/scholar/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/scholar/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/showtimes/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/showtimes/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/weather/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/weather/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/persist/framework/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/persist/framework/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/gws_ui/profiles -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/gws_ui/profiles -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/recommend/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/recommend/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/recommend/util -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/recommend/util -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/zipit/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/zipit/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/zipit/st -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/zipit/st -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/chameleon/interface -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/chameleon/interface -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/labels/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/labels/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/local/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/local/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/manybox/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/manybox/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/manybox/video -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/manybox/video -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/prose/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/prose/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/sitemap/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/sitemap/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/mustang/servlets -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/mustang/servlets -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/movies -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ratings/reviews/movies -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/docchart/extraction -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/docchart/extraction -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universal/naming/constants -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universal/naming/constants -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universal/naming/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universal/naming/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/util/encryption/docid -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/util/encryption/docid -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/cdb/common -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/cdb/common -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/index/builder -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/index/builder -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/onebox/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/onebox/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/weboftrust/prose/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/weboftrust/prose/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/frontend/modules -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/frontend/modules -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/feature_tabs -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/feature_tabs -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/match_criteria -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/match_criteria -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/one_google -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/one_google -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/url_factory -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/util/url_factory -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/mmp/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/mmp/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/mobile_restrict/indexer -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/mobile_restrict/indexer -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/msisdndictionary/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/msisdndictionary/proto -iquote third_party/Inso/common/unix -Ithird_party/Inso/common/unix -iquote third_party/openssl/gcc-3.4-glibc-2.2.2-piii-linux-dbg/include -Ithird_party/openssl/gcc-3.4-glibc-2.2.2-piii-linux-dbg/include -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/adsearch -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/adsearch -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/clickencoding -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/clickencoding -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/demographics -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/demographics -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/events -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/events -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/experiments -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/experiments -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/phil -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/phil -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/promos -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/promos -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/snapshot -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/snapshot -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/strategy -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/strategy -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/supermessenger -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ads/supermessenger -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/attributesearch/gwsbackend -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/attributesearch/gwsbackend -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blog/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blog/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blogsearch/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/blogsearch/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/borg/borgletlib -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/borg/borgletlib -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/cacheserving/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/cacheserving/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/caribou/ads -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/caribou/ads -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/offer -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/offer -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/commerce/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/vertical -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/contentads/vertical -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/coupons/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/coupons/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/annotations -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/annotations -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/annotations2 -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/annotations2 -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/metadata -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/metadata -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/search -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie/search -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/directory/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/directory/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/docserving/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/docserving/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/fileset -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/fileset -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/logging -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/logging -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/sstablefile -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/file/sstablefile -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/quoteserver -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/finance/quoteserver -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/froogle/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/froogle/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/froogle/currency -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/froogle/currency -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/data -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/data -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/insclient -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/insclient -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/insfriend -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gaia/insfriend -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/geostore/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/geostore/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/groups2/browsefe -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/groups2/browsefe -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/config -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/config -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/gws -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/gws -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/langenc_detect -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/langenc_detect -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/localization -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/i18n/localization -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/igoogle/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/igoogle/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexer/perdocdata -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexer/perdocdata -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexserving/elephant_info -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexserving/elephant_info -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexserving/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexserving/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/datatype -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/datatype -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/showmyhistory -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/kansas/showmyhistory -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/linkserver/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/linkserver/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/i18n -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/i18n -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/kml -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/localsearch/kml -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/country -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/location/country -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/bigindex -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/bigindex -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/eventid -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/eventid -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/gws -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/gws -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/java -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/java -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/maps -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/maps -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/superroot -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/superroot -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/transit -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/transit -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/zwieback -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs/zwieback -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/maps/wiki_lite -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/maps/wiki_lite -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/music/clients -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/music/clients -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/music/images -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/music/images -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_querycount -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_querycount -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/repos_www -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang/servlets -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/ecatcher -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/ecatcher -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/httpsconnection -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/httpsconnection -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/sslagent -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/sslagent -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/util -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/net/util -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/nlp/ngrams -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/nlp/ngrams -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/acqbase -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/acqbase -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/mustangproto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/ocean/mustangproto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/glossary -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox/glossary -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/partnerservices/distributiontracking -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/partnerservices/distributiontracking -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/profiles -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/profiles -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/util -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/personalization/util -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/premiumcontent/common -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/premiumcontent/common -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/premiumcontent/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/premiumcontent/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/production/cert_auth -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/production/cert_auth -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/navboost -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/navboost -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/rescoring -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/rescoring -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/twiddler -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/quality/twiddler -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/queryrefinement/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/queryrefinement/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/queryrewrite/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/queryrewrite/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/docchart -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/repository/docchart -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/reviews/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/reviews/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/science_search/citation -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/science_search/citation -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/security/keymaster -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/security/keymaster -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/security/loas -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/security/loas -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/logexpansion -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/logexpansion -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/predictionmodel -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/predictionmodel -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/server -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/smartass/server -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sortedmap/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sortedmap/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/spelling/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/spelling/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sstable/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sstable/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/stats/io -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/stats/io -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/structuredsearch/client -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/structuredsearch/client -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/superroot/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/superroot/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/third_party/libidn -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/third_party/libidn -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/transportation/dateparser -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/transportation/dateparser -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/transportation/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/transportation/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universalsearch/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/universalsearch/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/urlscheduler/rpc -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/urlscheduler/rpc -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/util/callback -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/util/callback -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/captioncrunch -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/captioncrunch -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/personalization -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/personalization -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/vcsdb -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/video/vcsdb -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/frontend -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webserver/frontend -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webutil/http -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webutil/http -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webutil/url -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/webutil/url -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/handset -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/wireless/handset -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/zwieback/proto -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/zwieback/proto -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/openssl -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/openssl -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/stl -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/stl -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/zlib -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/zlib -iquote third_party/SpiderMonkey/src -Ithird_party/SpiderMonkey/src -iquote third_party/htm/include -Ithird_party/htm/include -iquote third_party/icu/current -Ithird_party/icu/current -iquote third_party/pcre/pcre-6.7 -Ithird_party/pcre/pcre-6.7 -iquote third_party/zlib/v1_2_3 -Ithird_party/zlib/v1_2_3 -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/base -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/base -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/borg -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/borg -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/calculator -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/calculator -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/daffie -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googlebot -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/googlebot -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/gws -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexer -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/indexer -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/logs -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/mustang -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/onebox -iquote obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sortedmap -Iobj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/genfiles/sortedmap -iquote . -Wno-non-virtual-dtor -isystem obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/stl/third_party/stl -isystem obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/includes/third_party/stl -Wno-deprecated -Woverloaded-virtual -ftemplate-depth-40 -c gws/gws-main.cc -o obj/gcc-4.1.1-glibc-2.2.2-piii-linux-g0-dbg/bin/gws/gws-main.o
diff --git a/include_server/test_data/i_am_perhaps_a_directory.h/empty_file b/include_server/test_data/i_am_perhaps_a_directory.h/empty_file
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/include_server/test_data/i_am_perhaps_a_directory.h/empty_file
diff --git a/include_server/test_data/include_include_next_foo.h b/include_server/test_data/include_include_next_foo.h
new file mode 100755
index 0000000..f7469fe
--- /dev/null
+++ b/include_server/test_data/include_include_next_foo.h
@@ -0,0 +1 @@
+#include "include_next_foo.h"
diff --git a/include_server/test_data/maps/foo.tpl.varnames.h b/include_server/test_data/maps/foo.tpl.varnames.h
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/include_server/test_data/maps/foo.tpl.varnames.h
@@ -0,0 +1 @@
+
diff --git a/include_server/test_data/more_macros.c b/include_server/test_data/more_macros.c
new file mode 100644
index 0000000..28dd506
--- /dev/null
+++ b/include_server/test_data/more_macros.c
@@ -0,0 +1,14 @@
+
+#define TEMPLATE_VARNAME(_filename_) \
+ AS_STRING\
+(maps/_filename_.tpl.varnames.h)
+
+#define ILLFORMED(_filename_,(x)) \
+ AS_STRING(maps/_filename_.tpl.varnames.h, NOTHANDLED(_filename_))
+
+// #define BEHINDCOMMENT(x) x + x
+
+#define AS_STRING(x) AS_STRING_INTERNAL(x)
+#define AS_STRING_INTERNAL(x) #x
+
+#include TEMPLATE_VARNAME(foo)
diff --git a/include_server/test_data/p1.h b/include_server/test_data/p1.h
new file mode 100755
index 0000000..8b13789
--- /dev/null
+++ b/include_server/test_data/p1.h
@@ -0,0 +1 @@
+
diff --git a/include_server/test_data/parse.c b/include_server/test_data/parse.c
new file mode 100644
index 0000000..956d282
--- /dev/null
+++ b/include_server/test_data/parse.c
@@ -0,0 +1,8 @@
+#includenext "incnext.h"
+#include <angle.c>
+#include "quote.c"
+ # include \
+ /* comment */ "quote1\
+.c"
+#include "foo.h" // in dfoo
+
diff --git a/include_server/test_data/stat_triggers.c b/include_server/test_data/stat_triggers.c
new file mode 100644
index 0000000..5c32f98
--- /dev/null
+++ b/include_server/test_data/stat_triggers.c
@@ -0,0 +1 @@
+#include "stat_triggers.h"
diff --git a/include_server/test_data/stat_triggers.h b/include_server/test_data/stat_triggers.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/include_server/test_data/stat_triggers.h
diff --git a/include_server/test_data/symlink_farm/abc_post.c b/include_server/test_data/symlink_farm/abc_post.c
new file mode 120000
index 0000000..4fcd3a9
--- /dev/null
+++ b/include_server/test_data/symlink_farm/abc_post.c
@@ -0,0 +1 @@
+../abc_post.c \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/abc_pre.c b/include_server/test_data/symlink_farm/abc_pre.c
new file mode 120000
index 0000000..4e864a5
--- /dev/null
+++ b/include_server/test_data/symlink_farm/abc_pre.c
@@ -0,0 +1 @@
+../abc_pre.c \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/computed_includes.c b/include_server/test_data/symlink_farm/computed_includes.c
new file mode 120000
index 0000000..2a694d0
--- /dev/null
+++ b/include_server/test_data/symlink_farm/computed_includes.c
@@ -0,0 +1 @@
+../computed_includes.c \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/dbar b/include_server/test_data/symlink_farm/dbar
new file mode 120000
index 0000000..a261f21
--- /dev/null
+++ b/include_server/test_data/symlink_farm/dbar
@@ -0,0 +1 @@
+../dbar \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/dfoo b/include_server/test_data/symlink_farm/dfoo
new file mode 120000
index 0000000..97fa2d0
--- /dev/null
+++ b/include_server/test_data/symlink_farm/dfoo
@@ -0,0 +1 @@
+../dfoo \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/foo b/include_server/test_data/symlink_farm/foo
new file mode 100644
index 0000000..cd9390c
--- /dev/null
+++ b/include_server/test_data/symlink_farm/foo
@@ -0,0 +1 @@
+#include "sub_farm/link_to_dotdot_dotdot_dfoo_include_dotdot_foo"
diff --git a/include_server/test_data/symlink_farm/p1.h b/include_server/test_data/symlink_farm/p1.h
new file mode 120000
index 0000000..58fa3b8
--- /dev/null
+++ b/include_server/test_data/symlink_farm/p1.h
@@ -0,0 +1 @@
+../p1.h \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/parse.c b/include_server/test_data/symlink_farm/parse.c
new file mode 120000
index 0000000..cf5775d
--- /dev/null
+++ b/include_server/test_data/symlink_farm/parse.c
@@ -0,0 +1 @@
+../parse.c \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/sub_farm/link_to_dotdot_dotdot_dfoo_include_dotdot_foo b/include_server/test_data/symlink_farm/sub_farm/link_to_dotdot_dotdot_dfoo_include_dotdot_foo
new file mode 120000
index 0000000..3f08d7c
--- /dev/null
+++ b/include_server/test_data/symlink_farm/sub_farm/link_to_dotdot_dotdot_dfoo_include_dotdot_foo
@@ -0,0 +1 @@
+../../dfoo/include_dotdot_foo \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/test_directory_probing.c b/include_server/test_data/symlink_farm/test_directory_probing.c
new file mode 120000
index 0000000..0af39d3
--- /dev/null
+++ b/include_server/test_data/symlink_farm/test_directory_probing.c
@@ -0,0 +1 @@
+../test_directory_probing.c \ No newline at end of file
diff --git a/include_server/test_data/symlink_farm/test_include_next b/include_server/test_data/symlink_farm/test_include_next
new file mode 120000
index 0000000..9aa56db
--- /dev/null
+++ b/include_server/test_data/symlink_farm/test_include_next
@@ -0,0 +1 @@
+../test_include_next \ No newline at end of file
diff --git a/include_server/test_data/test_computed_includes/helper.c b/include_server/test_data/test_computed_includes/helper.c
new file mode 100644
index 0000000..02221a6
--- /dev/null
+++ b/include_server/test_data/test_computed_includes/helper.c
@@ -0,0 +1 @@
+#include INCL
diff --git a/include_server/test_data/test_computed_includes/incl.h b/include_server/test_data/test_computed_includes/incl.h
new file mode 100644
index 0000000..1e29313
--- /dev/null
+++ b/include_server/test_data/test_computed_includes/incl.h
@@ -0,0 +1 @@
+#define MSG "hello"
diff --git a/include_server/test_data/test_computed_includes/inclA.h b/include_server/test_data/test_computed_includes/inclA.h
new file mode 100644
index 0000000..43ad022
--- /dev/null
+++ b/include_server/test_data/test_computed_includes/inclA.h
@@ -0,0 +1 @@
+#define MSG "hello A"
diff --git a/include_server/test_data/test_computed_includes/src.c b/include_server/test_data/test_computed_includes/src.c
new file mode 100644
index 0000000..a361343
--- /dev/null
+++ b/include_server/test_data/test_computed_includes/src.c
@@ -0,0 +1,9 @@
+#define INCL "incl.h"
+#include "helper.c"
+
+#include<stdio.h>
+int main() {
+ printf(MSG);
+ printf("\n");
+ return 0;
+}
diff --git a/include_server/test_data/test_computed_includes/srcA.c b/include_server/test_data/test_computed_includes/srcA.c
new file mode 100644
index 0000000..075a898
--- /dev/null
+++ b/include_server/test_data/test_computed_includes/srcA.c
@@ -0,0 +1,9 @@
+#define INCL "inclA.h"
+#include "helper.c"
+#include <stdio.h>
+
+int main() {
+ printf(MSG);
+ printf("\n");
+ return 0;
+}
diff --git a/include_server/test_data/test_directory_probing.c b/include_server/test_data/test_directory_probing.c
new file mode 100644
index 0000000..edadb76
--- /dev/null
+++ b/include_server/test_data/test_directory_probing.c
@@ -0,0 +1,4 @@
+// For the include: should not be distracted by the directory
+// i_am_perhaps_a_directory.h in the present directory (test_data).
+
+#include "i_am_perhaps_a_directory.h"
diff --git a/include_server/test_data/test_include_next/bar/x.h b/include_server/test_data/test_include_next/bar/x.h
new file mode 100755
index 0000000..8f6876d
--- /dev/null
+++ b/include_server/test_data/test_include_next/bar/x.h
@@ -0,0 +1,3 @@
+Now bar/x.h
+#include_next "x.h"
+
diff --git a/include_server/test_data/test_include_next/bar/y.h b/include_server/test_data/test_include_next/bar/y.h
new file mode 100755
index 0000000..f44afac
--- /dev/null
+++ b/include_server/test_data/test_include_next/bar/y.h
@@ -0,0 +1,3 @@
+Now bar/y.h
+#include_next "y.h"
+
diff --git a/include_server/test_data/test_include_next/baz/start_x.c b/include_server/test_data/test_include_next/baz/start_x.c
new file mode 100755
index 0000000..44a0921
--- /dev/null
+++ b/include_server/test_data/test_include_next/baz/start_x.c
@@ -0,0 +1,2 @@
+Now baz/start_x.h
+#include "x.h"
diff --git a/include_server/test_data/test_include_next/baz/start_y.c b/include_server/test_data/test_include_next/baz/start_y.c
new file mode 100755
index 0000000..1e6a9c8
--- /dev/null
+++ b/include_server/test_data/test_include_next/baz/start_y.c
@@ -0,0 +1,2 @@
+Now baz/start_y.h
+#include "../foo/y.h"
diff --git a/include_server/test_data/test_include_next/baz/x.h b/include_server/test_data/test_include_next/baz/x.h
new file mode 100755
index 0000000..69218e4
--- /dev/null
+++ b/include_server/test_data/test_include_next/baz/x.h
@@ -0,0 +1,3 @@
+Now in baz/x.h
+#include_next "x.h"
+
diff --git a/include_server/test_data/test_include_next/baz/y.h b/include_server/test_data/test_include_next/baz/y.h
new file mode 100755
index 0000000..50ca3e8
--- /dev/null
+++ b/include_server/test_data/test_include_next/baz/y.h
@@ -0,0 +1,6 @@
+Now baz/y.h
+#ifndef baz_y_h
+ #define baz_y_h
+ #include y.h
+#endif
+
diff --git a/include_server/test_data/test_include_next/biz/x.h b/include_server/test_data/test_include_next/biz/x.h
new file mode 100755
index 0000000..fcb7a34
--- /dev/null
+++ b/include_server/test_data/test_include_next/biz/x.h
@@ -0,0 +1 @@
+Now biz/x.h
diff --git a/include_server/test_data/test_include_next/foo/x.h b/include_server/test_data/test_include_next/foo/x.h
new file mode 100755
index 0000000..c9be0ed
--- /dev/null
+++ b/include_server/test_data/test_include_next/foo/x.h
@@ -0,0 +1,2 @@
+Now: foo/x.h
+#include_next "x.h"
diff --git a/include_server/test_data/test_include_next/foo/y.h b/include_server/test_data/test_include_next/foo/y.h
new file mode 100755
index 0000000..965bf4e
--- /dev/null
+++ b/include_server/test_data/test_include_next/foo/y.h
@@ -0,0 +1,2 @@
+Now: foo/y.h
+#include_next "y.h"