Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
make-dist: patch rapidjson to fix FTBFS on GCC 14
Without this, the build fails on GCC 14: [ 3456s] /home/abuild/rpmbuild/BUILD/ceph-16.2.15-68-gbb20a17289a/src/rapidjson/include/rapidjson/document.h: In member function ‘rapidjson::GenericStringRef<CharType>& rapidjson::GenericStringRef<CharType>::operator=(const rapidjson::GenericStringRef<CharType>&)’: [ 3456s] /home/abuild/rpmbuild/BUILD/ceph-16.2.15-68-gbb20a17289a/src/rapidjson/include/rapidjson/document.h:319:82: error: assignment of read-only member ‘rapidjson::GenericStringRef<CharType>::length’ [ 3456s] 319 | GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; } [ 3456s] | ~~~~~~~^~~~~~~~~~~~ [ 3456s] make[2]: *** [src/rgw/CMakeFiles/rgw_common.dir/build.make:1774: src/rgw/CMakeFiles/rgw_common.dir/rgw_crypt.cc.o] Error 1 [ 3456s] make[1]: *** [CMakeFiles/Makefile2:8011: src/rgw/CMakeFiles/rgw_common.dir/all] Error 2 The copy assignment operator was disabled in upstream rapidjson a very, very, very long time ago: Tencent/rapidjson@862c39b This method of patching a submodule is pretty heinous, even for me. The alternative would be to fork ceph's (very) old rapidjson to the SUSE org, apply this path to that fork, and update ceph's .gitmodules file to point to that instead of the ceph one. Signed-off-by: Tim Serong <[email protected]>
- Loading branch information