blob: a7f85ec871ad7b856ddaf43a19133cf87d6a15cb [file] [log] [blame]
Ruomei Yandb7c3912019-03-08 17:50:25 +00001#
2# Copyright © 2017 Arm Ltd. All rights reserved.
3# SPDX-License-Identifier: MIT
4#
5if(BUILD_ARMNN_SERIALIZER)
6 file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/ArmnnSchema_generated.h)
7 add_custom_command (
8 OUTPUT ArmnnSchema_generated.h
9 COMMAND ${FLATC_DIR}/flatc -o ${CMAKE_CURRENT_BINARY_DIR} --cpp
10 ${CMAKE_CURRENT_SOURCE_DIR}/ArmnnSchema.fbs
11 )
12
13 set(armnn_serializer_sources)
14 list(APPEND armnn_serializer_sources
15 ../../include/armnnSerializer/ISerializer.hpp
16 ../../include/armnnDeserializer/IDeserializer.hpp
17 ArmnnSchema_generated.h
18 Serializer.hpp
19 Serializer.cpp
20 SerializerUtils.hpp
21 SerializerUtils.cpp
22 ../armnnDeserializer/Deserializer.hpp
23 ../armnnDeserializer/Deserializer.cpp
24 )
25
26 add_library_ex(armnnSerializer SHARED ${armnn_serializer_sources})
27
28 include_directories(SYSTEM "${FLATBUFFERS_INCLUDE_PATH}")
29 set_target_properties(armnnSerializer PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
30 target_include_directories(armnnSerializer PRIVATE ../armnn)
31 target_include_directories(armnnSerializer PRIVATE ../armnnUtils)
32
33 # System include to suppress warnings for flatbuffers generated files
34 target_include_directories(armnnSerializer SYSTEM PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
35
36 target_link_libraries(armnnSerializer armnn ${FLATBUFFERS_LIBRARY})
Matthew Benthama7b79282019-06-03 13:00:50 +010037
38 install(TARGETS armnnSerializer
39 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
40endif()