title: Dependencies issue on googletest with cmake: gtest/gtest.h No such file or directory
body: <p>Bonjour,</p>
  
  <p>I am currently working a bit on CMake in order to use ExternalProject_add at work. And as I want to test googletest, I try to test both. I encounter an issue during the compilation of my unit test code.</p>
  
  <p>So I just follow the README of the googletest project on github: <a href="https://github.com/google/googletest/blob/master/googletest/README.md#incorporating-into-an-existing-cmake-project" rel="noreferrer">https://github.com/google/googletest/blob/master/googletest/README.md#incorporating-into-an-existing-cmake-project</a>.</p>
  
  <p>Here is my project tree:</p>
  
  <pre><code>test_cpp/
  ├── build
  ├── CMakeLists.txt
  ├── CMakeLists.txt.in
  ├── inc
  │   └── foo.h
  ├── src
  │   └── foo.c
  └── test
      └── test_foo.c
  </code></pre>
  
  <p>My test_foo.c just test a function in foo that round a double:</p>
  
  <pre><code>#include "gtest/gtest.h"
  #include "foo.h"
  
  TEST(AddTest, roundValue)
  {
          ASSERT_EQ(roundValue(2.6),3);
  }
  
  int main(int argc, char **argv)
  {
          ::testing::InitGoogleTest(&amp;argc,argv);
          return RUN_ALL_TESTS();
  }
  </code></pre>
  
  <p>Here it the result of the cmake command:</p>
  
  <pre><code>axis@axis-mad:~/Work/test_cpp/build$ cmake ..
  -- The C compiler identification is GNU 5.4.0
  -- The CXX compiler identification is GNU 5.4.0
  -- Check for working C compiler: /usr/bin/cc
  -- Check for working C compiler: /usr/bin/cc -- works
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working CXX compiler: /usr/bin/c++
  -- Check for working CXX compiler: /usr/bin/c++ -- works
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Found Git: /usr/bin/git (found version "2.7.4")
  -- Configuring done
  -- Generating done
  -- Build files have been written to:     /home/axis/Work/test_cpp/build/googletest-download
  Scanning dependencies of target googletest
  [ 11%] Creating directories for 'googletest'
  [ 22%] Performing download step (git clone) for 'googletest'
  Clonage dans 'googletest-src'...
  Déjà sur 'master'
  Votre branche est à jour avec 'origin/master'.
  [ 33%] No patch step for 'googletest'
  [ 44%] Performing update step for 'googletest'
  Déjà sur 'master'
  Votre branche est à jour avec 'origin/master'.
  [ 55%] No configure step for 'googletest'
  [ 66%] No build step for 'googletest'
  [ 77%] No install step for 'googletest'
  [ 88%] No test step for 'googletest'
  [100%] Completed 'googletest'
  [100%] Built target googletest
  MESSAGE CMAKE_BINARY_DIR: /home/axis/Work/test_cpp/build
  -- Found PythonInterp: /usr/bin/python (found version "2.7.12")
  -- Looking for include file pthread.h
  -- Looking for include file pthread.h - found
  -- Looking for pthread_create
  -- Looking for pthread_create - not found
  -- Looking for pthread_create in pthreads
  -- Looking for pthread_create in pthreads - not found
  -- Looking for pthread_create in pthread
  -- Looking for pthread_create in pthread - found
  -- Found Threads: TRUE  
  -- Test case source files/home/axis/Work/test_cpp/test/test_foo.c
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /home/axis/Work/test_cpp/build
  </code></pre>
  
  <p>CMake downloads correctly googletest. The makefile and the dependencies seem also correct but I have this error at the include of gtest/gtest.h:</p>
  
  <pre><code>axis@axis-mad:~/Work/test_cpp/build$ make
  Scanning dependencies of target foo
  [ 25%] Building C object CMakeFiles/foo.dir/src/foo.c.o
  Linking C shared library libfoo.so
  [ 25%] Built target foo
  Scanning dependencies of target gtest
  [ 50%] Building CXX object googletest-build/googlemock/gtest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
  Linking CXX static library libgtest.a
  [ 50%] Built target gtest
  Scanning dependencies of target gtest_main
  [ 75%] Building CXX object googletest-build/googlemock/gtest/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o
  Linking CXX static library libgtest_main.a
  [ 75%] Built target gtest_main
  Scanning dependencies of target foo_test
  [100%] Building C object CMakeFiles/foo_test.dir/test/test_foo.c.o
  In file included from /home/axis/Work/test_cpp/test/test_foo.c:1:0:
  /home/axis/Work/test_cpp/build/googletest-src/googletest/include/gtest/gtest.h:54:18: fatal error: limits: No such file or directory
  compilation terminated.
  CMakeFiles/foo_test.dir/build.make:54 : recipe for target « CMakeFiles/foo_test.dir/test/test_foo.c.o » failed
  make[2]: *** [CMakeFiles/foo_test.dir/test/test_foo.c.o] Error 1
  CMakeFiles/Makefile2:97 : recipe for target « CMakeFiles/foo_test.dir/all » failed
  make[1]: *** [CMakeFiles/foo_test.dir/all] Erreur 2
  Makefile:123 : recipe for target « all » failed
  make: *** [all] Error 2
  </code></pre>
  
  <p>Here is my CMakeLists.txt file:</p>
  
  <pre><code>cmake_minimum_required(VERSION 2.8.9)
  project (foo)
  
  ## Dependencies
  include(ExternalProject)
  
  # Use CMake to download GoogleTest as part of the build's configure step
  # Download and unpack googletest at configure time
  configure_file(CMakeLists.txt.in googletest-download/CMakeLists.txt)
  execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" .
    RESULT_VARIABLE result
    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/googletest-download )
  if(result)
    message(FATAL_ERROR "CMake step for googletest failed: ${result}")
  endif()
  execute_process(COMMAND ${CMAKE_COMMAND} --build .
    RESULT_VARIABLE result
    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/googletest-download )
  if(result)
    message(FATAL_ERROR "Build step for googletest failed: ${result}")
  endif()
  
  # Add googletest directly to our build. This defines
  # the gtest and gtest_main targets.
  add_subdirectory(${CMAKE_BINARY_DIR}/googletest-src
                   ${CMAKE_BINARY_DIR}/googletest-build
                   EXCLUDE_FROM_ALL)
  
  # The gtest/gtest_main targets carry header search path
  # dependencies automatically when using CMake 2.8.11 or
  # later. Otherwise we have to add them here ourselves.
  if (CMAKE_VERSION VERSION_LESS 2.8.11)
    include_directories("${gtest_SOURCE_DIR}/include")
  endif()
  
  ## Main Project
  include_directories(inc)
  
  file(GLOB SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.c)
  add_library(foo SHARED ${SOURCES})
  
  ## Test
  
  enable_testing()
  set(PROJECT_TEST_NAME ${PROJECT_NAME}_test)
  
  file(GLOB TEST_SRC_FILES ${CMAKE_CURRENT_SOURCE_DIR}/test/*.c)
  message(STATUS "Test case source files" ${TEST_SRC_FILES})
  
  add_executable(${PROJECT_TEST_NAME} ${TEST_SRC_FILES})
  target_link_libraries(${PROJECT_TEST_NAME}
      foo
      gtest_main
  )
  add_test(NAME ${PROJECT_TEST_NAME} COMMAND ${PROJECT_TEST_NAME})
  </code></pre>
  
  <p>I tried to use include_directories with the full path of my googletest include dir but with no much result. So I am a bit out of idea</p>
  
  <p>regards</p>