On 1/23/25 17:35, Elliott Sales de Andrade wrote:
On Thu, Jan 23, 2025 at 2:00 PM Didier Fabert <[email protected]> wrote:Hi there, I try to fix a ftbfs for netdata package and I don't know where exactly was the problem. I enabled 2 flags: - # Workaround for Missing build-id on go.d.plugin %global _missing_build_ids_terminate_build 0 - # We use some plugins which need suid grants %global _hardened_build 1 In spec file, binaries are marked to be installed in %{_sbindir} and it's confirmed by log Build.log -- Installing: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/sbin/netdata -- Installing: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/sbin/netdata-claim.sh -- Installing: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/sbin/netdatacli -- Installing: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/sbin/log2journal -- Installing: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/sbin/systemd-cat-native But in the end of the build log, script search those binaries in %{_bindir} + /usr/bin/add-determinism --brp -j8 /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT Scanned 324 directories and 1813 files, processed 18 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors But RPM check process wants them to be in %{_bindir} Processing files: netdata-2.2.0-1.fc42.x86_64 error: File not found: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/bin/netdata error: File not found: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/bin/netdata-claim.sh error: File not found: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/bin/netdatacli error: File not found: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/bin/log2journal error: File not found: /builddir/build/BUILD/netdata-2.2.0-build/BUILDROOT/usr/bin/systemd-cat-native Did I miss something (missing global declaration, flag, etc ...)It appears that netdata hard-codes `usr/sbin` for installation, e.g., https://github.com/netdata/netdata/blob/master/CMakeLists.txt#L99 Better practice would be to use GNUInstallDirs https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html for which there is a PR already, though not yet merged: https://github.com/netdata/netdata/pull/17308 However, looking at the build log, I'm not sure that the %cmake macro actually sets some of these (specifically, I don't see `CMAKE_INSTALL_SBINDIR` in the log.) This may be something missed in the change that Fabio posted earlier (e.g., the Meson macros do set the equivalents there.)
I filed https://src.fedoraproject.org/rpms/cmake/pull-request/44 to set the SBINDIR macros.
-- Orion Poplawski he/him/his - surely the least important thing about me IT Systems Manager 720-772-5637 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane [email protected] Boulder, CO 80301 https://www.nwra.com/ -- _______________________________________________ devel mailing list -- [email protected] To unsubscribe send an email to [email protected] Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/[email protected] Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
