# - Locate Opal include paths and libraries
#  Opal can be found at www.voxgratia.org
#  Written by Frederic Heem, frederic.heem _at_ telsey.it

# This module defines
#  OPAL_INCLUDE_DIR, where to find opal/manager.h, etc.
#  OPAL_LIBRARIES, the libraries to link against to use opal.
#  OPAL_FOUND, true if opal has been found

#Pwlib is required by Opal
FIND_PACKAGE(Pwlib REQUIRED)

#Found the Opal package
PKGCONFIG_FOUND(opal OPAL_FOUND)

IF(OPAL_FOUND)
  MESSAGE(STATUS "Opal found")
ELSE(OPAL_FOUND)
  MESSAGE(FATAL "Opal cannot be found")
ENDIF(OPAL_FOUND)

#Include path
SET(OPAL_INCLUDE_PATH_DESCRIPTION "directory containing the opal include files. E.g /home/fred/opal/include or c:\\opal\\include")

FIND_PATH(OPAL_INCLUDE_DIR opal/manager.h
  $ENV{OPALDIR}/include
  /usr/local/include
  /usr/include
  DOC " ${OPAL_INCLUDE_PATH_DESCRIPTION}"
  NO_DEFAULT_PATH  
)

IF(OPAL_INCLUDE_DIR)
  MESSAGE(STATUS "Opal include dir set to ${OPAL_INCLUDE_DIR}")
ELSE(OPAL_INCLUDE_DIR)
  MESSAGE(FATAL "Opal include dir cannot be found")
ENDIF(OPAL_INCLUDE_DIR)

#Library
SET(PWLIB_LIB_PATH_DESCRIPTION "The directory containing the opal library. E.g /home/fred/opal/lib or c:\\opal\\lib")

FIND_LIBRARY(OPAL_LIBRARIES
  NAMES 
    opal
  PATHS
    $ENV{OPALDIR}/lib
    /usr/local/lib
    /usr/lib
  DOC " ${OPAL_LIB_PATH_DESCRIPTION}"
  NO_DEFAULT_PATH  
)

IF(OPAL_LIBRARIES)
  MESSAGE(STATUS "Opal lib set to ${OPAL_LIBRARIES}")
ELSE(OPAL_LIBRARIES)
  MESSAGE(FATAL "Opal library cannot be found")
ENDIF(OPAL_LIBRARIES)

#Version
PKGCONFIG_VERSION(opal OPAL_VERSION)
MESSAGE(STATUS "Opal version is ${OPAL_VERSION}")

MARK_AS_ADVANCED(
  OPAL_INCLUDE_DIR
  OPAL_LIBRARIES
) 
