Skip to content

package: Add Makefile and CMake rules for RPM/DEB packages and validation test - #2

Merged
lgirdwood merged 1 commit into
mainfrom
packaging-rpm-deb
Nov 8, 2026
Merged

lgirdwood merged 1 commit into
mainfrom
packaging-rpm-deb

Conversation

@lgirdwood

Copy link
Copy Markdown
Member

Adds Make and CMake/CPack rules (make rpm, make deb, make packages, make validate-packages) to build .rpm, .deb, and .tar.gz packages containing pre-compiled IPC3 and IPC4 SOF topologies, along with tools/validate-package.py (integrated into ctest and CI) to validate file paths, permissions, version metadata, binary ABI manifests, and symbolic links.

@lgirdwood
lgirdwood marked this pull request as ready for review November 8, 2026 17:18
…tion test

Add top-level Makefile and CMake/CPack targets (rpm, deb, tgz, packages)
to build pre-compiled topology .rpm, .deb, and .tar.gz packages with
standardized 0644/0755 permissions and relative symlinks.

Also fix topology1's top-level copy rule so it only copies .tplg outputs
without overwriting the root cmake_install.cmake script.

Add tools/validate-package.py (wired into CTest as validate_packages and
Make as validate-packages) to verify:
- Package metadata and version fields (Name, Version, Arch, License, ABI)
- Installed file paths (/lib/firmware/intel/{sof-tplg,sof-ipc4-tplg})
  and 100% match against built production topologies
- Directory (0755), file (0644), and symlink (0777) permissions and
  root:root ownership
- Relative symlinks (sof-ace-tplg -> sof-ipc4-tplg and intra-directory
  .tplg links) with no broken or host-absolute links
- Embedded ALSA CoSA block headers (ABI 5) and SOF ABI manifest versions

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
@lgirdwood
lgirdwood merged commit d4a8413 into main Nov 8, 2026
2 checks passed
@lgirdwood
lgirdwood deleted the packaging-rpm-deb branch November 8, 2026 21:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants