protobuf icon indicating copy to clipboard operation
protobuf copied to clipboard

Bazel file exposes internal headers

Open gjasny opened this issue 5 years ago • 0 comments

Hello,

Today while trying to build ViSQOL I noticed that this project uses internal header files of protobuf.

When you build and install protobuf with CMake (or autotools) some headers that are considered internal are not installed. But the Bazel BUILD file unconditionally exports all of the *.h files:

    hdrs = glob([
        "src/google/protobuf/**/*.h",
        "src/google/protobuf/**/*.inc",
    ]),

Because ViSQOL uses the following internal headers:

src/google/protobuf/stubs/status_macros.h
src/google/protobuf/stubs/statusor.h

It cannot be build against a protobuf that was build and installed with CMake.

I kindly ask you to do either of the following:

  • Install all of the *.h files with CMake / autoconf and don't consider some internal
  • Remove the internal headers from the Bazel library targets

Thanks, Gregor

gjasny avatar Apr 04 '20 13:04 gjasny