1+ #
2+ # Copyright 2009-2017 Alibaba Cloud All rights reserved.
3+ #
4+ # Licensed under the Apache License, Version 2.0 (the "License");
5+ # you may not use this file except in compliance with the License.
6+ # You may obtain a copy of the License at
7+ #
8+ # http://www.apache.org/licenses/LICENSE-2.0
9+ #
10+ # Unless required by applicable law or agreed to in writing, software
11+ # distributed under the License is distributed on an "AS IS" BASIS,
12+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+ # See the License for the specific language governing permissions and
14+ # limitations under the License.
15+ #
16+
17+ set (public_header_dir ${CMAKE_CURRENT_SOURCE_DIR} /../include )
18+
19+ set (ecsops_public_header
20+ include /alibabacloud/ecsops/EcsopsClient.h
21+ include /alibabacloud/ecsops/EcsopsExport.h )
22+
23+ set (ecsops_public_header_model
24+ include /alibabacloud/ecsops/model/OpsAllocateIpAddressRequest.h
25+ include /alibabacloud/ecsops/model/OpsAllocateIpAddressResult.h
26+ include /alibabacloud/ecsops/model/OpsAttachDiskRequest.h
27+ include /alibabacloud/ecsops/model/OpsAttachDiskResult.h
28+ include /alibabacloud/ecsops/model/OpsAttachSnapshotRequest.h
29+ include /alibabacloud/ecsops/model/OpsAttachSnapshotResult.h
30+ include /alibabacloud/ecsops/model/OpsAuthorizeSecurityGroupRequest.h
31+ include /alibabacloud/ecsops/model/OpsAuthorizeSecurityGroupResult.h
32+ include /alibabacloud/ecsops/model/OpsAuthorizeSecurityGroupEgressRequest.h
33+ include /alibabacloud/ecsops/model/OpsAuthorizeSecurityGroupEgressResult.h
34+ include /alibabacloud/ecsops/model/OpsCreateDiskRequest.h
35+ include /alibabacloud/ecsops/model/OpsCreateDiskResult.h
36+ include /alibabacloud/ecsops/model/OpsCreateImageRequest.h
37+ include /alibabacloud/ecsops/model/OpsCreateImageResult.h
38+ include /alibabacloud/ecsops/model/OpsCreateInstanceRequest.h
39+ include /alibabacloud/ecsops/model/OpsCreateInstanceResult.h
40+ include /alibabacloud/ecsops/model/OpsCreateSecurityGroupRequest.h
41+ include /alibabacloud/ecsops/model/OpsCreateSecurityGroupResult.h
42+ include /alibabacloud/ecsops/model/OpsCreateSnapshotRequest.h
43+ include /alibabacloud/ecsops/model/OpsCreateSnapshotResult.h
44+ include /alibabacloud/ecsops/model/OpsDeleteImageRequest.h
45+ include /alibabacloud/ecsops/model/OpsDeleteImageResult.h
46+ include /alibabacloud/ecsops/model/OpsDeleteSecurityGroupRequest.h
47+ include /alibabacloud/ecsops/model/OpsDeleteSecurityGroupResult.h
48+ include /alibabacloud/ecsops/model/OpsDeleteSnapshotRequest.h
49+ include /alibabacloud/ecsops/model/OpsDeleteSnapshotResult.h
50+ include /alibabacloud/ecsops/model/OpsDescribeDisksRequest.h
51+ include /alibabacloud/ecsops/model/OpsDescribeDisksResult.h
52+ include /alibabacloud/ecsops/model/OpsDescribeGroupAttributeRequest.h
53+ include /alibabacloud/ecsops/model/OpsDescribeGroupAttributeResult.h
54+ include /alibabacloud/ecsops/model/OpsDescribeGroupsRequest.h
55+ include /alibabacloud/ecsops/model/OpsDescribeGroupsResult.h
56+ include /alibabacloud/ecsops/model/OpsDescribeImagesRequest.h
57+ include /alibabacloud/ecsops/model/OpsDescribeImagesResult.h
58+ include /alibabacloud/ecsops/model/OpsDescribeInstancesRequest.h
59+ include /alibabacloud/ecsops/model/OpsDescribeInstancesResult.h
60+ include /alibabacloud/ecsops/model/OpsDescribeMountedSnapshotsRequest.h
61+ include /alibabacloud/ecsops/model/OpsDescribeMountedSnapshotsResult.h
62+ include /alibabacloud/ecsops/model/OpsDescribeRegionsRequest.h
63+ include /alibabacloud/ecsops/model/OpsDescribeRegionsResult.h
64+ include /alibabacloud/ecsops/model/OpsDescribeSnapshotsRequest.h
65+ include /alibabacloud/ecsops/model/OpsDescribeSnapshotsResult.h
66+ include /alibabacloud/ecsops/model/OpsDetachDiskRequest.h
67+ include /alibabacloud/ecsops/model/OpsDetachDiskResult.h
68+ include /alibabacloud/ecsops/model/OpsDetachSnapshotRequest.h
69+ include /alibabacloud/ecsops/model/OpsDetachSnapshotResult.h
70+ include /alibabacloud/ecsops/model/OpsDetailNcRequest.h
71+ include /alibabacloud/ecsops/model/OpsDetailNcResult.h
72+ include /alibabacloud/ecsops/model/OpsGenerateVncUrlRequest.h
73+ include /alibabacloud/ecsops/model/OpsGenerateVncUrlResult.h
74+ include /alibabacloud/ecsops/model/OpsJoinSecurityGroupRequest.h
75+ include /alibabacloud/ecsops/model/OpsJoinSecurityGroupResult.h
76+ include /alibabacloud/ecsops/model/OpsLeaveSecurityGroupRequest.h
77+ include /alibabacloud/ecsops/model/OpsLeaveSecurityGroupResult.h
78+ include /alibabacloud/ecsops/model/OpsLiveMigrateEcsInstanceRequest.h
79+ include /alibabacloud/ecsops/model/OpsLiveMigrateEcsInstanceResult.h
80+ include /alibabacloud/ecsops/model/OpsMigrateEcsInstanceRequest.h
81+ include /alibabacloud/ecsops/model/OpsMigrateEcsInstanceResult.h
82+ include /alibabacloud/ecsops/model/OpsModifyVncPasswdRequest.h
83+ include /alibabacloud/ecsops/model/OpsModifyVncPasswdResult.h
84+ include /alibabacloud/ecsops/model/OpsMountIsoRequest.h
85+ include /alibabacloud/ecsops/model/OpsMountIsoResult.h
86+ include /alibabacloud/ecsops/model/OpsQueryAvailableIsosRequest.h
87+ include /alibabacloud/ecsops/model/OpsQueryAvailableIsosResult.h
88+ include /alibabacloud/ecsops/model/OpsQueryAvailableNcsRequest.h
89+ include /alibabacloud/ecsops/model/OpsQueryAvailableNcsResult.h
90+ include /alibabacloud/ecsops/model/OpsQueryMountedIsoRequest.h
91+ include /alibabacloud/ecsops/model/OpsQueryMountedIsoResult.h
92+ include /alibabacloud/ecsops/model/OpsQueryVncPasswdRequest.h
93+ include /alibabacloud/ecsops/model/OpsQueryVncPasswdResult.h
94+ include /alibabacloud/ecsops/model/OpsReleaseDiskRequest.h
95+ include /alibabacloud/ecsops/model/OpsReleaseDiskResult.h
96+ include /alibabacloud/ecsops/model/OpsReleaseInstanceRequest.h
97+ include /alibabacloud/ecsops/model/OpsReleaseInstanceResult.h
98+ include /alibabacloud/ecsops/model/OpsReleaseIpAddressRequest.h
99+ include /alibabacloud/ecsops/model/OpsReleaseIpAddressResult.h
100+ include /alibabacloud/ecsops/model/OpsRenameInstanceRequest.h
101+ include /alibabacloud/ecsops/model/OpsRenameInstanceResult.h
102+ include /alibabacloud/ecsops/model/OpsReplaceSystemDiskRequest.h
103+ include /alibabacloud/ecsops/model/OpsReplaceSystemDiskResult.h
104+ include /alibabacloud/ecsops/model/OpsResetDiskRequest.h
105+ include /alibabacloud/ecsops/model/OpsResetDiskResult.h
106+ include /alibabacloud/ecsops/model/OpsResetPasswdRequest.h
107+ include /alibabacloud/ecsops/model/OpsResetPasswdResult.h
108+ include /alibabacloud/ecsops/model/OpsResizeDiskRequest.h
109+ include /alibabacloud/ecsops/model/OpsResizeDiskResult.h
110+ include /alibabacloud/ecsops/model/OpsRestartInstanceRequest.h
111+ include /alibabacloud/ecsops/model/OpsRestartInstanceResult.h
112+ include /alibabacloud/ecsops/model/OpsRevokeSecurityGroupRequest.h
113+ include /alibabacloud/ecsops/model/OpsRevokeSecurityGroupResult.h
114+ include /alibabacloud/ecsops/model/OpsRevokeSecurityGroupEgressRequest.h
115+ include /alibabacloud/ecsops/model/OpsRevokeSecurityGroupEgressResult.h
116+ include /alibabacloud/ecsops/model/OpsStartInstanceRequest.h
117+ include /alibabacloud/ecsops/model/OpsStartInstanceResult.h
118+ include /alibabacloud/ecsops/model/OpsStopInstanceRequest.h
119+ include /alibabacloud/ecsops/model/OpsStopInstanceResult.h
120+ include /alibabacloud/ecsops/model/OpsUnMountIsoRequest.h
121+ include /alibabacloud/ecsops/model/OpsUnMountIsoResult.h
122+ include /alibabacloud/ecsops/model/OpsUpgradeInstanceRequest.h
123+ include /alibabacloud/ecsops/model/OpsUpgradeInstanceResult.h )
124+
125+ set (ecsops_src
126+ src/EcsopsClient.cc
127+ src/model/OpsAllocateIpAddressRequest.cc
128+ src/model/OpsAllocateIpAddressResult.cc
129+ src/model/OpsAttachDiskRequest.cc
130+ src/model/OpsAttachDiskResult.cc
131+ src/model/OpsAttachSnapshotRequest.cc
132+ src/model/OpsAttachSnapshotResult.cc
133+ src/model/OpsAuthorizeSecurityGroupRequest.cc
134+ src/model/OpsAuthorizeSecurityGroupResult.cc
135+ src/model/OpsAuthorizeSecurityGroupEgressRequest.cc
136+ src/model/OpsAuthorizeSecurityGroupEgressResult.cc
137+ src/model/OpsCreateDiskRequest.cc
138+ src/model/OpsCreateDiskResult.cc
139+ src/model/OpsCreateImageRequest.cc
140+ src/model/OpsCreateImageResult.cc
141+ src/model/OpsCreateInstanceRequest.cc
142+ src/model/OpsCreateInstanceResult.cc
143+ src/model/OpsCreateSecurityGroupRequest.cc
144+ src/model/OpsCreateSecurityGroupResult.cc
145+ src/model/OpsCreateSnapshotRequest.cc
146+ src/model/OpsCreateSnapshotResult.cc
147+ src/model/OpsDeleteImageRequest.cc
148+ src/model/OpsDeleteImageResult.cc
149+ src/model/OpsDeleteSecurityGroupRequest.cc
150+ src/model/OpsDeleteSecurityGroupResult.cc
151+ src/model/OpsDeleteSnapshotRequest.cc
152+ src/model/OpsDeleteSnapshotResult.cc
153+ src/model/OpsDescribeDisksRequest.cc
154+ src/model/OpsDescribeDisksResult.cc
155+ src/model/OpsDescribeGroupAttributeRequest.cc
156+ src/model/OpsDescribeGroupAttributeResult.cc
157+ src/model/OpsDescribeGroupsRequest.cc
158+ src/model/OpsDescribeGroupsResult.cc
159+ src/model/OpsDescribeImagesRequest.cc
160+ src/model/OpsDescribeImagesResult.cc
161+ src/model/OpsDescribeInstancesRequest.cc
162+ src/model/OpsDescribeInstancesResult.cc
163+ src/model/OpsDescribeMountedSnapshotsRequest.cc
164+ src/model/OpsDescribeMountedSnapshotsResult.cc
165+ src/model/OpsDescribeRegionsRequest.cc
166+ src/model/OpsDescribeRegionsResult.cc
167+ src/model/OpsDescribeSnapshotsRequest.cc
168+ src/model/OpsDescribeSnapshotsResult.cc
169+ src/model/OpsDetachDiskRequest.cc
170+ src/model/OpsDetachDiskResult.cc
171+ src/model/OpsDetachSnapshotRequest.cc
172+ src/model/OpsDetachSnapshotResult.cc
173+ src/model/OpsDetailNcRequest.cc
174+ src/model/OpsDetailNcResult.cc
175+ src/model/OpsGenerateVncUrlRequest.cc
176+ src/model/OpsGenerateVncUrlResult.cc
177+ src/model/OpsJoinSecurityGroupRequest.cc
178+ src/model/OpsJoinSecurityGroupResult.cc
179+ src/model/OpsLeaveSecurityGroupRequest.cc
180+ src/model/OpsLeaveSecurityGroupResult.cc
181+ src/model/OpsLiveMigrateEcsInstanceRequest.cc
182+ src/model/OpsLiveMigrateEcsInstanceResult.cc
183+ src/model/OpsMigrateEcsInstanceRequest.cc
184+ src/model/OpsMigrateEcsInstanceResult.cc
185+ src/model/OpsModifyVncPasswdRequest.cc
186+ src/model/OpsModifyVncPasswdResult.cc
187+ src/model/OpsMountIsoRequest.cc
188+ src/model/OpsMountIsoResult.cc
189+ src/model/OpsQueryAvailableIsosRequest.cc
190+ src/model/OpsQueryAvailableIsosResult.cc
191+ src/model/OpsQueryAvailableNcsRequest.cc
192+ src/model/OpsQueryAvailableNcsResult.cc
193+ src/model/OpsQueryMountedIsoRequest.cc
194+ src/model/OpsQueryMountedIsoResult.cc
195+ src/model/OpsQueryVncPasswdRequest.cc
196+ src/model/OpsQueryVncPasswdResult.cc
197+ src/model/OpsReleaseDiskRequest.cc
198+ src/model/OpsReleaseDiskResult.cc
199+ src/model/OpsReleaseInstanceRequest.cc
200+ src/model/OpsReleaseInstanceResult.cc
201+ src/model/OpsReleaseIpAddressRequest.cc
202+ src/model/OpsReleaseIpAddressResult.cc
203+ src/model/OpsRenameInstanceRequest.cc
204+ src/model/OpsRenameInstanceResult.cc
205+ src/model/OpsReplaceSystemDiskRequest.cc
206+ src/model/OpsReplaceSystemDiskResult.cc
207+ src/model/OpsResetDiskRequest.cc
208+ src/model/OpsResetDiskResult.cc
209+ src/model/OpsResetPasswdRequest.cc
210+ src/model/OpsResetPasswdResult.cc
211+ src/model/OpsResizeDiskRequest.cc
212+ src/model/OpsResizeDiskResult.cc
213+ src/model/OpsRestartInstanceRequest.cc
214+ src/model/OpsRestartInstanceResult.cc
215+ src/model/OpsRevokeSecurityGroupRequest.cc
216+ src/model/OpsRevokeSecurityGroupResult.cc
217+ src/model/OpsRevokeSecurityGroupEgressRequest.cc
218+ src/model/OpsRevokeSecurityGroupEgressResult.cc
219+ src/model/OpsStartInstanceRequest.cc
220+ src/model/OpsStartInstanceResult.cc
221+ src/model/OpsStopInstanceRequest.cc
222+ src/model/OpsStopInstanceResult.cc
223+ src/model/OpsUnMountIsoRequest.cc
224+ src/model/OpsUnMountIsoResult.cc
225+ src/model/OpsUpgradeInstanceRequest.cc
226+ src/model/OpsUpgradeInstanceResult.cc )
227+
228+ add_library (ecsops ${LIB_TYPE}
229+ ${ecsops_public_header}
230+ ${ecsops_public_header_model}
231+ ${ecsops_src} )
232+
233+ set_target_properties (ecsops
234+ PROPERTIES
235+ LINKER_LANGUAGE CXX
236+ ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /lib
237+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /lib
238+ RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} /bin
239+ OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX} ecsops
240+ )
241+
242+ if (${LIB_TYPE} STREQUAL "SHARED" )
243+ set_target_properties (ecsops
244+ PROPERTIES
245+ DEFINE_SYMBOL ALIBABACLOUD_ECSOPS_LIBRARY)
246+ endif ()
247+
248+ target_include_directories (ecsops
249+ PRIVATE include
250+ ${CMAKE_SOURCE_DIR} /core/include
251+ )
252+ target_link_libraries (ecsops
253+ core)
254+
255+ if (CMAKE_HOST_WIN32 )
256+ ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
257+ set (jsoncpp_install_dir ${INSTALL_DIR} )
258+ add_dependencies (ecsops
259+ jsoncpp)
260+ target_include_directories (ecsops
261+ PRIVATE ${jsoncpp_install_dir} /include )
262+ target_link_libraries (ecsops
263+ ${jsoncpp_install_dir} /lib/jsoncpp.lib)
264+ set_target_properties (ecsops
265+ PROPERTIES
266+ COMPILE_OPTIONS "/bigobj" )
267+ else ()
268+ target_include_directories (ecsops
269+ PRIVATE /usr/include /jsoncpp)
270+ target_link_libraries (ecsops
271+ jsoncpp)
272+ endif ()
273+
274+ install (FILES ${ecsops_public_header}
275+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} /alibabacloud/ecsops)
276+ install (FILES ${ecsops_public_header_model}
277+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} /alibabacloud/ecsops/model)
278+ install (TARGETS ecsops
279+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
280+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
281+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
282+ )
0 commit comments