view Resources/CommandTool/flatc-tests/basic/CMakeLists.txt @ 445:ee41b6a017d7 bgo-commands-codegen

dumb change
author bgo-osimis
date Wed, 16 Jan 2019 16:24:45 +0100
parents
children
line wrap: on
line source

cmake_minimum_required(VERSION 2.8.3)

project(BasicFlatBuffersTest)

set(AUTOGENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/AUTOGENERATED")
set(AUTOGENERATED_SOURCES)

set(FLATC_EXECUTABLE "flatc")

set(DEPOT_ROOT "/osimis")

set(SCRIPT_CPP_OPTIONS)
list(APPEND SCRIPT_CPP_OPTIONS "--gen-object-api")
list(APPEND SCRIPT_CPP_OPTIONS "--cpp")
list(APPEND SCRIPT_CPP_OPTIONS "--gen-onefile")
list(APPEND SCRIPT_CPP_OPTIONS "--gen-all")
list(APPEND SCRIPT_CPP_OPTIONS "--force-empty")
list(APPEND SCRIPT_CPP_OPTIONS "--reflect-types")
list(APPEND SCRIPT_CPP_OPTIONS "--reflect-names")

set(SCRIPT_TS_OPTIONS)
list(APPEND SCRIPT_TS_OPTIONS "--gen-object-api")
list(APPEND SCRIPT_TS_OPTIONS "--ts")
list(APPEND SCRIPT_TS_OPTIONS "--gen-onefile")
list(APPEND SCRIPT_TS_OPTIONS "--gen-all")
list(APPEND SCRIPT_TS_OPTIONS "--no-js-exports")
list(APPEND SCRIPT_TS_OPTIONS "--force-empty")
list(APPEND SCRIPT_TS_OPTIONS "--reflect-types")
list(APPEND SCRIPT_TS_OPTIONS "--reflect-names")

set(SCRIPT_JS_OPTIONS)
list(APPEND SCRIPT_JS_OPTIONS "--gen-object-api")
list(APPEND SCRIPT_JS_OPTIONS "--js")
list(APPEND SCRIPT_JS_OPTIONS "--gen-onefile")
list(APPEND SCRIPT_JS_OPTIONS "--gen-all")
list(APPEND SCRIPT_JS_OPTIONS "--no-js-exports")
list(APPEND SCRIPT_JS_OPTIONS "--force-empty")
list(APPEND SCRIPT_JS_OPTIONS "--reflect-types")
list(APPEND SCRIPT_JS_OPTIONS "--reflect-names")

set(SCHEMA_FILE "${CMAKE_CURRENT_LIST_DIR}/basic.fbs")
set(AUTOGENERATED_CPP_FILE "${CMAKE_BINARY_DIR}/basic_generated.h")
set(AUTOGENERATED_TS_FILE "${CMAKE_BINARY_DIR}/basic_generated.ts")
set(AUTOGENERATED_JS_FILE "${CMAKE_BINARY_DIR}/basic_generated.js")

add_custom_command(
  OUTPUT
  ${AUTOGENERATED_CPP_FILE}
  COMMAND 
  ${FLATC_EXECUTABLE} ${SCRIPT_CPP_OPTIONS} ${SCHEMA_FILE}
  DEPENDS
  ${SCHEMA_FILE}
  )

add_custom_command(
  OUTPUT
  ${AUTOGENERATED_TS_FILE}
  COMMAND 
  ${FLATC_EXECUTABLE} ${SCRIPT_TS_OPTIONS} ${SCHEMA_FILE}
  DEPENDS
  ${SCHEMA_FILE}
  )

add_custom_command(
  OUTPUT
  ${AUTOGENERATED_JS_FILE}
  COMMAND 
  ${FLATC_EXECUTABLE} ${SCRIPT_JS_OPTIONS} ${SCHEMA_FILE}
  DEPENDS
  ${SCHEMA_FILE}
  )

list(APPEND AUTOGENERATED_SOURCES ${AUTOGENERATED_CPP_FILE} ${AUTOGENERATED_TS_FILE} ${AUTOGENERATED_JS_FILE})

message("AUTOGENERATED_SOURCES = ${AUTOGENERATED_SOURCES}")
add_executable(BasicFlatBuffersTest main.cpp ${SCHEMA_FILE} ${AUTOGENERATED_SOURCES})

target_include_directories(BasicFlatBuffersTest PRIVATE ${DEPOT_ROOT}/ThirdParty/flatbuffers-1.10/include)
target_include_directories(BasicFlatBuffersTest PRIVATE ${CMAKE_BINARY_DIR})