summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/element/CMakeLists.txt
blob: e2142caefc63aee9df41f32f830564956c5874ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
if (NOT BUILD_MINIMAL)

	# Fetch element

	set(USCXML_ELEMENTS "fetch ${USCXML_ELEMENTS}")
	file(GLOB_RECURSE FETCH_ELEMENT
		fetch/*.cpp
		fetch/*.h
	)
	if (BUILD_AS_PLUGINS)
		source_group("" FILES ${FETCH_ELEMENT})
		add_library(
			element_fetch SHARED 
			${FETCH_ELEMENT}
			"../Plugins.cpp")
		target_link_libraries(element_fetch uscxml)
		set_target_properties(element_fetch PROPERTIES FOLDER "Plugin Element")
		set_target_properties(element_fetch PROPERTIES COMPILE_FLAGS "-DPLUMA_EXPORTS")
		set_target_properties(element_fetch PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}/lib")
	else()
		list (APPEND USCXML_FILES ${FETCH_ELEMENT})
	endif()

	# MMI elements

	# file(GLOB_RECURSE MMI_ELEMENT
	# 	mmi/*.cpp
	# 	mmi/*.h
	# )
	# if (BUILD_AS_PLUGINS)
	# 	source_group("" FILES ${MMI_ELEMENT})
	# 	add_library(
	# 		element_mmi SHARED 
	# 		${MMI_ELEMENT}
	# 		"../Plugins.cpp")
	# 	target_link_libraries(element_mmi uscxml)
	# 	set_target_properties(element_mmi PROPERTIES FOLDER "Plugin Element")
	# 	set_target_properties(element_mmi PROPERTIES COMPILE_FLAGS "-DPLUMA_EXPORTS")
	# 	set_target_properties(element_mmi PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}/lib")
	# else()
	# 	list (APPEND USCXML_FILES ${MMI_ELEMENT})
	# endif()


	# Postpone element

	set(USCXML_ELEMENTS "postpone ${USCXML_ELEMENTS}")
	file(GLOB_RECURSE POSTPONE_ELEMENT
		postpone/*.cpp
		postpone/*.h
	)
	if (BUILD_AS_PLUGINS)
		source_group("" FILES ${POSTPONE_ELEMENT})
		add_library(
			element_postpone SHARED 
			${POSTPONE_ELEMENT}
			"../Plugins.cpp")
		target_link_libraries(element_postpone uscxml)
		set_target_properties(element_postpone PROPERTIES FOLDER "Plugin Element")
		set_target_properties(element_postpone PROPERTIES COMPILE_FLAGS "-DPLUMA_EXPORTS")
		set_target_properties(element_postpone PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}/lib")
	else()
		list (APPEND USCXML_FILES ${POSTPONE_ELEMENT})
	endif()


	# File element

	set(USCXML_ELEMENTS "file ${USCXML_ELEMENTS}")
	file(GLOB_RECURSE FILE_ELEMENT
		file/*.cpp
		file/*.h
	)
	if (BUILD_AS_PLUGINS)
		source_group("" FILES ${FILE_ELEMENT})
		add_library(
			element_file SHARED 
			${FILE_ELEMENT}
			"../Plugins.cpp")
		target_link_libraries(element_file uscxml)
		set_target_properties(element_file PROPERTIES FOLDER "Plugin Element")
		set_target_properties(element_file PROPERTIES COMPILE_FLAGS "-DPLUMA_EXPORTS")
		set_target_properties(element_file PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}/lib")
	else()
		list (APPEND USCXML_FILES ${FILE_ELEMENT})
	endif()


	# Respond element

	set(USCXML_ELEMENTS "respond ${USCXML_ELEMENTS}")
	file(GLOB_RECURSE RESPOND_ELEMENT
		respond/*.cpp
		respond/*.h
	)
	if (BUILD_AS_PLUGINS)
		source_group("" FILES ${RESPOND_ELEMENT})
		add_library(
			element_respond SHARED 
			${RESPOND_ELEMENT}
			"../Plugins.cpp")
		target_link_libraries(element_respond uscxml)
		set_target_properties(element_respond PROPERTIES FOLDER "Plugin Element")
		set_target_properties(element_respond PROPERTIES COMPILE_FLAGS "-DPLUMA_EXPORTS")
		set_target_properties(element_respond PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}/lib")
	else()
		list (APPEND USCXML_FILES ${RESPOND_ELEMENT})
	endif()

endif() # BUILD_MINIMAL

set(USCXML_INCLUDE_DIRS ${USCXML_INCLUDE_DIRS} PARENT_SCOPE)
set(USCXML_FILES ${USCXML_FILES} PARENT_SCOPE)
set(USCXML_ELEMENTS ${USCXML_ELEMENTS} PARENT_SCOPE)