%global debug_package %{nil} %global _build_id_links none Name: uke-kernel-migration-check Version: 7.3.3 Release: 100%{?dist} Summary: Original Fedora FastRPC readiness integration qualification License: MIT AND BSD-3-Clause URL: https://github.com/MCC45TR/uke-linux-hardware-support Source0: uke-fastrpc-notify-check-1.tar.xz Source1: uke-fastrpc-files-1.tar.xz ExclusiveArch: aarch64 BuildRequires: gcc-c++ coreutils diffutils binutils jq BuildRequires: pkgconfig(libsystemd) glibc-devel BuildRequires: fastrpc = 1.0.8-1.fc46 BuildRequires: fastrpc-devel = 1.0.8-1.fc46 %description Retain a native qualification receipt for existing Control session integration. The unmodified Fedora listener/stubs run with synthetic remote RPC operations. No device code, production configuration or new runtime provider is installed. %prep %setup -q -n uke-fastrpc-notify-check-1 sha256sum -c --strict --quiet SHA256SUMS mkdir files tar -xJf %{SOURCE1} -C files --strip-components=1 (cd files;sha256sum -c --strict --quiet SHA256SUMS) %build %set_build_flags g++ $CXXFLAGS $LDFLAGS -std=c++20 -Wall -Wextra -Werror -fPIC -shared \ -fno-exceptions -fno-rtti -fvisibility=hidden fastrpc-notify.cpp \ $(pkg-config --cflags --libs libsystemd) -ldl -o libuke-fastrpc-notify.so g++ $CXXFLAGS $LDFLAGS -std=c++20 -Wall -Wextra -Werror \ -Wl,--export-dynamic fastrpc-notify-test.cpp -ldl -o fixture g++ $CXXFLAGS $LDFLAGS -std=c++20 -Wall -Wextra -Werror \ -Ifiles/upstream -I/usr/include/fastrpc files/fastrpc-files.cpp -ldl -o files-fixture %check test ! -e /etc/senemos/kernel-update.conf test "$(rpm -q --qf '%%{VERSION}-%%{RELEASE}' fastrpc)" = 1.0.8-1.fc46 test "$(rpm -q --qf '%%{SHA256HEADER}' fastrpc)" = "$(jq -er .fedora.rpm_header_sha256 fastrpc-notify.json)" printf '%%s %%s\n' "$(jq -er .fedora.listener_elf_sha256 fastrpc-notify.json)" /usr/lib64/libadsp_default_listener.so.1.0.0 | sha256sum -c --strict --quiet - rpm -V fastrpc fastrpc-devel readelf -h libuke-fastrpc-notify.so | grep -q AArch64 readelf -d /usr/lib64/libadsp_default_listener.so.1.0.0 > original.dynamic ! grep -q SYMBOLIC original.dynamic objdump -d /usr/lib64/libadsp_default_listener.so.1.0.0 > original.disassembly grep -Eq 'bl[[:space:]]+[0-9a-f]+ ' original.disassembly grep -Eq 'bl[[:space:]]+[0-9a-f]+ ' original.disassembly bash fastrpc-notify-test.sh "$PWD/fixture" "$PWD/libuke-fastrpc-notify.so" printf '%%s %%s\n' "$(jq -er .fedora.library_elf_sha256 files/fastrpc-files.json)" /usr/lib64/libadsprpc.so.1.0.0 | sha256sum -c --strict --quiet - mkdir files-fixture-root timeout 15 ./files-fixture "$PWD/files-fixture-root" test ! -e files-fixture-root rpm -V fastrpc fastrpc-devel printf 'Original Fedora package/header/ELF and both PLT calls retained;RTLD_LOCAL native readiness qualification passed.\n' > %{buildroot}%{_datadir}/uke-kernel-migration-check/fastrpc-notify.txt printf 'Original Fedora file APIs passed with all ioctl syscalls denied.\n' >> %{buildroot}%{_datadir}/uke-kernel-migration-check/fastrpc-notify.txt %install install -d -m755 %{buildroot}%{_datadir}/uke-kernel-migration-check printf 'Native fixture qualification pending.\n' > %{buildroot}%{_datadir}/uke-kernel-migration-check/fastrpc-notify.txt %files %license files/LICENSE.fastrpc %doc files/FASTRPC-FILES.md files/files-source-receipt.json %license LICENSE %doc FASTRPC-NOTIFY.md source-receipt.json %{_datadir}/uke-kernel-migration-check/fastrpc-notify.txt %changelog * Thu Nov 12 2026 Uke contributors - 7.3.3-100 - Qualify original Fedora file APIs with device ioctl syscalls refused. - Retain all prior listener registration checks and exact source inputs. * Thu Nov 12 2026 Uke contributors - 7.3.3-99 - Qualify registered-listener notification with original Fedora FastRPC. - Retain real listener/stubs and synthetic RPC-only execution in COPR.