if(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
  file(GLOB_RECURSE QML_JS_FILES *.qml *.js)
  add_custom_target(lomiri-calculator-app_QMlFiles ALL SOURCES ${QML_JS_FILES})
endif(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")

list(APPEND ${APP_HARDCODE}_SRCS
  main.cpp
  ${QML_JS_FILES}
)

configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h @ONLY)

list(APPEND ${APP_HARDCODE}_SRCS
  ${CMAKE_CURRENT_BINARY_DIR}/config.h
)

add_executable(${APP_HARDCODE} ${${APP_HARDCODE}_SRCS})

target_include_directories(${APP_HARDCODE} PRIVATE
  ${CMAKE_CURRENT_BINARY_DIR}
)

target_link_libraries(${APP_HARDCODE} PUBLIC
  Qt5::Core
  Qt5::Qml
  Qt5::Quick
)

install(TARGETS ${APP_HARDCODE} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

if(CLICK_MODE)
  install(FILES ${ICON_FILE} DESTINATION ${CMAKE_INSTALL_PREFIX})
  install(FILES ${SPLASH_FILE} DESTINATION ${CMAKE_INSTALL_PREFIX})
else (CLICK_MODE)
  install(FILES ${ICON_FILE} DESTINATION ${LOMIRI-CALCULATOR-APP_DIR})
  install(FILES ${SPLASH_FILE} DESTINATION ${LOMIRI-CALCULATOR-APP_DIR})
endif(CLICK_MODE)
install(FILES ${MAIN_QML} DESTINATION ${LOMIRI-CALCULATOR-APP_DIR})

add_subdirectory(engine)
add_subdirectory(ui)
add_subdirectory(upstreamcomponents)
