merge 972908 957079 tags 972908 +patch tags 972908 +fixed-upstream thanks
Matthias Klose wrote in bug 957079:
The full build log can be found at: http://people.debian.org/~doko/logs/gcc10-20200225/ceph_14.2.7-1_unstable_gcc10.log The last lines of the build log are at the end of this report.
Unfortunately thanks to parallel building, said last lines miss the actual error. The actual error from the log seems to be.
/<<PKGBUILDDIR>>/src/common/bit_str.h:24:5: error: ‘uint64_t’ was not declared in this scope; did you mean ‘u_int64_t’? 24 | uint64_t bits, | ^~~~~~~~ | u_int64_t
Which is the same as later reported in 972908 Looking at the file in the upstream VCS, this issue appears to be fixed by https://github.com/ceph/ceph/commit/598c37296c944a056e4cd90e9f73c9e2fa6552fc If i'm reading the github ui correctly I believe it is saying that said commit is included in upstream releases since 15.1.0 . I added that commit as a patch to the Debian package and tried to build it. The build then failed with.
In file included from /ceph-14.2.9/src/librbd/api/PoolMetadata.cc:4: /ceph-14.2.9/src/librbd/api/PoolMetadata.h:21:54: error: ‘string’ in namespace ‘std’ does not name a type 21 | static int get(librados::IoCtx& io_ctx, const std::string &key, |
Again I was able to find an upstream commit https://github.com/ceph/ceph/commit/84f629e1b1c8b336b9ce6bcc2466010045e68e7e And again if i'm reading the github GUI correctly I believe it is saying that said commit is included in upstream releases since 15.1.0. I added it to the list of patches and set the build going again with debian/rules build, it succeeded so I then went to do a full start to finish build. At which point I discovered that the clean target wasn't cleaning up etc/sysctl/90-ceph-osd.conf so I fixed that. And after that I got a successful build, debdiff is attatched, no immediate intent to NMU. (note: debdiff produced some garbage due to symlinks in the upstream source , I thus filtered the debdiff with debdiff ceph_14.2.9-1.dsc ceph_14.2.9-1.1.dsc | filterdiff -p1 -i'debian/*' > ceph.debdiff )
diff -Nru ceph-14.2.9/debian/changelog ceph-14.2.9/debian/changelog --- ceph-14.2.9/debian/changelog 2020-04-24 20:43:18.000000000 +0000 +++ ceph-14.2.9/debian/changelog 2020-11-22 10:56:08.000000000 +0000 @@ -1,3 +1,11 @@ +ceph (14.2.9-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Apply upstream patches to fix missing includes (Closes: #957079) + * Clean up etc/sysctl/90-ceph-osd.conf in clean target. + + -- Peter Michael Green <plugw...@debian.org> Sun, 22 Nov 2020 10:56:08 +0000 + ceph (14.2.9-1) unstable; urgency=high * [dc4e7cf] Update upstream source from tag 'upstream/14.2.9' diff -Nru ceph-14.2.9/debian/patches/common-add-missing-include.patch ceph-14.2.9/debian/patches/common-add-missing-include.patch --- ceph-14.2.9/debian/patches/common-add-missing-include.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-14.2.9/debian/patches/common-add-missing-include.patch 2020-11-22 10:55:31.000000000 +0000 @@ -0,0 +1,35 @@ +commit 598c37296c944a056e4cd90e9f73c9e2fa6552fc +Author: Kefu Chai <kc...@redhat.com> +Date: Sun Jan 5 22:25:40 2020 +0800 + + common: add missing #include + + clang++-9.0.1 and libc++ require them to build + + Signed-off-by: Kefu Chai <kc...@redhat.com> + +diff --git a/src/common/PluginRegistry.h b/src/common/PluginRegistry.h +index 5a092def7c..62020a963a 100644 +--- a/src/common/PluginRegistry.h ++++ b/src/common/PluginRegistry.h +@@ -19,6 +19,7 @@ + #define CEPH_COMMON_PLUGINREGISTRY_H + + #include <map> ++#include <string> + #include "common/ceph_mutex.h" + + class CephContext; +diff --git a/src/common/bit_str.h b/src/common/bit_str.h +index c4c24f6a75..5271c8ffe1 100644 +--- a/src/common/bit_str.h ++++ b/src/common/bit_str.h +@@ -14,6 +14,8 @@ + #ifndef CEPH_COMMON_BIT_STR_H + #define CEPH_COMMON_BIT_STR_H + ++#include <cstdint> ++#include <iosfwd> + #include <functional> + + namespace ceph { diff -Nru ceph-14.2.9/debian/patches/librbd-add-missing-include.patch ceph-14.2.9/debian/patches/librbd-add-missing-include.patch --- ceph-14.2.9/debian/patches/librbd-add-missing-include.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-14.2.9/debian/patches/librbd-add-missing-include.patch 2020-11-22 10:56:08.000000000 +0000 @@ -0,0 +1,20 @@ +commit 84f629e1b1c8b336b9ce6bcc2466010045e68e7e +Author: Kaleb S. Keithley <kkeit...@redhat.com> +Date: Mon Jan 13 07:51:59 2020 -0500 + + librbd: added missing <string> include to PoolMetadata header + + Signed-off-by: Kaleb S. KEITHLEY <kkeit...@redhat.com> + +diff --git a/src/librbd/api/PoolMetadata.h b/src/librbd/api/PoolMetadata.h +index 977ce3638d..c0a8173596 100644 +--- a/src/librbd/api/PoolMetadata.h ++++ b/src/librbd/api/PoolMetadata.h +@@ -8,6 +8,7 @@ + #include "include/rados/librados_fwd.hpp" + + #include <map> ++#include <string> + + namespace librbd { + diff -Nru ceph-14.2.9/debian/patches/series ceph-14.2.9/debian/patches/series --- ceph-14.2.9/debian/patches/series 2020-04-24 20:43:18.000000000 +0000 +++ ceph-14.2.9/debian/patches/series 2020-11-22 10:56:08.000000000 +0000 @@ -14,3 +14,5 @@ add-option-to-disable-ceph-dencoder.patch riscv64-link-pthread.patch mds-purgequeue-use_uint64_t.patch +common-add-missing-include.patch +librbd-add-missing-include.patch diff -Nru ceph-14.2.9/debian/rules ceph-14.2.9/debian/rules --- ceph-14.2.9/debian/rules 2020-04-24 20:43:18.000000000 +0000 +++ ceph-14.2.9/debian/rules 2020-11-22 10:56:08.000000000 +0000 @@ -172,3 +172,6 @@ override_dh_gencontrol: dh_gencontrol ${skip_packages} +override_dh_auto_clean: + dh_auto_clean + rm -f etc/sysctl/90-ceph-osd.conf