######################################################################################
# Build function for utilities libraries
######################################################################################

LINK_DIRECTORIES(${LIBRARY_OUTPUT_PATH})

SET(DEPEND ${LIBNIFALCON_CPP}_DEPEND)

#Command Line Base Utility
IF(Boost_PROGRAM_OPTIONS_FOUND)

  SET(NP_EXE_CPP_DEFINES)
  LIBNIFALCON_COMM_VAR_SETUP()

  SET(CPP_LINK_LIBS 
	${LIBNIFALCON_CPP} 
	${Boost_PROGRAM_OPTIONS_LIBRARY_RELEASE} 
	${NP_EXE_CPP_LINK_LIBS} 
	${LIBNIFALCON_REQ_LIBS}
	)

  SET(SRCS
	"FalconCLIBase.cpp" 
	"${LIBNIFALCON_INCLUDE_DIRS}/falcon/util/FalconCLIBase.h"
	)
  NP_BUILD_LIB(
	NAME ${LIBNIFALCON_CPP_CLI_BASE} 
	SOURCES "${SRCS}"
	CXX_FLAGS "${NP_EXE_CPP_DEFINES}" 
	LINK_LIBS "${CPP_LINK_LIBS}" 
	LINK_FLAGS FALSE 
	DEPENDS "${DEPEND}"
	SHOULD_INSTALL TRUE
	VERSION ${LIBNIFALCON_VERSION}
	)
ENDIF(Boost_PROGRAM_OPTIONS_FOUND)

#Boost thread library
IF(Boost_THREAD_FOUND)
  SET(CPP_LINK_LIBS 
	${LIBNIFALCON_CPP} 
	${Boost_THREAD_LIBRARY_RELEASE}
	${LIBNIFALCON_REQ_LIBS}
	)
  SET(SRCS
	"FalconDeviceBoostThread.cpp" 
	"${LIBNIFALCON_INCLUDE_DIRS}/falcon/util/FalconDeviceBoostThread.h"
	)
  NP_BUILD_LIB(
	NAME ${LIBNIFALCON_CPP_BOOST_THREAD} 
	SOURCES "${SRCS}"
	CXX_FLAGS FALSE 
	LINK_LIBS "${CPP_LINK_LIBS}" 
	LINK_FLAGS FALSE 
	DEPENDS "${DEPEND}"
	SHOULD_INSTALL TRUE
	VERSION ${LIBNIFALCON_VERSION}
	)
ENDIF(Boost_THREAD_FOUND)
