1 nnas_find_package(FlatBuffers EXACT 2.0 QUIET)
3 if(NOT FlatBuffers_FOUND)
4 message(STATUS "mio-circle06 skip: FlatBuffers 2.0 NOT FOUND")
6 endif(NOT FlatBuffers_FOUND)
8 message(STATUS "Build mio-circle06: TRUE")
10 # TODO Find a better way
12 # set(SCHEMA_FILE "${NNAS_PROJECT_SOURCE_DIR}/nnpackage/schema/circle_schema.fbs")
13 set(SCHEMA_FILE "${NNAS_PROJECT_SOURCE_DIR}/res/CircleSchema/0.6/circle_schema.fbs")
15 # NOTE Copy circle_schema.fbs as schema.fbs to generate "schema_generated.fbs" instead of "circle_schema_generated.fbs"
16 add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/schema.fbs"
17 COMMAND ${CMAKE_COMMAND} -E copy "${SCHEMA_FILE}" schema.fbs
18 WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
19 DEPENDS "${SCHEMA_FILE}"
22 FlatBuffers_Target(mio_circle06
23 OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/gen/mio/circle"
24 INCLUDE_DIR "${CMAKE_CURRENT_BINARY_DIR}/gen"
25 SCHEMA_DIR "${CMAKE_CURRENT_BINARY_DIR}"
26 SCHEMA_FILES "schema.fbs"
29 # This example shows how to use "mio-circle06" library
30 add_executable(mio_circle06_example example.cpp)
31 target_link_libraries(mio_circle06_example mio_circle06)
33 file(GLOB_RECURSE SOURCES "src/*.cpp")
34 file(GLOB_RECURSE TESTS "src/*.test.cpp")
35 list(REMOVE_ITEM SOURCES ${TESTS})
37 add_library(mio_circle06_helper STATIC ${SOURCES})
38 set_target_properties(mio_circle06_helper PROPERTIES POSITION_INDEPENDENT_CODE ON)
39 target_include_directories(mio_circle06_helper PRIVATE src)
40 target_include_directories(mio_circle06_helper PUBLIC include)
41 target_link_libraries(mio_circle06_helper mio_circle06)
45 endif(NOT ENABLE_TEST)
47 nnas_find_package(GTest REQUIRED)
49 GTest_AddTest(mio_circle06_helper_test ${TESTS})
50 target_include_directories(mio_circle06_helper_test PRIVATE src)
51 target_link_libraries(mio_circle06_helper_test mio_circle06)
52 target_link_libraries(mio_circle06_helper_test mio_circle06_helper)