#========================================================================
# -*- mode: cmake -*-
#------------------------------------------------------------------------
#------------------------------------------------------------------------
# Establish search path for macros
#------------------------------------------------------------------------
list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_SOURCE_DIR}/Modules")

cmake_minimum_required(VERSION 3.0.2)

set( PROJECT_NAME ldas-tools-cmake )
set( PROJECT_VERSION 1.3.0 )
set( planguages NONE )

set(
  PROJECT_DESCRIPTION
  "This is a collection of CMake functions specific to the LDAS Tools Suite"
  )
set(
  PROJECT_DESCRIPTION_LONG
  "This collection of cmake macros was developed as part of"
  "the LDAS Tools Suite to have consitency across all of the packages"
  )

set( PROJECT_BUG_REPORT_URL "https://git.ligo.org/ldastools/LDAS_Tools/issues"
  CACHE INTERNAL "URL of where to submit problems" )
set( PROJECT_HOMEPAGE_URL "https://wiki.ligo.org/Computing/LDASTools"
  CACHE INTERNAL "Homepage URL for Project" )

set(IGWN_CMAKE_VERSION 1.3.2)

#------------------------------------------------------------------------
# Find the larger collection of macros
#------------------------------------------------------------------------

include( GNUInstallDirs )

if ( NOT DEFINED IGWN_CMAKE_MODULE_DIRS )
  set(IGWN_CMAKE_MODULE_DIRS
    ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/igwn-cmake/cmake/Modules
    ${CMAKE_INSTALL_FULL_DATADIR}/igwn-cmake/cmake/Modules
    )
endif( )

message( "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}" )
message( "CMAKE_INSTALL_FULL_DATADIR: ${CMAKE_INSTALL_FULL_DATADIR}" )
message( "IGWN_CMAKE_MODULE_DIRS: ${IGWN_CMAKE_MODULE_DIRS}" )
find_package(
  IGWNCMake ${IGWN_CMAKE_VERSION}
  CONFIG
  REQUIRED
  HINTS ${IGWN_CMAKE_MODULE_DIRS}
  PATHS ${IGWN_CMAKE_MODULE_DIRS}
  )

#------------------------------------------------------------------------
# Preload common packages
#------------------------------------------------------------------------

include( CTest )
include( IGWNCMakeInstallDirs )
include( LDASToolsInstallDirs )
include( Autotools/Autotools )
include( Autotools/Archive/Archive )
include( Autotools/ArchiveX/ArchiveX )

#========================================================================
# Configure PROJECT
#------------------------------------------------------------------------

cm_prereq(3.2)
cm_init(
  ${PROJECT_NAME}
  "${PROJECT_VERSION}"
  ${PROJECT_BUG_REPORT_URL}
  ${PROJECT_NAME}
  ${PROJECT_HOMEPAGE_URL}
  LANGUAGES ${planguages}
  DESCRIPTION "${PROJECT_DESCRIPTION}"
  )

#========================================================================
# Traverse the tree
#------------------------------------------------------------------------

add_subdirectory(config)
add_subdirectory(Modules)
#add_subdirectory(doc)

#========================================================================
# Prepare for testing
#------------------------------------------------------------------------

include(CTest)
enable_testing( )

#========================================================================
# Prepare the distribution
#------------------------------------------------------------------------

cx_cpack( MACPORTS_CATEGORY devel )
