diff options
Diffstat (limited to 'gr-vocoder/lib/CMakeLists.txt')
-rw-r--r-- | gr-vocoder/lib/CMakeLists.txt | 176 |
1 files changed, 27 insertions, 149 deletions
diff --git a/gr-vocoder/lib/CMakeLists.txt b/gr-vocoder/lib/CMakeLists.txt index 5617d5ffef..ca5647ae31 100644 --- a/gr-vocoder/lib/CMakeLists.txt +++ b/gr-vocoder/lib/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright 2011,2013 Free Software Foundation, Inc. +# Copyright 2011,2013,2016 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -18,135 +18,6 @@ # Boston, MA 02110-1301, USA. ######################################################################## -# Check for system libgsm via CMake variable GR_USE_SYSTEM_LIBGSM .... -# if undefined, try to find system libgsm library, -# but if there is no system library use a local copy. -# if defined True, use system libgsm if found, otherwise do not -# use a local copy. -# if defined False, use the local copy -######################################################################## -if (NOT DEFINED GR_USE_SYSTEM_LIBGSM) - find_path(LIBGSM_INCLUDE_DIR NAMES gsm.h - PATHS - ${LIBGSM_PKG_INCLUDE_DIRS} - /usr/include/gsm - /usr/include - ) - - find_library(LIBGSM_LIBRARIES NAMES gsm - PATHS - ${LIBGSM_PKG_LIBRARY_DIRS} - /usr/lib - ) - - if(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) - set(GR_USE_SYSTEM_LIBGSM TRUE CACHE INTERNAL "System libgsm found") - message(STATUS "Found libgsm: ${LIBGSM_INCLUDE_DIR}, ${LIBGSM_LIBRARIES}") - set(GR_USE_LOCAL_LIBGSM FALSE) - set(GR_USE_SYSTEM_LIBGSM TRUE) - else(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) - set(GR_USE_SYSTEM_LIBGSM FALSE CACHE INTERNAL "System libgsm found") - message(STATUS "System libgsm not found.") - set(GR_USE_LOCAL_LIBGSM TRUE) - endif(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) -else (NOT DEFINED GR_USE_SYSTEM_LIBGSM) - if (GR_USE_SYSTEM_LIBGSM) - find_path(LIBGSM_INCLUDE_DIR NAMES gsm.h - PATHS - ${LIBGSM_PKG_INCLUDE_DIRS} - /usr/include/gsm - /usr/include - ) - - find_library(LIBGSM_LIBRARIES NAMES gsm - PATHS - ${LIBGSM_PKG_LIBRARY_DIRS} - /usr/lib - ) - - if(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) - set(GR_USE_SYSTEM_LIBGSM TRUE CACHE INTERNAL "System libgsm found") - message(STATUS "Found libgsm: ${LIBGSM_INCLUDE_DIR}, ${LIBGSM_LIBRARIES}") - set(GR_USE_LOCAL_LIBGSM FALSE) - else(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) - set(GR_USE_SYSTEM_LIBGSM FALSE CACHE INTERNAL "System libgsm found") - message(STATUS "System libgsm not found.") - set(GR_USE_LOCAL_LIBGSM FALSE) - endif(LIBGSM_INCLUDE_DIR AND LIBGSM_LIBRARIES) - else (GR_USE_SYSTEM_LIBGSM) - set(GR_USE_LOCAL_LIBGSM TRUE) - message(STATUS "Using gnuradio local copy of libgsm.") - endif (GR_USE_SYSTEM_LIBGSM) -endif (NOT DEFINED GR_USE_SYSTEM_LIBGSM) - -mark_as_advanced(LIBGSM_INCLUDE_DIR LIBGSM_LIBRARIES) - -######################################################################## -# Check for system libcodec2 via CMake variable GR_USE_SYSTEM_LIBCODEC2 -# if undefined, try to find system libgsm library, -# but if there is no system library use a local copy. -# if defined True, use system libcodec2 if found, otherwise do not -# use a local copy. -# if defined False, use the local copy -######################################################################## -if (NOT DEFINED GR_USE_SYSTEM_LIBCODEC2) - find_path(LIBCODEC2_INCLUDE_DIR NAMES codec2.h - PATHS - ${LIBCODEC2_PKG_INCLUDE_DIRS} - /usr/include/codec2 - /usr/include - ) - - find_library(LIBCODEC2_LIBRARIES NAMES codec2 - PATHS - ${LIBCODEC2_PKG_LIBRARY_DIRS} - /usr/lib - ) - - if(LIBCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) - set(GR_USE_SYSTEM_LIBCODEC2 TRUE CACHE INTERNAL "System libcodec2 found") - message(STATUS "Found libcodec2: ${LIBCODEC2_INCLUDE_DIR}, ${LIBCODEC2_LIBRARIES}") - set(GR_USE_LOCAL_LIBCODEC2 FALSE) - set(GR_USE_SYSTEM_LIBCODEC2 TRUE) - else(LIBCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) - set(GR_USE_SYSTEM_LIBCODEC2 FALSE CACHE INTERNAL "System libcodec2 found") - message(STATUS "System libcodec2 not found.") - set(GR_USE_LOCAL_LIBCODEC2 TRUE) - endif(LIBCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) -else (NOT DEFINED GR_USE_SYSTEM_LIBCODEC2) - if (GR_USE_SYSTEM_LIBCODEC2) - find_path(LIBCODEC2_INCLUDE_DIR NAMES codec2.h - PATHS - ${LIBCODEC2_PKG_INCLUDE_DIRS} - /usr/include/codec2 - /usr/include - ) - - find_library(LIBCODEC2_LIBRARIES NAMES codec2 - PATHS - ${LIBGSM_PKG_LIBRARY_DIRS} - /usr/lib - ) - - if(LIBCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) - set(GR_USE_SYSTEM_LIBCODEC2 TRUE CACHE INTERNAL "System libcodec2 found") - message(STATUS "Found libgsm: ${LIBCODEC2_INCLUDE_DIR}, ${LIBCODEC2_LIBRARIES}") - set(GR_USE_LOCAL_LIBCODEC2 FALSE) - else(LIBGCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) - set(GR_USE_SYSTEM_LIBCODEC2 FALSE CACHE INTERNAL "System libcodec2 found") - message(STATUS "System libcodec2 not found.") - set(GR_USE_LOCAL_LIBCODEC2 FALSE) - endif(LIBCODEC2_INCLUDE_DIR AND LIBCODEC2_LIBRARIES) - else (GR_USE_SYSTEM_LIBCODEC2) - set(GR_USE_LOCAL_LIBCODEC2 TRUE) - message(STATUS "Using gnuradio local copy of libcodec2.") - endif (GR_USE_SYSTEM_LIBCODEC2) -endif (NOT DEFINED GR_USE_SYSTEM_LIBCODEC2) - -mark_as_advanced(LIBCODEC2_INCLUDE_DIR LIBCODEC2_LIBRARIES) - - -######################################################################## # Setup the include and linker paths ######################################################################## include_directories( @@ -167,9 +38,6 @@ endif(ENABLE_GR_CTRLPORT) list(APPEND gr_vocoder_sources alaw_decode_bs_impl.cc alaw_encode_sb_impl.cc - codec2.cc - codec2_decode_ps_impl.cc - codec2_encode_sp_impl.cc cvsd_decode_bs_impl.cc cvsd_encode_sb_impl.cc g721_decode_bs_impl.cc @@ -178,11 +46,29 @@ list(APPEND gr_vocoder_sources g723_24_encode_sb_impl.cc g723_40_decode_bs_impl.cc g723_40_encode_sb_impl.cc - gsm_fr_decode_ps_impl.cc - gsm_fr_encode_sp_impl.cc ulaw_decode_bs_impl.cc ulaw_encode_sb_impl.cc ) +if(LIBCODEC2_FOUND) + list(APPEND gr_vocoder_sources + codec2.cc + codec2_decode_ps_impl.cc + codec2_encode_sp_impl.cc + ) +endif(LIBCODEC2_FOUND) +if(LIBCODEC2_HAS_FREEDV_API) + list(APPEND gr_vocoder_sources + freedv_api.cc + freedv_rx_ss_impl.cc + freedv_tx_ss_impl.cc + ) +endif(LIBCODEC2_HAS_FREEDV_API) +if(LIBGSM_FOUND) + list(APPEND gr_vocoder_sources + gsm_fr_decode_ps_impl.cc + gsm_fr_encode_sp_impl.cc + ) +endif(LIBGSM_FOUND) #Add Windows DLL resource file if using MSVC if(MSVC) @@ -203,30 +89,22 @@ endif(MSVC) ######################################################################## GR_INCLUDE_SUBDIRECTORY(g7xx) -if(GR_USE_LOCAL_LIBCODEC2) - GR_INCLUDE_SUBDIRECTORY(codec2) -endif(GR_USE_LOCAL_LIBCODEC2) - -if(GR_USE_LOCAL_LIBGSM) - GR_INCLUDE_SUBDIRECTORY(gsm) -endif(GR_USE_LOCAL_LIBGSM) - list(APPEND vocoder_libs gnuradio-runtime ${Boost_LIBRARIES} ) -if(GR_USE_SYSTEM_LIBCODEC2) +if(LIBCODEC2_LIBRARIES) list(APPEND vocoder_libs ${LIBCODEC2_LIBRARIES}) -endif(GR_USE_SYSTEM_LIBCODEC2) +endif(LIBCODEC2_LIBRARIES) -if(GR_USE_SYSTEM_LIBGSM) +if(LIBGSM_LIBRARIES) list(APPEND vocoder_libs ${LIBGSM_LIBRARIES}) -endif(GR_USE_SYSTEM_LIBGSM) +endif(LIBGSM_LIBRARIES) add_library(gnuradio-vocoder SHARED ${gr_vocoder_sources}) target_link_libraries(gnuradio-vocoder ${vocoder_libs}) -GR_LIBRARY_FOO(gnuradio-vocoder RUNTIME_COMPONENT "vocoder_runtime" DEVEL_COMPONENT "vocoder_devel") +GR_LIBRARY_FOO(gnuradio-vocoder) if(ENABLE_STATIC_LIBS) if(ENABLE_GR_CTRLPORT) @@ -248,6 +126,6 @@ if(ENABLE_STATIC_LIBS) endif(NOT WIN32) install(TARGETS gnuradio-vocoder_static - ARCHIVE DESTINATION lib${LIB_SUFFIX} COMPONENT "vocoder_devel" # .lib file + ARCHIVE DESTINATION lib${LIB_SUFFIX} # .lib file ) endif(ENABLE_STATIC_LIBS) |