Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 56 additions & 51 deletions src/audio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,37 @@ set(base_files

### Common actions for Zephyr/XTOS ###
if(NOT CONFIG_COMP_MODULE_SHARED_LIBRARY_BUILD)
# directories included unconditionally (alphabetical order)
add_subdirectory(buffers)
add_subdirectory(pcm_converter)
add_subdirectory(pipeline)

# directories and files included conditionally (alphabetical order)
if(CONFIG_COMP_ARIA)
add_subdirectory(aria)
endif()
if(CONFIG_COMP_ASRC)
add_subdirectory(asrc)
endif()
if(CONFIG_COMP_BASEFW_IPC4 AND NOT CONFIG_LIBRARY)
add_local_sources(sof base_fw.c)
endif()
add_local_sources_ifdef(CONFIG_IPC4_BASE_FW_INTEL sof base_fw_intel.c)
if(CONFIG_COMP_CHAIN_DMA)
add_local_sources(sof chain_dma.c)
endif()
if(CONFIG_COMP_COPIER)
add_subdirectory(copier)
endif()
if(CONFIG_COMP_CROSSOVER)
add_subdirectory(crossover)
endif()
if(CONFIG_COMP_DCBLOCK)
add_subdirectory(dcblock)
endif()
if(CONFIG_COMP_DRC)
add_subdirectory(drc)
endif()
if(CONFIG_COMP_FIR)
add_subdirectory(eq_fir)
endif()
Expand All @@ -31,13 +54,41 @@ if(NOT CONFIG_COMP_MODULE_SHARED_LIBRARY_BUILD)
kpb.c
)
endif()
if(CONFIG_COMP_MFCC)
add_subdirectory(mfcc)
endif()
if(CONFIG_COMP_MIXER)
Copy link
Collaborator

Choose a reason for hiding this comment

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

(a general comment to an earlier discussion) I think optically I actually prefer TAB over "two spaces" indentation. And cmake shouldn't really go beyond 3 levels of indentation... So 8-space TABs shouldn't exceed maximum line length

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@lyakh I'll redirect to https://github.com/orgs/thesofproject/discussions/9899 and note that even the "Mastering CMake" O'Reily book follows the 2-space indent ;)

add_subdirectory(mixer)
endif()
if(CONFIG_COMP_MIXIN_MIXOUT)
add_subdirectory(mixin_mixout)
endif()
if(CONFIG_COMP_MULTIBAND_DRC)
add_subdirectory(multiband_drc)
endif()
if(CONFIG_COMP_MUX)
add_subdirectory(mux)
endif()
if(CONFIG_COMP_SEL)
add_subdirectory(selector)
endif()
if(CONFIG_COMP_SRC)
add_subdirectory(src)
endif()

if(CONFIG_COMP_TDFB)
add_subdirectory(tdfb)
endif()
if(CONFIG_COMP_TONE)
add_local_sources(sof
tone.c
)
endif()
if(CONFIG_COMP_UP_DOWN_MIXER)
add_subdirectory(up_down_mixer)
endif()
if(CONFIG_COMP_VOLUME)
add_subdirectory(volume)
endif()
if(CONFIG_ZEPHYR_NATIVE_DRIVERS)
list(APPEND base_files host-zephyr.c)
sof_list_append_ifdef(CONFIG_COMP_DAI base_files dai-zephyr.c)
Expand All @@ -47,8 +98,12 @@ if(NOT CONFIG_COMP_MODULE_SHARED_LIBRARY_BUILD)
endif()
endif()

### Common files (also used in shared library build)

sof_list_append_ifdef(CONFIG_COMP_BLOB base_files data_blob.c)

### (end of common files)

is_zephyr(it_is)
if(it_is) ### Zephyr ###

Expand All @@ -67,32 +122,6 @@ if(NOT CONFIG_COMP_MODULE_SHARED_LIBRARY_BUILD)
${base_files}
)

