diff options
author | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2014-02-05 02:47:25 +0000 |
---|---|---|
committer | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2014-02-05 02:47:25 +0000 |
commit | 7897e5e33d0f7c1eabfea0bb8de997200d0111bd (patch) | |
tree | ac058e51715b68cac5908456dd7d935523851c04 /net-analyzer/gsm-receiver/files | |
parent | Version bump to 1.1.3. (diff) | |
download | gentoo-2-7897e5e33d0f7c1eabfea0bb8de997200d0111bd.tar.gz gentoo-2-7897e5e33d0f7c1eabfea0bb8de997200d0111bd.tar.bz2 gentoo-2-7897e5e33d0f7c1eabfea0bb8de997200d0111bd.zip |
Add patch for gnuradio-3.7 compatibility.
(Portage version: 2.2.7/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'net-analyzer/gsm-receiver/files')
-rw-r--r-- | net-analyzer/gsm-receiver/files/0001-gsm-receiver-build-against-gnuradio-3.7.patch | 323 |
1 files changed, 323 insertions, 0 deletions
diff --git a/net-analyzer/gsm-receiver/files/0001-gsm-receiver-build-against-gnuradio-3.7.patch b/net-analyzer/gsm-receiver/files/0001-gsm-receiver-build-against-gnuradio-3.7.patch new file mode 100644 index 000000000000..b7683f38b683 --- /dev/null +++ b/net-analyzer/gsm-receiver/files/0001-gsm-receiver-build-against-gnuradio-3.7.patch @@ -0,0 +1,323 @@ +From c9809ac05224ccf3a7fce1dda8c7eddedbbf3a56 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ch=C3=AD-Thanh=20Christopher=20Nguy=E1=BB=85n?= + <chithanh@gentoo.org> +Date: Wed, 5 Feb 2014 03:21:37 +0100 +Subject: [PATCH] gsm-receiver: build against gnuradio-3.7 + +This is the result of blindly following +http://gnuradio.org/redmine/projects/gnuradio/wiki/Move_3-6_to_3-7 +The result builds, but it may or may not work. +--- + gsm-receiver/Makefile.common | 7 ++-- + gsm-receiver/config/Makefile.am | 2 +- + .../config/gr_libgnuradio_core_extra_ldflags.m4 | 40 ---------------------- + .../config/gr_libgnuradio_runtime_extra_ldflags.m4 | 40 ++++++++++++++++++++++ + gsm-receiver/config/gr_standalone.m4 | 5 ++- + gsm-receiver/gsm-receiver.pc.in | 2 +- + gsm-receiver/src/lib/gsm.i | 15 ++++++-- + gsm-receiver/src/lib/gsm_receiver_cf.cc | 16 ++++----- + gsm-receiver/src/lib/gsm_receiver_cf.h | 18 +++++----- + 9 files changed, 76 insertions(+), 69 deletions(-) + delete mode 100644 gsm-receiver/config/gr_libgnuradio_core_extra_ldflags.m4 + create mode 100644 gsm-receiver/config/gr_libgnuradio_runtime_extra_ldflags.m4 + +diff --git a/gsm-receiver/Makefile.common b/gsm-receiver/Makefile.common +index b5dcb2e..0592f70 100644 +--- a/gsm-receiver/Makefile.common ++++ b/gsm-receiver/Makefile.common +@@ -28,7 +28,7 @@ AM_CPPFLAGS = \ + $(STD_DEFINES_AND_INCLUDES) \ + $(PYTHON_CPPFLAGS) \ + $(CPPUNIT_INCLUDES) \ +- $(GNURADIO_CORE_CPPFLAGS) ++ $(GNURADIO_RUNTIME_CPPFLAGS) + + #!! remove this + TCH_DECODER_INCLUDEDIR = $(top_srcdir)/src/lib/decoder/openbtsstuff +@@ -36,9 +36,8 @@ TCH_DECODER_INCLUDEDIR = $(top_srcdir)/src/lib/decoder/openbtsstuff + STD_DEFINES_AND_INCLUDES = \ + -I$(DECODER_INCLUDEDIR) \ + -I$(MAIN_INCLUDEDIR) \ +- -I$(GNURADIO_CORE_INCLUDEDIR) \ +- -I$(GNURADIO_CORE_INCLUDEDIR)/swig \ +- -I$(GRUEL_INCLUDEDIR)/gruel/swig \ ++ -I$(GNURADIO_RUNTIME_INCLUDEDIR) \ ++ -I$(GNURADIO_RUNTIME_INCLUDEDIR)/gnuradio/swig \ + $(LIBOSMOCORE_CFLAGS) \ + -I$(TCH_DECODER_INCLUDEDIR) + +diff --git a/gsm-receiver/config/Makefile.am b/gsm-receiver/config/Makefile.am +index 5858d22..1fdc0e5 100644 +--- a/gsm-receiver/config/Makefile.am ++++ b/gsm-receiver/config/Makefile.am +@@ -51,7 +51,7 @@ m4macros = \ + gr_fortran.m4 \ + gr_gprof.m4 \ + gr_lib64.m4 \ +- gr_libgnuradio_core_extra_ldflags.m4 \ ++ gr_libgnuradio_runtime_extra_ldflags.m4 \ + gr_no_undefined.m4 \ + gr_omnithread.m4 \ + gr_pwin32.m4 \ +diff --git a/gsm-receiver/config/gr_libgnuradio_core_extra_ldflags.m4 b/gsm-receiver/config/gr_libgnuradio_core_extra_ldflags.m4 +deleted file mode 100644 +index 43f872c..0000000 +--- a/gsm-receiver/config/gr_libgnuradio_core_extra_ldflags.m4 ++++ /dev/null +@@ -1,40 +0,0 @@ +-# Check for (MinGW)win32 extra ld options. -*- Autoconf -*- +- +-# Copyright 2003,2004,2005 Free Software Foundation, Inc. +-# +-# This file is part of GNU Radio +-# +-# GNU Radio is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 3, or (at your option) +-# any later version. +-# +-# GNU Radio is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with GNU Radio; see the file COPYING. If not, write to +-# the Free Software Foundation, Inc., 51 Franklin Street, +-# Boston, MA 02110-1301, USA. +- +-dnl +-AC_DEFUN([GR_LIBGNURADIO_CORE_EXTRA_LDFLAGS], [ +-AC_REQUIRE([AC_PROG_LD]) +-# on Mingw32 extra LDFLAGS are required to ease global variable linking +-LIBGNURADIO_CORE_EXTRA_LDFLAGS="" +- +-AC_MSG_CHECKING([whether $LD accepts --enable-runtime-pseudo-reloc]) +-if ${LD} --enable-runtime-pseudo-reloc --version >/dev/null 2>&1 +-then +- # libtool requires the quotes +- LIBGNURADIO_CORE_EXTRA_LDFLAGS="\"-Wl,--enable-runtime-pseudo-reloc\"" +- AC_MSG_RESULT(yes) +-else +- AC_MSG_RESULT(no) +-fi +- +-AC_SUBST(LIBGNURADIO_CORE_EXTRA_LDFLAGS) +- +-]) +diff --git a/gsm-receiver/config/gr_libgnuradio_runtime_extra_ldflags.m4 b/gsm-receiver/config/gr_libgnuradio_runtime_extra_ldflags.m4 +new file mode 100644 +index 0000000..92e8c97 +--- /dev/null ++++ b/gsm-receiver/config/gr_libgnuradio_runtime_extra_ldflags.m4 +@@ -0,0 +1,40 @@ ++# Check for (MinGW)win32 extra ld options. -*- Autoconf -*- ++ ++# Copyright 2003,2004,2005 Free Software Foundation, Inc. ++# ++# This file is part of GNU Radio ++# ++# GNU Radio is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3, or (at your option) ++# any later version. ++# ++# GNU Radio is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with GNU Radio; see the file COPYING. If not, write to ++# the Free Software Foundation, Inc., 51 Franklin Street, ++# Boston, MA 02110-1301, USA. ++ ++dnl ++AC_DEFUN([GR_LIBGNURADIO_RUNTIME_EXTRA_LDFLAGS], [ ++AC_REQUIRE([AC_PROG_LD]) ++# on Mingw32 extra LDFLAGS are required to ease global variable linking ++LIBGNURADIO_RUNTIME_EXTRA_LDFLAGS="" ++ ++AC_MSG_CHECKING([whether $LD accepts --enable-runtime-pseudo-reloc]) ++if ${LD} --enable-runtime-pseudo-reloc --version >/dev/null 2>&1 ++then ++ # libtool requires the quotes ++ LIBGNURADIO_RUNTIME_EXTRA_LDFLAGS="\"-Wl,--enable-runtime-pseudo-reloc\"" ++ AC_MSG_RESULT(yes) ++else ++ AC_MSG_RESULT(no) ++fi ++ ++AC_SUBST(LIBGNURADIO_RUNTIME_EXTRA_LDFLAGS) ++ ++]) +diff --git a/gsm-receiver/config/gr_standalone.m4 b/gsm-receiver/config/gr_standalone.m4 +index 4e097d2..14f286c 100644 +--- a/gsm-receiver/config/gr_standalone.m4 ++++ b/gsm-receiver/config/gr_standalone.m4 +@@ -114,7 +114,6 @@ m4_define([GR_STANDALONE], + AC_CHECK_PROG([XMLTO],[xmlto],[yes],[]) + AM_CONDITIONAL([HAS_XMLTO], [test x$XMLTO = xyes]) + +- PKG_CHECK_MODULES(GNURADIO_CORE, gnuradio-core >= 3) +- LIBS="$LIBS $GNURADIO_CORE_LIBS" +- PKG_CHECK_MODULES(GRUEL, gruel >= 3) ++ PKG_CHECK_MODULES(GNURADIO_RUNTIME, gnuradio-runtime >= 3) ++ LIBS="$LIBS $GNURADIO_RUNTIME_LIBS" + ]) +diff --git a/gsm-receiver/gsm-receiver.pc.in b/gsm-receiver/gsm-receiver.pc.in +index 0a18d4b..9ceca56 100644 +--- a/gsm-receiver/gsm-receiver.pc.in ++++ b/gsm-receiver/gsm-receiver.pc.in +@@ -5,7 +5,7 @@ includedir=@includedir@ + + Name: gsm-receiver + Description: The GSM receiver block which does FCCH burst search, sch decoding and normal burst demodulation +-Requires: gnuradio-core ++Requires: gnuradio-runtime + Version: @VERSION@ + Libs: -L${libdir} -lgsm-receiver + Cflags: -I${includedir} +diff --git a/gsm-receiver/src/lib/gsm.i b/gsm-receiver/src/lib/gsm.i +index b3c1d81..3f58e16 100644 +--- a/gsm-receiver/src/lib/gsm.i ++++ b/gsm-receiver/src/lib/gsm.i +@@ -37,18 +37,27 @@ + #include "gsm_receiver_cf.h" + #include <stdexcept> + /* #include "gsm_constants.h" */ ++#include <gnuradio/block.h> ++#include <gnuradio/sync_block.h> ++#include <gnuradio/sync_decimator.h> ++#include <gnuradio/sync_interpolator.h> ++#include <gnuradio/tagged_stream_block.h> ++#include <gnuradio/block_gateway.h> ++#include <gnuradio/feval.h> ++#include <gnuradio/py_feval.h> ++#include <gnuradio/high_res_timer.h> + %} + + // ---------------------------------------------------------------- + + GR_SWIG_BLOCK_MAGIC(gsm,receiver_cf); + +-gsm_receiver_cf_sptr gsm_make_receiver_cf ( gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration); ++gsm_receiver_cf_sptr gsm_make_receiver_cf ( gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration); + +-class gsm_receiver_cf : public gr_block ++class gsm_receiver_cf : public gr::block + { + private: +- gsm_receiver_cf ( gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr); ++ gsm_receiver_cf ( gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr); + }; + + // ---------------------------------------------------------------- +diff --git a/gsm-receiver/src/lib/gsm_receiver_cf.cc b/gsm-receiver/src/lib/gsm_receiver_cf.cc +index b4e7a69..6bfdf5d 100644 +--- a/gsm-receiver/src/lib/gsm_receiver_cf.cc ++++ b/gsm-receiver/src/lib/gsm_receiver_cf.cc +@@ -24,8 +24,8 @@ + #include "config.h" + #endif + +-#include <gr_io_signature.h> +-#include <gr_math.h> ++#include <gnuradio/io_signature.h> ++#include <gnuradio/math.h> + #include <math.h> + #include <Assert.h> + #include <boost/circular_buffer.hpp> +@@ -289,7 +289,7 @@ typedef std::vector<float> vector_float; + typedef boost::circular_buffer<float> circular_buffer_float; + + gsm_receiver_cf_sptr +-gsm_make_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration) ++gsm_make_receiver_cf(gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration) + { + return gsm_receiver_cf_sptr(new gsm_receiver_cf(tuner, synchronizer, osr, key, configuration)); + } +@@ -302,10 +302,10 @@ static const int MAX_OUT = 1; // maximum number of output streams + /* + * The private constructor + */ +-gsm_receiver_cf::gsm_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration) +- : gr_block("gsm_receiver", +- gr_make_io_signature(MIN_IN, MAX_IN, sizeof(gr_complex)), +- gr_make_io_signature(MIN_OUT, MAX_OUT, 142 * sizeof(float))), ++gsm_receiver_cf::gsm_receiver_cf(gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration) ++ : gr::block("gsm_receiver", ++ gr::io_signature::make(MIN_IN, MAX_IN, sizeof(gr_complex)), ++ gr::io_signature::make(MIN_OUT, MAX_OUT, 142 * sizeof(float))), + d_OSR(osr), + d_chan_imp_length(CHAN_IMP_RESP_LENGTH), + d_tuner(tuner), +@@ -751,7 +751,7 @@ void gsm_receiver_cf::set_frequency(double freq_offset) + inline float gsm_receiver_cf::compute_phase_diff(gr_complex val1, gr_complex val2) + { + gr_complex conjprod = val1 * conj(val2); +- return gr_fast_atan2f(imag(conjprod), real(conjprod)); ++ return gr::fast_atan2f(imag(conjprod), real(conjprod)); + } + + bool gsm_receiver_cf::reach_sch_burst(const int nitems) +diff --git a/gsm-receiver/src/lib/gsm_receiver_cf.h b/gsm-receiver/src/lib/gsm_receiver_cf.h +index 039a774..3478585 100644 +--- a/gsm-receiver/src/lib/gsm_receiver_cf.h ++++ b/gsm-receiver/src/lib/gsm_receiver_cf.h +@@ -24,9 +24,9 @@ + + #include <vector> + #include <list> +-#include <gr_block.h> +-#include <gr_complex.h> +-#include <gr_feval.h> ++#include <gnuradio/block.h> ++#include <gnuradio/gr_complex.h> ++#include <gnuradio/feval.h> + #include <gsm_constants.h> + #include <gsm_receiver_config.h> + +@@ -42,7 +42,7 @@ class gsm_receiver_cf; + typedef boost::shared_ptr<gsm_receiver_cf> gsm_receiver_cf_sptr; + typedef std::vector<gr_complex> vector_complex; + +-gsm_receiver_cf_sptr gsm_make_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration); ++gsm_receiver_cf_sptr gsm_make_receiver_cf(gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration); + + /** GSM Receiver GNU Radio block + * +@@ -52,7 +52,7 @@ gsm_receiver_cf_sptr gsm_make_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synch + * \ingroup block + */ + +-class gsm_receiver_cf : public gr_block ++class gsm_receiver_cf : public gr::block + { + private: + std::map<char,int> d_hex_to_int; +@@ -76,8 +76,8 @@ class gsm_receiver_cf : public gr_block + gr_complex d_sch_training_seq[N_SYNC_BITS]; ///<encoded training sequence of a SCH burst + gr_complex d_norm_training_seq[TRAIN_SEQ_NUM][N_TRAIN_BITS]; ///<encoded training sequences of a normal bursts and dummy bursts + +- gr_feval_dd *d_tuner; ///<callback to a python object which is used for frequency tunning +- gr_feval_dd *d_synchronizer; ///<callback to a python object which is used to correct offset of USRP's internal clock ++ gr::feval_dd *d_tuner; ///<callback to a python object which is used for frequency tunning ++ gr::feval_dd *d_synchronizer; ///<callback to a python object which is used to correct offset of USRP's internal clock + + /** Countes samples consumed by the receiver + * +@@ -120,8 +120,8 @@ class gsm_receiver_cf : public gr_block + // GSM Stack + GS_CTX d_gs_ctx;//TODO: remove it! it'a not right place for a decoder + +- friend gsm_receiver_cf_sptr gsm_make_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration); +- gsm_receiver_cf(gr_feval_dd *tuner, gr_feval_dd *synchronizer, int osr, std::string key, std::string configuration); ++ friend gsm_receiver_cf_sptr gsm_make_receiver_cf(gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration); ++ gsm_receiver_cf(gr::feval_dd *tuner, gr::feval_dd *synchronizer, int osr, std::string key, std::string configuration); + + /** Function whis is used to search a FCCH burst and to compute frequency offset before + * "synchronized" state of the receiver +-- +1.8.3.2 + |