1
0
Fork 0
SoftFM/CMakeLists.txt

60 lines
1.6 KiB
CMake
Raw Normal View History

2013-12-31 20:07:11 +01:00
# CMake definitions for SoftFM
cmake_minimum_required(VERSION 2.4)
project(SoftFM)
find_package(Threads)
2013-12-31 20:07:11 +01:00
find_package(PkgConfig)
find_package(ALSA REQUIRED)
# Find RTL-SDR library (for linking).
pkg_check_modules(PKG_RTLSDR librtlsdr)
find_path(RTLSDR_INCLUDE_DIR rtl-sdr.h
HINT ${PKG_RTLSDR_INCLUDE_DIRS})
find_library(RTLSDR_LIBRARY librtlsdr.a
HINT ${PKG_RTLSDR_LIBRARY_DIRS})
# Find libusb
pkg_check_modules(PKG_LIBUSB libusb-1.0)
find_path(LIBUSB_INCLUDE_DIR libusb.h
HINT ${PKG_LIBUSB_INCLUDE_DIRS}
PATH_SUFFIXES libusb-1.0)
find_library(LIBUSB_LIBRARY usb-1.0
HINT ${PKG_LIBUSB_LIBRARY_DIRS})
if(RTLSDR_INCLUDE_DIR AND RTLSDR_LIBRARY)
message(STATUS "Found librtlsdr: ${RTLSDR_INCLUDE_DIR}, ${RTLSDR_LIBRARY}")
else()
message(WARNING "Can not find Osmocom RTL-SDR library")
message("Try again with environment variable PKG_CONFIG_PATH")
message("or with -DRTLSDR_INCLUDE_DIR=/path/rtlsdr/include")
message(" -DRTLSDR_LIBRARY=/path/rtlsdr/lib/librtlsdr.a")
endif()
set(RTLSDR_INCLUDE_DIRS ${RTLSDR_INCLUDE_DIR} ${LIBUSB_INCLUDE_DIR})
set(RTLSDR_LIBRARIES ${RTLSDR_LIBRARY} ${LIBUSB_LIBRARY})
# Compiler flags.
set(CMAKE_CXX_FLAGS "-Wall -std=c++11 -O2 -ffast-math -ftree-vectorize ${EXTRA_FLAGS}")
add_executable(softfm
main.cc
RtlSdrSource.cc
Filter.cc
FmDecode.cc
AudioOutput.cc )
include_directories(
${RTLSDR_INCLUDE_DIRS}
${ALSA_INCLUDE_DIRS}
${EXTRA_INCLUDES} )
target_link_libraries(softfm
${CMAKE_THREAD_LIBS_INIT}
2013-12-31 20:07:11 +01:00
${RTLSDR_LIBRARIES}
${ALSA_LIBRARIES}
${EXTRA_LIBS} )
install(TARGETS softfm DESTINATION bin)