if(CONFIG_COMP_CROSSOVER)
add_subdirectory(crossover)
endif()
if(CONFIG_COMP_TDFB)
add_subdirectory(tdfb)
endif()
if(CONFIG_COMP_DRC)
add_subdirectory(drc)
endif()
if(CONFIG_COMP_MULTIBAND_DRC)
add_subdirectory(multiband_drc)
endif()
if(CONFIG_COMP_TONE)
add_local_sources(sof
tone.c
)
endif()
if(CONFIG_COMP_MIXER)
add_subdirectory(mixer)
endif()
if(CONFIG_COMP_MIXIN_MIXOUT)
add_subdirectory(mixin_mixout)
endif()
if(CONFIG_COMP_MUX)
add_subdirectory(mux)
endif()
if(CONFIG_COMP_DAI)
add_local_sources(sof
dai-legacy.c
Expand All @@ -101,43 +130,19 @@ if(NOT CONFIG_COMP_MODULE_SHARED_LIBRARY_BUILD)
if(CONFIG_COMP_SMART_AMP)
add_subdirectory(smart_amp)
endif()
add_subdirectory(pcm_converter)
if(CONFIG_COMP_MODULE_ADAPTER)
add_subdirectory(module_adapter)
endif()
if(CONFIG_COMP_IGO_NR)
add_subdirectory(igo_nr)
endif()
if(CONFIG_COMP_COPIER)
add_subdirectory(copier)
endif()
if(CONFIG_COMP_RTNR)
add_subdirectory(rtnr)
endif()
if(CONFIG_COMP_BASEFW_IPC4 AND NOT CONFIG_LIBRARY)
add_local_sources(sof
base_fw.c
)
endif()
if(CONFIG_COMP_ARIA)
add_subdirectory(aria)
endif()
if(CONFIG_COMP_UP_DOWN_MIXER)
add_subdirectory(up_down_mixer)
endif()
if(CONFIG_COMP_MFCC)
add_subdirectory(mfcc)
endif()
if(CONFIG_COMP_VOLUME)
add_subdirectory(volume)
endif()
if(CONFIG_INTEL_ADSP_MIC_PRIVACY)
add_subdirectory(mic_privacy_manager)
endif()
add_subdirectory(google)
if(CONFIG_COMP_CHAIN_DMA)
add_local_sources(sof chain_dma.c)
endif()
if(CONFIG_DTS_CODEC)
add_subdirectory(codec)
endif()
Expand Down
7 changes: 6 additions & 1 deletion src/audio/aria/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
# SPDX-License-Identifier: BSD-3-Clause

add_local_sources(sof aria.c aria_hifi5.c aria_hifi3.c aria_generic.c)
if(CONFIG_COMP_ARIA STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/aria_llext)
add_dependencies(app aria)
else()
add_local_sources(sof aria.c aria_hifi5.c aria_hifi3.c aria_generic.c)
endif()
8 changes: 8 additions & 0 deletions src/audio/crossover/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# SPDX-License-Identifier: BSD-3-Clause

if(CONFIG_COMP_CROSSOVER STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/crossover_llext)
add_dependencies(app crossover)
return()
endif()

add_local_sources(sof crossover.c)
add_local_sources(sof crossover_generic.c)
if(CONFIG_IPC_MAJOR_3)
Expand Down
28 changes: 19 additions & 9 deletions src/audio/drc/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1,19 @@
add_local_sources(sof
drc.c
drc_generic.c
drc_hifi3.c
drc_hifi4.c
drc_math_generic.c
drc_math_hifi3.c
drc_log.c
)
# SPDX-License-Identifier: BSD-3-Clause

if(CONFIG_COMP_DRC STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/drc_llext)
add_dependencies(app drc)
else()
add_local_sources(sof
drc.c
drc_generic.c
drc_hifi3.c
drc_hifi4.c
drc_math_generic.c
drc_math_hifi3.c
)
endif()

if(NOT CONFIG_COMP_DRC STREQUAL "n")
add_local_sources(sof drc_log.c)
endif()
7 changes: 6 additions & 1 deletion src/audio/mfcc/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
# SPDX-License-Identifier: BSD-3-Clause

add_local_sources(sof mfcc.c mfcc_setup.c mfcc_common.c mfcc_generic.c mfcc_hifi4.c mfcc_hifi3.c)
if(CONFIG_COMP_MFCC STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/mfcc_llext)
add_dependencies(app mfcc)
else()
add_local_sources(sof mfcc.c mfcc_setup.c mfcc_common.c mfcc_generic.c mfcc_hifi4.c mfcc_hifi3.c)
endif()
13 changes: 12 additions & 1 deletion src/audio/mixin_mixout/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1 +1,12 @@
add_local_sources(sof mixin_mixout.c mixin_mixout_generic.c mixin_mixout_hifi3.c mixin_mixout_hifi5.c)
# SPDX-License-Identifier: BSD-3-Clause

if(CONFIG_COMP_MIXIN_MIXOUT STREQUAL "m")

add_subdirectory(llext ${PROJECT_BINARY_DIR}/mixin_mixout_llext)
add_dependencies(app mixin_mixout)

else()

add_local_sources(sof mixin_mixout.c mixin_mixout_generic.c mixin_mixout_hifi3.c mixin_mixout_hifi5.c)

endif()
19 changes: 13 additions & 6 deletions src/audio/multiband_drc/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
add_local_sources(sof multiband_drc.c)
add_local_sources(sof multiband_drc_generic.c)
# SPDX-License-Identifier: BSD-3-Clause

if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof multiband_drc_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof multiband_drc_ipc4.c)
if(CONFIG_COMP_MULTIBAND_DRC STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/multiband_drc_llext)
add_dependencies(app multiband_drc)
else()
add_local_sources(sof multiband_drc.c)
add_local_sources(sof multiband_drc_generic.c)

