366 lines
16 KiB
CMake
366 lines
16 KiB
CMake
#
|
|
# Copyright 2009-2017 Alibaba Cloud All rights reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
|
|
|
|
set(iot_public_header
|
|
include/alibabacloud/iot/IotClient.h
|
|
include/alibabacloud/iot/IotExport.h )
|
|
|
|
set(iot_public_header_model
|
|
include/alibabacloud/iot/model/QueryAppDeviceListRequest.h
|
|
include/alibabacloud/iot/model/QueryAppDeviceListResult.h
|
|
include/alibabacloud/iot/model/DeleteTopicRouteTableRequest.h
|
|
include/alibabacloud/iot/model/DeleteTopicRouteTableResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupListRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupListResult.h
|
|
include/alibabacloud/iot/model/SetDeviceGroupTagsRequest.h
|
|
include/alibabacloud/iot/model/SetDeviceGroupTagsResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceEventDataRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceEventDataResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceByTagsRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceByTagsResult.h
|
|
include/alibabacloud/iot/model/GetDeviceStatusRequest.h
|
|
include/alibabacloud/iot/model/GetDeviceStatusResult.h
|
|
include/alibabacloud/iot/model/DeleteDeviceRequest.h
|
|
include/alibabacloud/iot/model/DeleteDeviceResult.h
|
|
include/alibabacloud/iot/model/CreateDeviceGroupRequest.h
|
|
include/alibabacloud/iot/model/CreateDeviceGroupResult.h
|
|
include/alibabacloud/iot/model/EnableThingRequest.h
|
|
include/alibabacloud/iot/model/EnableThingResult.h
|
|
include/alibabacloud/iot/model/RRpcRequest.h
|
|
include/alibabacloud/iot/model/RRpcResult.h
|
|
include/alibabacloud/iot/model/DeleteRuleRequest.h
|
|
include/alibabacloud/iot/model/DeleteRuleResult.h
|
|
include/alibabacloud/iot/model/QueryProductTopicRequest.h
|
|
include/alibabacloud/iot/model/QueryProductTopicResult.h
|
|
include/alibabacloud/iot/model/GetThingTopoRequest.h
|
|
include/alibabacloud/iot/model/GetThingTopoResult.h
|
|
include/alibabacloud/iot/model/QueryPageByApplyIdRequest.h
|
|
include/alibabacloud/iot/model/QueryPageByApplyIdResult.h
|
|
include/alibabacloud/iot/model/CreateTopicRouteTableRequest.h
|
|
include/alibabacloud/iot/model/CreateTopicRouteTableResult.h
|
|
include/alibabacloud/iot/model/CreateProductRequest.h
|
|
include/alibabacloud/iot/model/CreateProductResult.h
|
|
include/alibabacloud/iot/model/UpdateRuleRequest.h
|
|
include/alibabacloud/iot/model/UpdateRuleResult.h
|
|
include/alibabacloud/iot/model/QueryDevicePropertyDataRequest.h
|
|
include/alibabacloud/iot/model/QueryDevicePropertyDataResult.h
|
|
include/alibabacloud/iot/model/UpdateDeviceGroupRequest.h
|
|
include/alibabacloud/iot/model/UpdateDeviceGroupResult.h
|
|
include/alibabacloud/iot/model/DeleteDeviceGroupRequest.h
|
|
include/alibabacloud/iot/model/DeleteDeviceGroupResult.h
|
|
include/alibabacloud/iot/model/QueryDevicePropRequest.h
|
|
include/alibabacloud/iot/model/QueryDevicePropResult.h
|
|
include/alibabacloud/iot/model/DeleteDevicePropRequest.h
|
|
include/alibabacloud/iot/model/DeleteDevicePropResult.h
|
|
include/alibabacloud/iot/model/StopRuleRequest.h
|
|
include/alibabacloud/iot/model/StopRuleResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupByDeviceRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupByDeviceResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceDetailRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceDetailResult.h
|
|
include/alibabacloud/iot/model/NotifyAddThingTopoRequest.h
|
|
include/alibabacloud/iot/model/NotifyAddThingTopoResult.h
|
|
include/alibabacloud/iot/model/InvokeThingServiceRequest.h
|
|
include/alibabacloud/iot/model/InvokeThingServiceResult.h
|
|
include/alibabacloud/iot/model/ListRuleActionsRequest.h
|
|
include/alibabacloud/iot/model/ListRuleActionsResult.h
|
|
include/alibabacloud/iot/model/BatchCheckDeviceNamesRequest.h
|
|
include/alibabacloud/iot/model/BatchCheckDeviceNamesResult.h
|
|
include/alibabacloud/iot/model/UpdateProductTopicRequest.h
|
|
include/alibabacloud/iot/model/UpdateProductTopicResult.h
|
|
include/alibabacloud/iot/model/UpdateRuleActionRequest.h
|
|
include/alibabacloud/iot/model/UpdateRuleActionResult.h
|
|
include/alibabacloud/iot/model/UpdateProductRequest.h
|
|
include/alibabacloud/iot/model/UpdateProductResult.h
|
|
include/alibabacloud/iot/model/QueryProductRequest.h
|
|
include/alibabacloud/iot/model/QueryProductResult.h
|
|
include/alibabacloud/iot/model/UpdateDeviceShadowRequest.h
|
|
include/alibabacloud/iot/model/UpdateDeviceShadowResult.h
|
|
include/alibabacloud/iot/model/QueryBatchRegisterDeviceStatusRequest.h
|
|
include/alibabacloud/iot/model/QueryBatchRegisterDeviceStatusResult.h
|
|
include/alibabacloud/iot/model/SetDevicePropertyRequest.h
|
|
include/alibabacloud/iot/model/SetDevicePropertyResult.h
|
|
include/alibabacloud/iot/model/RegisterDeviceRequest.h
|
|
include/alibabacloud/iot/model/RegisterDeviceResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceResult.h
|
|
include/alibabacloud/iot/model/BatchDeleteDeviceGroupRelationsRequest.h
|
|
include/alibabacloud/iot/model/BatchDeleteDeviceGroupRelationsResult.h
|
|
include/alibabacloud/iot/model/InvokeThingsServiceRequest.h
|
|
include/alibabacloud/iot/model/InvokeThingsServiceResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupTagListRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupTagListResult.h
|
|
include/alibabacloud/iot/model/ListRuleRequest.h
|
|
include/alibabacloud/iot/model/ListRuleResult.h
|
|
include/alibabacloud/iot/model/QueryTopicRouteTableRequest.h
|
|
include/alibabacloud/iot/model/QueryTopicRouteTableResult.h
|
|
include/alibabacloud/iot/model/CreateRuleRequest.h
|
|
include/alibabacloud/iot/model/CreateRuleResult.h
|
|
include/alibabacloud/iot/model/StartRuleRequest.h
|
|
include/alibabacloud/iot/model/StartRuleResult.h
|
|
include/alibabacloud/iot/model/QueryProductListRequest.h
|
|
include/alibabacloud/iot/model/QueryProductListResult.h
|
|
include/alibabacloud/iot/model/QueryDevicePropertyStatusRequest.h
|
|
include/alibabacloud/iot/model/QueryDevicePropertyStatusResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceStatisticsRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceStatisticsResult.h
|
|
include/alibabacloud/iot/model/PubRequest.h
|
|
include/alibabacloud/iot/model/PubResult.h
|
|
include/alibabacloud/iot/model/DeleteProductRequest.h
|
|
include/alibabacloud/iot/model/DeleteProductResult.h
|
|
include/alibabacloud/iot/model/SaveDevicePropRequest.h
|
|
include/alibabacloud/iot/model/SaveDevicePropResult.h
|
|
include/alibabacloud/iot/model/DeleteProductTopicRequest.h
|
|
include/alibabacloud/iot/model/DeleteProductTopicResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceServiceDataRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceServiceDataResult.h
|
|
include/alibabacloud/iot/model/BatchRegisterDeviceWithApplyIdRequest.h
|
|
include/alibabacloud/iot/model/BatchRegisterDeviceWithApplyIdResult.h
|
|
include/alibabacloud/iot/model/DisableThingRequest.h
|
|
include/alibabacloud/iot/model/DisableThingResult.h
|
|
include/alibabacloud/iot/model/CreateProductTopicRequest.h
|
|
include/alibabacloud/iot/model/CreateProductTopicResult.h
|
|
include/alibabacloud/iot/model/RemoveThingTopoRequest.h
|
|
include/alibabacloud/iot/model/RemoveThingTopoResult.h
|
|
include/alibabacloud/iot/model/QueryTopicReverseRouteTableRequest.h
|
|
include/alibabacloud/iot/model/QueryTopicReverseRouteTableResult.h
|
|
include/alibabacloud/iot/model/BatchGetDeviceStateRequest.h
|
|
include/alibabacloud/iot/model/BatchGetDeviceStateResult.h
|
|
include/alibabacloud/iot/model/GetRuleActionRequest.h
|
|
include/alibabacloud/iot/model/GetRuleActionResult.h
|
|
include/alibabacloud/iot/model/BatchAddDeviceGroupRelationsRequest.h
|
|
include/alibabacloud/iot/model/BatchAddDeviceGroupRelationsResult.h
|
|
include/alibabacloud/iot/model/GetRuleRequest.h
|
|
include/alibabacloud/iot/model/GetRuleResult.h
|
|
include/alibabacloud/iot/model/GetDeviceShadowRequest.h
|
|
include/alibabacloud/iot/model/GetDeviceShadowResult.h
|
|
include/alibabacloud/iot/model/SetDevicesPropertyRequest.h
|
|
include/alibabacloud/iot/model/SetDevicesPropertyResult.h
|
|
include/alibabacloud/iot/model/GetGatewayBySubDeviceRequest.h
|
|
include/alibabacloud/iot/model/GetGatewayBySubDeviceResult.h
|
|
include/alibabacloud/iot/model/CreateRuleActionRequest.h
|
|
include/alibabacloud/iot/model/CreateRuleActionResult.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupInfoRequest.h
|
|
include/alibabacloud/iot/model/QueryDeviceGroupInfoResult.h
|
|
include/alibabacloud/iot/model/BatchRegisterDeviceRequest.h
|
|
include/alibabacloud/iot/model/BatchRegisterDeviceResult.h
|
|
include/alibabacloud/iot/model/DeleteRuleActionRequest.h
|
|
include/alibabacloud/iot/model/DeleteRuleActionResult.h
|
|
include/alibabacloud/iot/model/PubBroadcastRequest.h
|
|
include/alibabacloud/iot/model/PubBroadcastResult.h )
|
|
|
|
set(iot_src
|
|
src/IotClient.cc
|
|
src/model/QueryAppDeviceListRequest.cc
|
|
src/model/QueryAppDeviceListResult.cc
|
|
src/model/DeleteTopicRouteTableRequest.cc
|
|
src/model/DeleteTopicRouteTableResult.cc
|
|
src/model/QueryDeviceGroupListRequest.cc
|
|
src/model/QueryDeviceGroupListResult.cc
|
|
src/model/SetDeviceGroupTagsRequest.cc
|
|
src/model/SetDeviceGroupTagsResult.cc
|
|
src/model/QueryDeviceEventDataRequest.cc
|
|
src/model/QueryDeviceEventDataResult.cc
|
|
src/model/QueryDeviceByTagsRequest.cc
|
|
src/model/QueryDeviceByTagsResult.cc
|
|
src/model/GetDeviceStatusRequest.cc
|
|
src/model/GetDeviceStatusResult.cc
|
|
src/model/DeleteDeviceRequest.cc
|
|
src/model/DeleteDeviceResult.cc
|
|
src/model/CreateDeviceGroupRequest.cc
|
|
src/model/CreateDeviceGroupResult.cc
|
|
src/model/EnableThingRequest.cc
|
|
src/model/EnableThingResult.cc
|
|
src/model/RRpcRequest.cc
|
|
src/model/RRpcResult.cc
|
|
src/model/DeleteRuleRequest.cc
|
|
src/model/DeleteRuleResult.cc
|
|
src/model/QueryProductTopicRequest.cc
|
|
src/model/QueryProductTopicResult.cc
|
|
src/model/GetThingTopoRequest.cc
|
|
src/model/GetThingTopoResult.cc
|
|
src/model/QueryPageByApplyIdRequest.cc
|
|
src/model/QueryPageByApplyIdResult.cc
|
|
src/model/CreateTopicRouteTableRequest.cc
|
|
src/model/CreateTopicRouteTableResult.cc
|
|
src/model/CreateProductRequest.cc
|
|
src/model/CreateProductResult.cc
|
|
src/model/UpdateRuleRequest.cc
|
|
src/model/UpdateRuleResult.cc
|
|
src/model/QueryDevicePropertyDataRequest.cc
|
|
src/model/QueryDevicePropertyDataResult.cc
|
|
src/model/UpdateDeviceGroupRequest.cc
|
|
src/model/UpdateDeviceGroupResult.cc
|
|
src/model/DeleteDeviceGroupRequest.cc
|
|
src/model/DeleteDeviceGroupResult.cc
|
|
src/model/QueryDevicePropRequest.cc
|
|
src/model/QueryDevicePropResult.cc
|
|
src/model/DeleteDevicePropRequest.cc
|
|
src/model/DeleteDevicePropResult.cc
|
|
src/model/StopRuleRequest.cc
|
|
src/model/StopRuleResult.cc
|
|
src/model/QueryDeviceGroupByDeviceRequest.cc
|
|
src/model/QueryDeviceGroupByDeviceResult.cc
|
|
src/model/QueryDeviceDetailRequest.cc
|
|
src/model/QueryDeviceDetailResult.cc
|
|
src/model/NotifyAddThingTopoRequest.cc
|
|
src/model/NotifyAddThingTopoResult.cc
|
|
src/model/InvokeThingServiceRequest.cc
|
|
src/model/InvokeThingServiceResult.cc
|
|
src/model/ListRuleActionsRequest.cc
|
|
src/model/ListRuleActionsResult.cc
|
|
src/model/BatchCheckDeviceNamesRequest.cc
|
|
src/model/BatchCheckDeviceNamesResult.cc
|
|
src/model/UpdateProductTopicRequest.cc
|
|
src/model/UpdateProductTopicResult.cc
|
|
src/model/UpdateRuleActionRequest.cc
|
|
src/model/UpdateRuleActionResult.cc
|
|
src/model/UpdateProductRequest.cc
|
|
src/model/UpdateProductResult.cc
|
|
src/model/QueryProductRequest.cc
|
|
src/model/QueryProductResult.cc
|
|
src/model/UpdateDeviceShadowRequest.cc
|
|
src/model/UpdateDeviceShadowResult.cc
|
|
src/model/QueryBatchRegisterDeviceStatusRequest.cc
|
|
src/model/QueryBatchRegisterDeviceStatusResult.cc
|
|
src/model/SetDevicePropertyRequest.cc
|
|
src/model/SetDevicePropertyResult.cc
|
|
src/model/RegisterDeviceRequest.cc
|
|
src/model/RegisterDeviceResult.cc
|
|
src/model/QueryDeviceRequest.cc
|
|
src/model/QueryDeviceResult.cc
|
|
src/model/BatchDeleteDeviceGroupRelationsRequest.cc
|
|
src/model/BatchDeleteDeviceGroupRelationsResult.cc
|
|
src/model/InvokeThingsServiceRequest.cc
|
|
src/model/InvokeThingsServiceResult.cc
|
|
src/model/QueryDeviceGroupTagListRequest.cc
|
|
src/model/QueryDeviceGroupTagListResult.cc
|
|
src/model/ListRuleRequest.cc
|
|
src/model/ListRuleResult.cc
|
|
src/model/QueryTopicRouteTableRequest.cc
|
|
src/model/QueryTopicRouteTableResult.cc
|
|
src/model/CreateRuleRequest.cc
|
|
src/model/CreateRuleResult.cc
|
|
src/model/StartRuleRequest.cc
|
|
src/model/StartRuleResult.cc
|
|
src/model/QueryProductListRequest.cc
|
|
src/model/QueryProductListResult.cc
|
|
src/model/QueryDevicePropertyStatusRequest.cc
|
|
src/model/QueryDevicePropertyStatusResult.cc
|
|
src/model/QueryDeviceStatisticsRequest.cc
|
|
src/model/QueryDeviceStatisticsResult.cc
|
|
src/model/PubRequest.cc
|
|
src/model/PubResult.cc
|
|
src/model/DeleteProductRequest.cc
|
|
src/model/DeleteProductResult.cc
|
|
src/model/SaveDevicePropRequest.cc
|
|
src/model/SaveDevicePropResult.cc
|
|
src/model/DeleteProductTopicRequest.cc
|
|
src/model/DeleteProductTopicResult.cc
|
|
src/model/QueryDeviceServiceDataRequest.cc
|
|
src/model/QueryDeviceServiceDataResult.cc
|
|
src/model/BatchRegisterDeviceWithApplyIdRequest.cc
|
|
src/model/BatchRegisterDeviceWithApplyIdResult.cc
|
|
src/model/DisableThingRequest.cc
|
|
src/model/DisableThingResult.cc
|
|
src/model/CreateProductTopicRequest.cc
|
|
src/model/CreateProductTopicResult.cc
|
|
src/model/RemoveThingTopoRequest.cc
|
|
src/model/RemoveThingTopoResult.cc
|
|
src/model/QueryTopicReverseRouteTableRequest.cc
|
|
src/model/QueryTopicReverseRouteTableResult.cc
|
|
src/model/BatchGetDeviceStateRequest.cc
|
|
src/model/BatchGetDeviceStateResult.cc
|
|
src/model/GetRuleActionRequest.cc
|
|
src/model/GetRuleActionResult.cc
|
|
src/model/BatchAddDeviceGroupRelationsRequest.cc
|
|
src/model/BatchAddDeviceGroupRelationsResult.cc
|
|
src/model/GetRuleRequest.cc
|
|
src/model/GetRuleResult.cc
|
|
src/model/GetDeviceShadowRequest.cc
|
|
src/model/GetDeviceShadowResult.cc
|
|
src/model/SetDevicesPropertyRequest.cc
|
|
src/model/SetDevicesPropertyResult.cc
|
|
src/model/GetGatewayBySubDeviceRequest.cc
|
|
src/model/GetGatewayBySubDeviceResult.cc
|
|
src/model/CreateRuleActionRequest.cc
|
|
src/model/CreateRuleActionResult.cc
|
|
src/model/QueryDeviceGroupInfoRequest.cc
|
|
src/model/QueryDeviceGroupInfoResult.cc
|
|
src/model/BatchRegisterDeviceRequest.cc
|
|
src/model/BatchRegisterDeviceResult.cc
|
|
src/model/DeleteRuleActionRequest.cc
|
|
src/model/DeleteRuleActionResult.cc
|
|
src/model/PubBroadcastRequest.cc
|
|
src/model/PubBroadcastResult.cc )
|
|
|
|
add_library(iot ${LIB_TYPE}
|
|
${iot_public_header}
|
|
${iot_public_header_model}
|
|
${iot_src})
|
|
|
|
set_target_properties(iot
|
|
PROPERTIES
|
|
LINKER_LANGUAGE CXX
|
|
ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
|
|
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
|
|
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
|
|
OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}iot
|
|
)
|
|
|
|
if(${LIB_TYPE} STREQUAL "SHARED")
|
|
set_target_properties(iot
|
|
PROPERTIES
|
|
DEFINE_SYMBOL ALIBABACLOUD_IOT_LIBRARY)
|
|
endif()
|
|
|
|
target_include_directories(iot
|
|
PRIVATE include
|
|
${CMAKE_SOURCE_DIR}/core/include
|
|
)
|
|
target_link_libraries(iot
|
|
core)
|
|
|
|
if(CMAKE_HOST_WIN32)
|
|
ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
|
|
set(jsoncpp_install_dir ${INSTALL_DIR})
|
|
add_dependencies(iot
|
|
jsoncpp)
|
|
target_include_directories(iot
|
|
PRIVATE ${jsoncpp_install_dir}/include)
|
|
target_link_libraries(iot
|
|
${jsoncpp_install_dir}/lib/jsoncpp.lib)
|
|
set_target_properties(iot
|
|
PROPERTIES
|
|
COMPILE_OPTIONS "/bigobj")
|
|
else()
|
|
target_include_directories(iot
|
|
PRIVATE /usr/include/jsoncpp)
|
|
target_link_libraries(iot
|
|
jsoncpp)
|
|
endif()
|
|
|
|
install(FILES ${iot_public_header}
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/iot)
|
|
install(FILES ${iot_public_header_model}
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/iot/model)
|
|
install(TARGETS iot
|
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
) |