cleanup cmake include directories
diff --git a/cmake/benchmark.cmake b/cmake/benchmark.cmake
index c628422..753dc06 100644
--- a/cmake/benchmark.cmake
+++ b/cmake/benchmark.cmake
@@ -20,14 +20,17 @@
       add_subdirectory(${BENCHMARK_ROOT_DIR} third_party/benchmark)
       if(TARGET benchmark)
           set(_gRPC_BENCHMARK_LIBRARIES benchmark)
+          set(_gRPC_BENCHMARK_INCLUDE_DIR "${BENCHMARK_ROOT_DIR}/include")
       endif()
   else()
       message(WARNING "gRPC_BENCHMARK_PROVIDER is \"module\" but BENCHMARK_ROOT_DIR is wrong")
   endif()
 elseif("${gRPC_BENCHMARK_PROVIDER}" STREQUAL "package")
-  find_package(benchmark)
+  find_package(benchmark REQUIRED)
   if(TARGET benchmark::benchmark)
     set(_gRPC_BENCHMARK_LIBRARIES benchmark::benchmark)
+    # extract the include dir from target's properties
+    get_target_property(_gRPC_BENCHMARK_INCLUDE_DIR benchmark::benchmark INTERFACE_INCLUDE_DIRECTORIES)
   endif()
   set(_gRPC_FIND_BENCHMARK "if(NOT benchmark_FOUND)\n  find_package(benchmark)\nendif()")
 endif()