#################################################
#
#  (C) 2017 Slávek Banko
#  slavek (DOT) banko (AT) axis.cz
#
#  Improvements and feedback are welcome
#
#  This file is released under GPL >= 2
#
#################################################

include_directories(
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMAKE_BINARY_DIR}
  ${ARTS_INCLUDE_DIRS}
  ${TQT_INCLUDE_DIRS}
  ${TDE_INCLUDE_DIR}
)

link_directories(
  ${TQT_LIBRARY_DIRS}
  ${ARTS_LIBRARY_DIRS}
)

add_definitions(
  -DEXAMPLES_DIR="${DATA_INSTALL_DIR}/artsbuilder/examples"
)


##### artsbuilder (library) #####################

tde_add_library( artsbuilder SHARED
  SOURCES
    artsbuilder.cpp sequenceutils.cpp
    structurebuilder_impl.cpp structures_impl.cpp moduleinfo.cpp
    compatibility.cpp localfactory_impl.cpp artsbuilderloader_impl.cpp
  VERSION 0.0.0
  LINK
    mcop artsflow artsflow_idl ${DL_LIBRARIES} ${ARTS_LIBRARIES}
  DESTINATION ${LIB_INSTALL_DIR}
)

add_custom_command(
  OUTPUT
    artsbuilder.cpp artsbuilder.h
    artsbuilder.mcoptype artsbuilder.mcopclass
  COMMAND ${ARTS_MCOPIDL_EXECUTABLE} -t
    -I${ARTS_INCLUDEDIR} ${CMAKE_CURRENT_SOURCE_DIR}/artsbuilder.idl
  DEPENDS artsbuilder.idl
)


##### other data ################################

install(
  FILES
    artsbuilder.idl
    ${CMAKE_CURRENT_BINARY_DIR}/artsbuilder.h
  DESTINATION ${INCLUDE_INSTALL_DIR}/arts
)

install(
  FILES
    ${CMAKE_CURRENT_BINARY_DIR}/artsbuilder.mcoptype
    ${CMAKE_CURRENT_BINARY_DIR}/artsbuilder.mcopclass
  DESTINATION ${LIB_INSTALL_DIR}/mcop
)

install(
  FILES
    StructureBuilder.mcopclass StructureDesc.mcopclass
    LocalFactory.mcopclass ArtsBuilderLoader.mcopclass
  DESTINATION ${LIB_INSTALL_DIR}/mcop/Arts
)
