cmake: Require that compiler support keyword '__thread'

GCC has supported thread local storage through the keyword '__thread' for
a long time. Clang has supported it since 3.2. If you use clang, this
patch effectively makes clang>=3.2 a requirement.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
core: Rewrite code for thread local storage

The original code in wcore_tinfo.c for handling thread local info was
a mess. It was my first time writing thread local code in a non-classroom
setting.  This patch rewrites wcore_tinfo.c, reducing the lines of code
from ~130 to ~50.

The rewrite does the following:
  - Require that the compiler support thread local storage through the
    keyword '__thread'. This allows us to remove use of pthread_key_t.
  - Remove all mutexes. There is no need to protect thread-local storage
    with mutexes.

Tested with `make check-func` on GLX, XEGL, and Wayland.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
cmake: Use real name of CMake vars when printing summary

When printing the configuration summary, use the real names of the CMake
variables. For example, print "CMAKE_C_FLAGS_DEBUG" instead of
"CFLAGS_debug".

This eliminates some confusion caused by the fake names.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
core: Add internal version of waffle_attrib_list funcs

For each function waffle_attrib_list_VERB, add function
wcore_attrib_list_VERB and implement the first with the second.  The
prepares us to remove internal calls to public API.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
core: Update unittests for wcore_attrib_list

Update waffle_attrib_list unittests to become wcore_attrib_list unittests.
If possible, we should avoid unittesting public API.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
core: Stop internally calling public attrib_list API

In wcore_config_attrs.c, replace all calls to public waffle_attrib_list
functions with internal wcore_attrib_list functions.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>