foreach(name IN ITEMS dump defrag split cat version)
  add_executable(sion${name} sion${name}.c)
  target_link_libraries(sion${name}
    PRIVATE
    SIONlib::serial
  )
  set_target_properties(sion${name} PROPERTIES
    EXPORT_NAME ${name}
  )
  add_executable(SIONlib::${name} ALIAS sion${name})
endforeach()

set(INSTDIR "${CMAKE_INSTALL_PREFIX}")
if(SIONlib_SIONfwd)
  find_package(PkgConfig REQUIRED QUIET)
  if(SIONfwd_ROOT)
    list(APPEND CMAKE_PREFIX_PATH "${SIONfwd_ROOT}")
  endif()
  pkg_check_modules(SIONFWD REQUIRED QUIET sionfwd-client)
  list(JOIN SIONFWD_STATIC_LDFLAGS " " SIONFWD_LIBS)
endif()
if(SIONlib_IME_NATIVE)
  find_package(IMENative REQUIRED)
  get_property(IME_LIBS TARGET IMENative::client PROPERTY IMPORTED_LOCATION)
  set(IME_CFLAGS "-D_SION_IME_NATIVE")
endif()
if(SIONlib_HINTS_GPFS)
  set(HINTSLIB "-L/usr/lpp/mmfs/lib -lgpfs")
endif()
configure_file(sionconfig.in sionconfig @ONLY)

install(TARGETS
  siondump
  siondefrag
  sionsplit
  sioncat
  sionversion
  EXPORT SIONlibUtilsTargets
  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
  PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
)
install(EXPORT SIONlibUtilsTargets
  FILE SIONlibUtilsTargets.cmake
  NAMESPACE SIONlib::
  DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/SIONlib
)
install(
  PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/sionconfig"
  DESTINATION  "${CMAKE_INSTALL_BINDIR}"
  # TYPE BIN # only availably in CMake 3.14 and newer
)
