This is an automated message from the Debian DFSG, Licensing & New
Packages Team.

The Debian NEW review of rocprofiler-register 7.2.4+ds-1~exp1 has been 
completed.

Decision: ACCEPTED
Reviewer: Andrew McMillan

Review comment:

Hi,

An LLM assisted review came up with the following issues.  Due to the somewhat 
bleeding edge nature of ROCm I wouldn't be at all surprised to find these are 
not actually issues, but maybe they are...  I'm pretty sure that first issue is 
wrong in some ways though :-)


1. [packaging] libhsa-runtime-dev build-dep is unneeded and amd64-only, making 
arm64/ppc64el
 unbuildable

 - Files: `debian/control:4-10`, `debian/control:21`
 - Evidence: `Build-Depends: debhelper-compat (= 14), architecture-is-64-bit, 
cmake, libhsa-runtime-dev (>= 7~), libgoogle-glog-dev, libfmt-dev`; 
`Architecture: amd64 arm64 ppc64el`. apt-cache shows `libhsa-runtime-dev ...  
Architecture: amd64` (both 7.2.4+dfsg-1~exp1 and 6.4.3+dfsg-5).
 - Problem: The library does not include any HSA header: source/ only declares 
`#pragma weak`/`extern` import symbols for hsa/hip/roctx 
(rocprofiler_register.cpp) and the HSA/HIP/ROCTx mock runtimes are built only 
from the tests tree, which is OFF by default (ROCPROFILER_REGISTER_BUILD_TESTS 
OFF, not enabled in rules). CMake links only fmt, glog, dl, stdc++fs, Threads. 
The dependency is therefore unused, and because libhsa-runtime-dev exists only 
for amd64 the Build-Depends are unsatisfiable on arm64 and ppc64el, so the two 
architectures declared in the `Architecture` field can never be built (a 
sponsor would reject the arch list / dep combination).
 - Fix: Drop `libhsa-runtime-dev (>= 7~)` from Build-Depends (it is not needed 
to compile or link), which also lets arm64/ppc64el satisfy the 
build-dependencies; reconsider whether ppc64el (not a ROCm target) belongs in 
`Architecture` at all.


2. [packaging] debian/watch: wrong GitHub template Project name and dead 
Filename-Mangle

 - Files: `debian/watch:4-19`
 - Evidence: `Project: rocm-system` (actual repo is `ROCm/rocm-systems`, masked 
only by the explicit `Source:` field); uscan verbose: `Parsing filenamemangle: 
s%.*/(?:[-_]?[Vv]?([0-9...]))%rocprofiler-register-$1.tar.gz%` then `Filename 
(filenamemangled) for downloaded file: rocm-7.2.4`.
 - Problem: The template's Owner/Project pair points at a non-existent 
repository and only works because `Source:` overrides it; the Filename-Mangle 
pattern cannot match the GitHub API/tarball URL once @ANY_VERSION@ expands to 
the version regex, so the intended `rocprofiler-register-<ver>.tar.gz` filename 
is never produced (uscan would save `rocm-7.2.4`). Purely cosmetic; the scan 
itself finds and compares rocm-7.2.4 correctly.
 - Fix: Use `Project: rocm-systems`, drop the now-redundant 
Source/Matching-Pattern overrides, and either fix the Filename-Mangle so it 
matches the version digits at the end of the mangled download URL or drop it.


Thanks!

Full review details: 
https://dfsg-new-queue.debian.org/reviews/rocprofiler-register

Reply via email to