Merge pull request #5 from intothevoid/master
[KDIS.git] / KDIS / Examples / PDU / PDU_Factory1 / CMakeLists.txt
blob6d15d5bcd3da77787920806a3f34e50fb1eaae55
2 #Set up visual studio filters
4 # *.h
5 SOURCE_GROUP(KDIS FILES ${KDIS_SRC_BASE_H})
6 SOURCE_GROUP(KDIS\\DataTypes FILES ${KDIS_SRC_DATATYPES_H})
7 SOURCE_GROUP(KDIS\\DataTypes\\Enums FILES ${KDIS_SRC_ENUMS_H})
8 SOURCE_GROUP(KDIS\\PDU FILES ${KDIS_SRC_PDU_BASE_H})
9 SOURCE_GROUP(KDIS\\PDU\\Distributed_Emission_Regeneration FILES ${KDIS_SRC_PDU_DER_H})
10 SOURCE_GROUP(KDIS\\PDU\\Entity_Info_Interaction FILES ${KDIS_SRC_PDU_EII_H})
11 SOURCE_GROUP(KDIS\\PDU\\Entity_Management FILES ${KDIS_SRC_PDU_EM_H})
12 SOURCE_GROUP(KDIS\\PDU\\Live_Entity FILES ${KDIS_SRC_PDU_LE_H})
13 SOURCE_GROUP(KDIS\\PDU\\Logistics FILES ${KDIS_SRC_PDU_L_H})
14 SOURCE_GROUP(KDIS\\PDU\\Minefield FILES ${KDIS_SRC_PDU_M_H})
15 SOURCE_GROUP(KDIS\\PDU\\Radio_Communications FILES ${KDIS_SRC_PDU_R_H})
16 SOURCE_GROUP(KDIS\\PDU\\Simulation_Management FILES ${KDIS_SRC_PDU_SM_H})
17 SOURCE_GROUP(KDIS\\PDU\\Simulation_Management_With_Reliability FILES ${KDIS_SRC_PDU_SMWR_H})
18 SOURCE_GROUP(KDIS\\PDU\\Synthetic_Environment FILES ${KDIS_SRC_PDU_SE_H})
19 SOURCE_GROUP(KDIS\\PDU\\Warfare FILES ${KDIS_SRC_PDU_W_H})
20 SOURCE_GROUP(KDIS\\PDU\\Information_Operations FILES ${KDIS_SRC_PDU_IO_H})
21 SOURCE_GROUP(KDIS\\Extras FILES ${KDIS_SRC_EX_H})
22 SOURCE_GROUP(KDIS\\Network FILES ${KDIS_SRC_NET_H})
24 # *.cpp
25 SOURCE_GROUP(KDIS FILES ${KDIS_SRC_BASE_CPP})
26 SOURCE_GROUP(KDIS\\DataTypes FILES ${KDIS_SRC_DATATYPES_CPP})
27 SOURCE_GROUP(KDIS\\DataTypes\\Enums FILES ${KDIS_SRC_ENUMS_CPP})
28 SOURCE_GROUP(KDIS\\PDU FILES ${KDIS_SRC_PDU_BASE_CPP})
29 SOURCE_GROUP(KDIS\\PDU\\Distributed_Emission_Regeneration FILES ${KDIS_SRC_PDU_DER_CPP})
30 SOURCE_GROUP(KDIS\\PDU\\Entity_Info_Interaction FILES ${KDIS_SRC_PDU_EII_CPP})
31 SOURCE_GROUP(KDIS\\PDU\\Entity_Management FILES ${KDIS_SRC_PDU_EM_CPP})
32 SOURCE_GROUP(KDIS\\PDU\\Live_Entity FILES ${KDIS_SRC_PDU_LE_CPP})
33 SOURCE_GROUP(KDIS\\PDU\\Logistics FILES ${KDIS_SRC_PDU_L_CPP})
34 SOURCE_GROUP(KDIS\\PDU\\Minefield FILES ${KDIS_SRC_PDU_M_CPP})
35 SOURCE_GROUP(KDIS\\PDU\\Radio_Communications FILES ${KDIS_SRC_PDU_R_CPP})
36 SOURCE_GROUP(KDIS\\PDU\\Simulation_Management FILES ${KDIS_SRC_PDU_SM_CPP})
37 SOURCE_GROUP(KDIS\\PDU\\Simulation_Management_With_Reliability FILES ${KDIS_SRC_PDU_SMWR_CPP})
38 SOURCE_GROUP(KDIS\\PDU\\Synthetic_Environment FILES ${KDIS_SRC_PDU_SE_CPP})
39 SOURCE_GROUP(KDIS\\PDU\\Warfare FILES ${KDIS_SRC_PDU_W_CPP})
40 SOURCE_GROUP(KDIS\\PDU\\Information_Operations FILES ${KDIS_SRC_PDU_IO_CPP})
41 SOURCE_GROUP(KDIS\\Extras FILES ${KDIS_SRC_EX_CPP})
42 SOURCE_GROUP(KDIS\\Network FILES ${KDIS_SRC_NET_CPP})
44 #Include directories in project settings
46 INCLUDE_DIRECTORIES(${KDIS_SOURCE_DIR})
47 INCLUDE_DIRECTORIES(${KDIS_SOURCE_DIR}/Examples)
49 #Create the project
51 SET(KDIS_FILES_H
52     ${KDIS_SRC_BASE_H} 
53     ${KDIS_SRC_DATATYPES_H} 
54     ${KDIS_SRC_ENUMS_H}
55     ${KDIS_SRC_PDU_BASE_H}
56     ${KDIS_SRC_PDU_DER_H}
57     ${KDIS_SRC_PDU_EII_H}
58     ${KDIS_SRC_PDU_EM_H}
59     ${KDIS_SRC_PDU_LE_H}
60     ${KDIS_SRC_PDU_L_H}
61         ${KDIS_SRC_PDU_M_H}
62     ${KDIS_SRC_PDU_R_H}
63     ${KDIS_SRC_PDU_SM_H}
64     ${KDIS_SRC_PDU_SMWR_H}
65     ${KDIS_SRC_PDU_SE_H}
66     ${KDIS_SRC_PDU_W_H}
67         ${KDIS_SRC_PDU_IO_H}
68     ${KDIS_SRC_EX_H}
69         ${KDIS_SRC_NET_H}
70     KDIS.cpp
73 IF(NOT BUILD_EXAMPLES_TO_LINK_TO_LIB)
75 SET(KDIS_FILES_CPP
76     ${KDIS_SRC_BASE_CPP} 
77     ${KDIS_SRC_DATATYPES_CPP}
78     ${KDIS_SRC_ENUMS_CPP}
79     ${KDIS_SRC_PDU_BASE_CPP}
80     ${KDIS_SRC_PDU_DER_CPP}
81     ${KDIS_SRC_PDU_EII_CPP}
82     ${KDIS_SRC_PDU_EM_CPP}
83     ${KDIS_SRC_PDU_LE_CPP}
84     ${KDIS_SRC_PDU_L_CPP}
85         ${KDIS_SRC_PDU_M_CPP}
86     ${KDIS_SRC_PDU_R_CPP}
87     ${KDIS_SRC_PDU_SM_CPP}
88     ${KDIS_SRC_PDU_SMWR_CPP}
89     ${KDIS_SRC_PDU_SE_CPP}
90     ${KDIS_SRC_PDU_W_CPP}
91         ${KDIS_SRC_PDU_IO_CPP}
92     ${KDIS_SRC_EX_CPP}
93         ${KDIS_SRC_NET_CPP}
96 ENDIF(NOT BUILD_EXAMPLES_TO_LINK_TO_LIB)
98 SET(KDIS_FILES ${KDIS_FILES_CPP} ${KDIS_FILES_H} )
100 SET(BIN_NAME Example_PduFactory1)
103 ADD_EXECUTABLE(${BIN_NAME} ${KDIS_FILES})
105 SET_PROPERTY(TARGET Example_PduFactory1 PROPERTY FOLDER "Examples/PDU")
107 #Lower the warning level
108 IF(MSVC)
109     ADD_DEFINITIONS(/W1)
110 ENDIF(MSVC)
112 IF(BUILD_EXAMPLES_TO_LINK_TO_LIB)
114     IF(EXAMPLES_USE_STATIC_OR_SHARED_LIB MATCHES STATIC)
115         TARGET_LINK_LIBRARIES(${BIN_NAME} KDIS_LIB)
116     ENDIF(EXAMPLES_USE_STATIC_OR_SHARED_LIB MATCHES STATIC)
117     
118     IF(EXAMPLES_USE_STATIC_OR_SHARED_LIB MATCHES SHARED)
119         TARGET_LINK_LIBRARIES(${BIN_NAME} KDIS_DLL)
120         ADD_DEFINITIONS(-D "IMPORT_KDIS")
121     ENDIF(EXAMPLES_USE_STATIC_OR_SHARED_LIB MATCHES SHARED)
122     
123 ENDIF(BUILD_EXAMPLES_TO_LINK_TO_LIB)
125 IF(DIS_VERSION MATCHES 6)
126         ADD_DEFINITIONS(-D "DIS_VERSION=6")
127 ENDIF(DIS_VERSION MATCHES 6)
129 IF(DIS_VERSION MATCHES 5)
130         ADD_DEFINITIONS(-D "DIS_VERSION=5")
131 ENDIF(DIS_VERSION MATCHES 5)
133 IF(DIS_VERSION MATCHES 7)
134         ADD_DEFINITIONS(-D "DIS_VERSION=7")
135 ENDIF(DIS_VERSION MATCHES 7)
137 IF(KDIS_USE_ENUM_DESCRIPTORS)
138         ADD_DEFINITIONS(-D "KDIS_USE_ENUM_DESCRIPTORS")
139 ENDIF(KDIS_USE_ENUM_DESCRIPTORS) 
141 TARGET_LINK_LIBRARIES(${BIN_NAME} ${RT_LIBRARY})