aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPiotr Krysik <ptrkrysik@gmail.com>2018-06-18 14:53:59 +0200
committerPiotr Krysik <pkrysik@elka.pw.edu.pl>2018-06-18 15:13:13 +0200
commitc711e97af1ea29179c04d8bbbead523c3c2421f4 (patch)
tree4e33cfe5458f0b7f81a441cd07dec0383665a370
parent9b5519db84548040a2bda7a8939c1f894843f879 (diff)
Separating libosmogsm from the rest
-rw-r--r--CMakeLists.txt1
-rw-r--r--cmake/Modules/FindLibosmocore.cmake13
-rw-r--r--cmake/Modules/FindLibosmogsm.cmake32
-rw-r--r--lib/CMakeLists.txt6
-rw-r--r--lib/decoding/CMakeLists.txt2
5 files changed, 37 insertions, 17 deletions
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)