protocolbuffers/protobuf
GitHub で見るDefine cmake target as PIC if BUILD_SHARED_LIBS
Open
#10,828 opened on 2022年10月27日
c++cmakehelp wanted
Repository metrics
- Stars
- (71,223 stars)
- PR merge metrics
- (平均マージ 2d 11h) (30d で 185 merged PRs)
説明
What language does this apply to? Generated C/C++ code and the specific cmake target.
Describe the problem you are trying to solve. When I link to the generated cmake target and set the BUILD_SHARED_LIBS variable globally I get linker errors because the protobuf created code is not relocateable.
Describe the solution you'd like In my user code I use something like the following:
# ensure relocateable code
if (BUILD_SHARED_LIBS)
set_property(TARGET ${PROTO_TARGET} PROPERTY POSITION_INDEPENDENT_CODE TRUE)
endif ()
But this could be integrated in the cmake part of this project directly.
Describe alternatives you've considered It's not a big problem. But may be helpful for people that do not have that much cmake experience.
Additional context Nothing.