cmake_minimum_required(VERSION 2.4.7) ################## INDI version ################################ set(INDI_VERSION "0.6") set(INDI_SOVERSION "0") set(CMAKE_INDI_VERSION_MAJOR 0) set(CMAKE_INDI_VERSION_MINOR 6) set(CMAKE_INDI_VERSION_RELEASE 1) set(CMAKE_INDI_VERSION_STRING "${CMAKE_INDI_VERSION_MAJOR}.${CMAKE_INDI_VERSION_MINOR}.${CMAKE_INDI_VERSION_RELEASE}") ################## Paths ################################ set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules/") set(DATA_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/indi/") set(BIN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/bin") set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include") MESSAGE( STATUS "BIN_INSTALL_DIR: " ${BIN_INSTALL_DIR} ) ################## setup install directories ################################ set (LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" ) set (LIB_DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE STRING "Library directory name") ## the following are directories where stuff will be installed to set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/" CACHE PATH "The subdirectory to the header prefix") set(PKGCONFIG_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig/" CACHE STRING "Base directory for pkgconfig files") ################## Includes ################################ Include (CheckCXXSourceCompiles) include (MacroOptionalFindPackage) include (MacroLogFeature) include (MacroBoolTo01) include (CheckIncludeFiles) find_package(ZLIB REQUIRED) macro_optional_find_package(USB) macro_log_feature(LIBUSB_FOUND "libusb" "User level access to USB devices" "http://indi.sf.net" FALSE "" "Provides support for USB based drivers in INDI.") macro_optional_find_package(CFITSIO) if (NOT CFITSIO_FOUND OR CFITSIO_VERSION_MAJOR LESS 3) message(FATAL_ERROR "CFITSIO version too old, Please install cfitsio 3.x and try again. http://indi.sf.net") endif (NOT CFITSIO_FOUND OR CFITSIO_VERSION_MAJOR LESS 3) macro_bool_to_01(CFITSIO_FOUND HAVE_CFITSIO_H) macro_log_feature(CFITSIO_FOUND "libcfitsio" "A library for reading and writing data files in FITS (Flexible Image Transport System) data format" "http://indi.sf.net" FALSE "3.03" "Provides INDI with FITS I/O support.") macro_optional_find_package(FLI) macro_log_feature(FLI_FOUND "libfli" "Finger Lakes Instrument Library" "http://indi.sourceforge.net/" FALSE "1.71" "Provides INDI with support for controlling FLI CCDS & Filter Wheels.") macro_optional_find_package(Nova) macro_bool_to_01(NOVA_FOUND HAVE_NOVA_H) macro_log_feature(NOVA_FOUND "libnova" "A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library" "http://indi.sf.net" FALSE "0.12.1" "Provides INDI with astrodynamics library.") check_include_files(linux/videodev2.h HAVE_LINUX_VIDEODEV2_H) check_include_files(termios.h TERMIOS_FOUND) macro_bool_to_01(TERMIOS_FOUND HAVE_TERMIOS_H) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h ) include_directories( ${CMAKE_CURRENT_BINARY_DIR}) include_directories( ${CMAKE_SOURCE_DIR}) include_directories( ${CMAKE_SOURCE_DIR}/libs) include_directories( ${CMAKE_SOURCE_DIR}/libs/webcam) if (CFITSIO_FOUND) include_directories(${CFITSIO_INCLUDE_DIR}) endif (CFITSIO_FOUND) if (NOVA_FOUND) include_directories(${NOVA_INCLUDE_DIR}) endif (NOVA_FOUND) if (FLI_FOUND) include_directories(${FLI_INCLUDE_DIR}) endif (FLI_FOUND) set(liblilxml_SRCS ${CMAKE_SOURCE_DIR}/libs/lilxml.c ) set(libindicom_SRCS ${CMAKE_SOURCE_DIR}/libs/indicom.c ${CMAKE_SOURCE_DIR}/base64.c ) set(libwebcam_SRCS ${CMAKE_SOURCE_DIR}/libs/webcam/PPort.cpp ${CMAKE_SOURCE_DIR}/libs/webcam/port.cpp ${CMAKE_SOURCE_DIR}/libs/webcam/v4l2_base.cpp ${CMAKE_SOURCE_DIR}/libs/webcam/ccvt_c2.c ${CMAKE_SOURCE_DIR}/libs/webcam/ccvt_misc.c ) set (indimain_SRCS ${CMAKE_SOURCE_DIR}/indidrivermain.c ${CMAKE_SOURCE_DIR}/eventloop.c ) ###################################### ########### INDI SERVER ############## ###################################### set(indiserver_SRCS indiserver.c fq.c) add_executable(indiserver ${indiserver_SRCS} ${liblilxml_SRCS}) target_link_libraries(indiserver pthread ) if (NOVA_FOUND) target_link_libraries(indiserver ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indiserver RUNTIME DESTINATION bin ) ###################################### ######## INDI Static Library ######### ###################################### add_library(indidriver STATIC ${indimain_SRCS}) install(TARGETS indidriver ARCHIVE DESTINATION lib${LIB_POSTFIX}) ###################################### ######## INDI Shared Library ######### ###################################### add_library(indi SHARED ${libindicom_SRCS} ${liblilxml_SRCS}) target_link_libraries(indi m z) if (NOVA_FOUND) target_link_libraries(indi ${NOVA_LIBRARIES}) endif(NOVA_FOUND) if (CFITSIO_FOUND) target_link_libraries(indi ${CFITSIO_LIBRARIES}) endif(CFITSIO_FOUND) if (FLI_FOUND) target_link_libraries(indi ${FLI_LIBRARIES}) endif(FLI_FOUND) install(TARGETS indi LIBRARY DESTINATION lib${LIB_POSTFIX}) set_target_properties(indi PROPERTIES VERSION ${INDI_VERSION} SOVERSION ${INDI_SOVERSION}) ##################################### ########## TELESCOPE GROUP ########## ##################################### ########### LX200 Basic ############# set(lx200basic_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200driver.c ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200basic.cpp ) add_executable(indi_lx200basic ${lx200basic_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) if (NOVA_FOUND) target_link_libraries(indi_lx200basic ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_lx200basic RUNTIME DESTINATION bin ) ################################################################################# ########### LX200 Generic ########### set(lx200generic_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200driver.c ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200autostar.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200_16.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200gps.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200generic.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200classic.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200apdriver.c ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200ap.cpp ) add_executable(indi_lx200generic ${lx200generic_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_lx200generic m ) if (NOVA_FOUND) target_link_libraries(indi_lx200generic ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_lx200generic RUNTIME DESTINATION bin ) file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_lx200generic_symlink.cmake "exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${BIN_INSTALL_DIR}/indi_lx200generic ${BUILD_ROOT}${BIN_INSTALL_DIR}/indi_lx200classic)\n exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${BIN_INSTALL_DIR}/indi_lx200generic ${BUILD_ROOT}${BIN_INSTALL_DIR}/indi_lx200autostar)\n exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${BIN_INSTALL_DIR}/indi_lx200generic ${BUILD_ROOT}${BIN_INSTALL_DIR}/indi_lx200_16)\n exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${BIN_INSTALL_DIR}/indi_lx200generic ${BUILD_ROOT}${BIN_INSTALL_DIR}/indi_lx200gps)\n exec_program(${CMAKE_COMMAND} ARGS -E create_symlink ${BIN_INSTALL_DIR}/indi_lx200generic ${BUILD_ROOT}${BIN_INSTALL_DIR}/indi_lx200ap)\n ") set_target_properties(indi_lx200generic PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/make_lx200generic_symlink.cmake) ################################################################################# ########### Celestron GPS ############ set(celestrongps_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/celestronprotocol.c ${CMAKE_SOURCE_DIR}/drivers/telescope/celestrongps.cpp ) add_executable(indi_celestron_gps ${celestrongps_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_celestron_gps m ) if (NOVA_FOUND) target_link_libraries(indi_celestron_gps ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_celestron_gps RUNTIME DESTINATION bin ) ################################################################################# ########### Orion Atlas ############# set(orionatlas_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/orionatlas.cpp ) add_executable(indi_orion_atlas ${orionatlas_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) #target_link_libraries(indi_orion_atlas ${KDE4_KDECORE_LIBS}) if (NOVA_FOUND) target_link_libraries(indi_orion_atlas ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_orion_atlas RUNTIME DESTINATION bin ) ################################################################################# ########### Takahashi Temma ########## if (NOVA_FOUND) set(temma_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/temmadriver.c ) add_executable(indi_temma ${temma_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_temma ${NOVA_LIBRARIES} m ) install(TARGETS indi_temma RUNTIME DESTINATION bin ) endif (NOVA_FOUND) ################################################################################# ########### Sky Commander ############# set(skycommander_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200driver.c ${CMAKE_SOURCE_DIR}/drivers/telescope/skycommander.c ) add_executable(indi_skycommander ${skycommander_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_skycommander m ) if (NOVA_FOUND) target_link_libraries(indi_skycommander ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_skycommander RUNTIME DESTINATION bin ) ################################################################################# ########### Intelliscope ############### set(intelliscope_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/lx200driver.c ${CMAKE_SOURCE_DIR}/drivers/telescope/intelliscope.c ) add_executable(indi_intelliscope ${intelliscope_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_intelliscope m ) if (NOVA_FOUND) target_link_libraries(indi_intelliscope ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_intelliscope RUNTIME DESTINATION bin ) ########### BAO ############### set(BAO_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/telescope/Socket.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/ServerSocket.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/astro.cpp ${CMAKE_SOURCE_DIR}/drivers/telescope/BAO.cpp ) add_executable(indi_BAO ${BAO_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_BAO m -lpthread ) if (NOVA_FOUND) target_link_libraries(indi_BAO ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_BAO RUNTIME DESTINATION bin ) ##################################### ########## FOCUSER GROUP ############ ##################################### ###### FLI Precision Digital Focuser ###### if (FLI_FOUND) set(flipdf_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/focuser/fli_pdf.c ) add_executable(indi_fli_pdf ${flipdf_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_fli_pdf m ${FLI_LIBRARIES}) if (NOVA_FOUND) target_link_libraries(indi_fli_pdf ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_fli_pdf RUNTIME DESTINATION bin ) endif(FLI_FOUND) ################################################################################# ################ Robo Focuser ################ set(robofocus_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/focuser/robofocus.c ${CMAKE_SOURCE_DIR}/drivers/focuser/robofocusdriver.c ) add_executable(indi_robofocus ${robofocus_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_robofocus m) if (NOVA_FOUND) target_link_libraries(indi_robofocus ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_robofocus RUNTIME DESTINATION bin ) ################################################################################# ##################################### ######## FILTER WHEEL GROUP ######### ##################################### ########## True Technology Wheel ############ set(trutechwheel_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/filter_wheel/trutech_wheel.c ) add_executable(indi_trutech_wheel ${trutechwheel_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_trutech_wheel m) if (NOVA_FOUND) target_link_libraries(indi_trutech_wheel ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_trutech_wheel RUNTIME DESTINATION bin ) ################################################################################# ########## FLI Filter Wheel ############ if (FLI_FOUND) set(fliwheel_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/filter_wheel/fli_wheel.c ) add_executable(indi_fli_wheel ${fliwheel_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_fli_wheel ${FLI_LIBRARIES} m) if (NOVA_FOUND) target_link_libraries(indi_fli_wheel ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_fli_wheel RUNTIME DESTINATION bin ) endif (FLI_FOUND) ################################################################################# ####################################### ############# CCD GROUP ############### ####################################### ############# FLI CCD ############### if (CFITSIO_FOUND AND FLI_FOUND) set(fliccd_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/ccd/fli_ccd.c ) add_executable(indi_fli_ccd ${fliccd_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_fli_ccd ${FLI_LIBRARIES} ${CFITSIO_LIBRARIES} m z) if (NOVA_FOUND) target_link_libraries(indi_fli_ccd ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_fli_ccd RUNTIME DESTINATION bin ) endif (CFITSIO_FOUND AND FLI_FOUND) ################################################################################# ######################################### ########### VIDEO GROUP ############### ######################################### ########### STV ####################### if (CFITSIO_FOUND) if (NOVA_FOUND) set(stv_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/video/stvdriver.c ${CMAKE_SOURCE_DIR}/drivers/video/stv.c ) add_executable(indi_sbig_stv ${stv_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_sbig_stv z m ${NOVA_LIBRARIES} ${CFITSIO_LIBRARIES}) install(TARGETS indi_sbig_stv RUNTIME DESTINATION bin ) endif (NOVA_FOUND) endif(CFITSIO_FOUND) ################################################################################# ### Meade Lunar Planetary Imager ######## if (CFITSIO_FOUND) ADD_DEFINITIONS(-DHAVE_LINUX_VIDEODEV2_H) set(meade_lpi_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/video/v4ldriver.cpp ${CMAKE_SOURCE_DIR}/drivers/video/indi_lpi.cpp ) add_executable(indi_meade_lpi ${meade_lpi_SRCS} ${libwebcam_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_meade_lpi z ${CFITSIO_LIBRARIES}) if (NOVA_FOUND) target_link_libraries(indi_meade_lpi ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_meade_lpi RUNTIME DESTINATION bin ) endif (CFITSIO_FOUND) ################################################################################# ########### V4L Philips ############## if (CFITSIO_FOUND) set(v4lphilips_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/video/v4ldriver.cpp ${CMAKE_SOURCE_DIR}/drivers/video/v4lphilips.cpp ${CMAKE_SOURCE_DIR}/drivers/video/indi_philips.cpp ) add_executable(indi_v4l_philips ${v4lphilips_SRCS} ${libwebcam_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_v4l_philips m z ${CFITSIO_LIBRARIES}) if (NOVA_FOUND) target_link_libraries(indi_v4l_philips ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_v4l_philips RUNTIME DESTINATION bin ) endif (CFITSIO_FOUND) ################################################################################# ########### Generic V4L Driver ############### if (CFITSIO_FOUND) set(v4ldriver_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/drivers/video/v4ldriver.cpp ${CMAKE_SOURCE_DIR}/drivers/video/indi_v4l.cpp ) add_executable(indi_v4l_generic ${v4ldriver_SRCS} ${libwebcam_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_v4l_generic m z ${CFITSIO_LIBRARIES}) if (NOVA_FOUND) target_link_libraries(indi_v4l_generic ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_v4l_generic RUNTIME DESTINATION bin ) endif (CFITSIO_FOUND) ################################################################################# ########### getINDI ############## set(getindi_SRCS ${CMAKE_SOURCE_DIR}/eventloop.c ${CMAKE_SOURCE_DIR}/tools/getINDIproperty.c ) add_executable(indi_getprop ${getindi_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_getprop m z) if (NOVA_FOUND) target_link_libraries(indi_getprop ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_getprop RUNTIME DESTINATION bin ) ################################################################################# ########### setINDI ############## set(setindi_SRCS ${CMAKE_SOURCE_DIR}/eventloop.c ${CMAKE_SOURCE_DIR}/tools/setINDIproperty.c ) add_executable(indi_setprop ${setindi_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_setprop m z) if (NOVA_FOUND) target_link_libraries(indi_setprop ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_setprop RUNTIME DESTINATION bin ) ################################################################################# ########### evelINDI ############## set(evalindi_SRCS ${CMAKE_SOURCE_DIR}/eventloop.c ${CMAKE_SOURCE_DIR}/tools/compiler.c ${CMAKE_SOURCE_DIR}/tools/evalINDI.c ) add_executable(indi_eval ${evalindi_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(indi_eval m z) if (NOVA_FOUND) target_link_libraries(indi_eval ${NOVA_LIBRARIES}) endif (NOVA_FOUND) install(TARGETS indi_eval RUNTIME DESTINATION bin ) ################################################################################# ## Build Examples. Not installation ########### Tutorial one ############## set(tutorialone_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/examples/tutorial_one.c ) add_executable(tutorial_one ${tutorialone_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(tutorial_one m) if (NOVA_FOUND) target_link_libraries(tutorial_one ${NOVA_LIBRARIES}) endif (NOVA_FOUND) ########### Tutorial two ############## set(tutorialtwo_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/examples/tutorial_two.c ) add_executable(tutorial_two ${tutorialtwo_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(tutorial_two m) if (NOVA_FOUND) target_link_libraries(tutorial_two ${NOVA_LIBRARIES}) endif (NOVA_FOUND) ########### Tutorial three ############## set(tutorialthree_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/examples/tutorial_three.c ) add_executable(tutorial_three ${tutorialthree_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(tutorial_three m z) if (NOVA_FOUND) target_link_libraries(tutorial_three ${NOVA_LIBRARIES}) endif (NOVA_FOUND) ########### Tutorial dome ############## set(tutorialdome_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/examples/tutorial_dome.c ) add_executable(tutorial_dome ${tutorialdome_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(tutorial_dome m) if (NOVA_FOUND) target_link_libraries(tutorial_dome ${NOVA_LIBRARIES}) endif (NOVA_FOUND) ########### Tutorial rain ############## set(tutorialrain_SRCS ${indimain_SRCS} ${CMAKE_SOURCE_DIR}/examples/tutorial_rain.c ) add_executable(tutorial_rain ${tutorialrain_SRCS} ${liblilxml_SRCS} ${libindicom_SRCS}) target_link_libraries(tutorial_rain m) if (NOVA_FOUND) target_link_libraries(tutorial_rain ${NOVA_LIBRARIES}) endif (NOVA_FOUND) ################################################################################# install( FILES drivers.xml DESTINATION ${DATA_INSTALL_DIR}) install( FILES indiapi.h indidevapi.h base64.h eventloop.h ${CMAKE_SOURCE_DIR}/libs/lilxml.h ${CMAKE_SOURCE_DIR}/libs/indicom.h DESTINATION ${INCLUDE_INSTALL_DIR}/libindi COMPONENT Devel) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libindi.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libindi.pc @ONLY) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libindi.pc DESTINATION ${PKGCONFIG_INSTALL_PREFIX})