Installing Cyclone DDS for multiple architectures with the same installation prefix gave problems because the CMake configuration files ended up overwriting each other. This brings it in line with the recommended locations. Thanks to @hansfn. Signed-off-by: Erik Boasson <eb@ilities.com>
		
			
				
	
	
		
			20 lines
		
	
	
	
		
			999 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
	
		
			999 B
		
	
	
	
		
			Text
		
	
	
	
	
	
cmake_minimum_required(VERSION 3.5)
 | 
						|
 | 
						|
# Find the CycloneDDS package. If it is not in a default location, try
 | 
						|
# finding it relative to the example where it most likely resides.
 | 
						|
find_package(CycloneDDS REQUIRED COMPONENTS idlc PATHS "${CMAKE_CURRENT_SOURCE_DIR}/../../../..")
 | 
						|
 | 
						|
# This is a convenience function, provided by the CycloneDDS package,
 | 
						|
# that will supply a library target related the the given idl file.
 | 
						|
# In short, it takes the idl file, generates the source files with
 | 
						|
# the proper data types and compiles them into a library.
 | 
						|
idlc_generate(HelloWorldData_lib "HelloWorldData.idl")
 | 
						|
 | 
						|
# Both executables have only one related source file.
 | 
						|
add_executable(HelloworldPublisher publisher.c)
 | 
						|
add_executable(HelloworldSubscriber subscriber.c)
 | 
						|
 | 
						|
# Both executables need to be linked to the idl data type library and
 | 
						|
# the ddsc API library.
 | 
						|
target_link_libraries(HelloworldPublisher HelloWorldData_lib CycloneDDS::ddsc)
 | 
						|
target_link_libraries(HelloworldSubscriber HelloWorldData_lib CycloneDDS::ddsc)
 |