set( CEGUI_TARGET_NAME ${CEGUI_TOLUAPP_GENERATOR_EXENAME} )

set( CORE_SOURCE_FILES
    toluabind.c
    tolua.c
)

if ((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") OR (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
    set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter")
endif ()

add_executable(${CEGUI_TARGET_NAME} ${CORE_SOURCE_FILES})

if (CEGUI_HAS_BUILD_SUFFIX AND CEGUI_BUILD_SUFFIX)
    set_target_properties(${CEGUI_TARGET_NAME} PROPERTIES
        OUTPUT_NAME_DEBUG "${CEGUI_TARGET_NAME}${CEGUI_BUILD_SUFFIX}"
    )
endif()

if (CEGUI_BUILD_STATIC_CONFIGURATION)
    add_executable(${CEGUI_TARGET_NAME}_Static ${CORE_SOURCE_FILES})
    if (CEGUI_HAS_BUILD_SUFFIX AND CEGUI_BUILD_SUFFIX)
        set_target_properties(${CEGUI_TARGET_NAME}_Static PROPERTIES
            OUTPUT_NAME_DEBUG "${CEGUI_TARGET_NAME}_Static${CEGUI_BUILD_SUFFIX}"
        )
    endif()
endif()

cegui_add_dependency(${CEGUI_TARGET_NAME} TOLUAPP PRIVATE TRUE)
cegui_add_dependency(${CEGUI_TARGET_NAME} LUA51 PRIVATE TRUE)

install(TARGETS ${CEGUI_TARGET_NAME}
    RUNTIME DESTINATION bin COMPONENT cegui_lua
    LIBRARY DESTINATION ${CEGUI_LIB_INSTALL_DIR} COMPONENT cegui_lua
    ARCHIVE DESTINATION ${CEGUI_LIB_INSTALL_DIR} COMPONENT cegui_lua
    )

if (CEGUI_BUILD_STATIC_CONFIGURATION)
    install(TARGETS ${CEGUI_TARGET_NAME}_Static
      RUNTIME DESTINATION bin COMPONENT cegui_lua
      LIBRARY DESTINATION ${CEGUI_LIB_INSTALL_DIR} COMPONENT cegui_lua
      ARCHIVE DESTINATION ${CEGUI_LIB_INSTALL_DIR} COMPONENT cegui_lua
      )
endif()