if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof multiband_drc_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof multiband_drc_ipc4.c)
endif()
endif()
16 changes: 10 additions & 6 deletions src/audio/mux/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
# SPDX-License-Identifier: BSD-3-Clause

add_local_sources(sof mux.c mux_generic.c)
if(CONFIG_COMP_MUX STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/mux_llext)
add_dependencies(app mux)
else()
add_local_sources(sof mux.c mux_generic.c)

if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof mux_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof mux_ipc4.c)
if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof mux_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof mux_ipc4.c)
endif()
endif()

15 changes: 10 additions & 5 deletions src/audio/tdfb/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
# SPDX-License-Identifier: BSD-3-Clause

add_local_sources(sof tdfb.c tdfb_generic.c tdfb_hifiep.c tdfb_hifi3.c tdfb_direction.c)
if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof tdfb_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof tdfb_ipc4.c)
if(CONFIG_COMP_TDFB STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/tdfb_llext)
add_dependencies(app tdfb)
Copy link
Collaborator

Choose a reason for hiding this comment

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

why not return() as in others?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@lyakh Ack, this might have been a return() case. I've used two approaches to convert src/audio/foo/ build rules:

  1. if-else if the non-llext code had a single or two statements, or I anyways needed to touch the existing non-llext code.

  2. use return() f there was more logic in the CMakeLists.txt for the module that I did not need to touch.

I think this might have been better as a (2) case.

else()
add_local_sources(sof tdfb.c tdfb_generic.c tdfb_hifiep.c tdfb_hifi3.c tdfb_direction.c)
if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof tdfb_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof tdfb_ipc4.c)
endif()
endif()
37 changes: 20 additions & 17 deletions src/audio/volume/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
# SPDX-License-Identifier: BSD-3-Clause

if(CONFIG_COMP_VOLUME)
add_local_sources(sof
volume_generic.c
volume_hifi3.c
volume_hifi4.c
volume_hifi5.c
volume_generic_with_peakvol.c
volume_hifi3_with_peakvol.c
volume_hifi4_with_peakvol.c
volume_hifi5_with_peakvol.c
volume.c)
if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof volume_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof volume_ipc4.c)
endif()
endif()
if(CONFIG_COMP_VOLUME STREQUAL "m")
add_subdirectory(llext ${PROJECT_BINARY_DIR}/volume_llext)
add_dependencies(app volume)
else()
add_local_sources(sof
volume_generic.c
volume_hifi3.c
volume_hifi4.c
volume_hifi5.c
volume_generic_with_peakvol.c
volume_hifi3_with_peakvol.c
volume_hifi4_with_peakvol.c
volume_hifi5_with_peakvol.c
volume.c)
if(CONFIG_IPC_MAJOR_3)
add_local_sources(sof volume_ipc3.c)
elseif(CONFIG_IPC_MAJOR_4)
add_local_sources(sof volume_ipc4.c)
endif()
endif()
Loading
Loading