From c711e97af1ea29179c04d8bbbead523c3c2421f4 Mon Sep 17 00:00:00 2001 From: Piotr Krysik Date: Mon, 18 Jun 2018 14:53:59 +0200 Subject: Separating libosmogsm from the rest --- CMakeLists.txt | 1 + cmake/Modules/FindLibosmocore.cmake | 13 +------------ cmake/Modules/FindLibosmogsm.cmake | 32 ++++++++++++++++++++++++++++++++ lib/CMakeLists.txt | 6 ++---- lib/decoding/CMakeLists.txt | 2 +- 5 files changed, 37 insertions(+), 17 deletions(-) create mode 100644 cmake/Modules/FindLibosmogsm.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index ca71fff..f032206 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -139,6 +139,7 @@ find_package(CppUnit) find_package(Libosmocore) find_package(Libosmocodec) find_package(Libosmocoding) +find_package(Libosmogsm) if(NOT PKG_CONFIG_FOUND) message(FATAL_ERROR "pkg-config is required to compile gr-gsm") diff --git a/cmake/Modules/FindLibosmocore.cmake b/cmake/Modules/FindLibosmocore.cmake index 9e4f3c4..8157910 100644 --- a/cmake/Modules/FindLibosmocore.cmake +++ b/cmake/Modules/FindLibosmocore.cmake @@ -1,7 +1,6 @@ #find_package(PkgConfig) INCLUDE(FindPkgConfig) pkg_check_modules(PC_libosmocore libosmocore) -pkg_check_modules(PC_libosmogsm libosmogsm) set(LIBOSMOCORE_DEFINITIONS ${PC_LIBOSMOCORE_CFLAGS_OTHER}) find_path( @@ -25,18 +24,8 @@ find_library( /usr/lib ) -find_library( - LIBOSMOCORE_GSM_LIBRARY - NAMES libosmogsm osmogsm - HINTS ${PC_libosmocore_LIBDIR} - ${PC_libosmocore_LIBRARY_DIRS} - ${CMAKE_INSTALL_PREFIX}/lib/ - ${CMAKE_INSTALL_PREFIX}/lib64/ - PATHS /usr/local/lib - /usr/lib -) -set(LIBOSMOCORE_LIBRARIES ${LIBOSMOCORE_LIBRARY} ${LIBOSMOCORE_GSM_LIBRARY}) +set(LIBOSMOCORE_LIBRARIES ${LIBOSMOCORE_LIBRARY}) set(LIBOSMOCORE_INCLUDE_DIRS ${LIBOSMOCORE_INCLUDE_DIR}) include(FindPackageHandleStandardArgs) diff --git a/cmake/Modules/FindLibosmogsm.cmake b/cmake/Modules/FindLibosmogsm.cmake new file mode 100644 index 0000000..01985f4 --- /dev/null +++ b/cmake/Modules/FindLibosmogsm.cmake @@ -0,0 +1,32 @@ +INCLUDE(FindPkgConfig) +pkg_check_modules(PC_libosmogsm libosmogsm) +set(LIBOSMOGSM_DEFINITIONS ${PC_LIBOSMOGSM_CFLAGS_OTHER}) + +find_path( + LIBOSMOGSM_INCLUDE_DIR + NAMES osmocom/gsm/gsm_utils.h + HINTS ${PC_libosmogsm_INCLUDEDIR} + ${PC_libosmogsm_INCLUDE_DIRS} + ${CMAKE_INSTALL_PREFIX}/include + PATHS /usr/local/include + /usr/include +) + +find_library( + LIBOSMOGSM_LIBRARY + NAMES libosmogsm osmogsm + HINTS ${PC_libosmogsm_LIBDIR} + ${PC_libosmogsm_LIBRARY_DIRS} + ${CMAKE_INSTALL_PREFIX}/lib/ + ${CMAKE_INSTALL_PREFIX}/lib64/ + PATHS /usr/local/lib + /usr/lib +) + + +set(LIBOSMOGSM_LIBRARIES ${LIBOSMOGSM_LIBRARY}) +set(LIBOSMOGSM_INCLUDE_DIRS ${LIBOSMOGSM_INCLUDE_DIR}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(libosmogsm DEFAULT_MSG LIBOSMOGSM_LIBRARY LIBOSMOGSM_INCLUDE_DIR) +mark_as_advanced(LIBOSMOGSM_INCLUDE_DIR LIBOSMOGSM_LIBRARY ) diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 518edc4..5fa9da4 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -88,15 +88,13 @@ if(WIN32) list (APPEND grgsm_link_libraries ws2_32) endif() -if(LIBOSMOCORE_FOUND AND LIBOSMOCODEC_FOUND) - list (APPEND grgsm_link_libraries ${LIBOSMOCORE_LIBRARIES} ${LIBOSMOCODEC_LIBRARIES}) +if(LIBOSMOCORE_FOUND AND LIBOSMOCODEC_FOUND AND LIBOSMOGSM_FOUND) + list (APPEND grgsm_link_libraries ${LIBOSMOCORE_LIBRARIES} ${LIBOSMOCODEC_LIBRARIES} ${LIBOSMOGSM_LIBRARY}) if(LIBOSMOCODING_FOUND) list (APPEND grgsm_link_libraries ${LIBOSMOCODING_LIBRARIES}) endif() endif() - - add_library(grgsm SHARED ${grgsm_sources}) target_link_libraries(grgsm ${grgsm_link_libraries} # libraries required by plotting.h - have troubles to be installed by pybombs diff --git a/lib/decoding/CMakeLists.txt b/lib/decoding/CMakeLists.txt index c9fc744..95071ab 100644 --- a/lib/decoding/CMakeLists.txt +++ b/lib/decoding/CMakeLists.txt @@ -17,7 +17,7 @@ # the Free Software Foundation, Inc., 51 Franklin Street, # Boston, MA 02110-1301, USA. -if(NOT LIBOSMOCORE_FOUND OR NOT LIBOSMOCODEC_FOUND) +if(NOT LIBOSMOCORE_FOUND OR NOT LIBOSMOCODEC_FOUND OR NOT LIBOSMOGSM_FOUND) add_subdirectory(osmocom/core) add_subdirectory(osmocom/codec) add_subdirectory(osmocom/gsm) -- cgit v1.2.3