# Camwire library build configuration
# $Id: CMakeLists.txt,v 20.0 2011/02/17 02:09:41 johanns Exp $

# Configure a header file to pass CMake Camwire_VERSION_* settings to the source code:
configure_file (
  "${PROJECT_SOURCE_DIR}/camwire/camwire_config.h.in"
  "${PROJECT_BINARY_DIR}/camwire/camwire_config.h"
  )

# INCS:
include_directories(${PROJECT_BINARY_DIR})  # To find camwire/camwire_config.h
include_directories(${PROJECT_SOURCE_DIR})  # To find camwire/*.h

# The Camwire library targets:
add_library(camwire SHARED
	camwirebus.c
	camwire.c
	camwirebus.h
	camwire.h)
set_target_properties (camwire  PROPERTIES
	OUTPUT_NAME camwire
	CLEAN_DIRECT_OUTPUT 1)

add_library(camwire_static STATIC
	camwirebus.c
	camwire.c
	camwirebus.h
	camwire.h)
set_target_properties (camwire_static  PROPERTIES
	OUTPUT_NAME camwire
	CLEAN_DIRECT_OUTPUT 1)

# Support definition of Camwire's CAMWIRE_DEBUG:
string (TOUPPER "${CMAKE_BUILD_TYPE}" Camwire_BUILD_TYPE_UPPER)
if ((Camwire_BUILD_TYPE_UPPER STREQUAL DEBUG) OR
    (Camwire_BUILD_TYPE_UPPER STREQUAL RELWITHDEBINFO))
  set_target_properties (camwire  PROPERTIES
	COMPILE_DEFINITIONS CAMWIRE_DEBUG)
  set_target_properties (camwire_static  PROPERTIES
	COMPILE_DEFINITIONS CAMWIRE_DEBUG)
endif ()

# Properties of shared lib:
set_target_properties (camwire  PROPERTIES
	VERSION ${Camwire_VERSION_STRING}
	SOVERSION ${Camwire_SOVERSION}
	SKIP_BUILD_RPATH ON)

# What to install where:
install (TARGETS camwire camwire_static DESTINATION lib)
install (FILES camwirebus.h camwire.h camwire_handle.h DESTINATION include/camwire)
