use modern CMake, fix missing semicolon
Incorporating remarks by @uxiic_schaub, @ucskd_vigneron:
- Remove PUBLIC and PRIVATE keywords for dependencies in lowest-level CMakeLists.txt
- Fix semicolon
It was unclear if memory_tutorial/components/object_memory_client/Component.h
needs to include memory_tutorial/object_instance/ObjectInstance.h
explicitly:
- From my understanding, this is not necessary, as it already includes
memory_tutorial/object_instance/ProducerConsumer.h
, which in turn includesmemory_tutorial/object_instance/forward_declarations.h
that contains a forward declaration of ObjectInstance. - For the use in the header, such forward declaration is sufficient.
- In the Component.cpp,
memory_tutorial/object_instance/ObjectInstance.h
is included, which resolves the incomplete (forward) declaration. - @uxiic_schaub and @ucskd_vigneron, does your code nevertheless need the include in question to compile, or does this explanation solve the question?