Skip to content

[DRAFT] tools: Add targets to install IPC3 and IPC4 ctl configuration files - #11437

Draft
dbaluta wants to merge 2 commits into
thesofproject:mainfrom
dbaluta:tools-install-ctl-configs
Draft

dbaluta wants to merge 2 commits into
thesofproject:mainfrom
dbaluta:tools-install-ctl-configs

Conversation

@dbaluta

@dbaluta dbaluta commented Nov 10, 2026

Copy link
Copy Markdown
Collaborator

Install the sof-ctl configuration files from tools/ctl/ipc3 and
tools/ctl/ipc4 into /share/sof/ctl, keeping the directory
layout, e.g. /usr/share/sof/ctl/ipc4/eq_iir/flat.txt.

The files are installed together with the tools by:

  cmake --install <build_dir>

Copilot AI balanced review requested due to automatic review settings November 10, 2026 15:51
@dbaluta
dbaluta marked this pull request as draft November 10, 2026 15:51
Install the sof-ctl configuration files from tools/ctl/ipc3 and
tools/ctl/ipc4 into <prefix>/share/sof/ctl, keeping the directory
layout, e.g. /usr/share/sof/ctl/ipc4/eq_iir/flat.txt.

The files are installed together with the tools by:

  cmake --install <build_dir>

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
sof-ctl, sof-logger and sof-probes are installed to a hard-coded "bin"
directory. Include GNUInstallDirs once in tools/CMakeLists.txt and
install the binaries to CMAKE_INSTALL_BINDIR instead, so that
distribution builds (e.g. Yocto) can override the install layout.

The default layout is unchanged: binaries go to <prefix>/bin and the
sof-ctl configuration files to <prefix>/share/sof/ctl.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Copilot review overview

2 open issues
What changed in this PR

Updates the tools’ CMake install rules to (1) use standard install directory variables and (2) install sof-ctl IPC3/IPC4 control configuration .txt files into <prefix>/share/sof/ctl while preserving the source directory structure.

Changes:

  • Switch tool binary install destinations from hard-coded bin to ${CMAKE_INSTALL_BINDIR}.
  • Add installation of tools/ctl/ipc3 and tools/ctl/ipc4 .txt configuration files into ${CMAKE_INSTALL_DATADIR}/sof/ctl.
  • Include GNUInstallDirs in tools/CMakeLists.txt to define standard install directory variables.
File Description
tools/​probes/​CMakeLists.txt Install sof-probes into ${CMAKE_INSTALL_BINDIR} instead of bin.
tools/​logger/​CMakeLists.txt Install sof-logger into ${CMAKE_INSTALL_BINDIR} instead of bin.
tools/​ctl/​CMakeLists.txt Install sof-ctl into ${CMAKE_INSTALL_BINDIR} and add install rules for IPC3/IPC4 .txt config trees under ${CMAKE_INSTALL_DATADIR}/sof/ctl.
tools/​CMakeLists.txt Include GNUInstallDirs so ${CMAKE_INSTALL_BINDIR} / ${CMAKE_INSTALL_DATADIR} are defined.

Review effort: Lite

)

install(TARGETS sof-logger DESTINATION bin)
install(TARGETS sof-logger DESTINATION "${CMAKE_INSTALL_BINDIR}")
)

install(TARGETS sof-probes DESTINATION bin)
install(TARGETS sof-probes DESTINATION "${CMAKE_INSTALL_BINDIR}")
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