Drop superbuild instructions

In the interest of not providing too many different ways to build
gRPC in our official instructions, we are dropping the section describing
how to do a "superbuild" (ExternalProject_Add). We can still point to the
example and distribtest if someone is curious how to do this.
pull/21467/head
Zack Galbreath 5 years ago
parent 684aa48063
commit d51ef5feca
  1. 14
      src/cpp/README.md

@ -89,20 +89,6 @@ to your project as a
You can then add it to your CMake project with `add_subdirectory()`.
[Example](../../examples/cpp/helloworld/CMakeLists.txt)
### ExternalProject
Another way to automatically download and build gRPC is to use CMake's
[ExternalProject module](https://cmake.org/cmake/help/latest/module/ExternalProject.html)
in a technique commonly known as a "superbuild". A superbuild is an outer,
"wrapper" build whose only purpose is to build other projects.
A superbuild is implemented as a sequence of `ExternalProject_Add()` calls.
ExternalProject is different from FetchContent in that gRPC's source code will
be downloaded at build time, not configure time. This means that we cannot use
`add_subdirectory()` to build gRPC. Instead, we use the `ExternalProject_Add()`
command to build gRPC, any other dependencies you may need, and your actual
project itself.
[Example](../../examples/cpp/helloworld/cmake_externalproject/CMakeLists.txt)
### Support system-installed gRPC
If your project builds gRPC you should still consider the case where a user

Loading…
Cancel
Save