examples: Handle additional example dependencies

Dependencies added via 'TARGETS' in add_example are 'in addition to' the
dependency provided by the example filename.

    * Small change to examples/CMakeLists.txt to handle additional
      dependencies
    * Prefix 'interfaces-' onto the interfaces examples

Signed-off-by: Noel Eck <noel.eck@intel.com>
This commit is contained in:
Noel Eck
2017-04-06 14:16:55 -07:00
parent b8738b32ca
commit 39df7fd10f
7 changed files with 14 additions and 13 deletions

View File

@ -9,8 +9,8 @@
# <library>-[additional].c(xx)
# library: Name of UPM library required by example
# -additional: Any other string used to identify the example
# TARGETS - If TARGETS is set, ignore the <library>-[additional] syntax and
# use only the provided TARGETS as target name dependencies
# TARGETS - Additional dependency target/s required to BUILD/RUN this example. If TARGETS is
# set, these are in addition to the dependency library provided by the example filename.
# SUFFIX - Provide a means to differentiate between C/C++ dependency targets and
# example names. Leave empty for CXX examples. Use '-c' for c targets.
# SUFFIX Example file Dependency target Example binary
@ -59,12 +59,13 @@ function (add_example example_src)
string (REPLACE "-" ";" split_name ${example_name})
list (GET split_name 0 library_name)
# If TARGETS is not provided, parse dependency target name from example_src
if (NOT add_example_TARGETS)
# For sensorfoo, lib_target_names = sensorfoo-c
set (lib_target_names "${library_name}${add_example_SUFFIX}")
else ()
set (lib_target_names "${add_example_TARGETS}")
# Parse dependency target name from example_src filename (add on suffix)
# For sensorfoo, lib_target_names = sensorfoo-c
set (lib_target_names "${library_name}${add_example_SUFFIX}")
# If TARGETS is provided, add additional dependency targets
if (add_example_TARGETS)
list (APPEND lib_target_names "${add_example_TARGETS}")
endif ()
# Unfortunately, c++ and c library targets are not named the same. If