|
|
@ -18,6 +18,7 @@ set(BLADERF_TAG "2019.07")
|
|
|
|
set(LIBIIO_TAG 826563e41b5ce9890b75506f672017de8d76d52d)
|
|
|
|
set(LIBIIO_TAG 826563e41b5ce9890b75506f672017de8d76d52d)
|
|
|
|
set(AIRSPYHF_TAG "1.1.5")
|
|
|
|
set(AIRSPYHF_TAG "1.1.5")
|
|
|
|
set(PERSEUS_TAG afefa23e3140ac79d845acb68cf0beeb86d09028)
|
|
|
|
set(PERSEUS_TAG afefa23e3140ac79d845acb68cf0beeb86d09028)
|
|
|
|
|
|
|
|
set(MIRISDR_TAG "v1.1.2")
|
|
|
|
|
|
|
|
|
|
|
|
set(PTHREADS4W_TAG "Version-2-11-0-release")
|
|
|
|
set(PTHREADS4W_TAG "Version-2-11-0-release")
|
|
|
|
set(RTLSDR_TAG be1d1206bfb6e6c41f7d91b20b77e20f929fa6a7)
|
|
|
|
set(RTLSDR_TAG be1d1206bfb6e6c41f7d91b20b77e20f929fa6a7)
|
|
|
@ -34,7 +35,7 @@ set(LIBXML2_TAG "v2.9.9")
|
|
|
|
include(ExternalProject)
|
|
|
|
include(ExternalProject)
|
|
|
|
|
|
|
|
|
|
|
|
# default build destination in windows to avoid Release/Debug folder
|
|
|
|
# default build destination in windows to avoid Release/Debug folder
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
# the build will be output on the same folder of sdrangel
|
|
|
|
# the build will be output on the same folder of sdrangel
|
|
|
|
set(DEFAULT_OUTPUT_DIRECTORIES
|
|
|
|
set(DEFAULT_OUTPUT_DIRECTORIES
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=${SDRANGEL_BINARY_BIN_DIR}
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=${SDRANGEL_BINARY_BIN_DIR}
|
|
|
@ -47,8 +48,8 @@ if(WIN32)
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=${SDRANGEL_BINARY_LIB_DIR}
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=${SDRANGEL_BINARY_LIB_DIR}
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=${SDRANGEL_BINARY_LIB_DIR}
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=${SDRANGEL_BINARY_LIB_DIR}
|
|
|
|
)
|
|
|
|
)
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(DEFAULT_OUTPUT_DIRECTORIES
|
|
|
|
set(DEFAULT_OUTPUT_DIRECTORIES
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
|
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE=${EXTERNAL_BUILD_LIBRARIES}/bin
|
|
|
@ -58,83 +59,98 @@ set(DEFAULT_OUTPUT_DIRECTORIES
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${EXTERNAL_BUILD_LIBRARIES}/lib
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${EXTERNAL_BUILD_LIBRARIES}/lib
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=${EXTERNAL_BUILD_LIBRARIES}/lib
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG=${EXTERNAL_BUILD_LIBRARIES}/lib
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=${EXTERNAL_BUILD_LIBRARIES}/lib)
|
|
|
|
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=${EXTERNAL_BUILD_LIBRARIES}/lib)
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
|
|
if(LINUX)
|
|
|
|
if (LINUX)
|
|
|
|
# macro that create symbolic links
|
|
|
|
# macro that create symbolic links
|
|
|
|
macro(makeLink src dest target)
|
|
|
|
macro(makeLink src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest} DEPENDS ${dest} COMMENT "mklink ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest} DEPENDS ${dest} COMMENT "mklink ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
# macro that copy folder
|
|
|
|
# macro that copy folder
|
|
|
|
macro(makeCopy src dest target)
|
|
|
|
macro(makeCopy src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
# macro that copy file
|
|
|
|
# macro that copy file
|
|
|
|
macro(makeCopyFile src dest target)
|
|
|
|
macro(makeCopyFile src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
add_custom_command(TARGET ${target} PRE_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
# macro that create symbolic links
|
|
|
|
# macro that create symbolic links
|
|
|
|
macro(makeLink src dest target)
|
|
|
|
macro(makeLink src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest} DEPENDS ${dest} COMMENT "mklink ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest} DEPENDS ${dest} COMMENT "mklink ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
|
|
# macro that copy folder
|
|
|
|
# macro that copy folder
|
|
|
|
macro(makeCopyDir src dest target)
|
|
|
|
macro(makeCopyDir src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
|
|
# macro that copy file
|
|
|
|
# macro that copy file
|
|
|
|
macro(makeCopy src dest target)
|
|
|
|
macro(makeCopy src dest target)
|
|
|
|
if(NOT EXISTS ${dest})
|
|
|
|
if (NOT EXISTS ${dest})
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
add_custom_command(TARGET ${target} POST_BUILD
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${src} ${dest} DEPENDS ${dest} COMMENT "copy ${src} -> ${dest}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endmacro()
|
|
|
|
endmacro()
|
|
|
|
endif(LINUX)
|
|
|
|
endif (LINUX)
|
|
|
|
|
|
|
|
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
if(VS2015)
|
|
|
|
if (VS2015)
|
|
|
|
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
if (CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2015_x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2015_x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# maybe add arm architecture
|
|
|
|
# maybe add arm architecture
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2015_x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2015_x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
elseif(VS2017)
|
|
|
|
elseif (VS2017)
|
|
|
|
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
if (CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2017_x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2017_x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# maybe add arm architecture
|
|
|
|
# maybe add arm architecture
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2017_x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vcredist_msvc2017_x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
if (CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
|
set(VCREDIST_FILE "vc_redist.x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vc_redist.x64${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# maybe add arm architecture
|
|
|
|
# maybe add arm architecture
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(VCREDIST_FILE "vc_redist.x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(VCREDIST_FILE "vc_redist.x86${CMAKE_EXECUTABLE_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
install(FILES "${EXTERNAL_LIBRARY_FOLDER}/vcredist/${VCREDIST_FILE}" DESTINATION "${INSTALL_BIN_DIR}")
|
|
|
|
install(FILES "${EXTERNAL_LIBRARY_FOLDER}/vcredist/${VCREDIST_FILE}" DESTINATION "${INSTALL_BIN_DIR}")
|
|
|
|
endif(WIN32)
|
|
|
|
endif (WIN32)
|
|
|
|
|
|
|
|
|
|
|
|
if(NOT WIN32)
|
|
|
|
if (AUTO_EXTERNAL_LIBRARIES)
|
|
|
|
|
|
|
|
find_package(Codec2)
|
|
|
|
|
|
|
|
find_package(CM256cc)
|
|
|
|
|
|
|
|
find_package(LibMbe)
|
|
|
|
|
|
|
|
find_package(SerialDV)
|
|
|
|
|
|
|
|
find_package(LibDSDcc)
|
|
|
|
|
|
|
|
find_package(LimeSuite)
|
|
|
|
|
|
|
|
find_package(LibBLADERF)
|
|
|
|
|
|
|
|
find_package(LibMiriSDR)
|
|
|
|
|
|
|
|
find_package(LibIIO)
|
|
|
|
|
|
|
|
find_package(LibAIRSPYHF)
|
|
|
|
|
|
|
|
find_package(LibPerseus)
|
|
|
|
|
|
|
|
find_package(LibRTLSDR)
|
|
|
|
|
|
|
|
endif (AUTO_EXTERNAL_LIBRARIES)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (NOT WIN32 AND (NOT CODEC2_FOUND OR CODEC2_EXTERNAL))
|
|
|
|
# needs speexdsp
|
|
|
|
# needs speexdsp
|
|
|
|
ExternalProject_Add(codec2
|
|
|
|
ExternalProject_Add(codec2
|
|
|
|
GIT_REPOSITORY https://github.com/drowe67/codec2.git
|
|
|
|
GIT_REPOSITORY https://github.com/drowe67/codec2.git
|
|
|
@ -146,22 +162,23 @@ if(NOT WIN32)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(codec2 source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(codec2 source_dir binary_dir)
|
|
|
|
set(CODEC2_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(CODEC2_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(CODEC2_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(CODEC2_INCLUDE_DIR "${source_dir}/src" "${binary_dir}" CACHE INTERNAL "")
|
|
|
|
set(CODEC2_INCLUDE_DIR "${source_dir}/src" "${binary_dir}" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(CODEC2_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/codec2.lib" CACHE INTERNAL "")
|
|
|
|
set(CODEC2_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/codec2.lib" CACHE INTERNAL "")
|
|
|
|
makeCopy("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
makeCopy("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(CODEC2_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libcodec2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(CODEC2_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libcodec2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
makeLink("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
makeLink("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(CODEC2_LIBRARIES "${binary_dir}/src/libcodec2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(CODEC2_LIBRARIES "${binary_dir}/src/libcodec2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# some source include "codec2/comp.h" and some without codec2
|
|
|
|
# some source include "codec2/comp.h" and some without codec2
|
|
|
|
makeLink("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
makeLink("${source_dir}/src" "${source_dir}/src/codec2" codec2)
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif()
|
|
|
|
endif (NOT WIN32 AND (NOT CODEC2_FOUND OR CODEC2_EXTERNAL))
|
|
|
|
|
|
|
|
|
|
|
|
# needs boost
|
|
|
|
if (NOT APPLE AND (NOT CM256CC_FOUND OR CM256CC_EXTERNAL))
|
|
|
|
if(NOT APPLE)
|
|
|
|
# needs boost
|
|
|
|
ExternalProject_Add(cm256cc
|
|
|
|
ExternalProject_Add(cm256cc
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/cm256cc.git
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/cm256cc.git
|
|
|
|
GIT_TAG ${CM256CC_TAG}
|
|
|
|
GIT_TAG ${CM256CC_TAG}
|
|
|
@ -177,70 +194,77 @@ if(NOT APPLE)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(cm256cc source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(cm256cc source_dir binary_dir)
|
|
|
|
set(CM256CC_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(CM256CC_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(CM256CC_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
# we need cm256cc/library.h
|
|
|
|
# we need cm256cc/library.h
|
|
|
|
set(CM256CC_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/cm256cc/src" CACHE INTERNAL "")
|
|
|
|
set(CM256CC_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/cm256cc/src" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(CM256CC_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/cm256cc.lib" CACHE INTERNAL "")
|
|
|
|
set(CM256CC_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/cm256cc.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/cm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/cm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(CM256CC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libcm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(CM256CC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libcm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
elseif(APPLE) # kept in case of relaxation of APPLE exclusion
|
|
|
|
elseif (APPLE) # kept in case of relaxation of APPLE exclusion
|
|
|
|
set(CM256CC_LIBRARIES "${binary_dir}/libcm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(CM256CC_LIBRARIES "${binary_dir}/libcm256cc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libcm256cc*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libcm256cc*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif() # NOT APPLE
|
|
|
|
endif (NOT APPLE AND (NOT CM256CC_FOUND OR CM256CC_EXTERNAL))
|
|
|
|
|
|
|
|
|
|
|
|
set(USE_MBELIB OFF)
|
|
|
|
if ((NOT LIBDSDCC_FOUND OR LIBDSDCC_EXTERNAL) AND (NOT LIBMBE_FOUND OR LIBMBE_EXTERNAL))
|
|
|
|
ExternalProject_Add(mbelib
|
|
|
|
set(USE_MBELIB OFF)
|
|
|
|
|
|
|
|
ExternalProject_Add(mbelib
|
|
|
|
GIT_REPOSITORY https://github.com/szechyjs/mbelib.git
|
|
|
|
GIT_REPOSITORY https://github.com/szechyjs/mbelib.git
|
|
|
|
GIT_TAG ${MBELIB_TAG}
|
|
|
|
GIT_TAG ${MBELIB_TAG}
|
|
|
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/mbelib"
|
|
|
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/mbelib"
|
|
|
|
CMAKE_ARGS -DDISABLE_TEST=ON ${DEFAULT_OUTPUT_DIRECTORIES}
|
|
|
|
CMAKE_ARGS -DDISABLE_TEST=ON ${DEFAULT_OUTPUT_DIRECTORIES}
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(mbelib source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(mbelib source_dir binary_dir)
|
|
|
|
set(USE_MBELIB ON)
|
|
|
|
set(USE_MBELIB ON)
|
|
|
|
set(DSDCC_DEPENDS mbelib)
|
|
|
|
set(DSDCC_DEPENDS mbelib)
|
|
|
|
set(LIBMBE_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBMBE_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBMBE_INCLUDE_DIR "${source_dir}")
|
|
|
|
set(LIBMBE_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
set(LIBMBE_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
set(LIBMBE_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/mbe.lib")
|
|
|
|
if (WIN32)
|
|
|
|
|
|
|
|
set(LIBMBE_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/mbe.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/mbe${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/mbe${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(LIBMBE_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libmbe${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(LIBMBE_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libmbe${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBMBE_LIBRARIES "${binary_dir}/libmbe${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(LIBMBE_LIBRARIES "${binary_dir}/libmbe${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libmbe*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libmbe*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
endif ((NOT LIBDSDCC_FOUND OR LIBDSDCC_EXTERNAL) AND (NOT LIBMBE_FOUND OR LIBMBE_EXTERNAL))
|
|
|
|
|
|
|
|
|
|
|
|
# Works on MacOS with a dummy serialDV
|
|
|
|
if (NOT LIBSERIALDV_FOUND OR LIBSERIALDV_EXTERNAL)
|
|
|
|
ExternalProject_Add(serialdv
|
|
|
|
# Works on MacOS with a dummy serialDV
|
|
|
|
|
|
|
|
ExternalProject_Add(serialdv
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/serialDV.git
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/serialDV.git
|
|
|
|
GIT_TAG ${SERIALDV_TAG}
|
|
|
|
GIT_TAG ${SERIALDV_TAG}
|
|
|
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/serialdv"
|
|
|
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/serialdv"
|
|
|
|
CMAKE_ARGS -DBUILD_TOOL=OFF ${DEFAULT_OUTPUT_DIRECTORIES}
|
|
|
|
CMAKE_ARGS -DBUILD_TOOL=OFF ${DEFAULT_OUTPUT_DIRECTORIES}
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(serialdv source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(serialdv source_dir binary_dir)
|
|
|
|
set(DSDCC_DEPENDS ${DSDCC_DEPENDS} serialdv)
|
|
|
|
set(DSDCC_DEPENDS ${DSDCC_DEPENDS} serialdv)
|
|
|
|
set(LIBSERIALDV_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
set(LIBSERIALDV_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBSERIALDV_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/serialdv.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/serialdv.lib" CACHE INTERNAL "")
|
|
|
|
makeCopyDir("${source_dir}" "${source_dir}/dsp" serialdv)
|
|
|
|
makeCopyDir("${source_dir}" "${source_dir}/dsp" serialdv)
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/serialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/serialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(LIBSERIALDV_LIBRARY "${EXTERNAL_BUILD_LIBRARIES}/lib/libserialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_LIBRARY "${EXTERNAL_BUILD_LIBRARIES}/lib/libserialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# because sdrbase/dsp/dvserialworker.h use dsp/dvcontroller.h
|
|
|
|
# because sdrbase/dsp/dvserialworker.h use dsp/dvcontroller.h
|
|
|
|
# so we need a link
|
|
|
|
# so we need a link
|
|
|
|
makeLink("${source_dir}" "${source_dir}/dsp" serialdv)
|
|
|
|
makeLink("${source_dir}" "${source_dir}/dsp" serialdv)
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBSERIALDV_LIBRARY "${binary_dir}/libserialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBSERIALDV_LIBRARY "${binary_dir}/libserialdv${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# because sdrbase/dsp/dvserialworker.h use dsp/dvcontroller.h
|
|
|
|
# because sdrbase/dsp/dvserialworker.h use dsp/dvcontroller.h
|
|
|
|
# so we need a link
|
|
|
|
# so we need a link
|
|
|
@ -248,9 +272,11 @@ elseif(APPLE)
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libserialdv*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libserialdv*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
endif (NOT LIBSERIALDV_FOUND OR LIBSERIALDV_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
ExternalProject_Add(dsdcc
|
|
|
|
if ((NOT LIBDSDCC_FOUND OR LIBDSDCC_EXTERNAL) AND LIBMBE_FOUND)
|
|
|
|
|
|
|
|
ExternalProject_Add(dsdcc
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/dsdcc.git
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/dsdcc.git
|
|
|
|
GIT_TAG ${DSDCC_TAG}
|
|
|
|
GIT_TAG ${DSDCC_TAG}
|
|
|
|
DEPENDS ${DSDCC_DEPENDS}
|
|
|
|
DEPENDS ${DSDCC_DEPENDS}
|
|
|
@ -263,24 +289,26 @@ ExternalProject_Add(dsdcc
|
|
|
|
-DLIBSERIALDV_LIBRARY=${LIBSERIALDV_LIBRARY}
|
|
|
|
-DLIBSERIALDV_LIBRARY=${LIBSERIALDV_LIBRARY}
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(dsdcc source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(dsdcc source_dir binary_dir)
|
|
|
|
set(LIBDSDCC_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/dsdcc/src" CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
set(LIBDSDCC_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/dsdcc/src" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBDSDCC_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/dsdcc.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/dsdcc.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/dsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/dsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(LINUX)
|
|
|
|
elseif (LINUX)
|
|
|
|
set(LIBDSDCC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libdsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libdsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBDSDCC_LIBRARIES "${binary_dir}/libdsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBDSDCC_LIBRARIES "${binary_dir}/libdsdcc${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libdsdcc*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libdsdcc*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
endif ((NOT LIBDSDCC_FOUND OR LIBDSDCC_EXTERNAL) AND LIBMBE_FOUND)
|
|
|
|
|
|
|
|
|
|
|
|
# requirements needed by many packages on windows
|
|
|
|
# requirements needed by many packages on windows
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
ExternalProject_Add(pthreads4w
|
|
|
|
ExternalProject_Add(pthreads4w
|
|
|
|
GIT_REPOSITORY https://git.code.sf.net/p/pthreads4w/code
|
|
|
|
GIT_REPOSITORY https://git.code.sf.net/p/pthreads4w/code
|
|
|
|
GIT_TAG ${PTHREADS4W_TAG}
|
|
|
|
GIT_TAG ${PTHREADS4W_TAG}
|
|
|
@ -295,18 +323,20 @@ if(WIN32)
|
|
|
|
ExternalProject_Get_Property(pthreads4w source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(pthreads4w source_dir binary_dir)
|
|
|
|
set(PTHREADS4W_DEPENDS pthreads4w)
|
|
|
|
set(PTHREADS4W_DEPENDS pthreads4w)
|
|
|
|
set(PTHREADS4W_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(PTHREADS4W_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(PTHREADS4W_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(PTHREADS4W_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
set(PTHREADS4W_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
set(PTHREADS4W_LIBRARIES "${source_dir}/pthreadVC2.lib" CACHE INTERNAL "")
|
|
|
|
set(PTHREADS4W_LIBRARIES "${source_dir}/pthreadVC2.lib" CACHE INTERNAL "")
|
|
|
|
makeCopy("${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" pthreads4w)
|
|
|
|
makeCopy("${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" pthreads4w)
|
|
|
|
# needed by bladerf
|
|
|
|
# needed by bladerf
|
|
|
|
makeCopy("${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${source_dir}/dll/x64/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" pthreads4w)
|
|
|
|
makeCopy("${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${source_dir}/dll/x64/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" pthreads4w)
|
|
|
|
install(FILES "${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${source_dir}/pthreadVC2${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
endif(WIN32)
|
|
|
|
endif (WIN32)
|
|
|
|
|
|
|
|
|
|
|
|
# Device interface libraries. Use external libraries build for these. Only Linux for now.
|
|
|
|
# Device interface libraries. Use external libraries build for these. Only Linux for now.
|
|
|
|
if (LINUX)
|
|
|
|
if (LINUX)
|
|
|
|
# apt install liblimesuite-dev (only on ubuntu 18.04). Can be picky on version though so let's build it.
|
|
|
|
# apt install liblimesuite-dev (only on ubuntu 18.04). Can be picky on version though so let's build it.
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
|
|
|
|
if (NOT LIMESUITE_FOUND OR LIMESUITE_EXTERNAL)
|
|
|
|
ExternalProject_Add(limesuite
|
|
|
|
ExternalProject_Add(limesuite
|
|
|
|
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
|
|
|
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
|
|
|
GIT_TAG ${LIMESUITE_TAG}
|
|
|
|
GIT_TAG ${LIMESUITE_TAG}
|
|
|
@ -317,12 +347,15 @@ if (LINUX)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(limesuite source_dir)
|
|
|
|
ExternalProject_Get_Property(limesuite source_dir)
|
|
|
|
set(LIMESUITE_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIMESUITE_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/limesuite/src/limesuite/src" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/limesuite/src/limesuite/src" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_LIBRARY "${EXTERNAL_BUILD_LIBRARIES}/lib/libLimeSuite.so" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_LIBRARY "${EXTERNAL_BUILD_LIBRARIES}/lib/libLimeSuite.so" CACHE INTERNAL "")
|
|
|
|
makeCopyFile("${source_dir}/src/limeRFE/limeRFE.h" "${source_dir}/src/lime/limeRFE.h" limesuite)
|
|
|
|
makeCopyFile("${source_dir}/src/limeRFE/limeRFE.h" "${source_dir}/src/lime/limeRFE.h" limesuite)
|
|
|
|
|
|
|
|
endif (NOT LIMESUITE_FOUND OR LIMESUITE_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
# apt install libbladerf-dev
|
|
|
|
# apt install libbladerf-dev
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
|
|
|
|
if (NOT LIBBLADERF_FOUND OR LIBBLADERF_EXTERNAL)
|
|
|
|
ExternalProject_Add(bladerf
|
|
|
|
ExternalProject_Add(bladerf
|
|
|
|
GIT_REPOSITORY https://github.com/Nuand/bladeRF.git
|
|
|
|
GIT_REPOSITORY https://github.com/Nuand/bladeRF.git
|
|
|
|
GIT_TAG ${BLADERF_TAG}
|
|
|
|
GIT_TAG ${BLADERF_TAG}
|
|
|
@ -334,11 +367,14 @@ if (LINUX)
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
set(LIBBLADERF_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBBLADERF_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_INCLUDE_DIRS "${EXTERNAL_BUILD_LIBRARIES}/bladerf/src/bladerf/host/libraries/libbladeRF/include" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_INCLUDE_DIRS "${EXTERNAL_BUILD_LIBRARIES}/bladerf/src/bladerf/host/libraries/libbladeRF/include" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libbladeRF.so" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libbladeRF.so" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
endif (NOT LIBBLADERF_FOUND OR LIBBLADERF_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
# apt install libiio-dev
|
|
|
|
# apt install libiio-dev
|
|
|
|
# needs pkgconfig, libusb, libxml2, lzma, xz, libiconv
|
|
|
|
# needs pkgconfig, libusb, libxml2, lzma, xz, libiconv
|
|
|
|
|
|
|
|
if (NOT LIBIIO_FOUND OR LIBIIO_EXTERNAL)
|
|
|
|
ExternalProject_Add(libiio
|
|
|
|
ExternalProject_Add(libiio
|
|
|
|
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
|
|
|
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
|
|
|
GIT_TAG ${LIBIIO_TAG}
|
|
|
|
GIT_TAG ${LIBIIO_TAG}
|
|
|
@ -348,11 +384,14 @@ if (LINUX)
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
set(LIBIIO_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBIIO_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/libiio/src/libiio" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/libiio/src/libiio" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libiio.so" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libiio.so" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
endif (NOT LIBIIO_FOUND OR LIBIIO_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
# apt install libairspyhf-dev (only on ubuntu 18.04)
|
|
|
|
# apt install libairspyhf-dev (only on ubuntu 18.04)
|
|
|
|
# needs libusb and pkgconfig
|
|
|
|
# needs libusb and pkgconfig
|
|
|
|
|
|
|
|
if (NOT LIBAIRSPYHF_FOUND OR LIBAIRSPYHF_EXTERNAL)
|
|
|
|
ExternalProject_Add(airspyhf
|
|
|
|
ExternalProject_Add(airspyhf
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyhf.git
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyhf.git
|
|
|
|
GIT_TAG ${AIRSPYHF_TAG}
|
|
|
|
GIT_TAG ${AIRSPYHF_TAG}
|
|
|
@ -363,11 +402,14 @@ if (LINUX)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(airspyhf source_dir)
|
|
|
|
ExternalProject_Get_Property(airspyhf source_dir)
|
|
|
|
set(LIBAIRSPYHF_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBAIRSPYHF_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_INCLUDE_DIR "${source_dir}/.." CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_INCLUDE_DIR "${source_dir}/.." CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libairspyhf.so" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libairspyhf.so" CACHE INTERNAL "")
|
|
|
|
makeLink("${source_dir}/libairspyhf/src" "${source_dir}/../libairspyhf" airspyhf)
|
|
|
|
makeLink("${source_dir}/libairspyhf/src" "${source_dir}/../libairspyhf" airspyhf)
|
|
|
|
|
|
|
|
endif (NOT LIBAIRSPYHF_FOUND OR LIBAIRSPYHF_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
# needs pkgconfig, libusb, autoconf, automake and libtool
|
|
|
|
# needs pkgconfig, libusb, autoconf, automake and libtool
|
|
|
|
|
|
|
|
if (NOT LIBPERSEUS_FOUND OR LIBPERSEUS_EXTERNAL)
|
|
|
|
ExternalProject_Add(perseus
|
|
|
|
ExternalProject_Add(perseus
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/libperseus-sdr.git
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/libperseus-sdr.git
|
|
|
|
GIT_TAG ${PERSEUS_TAG}
|
|
|
|
GIT_TAG ${PERSEUS_TAG}
|
|
|
@ -377,11 +419,14 @@ if (LINUX)
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
set(LIBPERSEUS_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBPERSEUS_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBPERSEUS_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBPERSEUS_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/perseus/src/perseus" CACHE INTERNAL "")
|
|
|
|
set(LIBPERSEUS_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/perseus/src/perseus" CACHE INTERNAL "")
|
|
|
|
set(LIBPERSEUS_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libperseus-sdr.so" CACHE INTERNAL "")
|
|
|
|
set(LIBPERSEUS_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libperseus-sdr.so" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
endif (NOT LIBPERSEUS_FOUND OR LIBPERSEUS_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
# apt install librtlsdr-dev
|
|
|
|
# apt install librtlsdr-dev
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
|
|
|
|
if (NOT LIBRTLSDR_FOUND OR LIBRTLSDR_EXTERNAL)
|
|
|
|
ExternalProject_Add(rtlsdr
|
|
|
|
ExternalProject_Add(rtlsdr
|
|
|
|
GIT_REPOSITORY https://github.com/osmocom/rtl-sdr.git
|
|
|
|
GIT_REPOSITORY https://github.com/osmocom/rtl-sdr.git
|
|
|
|
GIT_TAG ${RTLSDR_TAG}
|
|
|
|
GIT_TAG ${RTLSDR_TAG}
|
|
|
@ -391,17 +436,35 @@ if (LINUX)
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
set(LIBRTLSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBRTLSDR_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/rtlsdr/src/rtlsdr/include" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/rtlsdr/src/rtlsdr/include" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/librtlsdr.so" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/librtlsdr.so" CACHE INTERNAL "")
|
|
|
|
endif(LINUX)
|
|
|
|
endif (NOT LIBRTLSDR_FOUND OR LIBRTLSDR_EXTERNAL)
|
|
|
|
|
|
|
|
|
|
|
|
if(WIN32 OR APPLE)
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
if(ENABLE_RTLSDR)
|
|
|
|
if (NOT LIBMIRISDR_FOUND OR LIBMIRISDR_EXTERNAL)
|
|
|
|
if(WIN32)
|
|
|
|
ExternalProject_Add(libmirisdr
|
|
|
|
|
|
|
|
GIT_REPOSITORY https://github.com/f4exb/libmirisdr-4.git
|
|
|
|
|
|
|
|
GIT_TAG ${MIRISDR_TAG}
|
|
|
|
|
|
|
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/libmirisdr"
|
|
|
|
|
|
|
|
CMAKE_ARGS ${DEFAULT_OUTPUT_DIRECTORIES}
|
|
|
|
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
|
|
|
|
TEST_COMMAND ""
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
set(LIBMIRISDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBMIRISDR_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBMIRISDR_INCLUDE_DIR "${EXTERNAL_BUILD_LIBRARIES}/libmirisdr/src/libmirisdr/include" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBMIRISDR_LIBRARIES "${EXTERNAL_BUILD_LIBRARIES}/lib/libmirisdr.so" CACHE INTERNAL "")
|
|
|
|
|
|
|
|
endif (NOT LIBMIRISDR_FOUND OR LIBMIRISDR_EXTERNAL)
|
|
|
|
|
|
|
|
endif (LINUX)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (WIN32 OR APPLE)
|
|
|
|
|
|
|
|
if (ENABLE_RTLSDR)
|
|
|
|
|
|
|
|
if (WIN32)
|
|
|
|
set(RTLSDR_LIBUSB_INCLUDE "${LIBUSB_INCLUDE_DIR}/libusb-1.0")
|
|
|
|
set(RTLSDR_LIBUSB_INCLUDE "${LIBUSB_INCLUDE_DIR}/libusb-1.0")
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(RTLSDR_LIBUSB_INCLUDE "${LIBUSB_INCLUDE_DIR}")
|
|
|
|
set(RTLSDR_LIBUSB_INCLUDE "${LIBUSB_INCLUDE_DIR}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
# needs pkgconfig and libusb
|
|
|
|
ExternalProject_Add(rtlsdr
|
|
|
|
ExternalProject_Add(rtlsdr
|
|
|
|
GIT_REPOSITORY https://github.com/osmocom/rtl-sdr.git
|
|
|
|
GIT_REPOSITORY https://github.com/osmocom/rtl-sdr.git
|
|
|
@ -419,19 +482,20 @@ if(WIN32 OR APPLE)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(rtlsdr source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(rtlsdr source_dir binary_dir)
|
|
|
|
set(LIBRTLSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBRTLSDR_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/rtlsdr.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/rtlsdr.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/rtlsdr${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/rtlsdr${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${binary_dir}/src/librtlsdr${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBRTLSDR_LIBRARIES "${binary_dir}/src/librtlsdr${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "librtlsdr*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "librtlsdr*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/src/")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/src/")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_RTLSDR)
|
|
|
|
endif (ENABLE_RTLSDR)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_LIMESUITE)
|
|
|
|
if (ENABLE_LIMESUITE)
|
|
|
|
# needs pkgconfig, libusb
|
|
|
|
# needs pkgconfig, libusb
|
|
|
|
ExternalProject_Add(limesuite
|
|
|
|
ExternalProject_Add(limesuite
|
|
|
|
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
|
|
|
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
|
|
@ -452,20 +516,21 @@ if(WIN32 OR APPLE)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(limesuite source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(limesuite source_dir binary_dir)
|
|
|
|
set(LIMESUITE_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIMESUITE_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_INCLUDE_DIR "${source_dir}/src" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_INCLUDE_DIR "${source_dir}/src" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIMESUITE_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/LimeSuite.lib" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/LimeSuite.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/LimeSuite${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/LimeSuite${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
makeCopy("${source_dir}/src/limeRFE/limeRFE.h" "${source_dir}/src/lime/limeRFE.h" limesuite)
|
|
|
|
makeCopy("${source_dir}/src/limeRFE/limeRFE.h" "${source_dir}/src/lime/limeRFE.h" limesuite)
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIMESUITE_LIBRARY "${binary_dir}/src/libLimeSuite${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIMESUITE_LIBRARY "${binary_dir}/src/libLimeSuite${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libLimeSuite*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libLimeSuite*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/src/")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/src/")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_LIMESUITE)
|
|
|
|
endif (ENABLE_LIMESUITE)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_SOAPYSDR)
|
|
|
|
if (ENABLE_SOAPYSDR)
|
|
|
|
ExternalProject_Add(soapysdr
|
|
|
|
ExternalProject_Add(soapysdr
|
|
|
|
GIT_REPOSITORY https://github.com/pothosware/SoapySDR.git
|
|
|
|
GIT_REPOSITORY https://github.com/pothosware/SoapySDR.git
|
|
|
|
GIT_TAG ${SOAPYSDR_TAG}
|
|
|
|
GIT_TAG ${SOAPYSDR_TAG}
|
|
|
@ -479,24 +544,25 @@ if(WIN32 OR APPLE)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
ExternalProject_Get_Property(soapysdr source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(soapysdr source_dir binary_dir)
|
|
|
|
set(SOAPYSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(SOAPYSDR_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(SOAPYSDR_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(SOAPYSDR_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
set(SOAPYSDR_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(SOAPYSDR_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/SoapySDR.lib" CACHE INTERNAL "")
|
|
|
|
set(SOAPYSDR_LIBRARY "${SDRANGEL_BINARY_LIB_DIR}/SoapySDR.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/SoapySDR${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/SoapySDR${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(SOAPYSDR_LIBRARY "${binary_dir}/lib/libSoapySDR${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(SOAPYSDR_LIBRARY "${binary_dir}/lib/libSoapySDR${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/lib/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/lib/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libSoapySDR*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libSoapySDR*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/lib/")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/lib/")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_SOAPYSDR)
|
|
|
|
endif (ENABLE_SOAPYSDR)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_AIRSPY)
|
|
|
|
if (ENABLE_AIRSPY)
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(AIRSPY_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
set(AIRSPY_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(AIRSPY_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
set(AIRSPY_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
# needs libusb, pthreads
|
|
|
|
# needs libusb, pthreads
|
|
|
|
ExternalProject_Add(airspy
|
|
|
|
ExternalProject_Add(airspy
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyone_host
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyone_host
|
|
|
@ -514,27 +580,28 @@ if(WIN32 OR APPLE)
|
|
|
|
add_dependencies(airspy pthreads4w)
|
|
|
|
add_dependencies(airspy pthreads4w)
|
|
|
|
ExternalProject_Get_Property(airspy source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(airspy source_dir binary_dir)
|
|
|
|
set(LIBAIRSPY_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPY_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBAIRSPY_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPY_INCLUDE_DIR "${source_dir}/libairspy/src" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPY_INCLUDE_DIR "${source_dir}/libairspy/src" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBAIRSPY_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/airspy.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPY_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/airspy.lib" CACHE INTERNAL "")
|
|
|
|
makeCopyDir("${source_dir}/libairspy/src" "${source_dir}/libairspy/src/libairspy" airspy)
|
|
|
|
makeCopyDir("${source_dir}/libairspy/src" "${source_dir}/libairspy/src/libairspy" airspy)
|
|
|
|
makeCopy("${binary_dir}/airspy-tools/src/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" airspy)
|
|
|
|
makeCopy("${binary_dir}/airspy-tools/src/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" airspy)
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/airspy${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBAIRSPY_LIBRARIES "${binary_dir}/libairspy/src/libairspy${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPY_LIBRARIES "${binary_dir}/libairspy/src/libairspy${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
makeLink("${source_dir}/libairspy/src" "${source_dir}/libairspy/src/libairspy" airspy)
|
|
|
|
makeLink("${source_dir}/libairspy/src" "${source_dir}/libairspy/src/libairspy" airspy)
|
|
|
|
install(DIRECTORY "${binary_dir}/libairspy/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/libairspy/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libairspy*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libairspy*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/libairspy/src")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/libairspy/src")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_AIRSPY)
|
|
|
|
endif (ENABLE_AIRSPY)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_AIRSPYHF)
|
|
|
|
if (ENABLE_AIRSPYHF)
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(AIRSPYHF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
set(AIRSPYHF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(AIRSPYHF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
set(AIRSPYHF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
# needs pkgconfig, libusb, pthreads
|
|
|
|
# needs pkgconfig, libusb, pthreads
|
|
|
|
ExternalProject_Add(airspyhf
|
|
|
|
ExternalProject_Add(airspyhf
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyhf.git
|
|
|
|
GIT_REPOSITORY https://github.com/airspy/airspyhf.git
|
|
|
@ -552,30 +619,31 @@ if(WIN32 OR APPLE)
|
|
|
|
add_dependencies(airspyhf pthreads4w)
|
|
|
|
add_dependencies(airspyhf pthreads4w)
|
|
|
|
ExternalProject_Get_Property(airspyhf source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(airspyhf source_dir binary_dir)
|
|
|
|
set(LIBAIRSPYHF_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBAIRSPYHF_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_INCLUDE_DIR "${source_dir}/libairspyhf/src" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_INCLUDE_DIR "${source_dir}/libairspyhf/src" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/airspyhf.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/airspyhf.lib" CACHE INTERNAL "")
|
|
|
|
makeCopyDir("${source_dir}/libairspyhf/src" "${source_dir}/libairspyhf/src/libairspyhf" airspyhf)
|
|
|
|
makeCopyDir("${source_dir}/libairspyhf/src" "${source_dir}/libairspyhf/src/libairspyhf" airspyhf)
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/airspyhf${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/airspyhf${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${binary_dir}/libairspyhf/src/libairspyhf${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBAIRSPYHF_LIBRARIES "${binary_dir}/libairspyhf/src/libairspyhf${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
makeLink("${source_dir}/libairspyhf/src" "${source_dir}/libairspyhf/src/libairspyhf" airspyhf)
|
|
|
|
makeLink("${source_dir}/libairspyhf/src" "${source_dir}/libairspyhf/src/libairspyhf" airspyhf)
|
|
|
|
install(DIRECTORY "${binary_dir}/libairspyhf/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/libairspyhf/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libairspyhf*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libairspyhf*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/libairspyhf/src")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/libairspyhf/src")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_AIRSPYHF)
|
|
|
|
endif (ENABLE_AIRSPYHF)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_HACKRF)
|
|
|
|
if (ENABLE_HACKRF)
|
|
|
|
# SOURCE_SUBDIR require cmake 3.7.0
|
|
|
|
# SOURCE_SUBDIR require cmake 3.7.0
|
|
|
|
# otherwise use CONFIGURE_COMMAND
|
|
|
|
# otherwise use CONFIGURE_COMMAND
|
|
|
|
cmake_minimum_required(VERSION 3.7.0)
|
|
|
|
cmake_minimum_required(VERSION 3.7.0)
|
|
|
|
# needs pkgconfig, libusb, fftw, pthreads
|
|
|
|
# needs pkgconfig, libusb, fftw, pthreads
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
|
|
|
else()
|
|
|
|
else ()
|
|
|
|
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR})
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
ExternalProject_Add(hackrf
|
|
|
|
ExternalProject_Add(hackrf
|
|
|
|
GIT_REPOSITORY https://github.com/mossmann/hackrf.git
|
|
|
|
GIT_REPOSITORY https://github.com/mossmann/hackrf.git
|
|
|
|
GIT_TAG ${HACKRF_TAG}
|
|
|
|
GIT_TAG ${HACKRF_TAG}
|
|
|
@ -596,24 +664,25 @@ if(WIN32 OR APPLE)
|
|
|
|
add_dependencies(hackrf pthreads4w)
|
|
|
|
add_dependencies(hackrf pthreads4w)
|
|
|
|
ExternalProject_Get_Property(hackrf source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(hackrf source_dir binary_dir)
|
|
|
|
set(LIBHACKRF_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBHACKRF_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBHACKRF_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBHACKRF_INCLUDE_DIR "${source_dir}/host/libhackrf" CACHE INTERNAL "")
|
|
|
|
set(LIBHACKRF_INCLUDE_DIR "${source_dir}/host/libhackrf" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBHACKRF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/hackrf.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBHACKRF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/hackrf.lib" CACHE INTERNAL "")
|
|
|
|
# include "libhackrf/hackrf.h"
|
|
|
|
# include "libhackrf/hackrf.h"
|
|
|
|
makeCopyDir("${source_dir}/host/libhackrf/src" "${source_dir}/host/libhackrf/libhackrf" hackrf)
|
|
|
|
makeCopyDir("${source_dir}/host/libhackrf/src" "${source_dir}/host/libhackrf/libhackrf" hackrf)
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/hackrf${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/hackrf${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBHACKRF_LIBRARIES "${binary_dir}/src/libhackrf${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBHACKRF_LIBRARIES "${binary_dir}/src/libhackrf${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
# include "libhackrf/hackrf.h"
|
|
|
|
# include "libhackrf/hackrf.h"
|
|
|
|
makeLink("${source_dir}/host/libhackrf/src" "${source_dir}/host/libhackrf/libhackrf" hackrf)
|
|
|
|
makeLink("${source_dir}/host/libhackrf/src" "${source_dir}/host/libhackrf/libhackrf" hackrf)
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/")
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/src/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libhackrf*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libhackrf*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_HACKRF)
|
|
|
|
endif (ENABLE_HACKRF)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_IIO)
|
|
|
|
if (ENABLE_IIO)
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
ExternalProject_Add(libxml2
|
|
|
|
ExternalProject_Add(libxml2
|
|
|
|
GIT_REPOSITORY https://github.com/GNOME/libxml2.git
|
|
|
|
GIT_REPOSITORY https://github.com/GNOME/libxml2.git
|
|
|
|
GIT_TAG ${LIBXML2_TAG}
|
|
|
|
GIT_TAG ${LIBXML2_TAG}
|
|
|
@ -624,7 +693,7 @@ if(WIN32 OR APPLE)
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBXML2_PATCH_COMMAND /usr/bin/sed -i '' "s/libtoolize/glibtoolize/g" autogen.sh)
|
|
|
|
set(LIBXML2_PATCH_COMMAND /usr/bin/sed -i '' "s/libtoolize/glibtoolize/g" autogen.sh)
|
|
|
|
ExternalProject_Add(libxml2
|
|
|
|
ExternalProject_Add(libxml2
|
|
|
|
GIT_REPOSITORY https://github.com/GNOME/libxml2.git
|
|
|
|
GIT_REPOSITORY https://github.com/GNOME/libxml2.git
|
|
|
@ -637,21 +706,22 @@ if(WIN32 OR APPLE)
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
TEST_COMMAND ""
|
|
|
|
)
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
ExternalProject_Get_Property(libxml2 source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(libxml2 source_dir binary_dir)
|
|
|
|
set(LIBXML2_DEPENDS libxml2)
|
|
|
|
set(LIBXML2_DEPENDS libxml2)
|
|
|
|
set(LIBXML2_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBXML2_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBXML2_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBXML2_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
set(LIBXML2_INCLUDE_DIR "${source_dir}/include" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBXML2_LIBRARIES "${source_dir}/win32/bin.msvc/libxml2.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBXML2_LIBRARIES "${source_dir}/win32/bin.msvc/libxml2.lib" CACHE INTERNAL "")
|
|
|
|
makeCopy("${source_dir}/win32/bin.msvc/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" libxml2)
|
|
|
|
makeCopy("${source_dir}/win32/bin.msvc/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" "${SDRANGEL_BINARY_BIN_DIR}/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" libxml2)
|
|
|
|
install(FILES "${source_dir}/win32/bin.msvc/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${source_dir}/win32/bin.msvc/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBXML2_LIBRARIES "${source_dir}/.libs/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBXML2_LIBRARIES "${source_dir}/.libs/libxml2${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${source_dir}/.libs/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${source_dir}/.libs/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libxml2*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libxml2*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${source_dir}/.libs")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${source_dir}/.libs")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
# needs pkgconfig, libusb, pthreads, libxml2
|
|
|
|
# needs pkgconfig, libusb, pthreads, libxml2
|
|
|
|
ExternalProject_Add(libiio
|
|
|
|
ExternalProject_Add(libiio
|
|
|
|
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
|
|
|
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
|
|
@ -675,11 +745,12 @@ if(WIN32 OR APPLE)
|
|
|
|
add_dependencies(libiio pthreads4w)
|
|
|
|
add_dependencies(libiio pthreads4w)
|
|
|
|
ExternalProject_Get_Property(libiio source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(libiio source_dir binary_dir)
|
|
|
|
set(LIBIIO_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBIIO_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_INCLUDE_DIR "${source_dir}" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBIIO_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/libiio.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/libiio.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBIIO_LIBRARIES "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBIIO_LIBRARIES "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libiio*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libiio*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
@ -687,10 +758,10 @@ if(WIN32 OR APPLE)
|
|
|
|
makeCopy("${binary_dir}/libiio.framework/Versions/${IIO_VERSION}/libiio" "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" libiio)
|
|
|
|
makeCopy("${binary_dir}/libiio.framework/Versions/${IIO_VERSION}/libiio" "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" libiio)
|
|
|
|
add_custom_command(TARGET libiio POST_BUILD COMMAND install_name_tool -id "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
add_custom_command(TARGET libiio POST_BUILD COMMAND install_name_tool -id "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}" "${binary_dir}/libiio${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_IIO)
|
|
|
|
endif (ENABLE_IIO)
|
|
|
|
|
|
|
|
|
|
|
|
if(ENABLE_BLADERF)
|
|
|
|
if (ENABLE_BLADERF)
|
|
|
|
# needs pkgconfig, libusb, pthreads
|
|
|
|
# needs pkgconfig, libusb, pthreads
|
|
|
|
ExternalProject_Add(bladerf
|
|
|
|
ExternalProject_Add(bladerf
|
|
|
|
GIT_REPOSITORY https://github.com/Nuand/bladeRF.git
|
|
|
|
GIT_REPOSITORY https://github.com/Nuand/bladeRF.git
|
|
|
@ -717,15 +788,16 @@ if(WIN32 OR APPLE)
|
|
|
|
add_dependencies(bladerf pthreads4w)
|
|
|
|
add_dependencies(bladerf pthreads4w)
|
|
|
|
ExternalProject_Get_Property(bladerf source_dir binary_dir)
|
|
|
|
ExternalProject_Get_Property(bladerf source_dir binary_dir)
|
|
|
|
set(LIBBLADERF_FOUND ON CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_FOUND ON CACHE INTERNAL "")
|
|
|
|
|
|
|
|
set(LIBBLADERF_EXTERNAL ON CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_INCLUDE_DIRS "${source_dir}/host/libraries/libbladeRF/include" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_INCLUDE_DIRS "${source_dir}/host/libraries/libbladeRF/include" CACHE INTERNAL "")
|
|
|
|
if(WIN32)
|
|
|
|
if (WIN32)
|
|
|
|
set(LIBBLADERF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/bladeRF.lib" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_LIBRARIES "${SDRANGEL_BINARY_LIB_DIR}/bladeRF.lib" CACHE INTERNAL "")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/bladeRF${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
install(FILES "${SDRANGEL_BINARY_BIN_DIR}/bladeRF${CMAKE_SHARED_LIBRARY_SUFFIX}" DESTINATION "${INSTALL_LIB_DIR}")
|
|
|
|
elseif(APPLE)
|
|
|
|
elseif (APPLE)
|
|
|
|
set(LIBBLADERF_LIBRARIES "${binary_dir}/host/output/libbladeRF${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
set(LIBBLADERF_LIBRARIES "${binary_dir}/host/output/libbladeRF${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "")
|
|
|
|
install(DIRECTORY "${binary_dir}/host/output/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
install(DIRECTORY "${binary_dir}/host/output/" DESTINATION "${INSTALL_LIB_DIR}"
|
|
|
|
FILES_MATCHING PATTERN "libbladeRF*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
FILES_MATCHING PATTERN "libbladeRF*${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/host/output")
|
|
|
|
set(MACOS_EXTERNAL_LIBS_FIXUP "${MACOS_EXTERNAL_LIBS_FIXUP};${binary_dir}/host/output")
|
|
|
|
endif()
|
|
|
|
endif ()
|
|
|
|
endif(ENABLE_BLADERF)
|
|
|
|
endif (ENABLE_BLADERF)
|
|
|
|
endif(WIN32 OR APPLE)
|
|
|
|
endif (WIN32 OR APPLE)
|
|
|
|