Changes in decoding:
-copied decoding routines from libosmocore to gr-gsm,
-made cmake files entries for new source files and added linking with libosmocodec,
-moved sch.c file to decoding folder.
diff --git a/cmake/Modules/FindLibosmocodec.cmake b/cmake/Modules/FindLibosmocodec.cmake
new file mode 100644
index 0000000..c28e9f9
--- /dev/null
+++ b/cmake/Modules/FindLibosmocodec.cmake
@@ -0,0 +1,32 @@
+INCLUDE(FindPkgConfig)
+pkg_check_modules(PC_libosmocodec libosmocodec)
+set(LIBOSMOCODEC_DEFINITIONS ${PC_LIBOSMOCODEC_CFLAGS_OTHER})
+
+find_path(
+        LIBOSMOCODEC_INCLUDE_DIR
+        NAMES   osmocom/codec/codec.h
+        HINTS   ${PC_libosmocodec_INCLUDEDIR}
+                ${PC_libosmocodec_INCLUDE_DIRS}
+                ${CMAKE_INSTALL_PREFIX}/include
+        PATHS   /usr/local/include
+                /usr/include
+)
+
+find_library(
+        LIBOSMOCODEC_LIBRARY
+        NAMES   libosmocodec osmocodec
+        HINTS   ${PC_libosmocodec_LIBDIR}
+                ${PC_libosmocodec_LIBRARY_DIRS}
+                ${CMAKE_INSTALL_PREFIX}/lib/
+                ${CMAKE_INSTALL_PREFIX}/lib64/
+        PATHS   /usr/local/lib
+                /usr/lib
+)
+
+
+set(LIBOSMOCODEC_LIBRARIES ${LIBOSMOCODEC_LIBRARY})
+set(LIBOSMOCODEC_INCLUDE_DIRS ${LIBOSMOCODEC_INCLUDE_DIR})
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(libosmocodec  DEFAULT_MSG LIBOSMOCODEC_LIBRARY LIBOSMOCODEC_INCLUDE_DIR)
+mark_as_advanced(LIBOSMOCODEC_INCLUDE_DIR LIBOSMOCODEC_LIBRARY )
diff --git a/cmake/Modules/FindLibosmocoding.cmake b/cmake/Modules/FindLibosmocoding.cmake
index c3e4cbb..b63869a 100644
--- a/cmake/Modules/FindLibosmocoding.cmake
+++ b/cmake/Modules/FindLibosmocoding.cmake
@@ -29,4 +29,4 @@
 
 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(libosmocoding  DEFAULT_MSG LIBOSMOCODING_LIBRARY LIBOSMOCODING_INCLUDE_DIR)
-mark_as_advanced(LIBOSMOCODING_INCLUDE_DIR LIBOSMOCODING_LIBRARY )
+mark_as_advanced(LIBOSMOCODING_INCLUDE_DIR LIBOSMOCODING_LIBRARY )
\ No newline at end of file
diff --git a/cmake/Modules/FindLibosmocore.cmake b/cmake/Modules/FindLibosmocore.cmake
index 1704bf6..9e4f3c4 100644
--- a/cmake/Modules/FindLibosmocore.cmake
+++ b/cmake/Modules/FindLibosmocore.cmake
@@ -1,4 +1,5 @@
-find_package(PkgConfig)
+#find_package(PkgConfig)
+INCLUDE(FindPkgConfig)
 pkg_check_modules(PC_libosmocore libosmocore)
 pkg_check_modules(PC_libosmogsm libosmogsm)
 set(LIBOSMOCORE_DEFINITIONS ${PC_LIBOSMOCORE_CFLAGS_OTHER})
diff --git a/cmake/Modules/FindSWIG.cmake b/cmake/Modules/FindSWIG.cmake
index 156bd5e..e10080d 100644
--- a/cmake/Modules/FindSWIG.cmake
+++ b/cmake/Modules/FindSWIG.cmake
@@ -139,3 +139,4 @@
     message(FATAL_ERROR "SWIG is required, but was not found.")
   endif()
 endif()
+