summaryrefslogtreecommitdiff
path: root/gr-vocoder/lib/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'gr-vocoder/lib/CMakeLists.txt')
-rw-r--r--gr-vocoder/lib/CMakeLists.txt176
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)