Package: khronos-opencl-clhpp Version: 3.0~2.0.15-1 Severity: normal Tags: patch User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu jammy ubuntu-patch
Dear maintainers, With the unfreezing of the Ubuntu archive for jammy and the import of the latest packages from Debian, khronos-opencl-clhpp was failing to build with unsatisfied build-dependencies, due to a loop between khronos-opencl-clhpp, khronos-opencl-headers, and ocl-icd: - khronos-opencl-clhpp build-depends ocl-icd-opencl-dev - ocl-icd-opencl-dev depends opencl-c-headers and opencl-clhpp-headers - current opencl-c-headers in unstable Breaks: previously available versions of opencl-clhpp-headers While this loop doesn't cause an ongoing problem once khronos-opencl-clhpp 3.0~2.0.15-1 is built, it still represents a bootstrap loop, which is suboptimal. Also, it seems strange that an arch: all headers-only package build-depends on other -dev packages. Digging in, I found that the build-dependency was because examples were being compiled (and subsequently run). While this is a good test to have for the package, the current implementation only ensures the tests are run on the architecture where arch: all packages are being built. Surely this would be better done as an autopkgtest, so that it runs for each architecture? (Also, btw, the implementation in debian/rules was testing the examples outside of the 'nocheck' test, which would cause problems for cross-builds, among other things) I have applied the attached patch in Ubuntu to break the bootstrap loop. While I could drop the patch once the bootstrap is finished, I think this, combined with adding the examples as an autopkgtest (which I have not implemented here - sorry) would be an overall improvement in robustness, so I'm submitting this bug for consideration. Thanks, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer https://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
diff -Nru khronos-opencl-clhpp-3.0~2.0.15/debian/control khronos-opencl-clhpp-3.0~2.0.15/debian/control --- khronos-opencl-clhpp-3.0~2.0.15/debian/control 2021-08-23 16:17:49.000000000 -0700 +++ khronos-opencl-clhpp-3.0~2.0.15/debian/control 2021-10-21 12:52:36.000000000 -0700 @@ -7,7 +7,6 @@ Build-Depends: debhelper-compat (= 13), opencl-c-headers (>= 3.0~2021.04.29), cmake, - ocl-icd-opencl-dev, doxygen, Rules-Requires-Root: no Standards-Version: 4.6.0 diff -Nru khronos-opencl-clhpp-3.0~2.0.15/debian/rules khronos-opencl-clhpp-3.0~2.0.15/debian/rules --- khronos-opencl-clhpp-3.0~2.0.15/debian/rules 2021-08-23 16:17:49.000000000 -0700 +++ khronos-opencl-clhpp-3.0~2.0.15/debian/rules 2021-10-21 12:50:32.000000000 -0700 @@ -7,13 +7,12 @@ dh $@ override_dh_auto_configure: - dh_auto_configure -- -DBUILD_TESTS=OFF -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH) + dh_auto_configure -- -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH) override_dh_auto_build: dh_auto_build -- all docs override_dh_auto_test: - dh_auto_test -- examples ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) $(MAKE) -C debian/t endif