[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] Schedule for GNU Radio 3.7.9 release - abi-compliance
From: |
Maitland Bottoms |
Subject: |
[Discuss-gnuradio] Schedule for GNU Radio 3.7.9 release - abi-compliance-checker |
Date: |
Tue, 1 Dec 2015 23:56:46 -0500 |
Hi,
I played a bit with the abi-compliance-checker which resulted in the attached
patch.
Alas, it complained a bit on gr-uhd - perhaps unable to figure out uhd from
the Ettus UHD headers and uhd from gnuradio headers. So I punted, and told
abi-compliance-checker to skip include/gnuradio/uhd paths[1].
Someone with well honed C++ skills (or want to hone their skills) might
want to take a look at that.
The attached make-acc-happy patch applies to both master and maint right now.
Might be a nice goal to have GNU Radio 3.7.9 play well with
abi-compliance-checker.
-Maitland
P.S.
This is one of the patches I add to gnuradio in making the Debian packages:
https://sources.debian.net/src/gnuradio/3.7.8.1-2/debian/patches/
https://sources.debian.net/src/gnuradio/3.7.8.1-2/debian/patches/make-acc-happy/
Also part of making abi-compliance-checker was fixing up the codec2 code:
https://sources.debian.net/src/gnuradio/3.7.8.1-2/debian/patches/codec2-embedding-fixups/
[1]Here's the config for abi-compliance-checker used in Debian packaging:
https://sources.debian.net/src/gnuradio/3.7.8.1-2/debian/gnuradio-dev.acc/
--- a/gnuradio-runtime/include/gnuradio/sys_pri.h
+++ b/gnuradio-runtime/include/gnuradio/sys_pri.h
@@ -23,7 +23,7 @@
#define INCLUDED_GNURADIO_SYS_PRI_H
#include <gnuradio/api.h>
-#include <realtime.h>
+#include <gnuradio/realtime.h>
/*
* A single place to define real-time priorities used by the system itself
@@ -31,10 +31,10 @@
namespace gr {
struct GR_RUNTIME_API sys_pri {
- static rt_sched_param python(); // python code
- static rt_sched_param normal(); // normal blocks
- static rt_sched_param gcell_event_handler();
- static rt_sched_param usrp2_backend(); // thread that services the
ethernet
+ static struct GR_RUNTIME_API rt_sched_param python(); //
python code
+ static struct GR_RUNTIME_API rt_sched_param normal(); //
normal blocks
+ static struct GR_RUNTIME_API rt_sched_param gcell_event_handler();
+ static struct GR_RUNTIME_API rt_sched_param usrp2_backend(); //
thread that services the ethernet
};
} /* namespace gr */
--- a/gnuradio-runtime/include/gnuradio/py_feval.h
+++ b/gnuradio-runtime/include/gnuradio/py_feval.h
@@ -23,6 +23,7 @@
#ifndef INCLUDED_GR_PY_FEVAL_H
#define INCLUDED_GR_PY_FEVAL_H
+#include <Python.h>
#include <pmt/pmt.h>
#include <gnuradio/feval.h>
>From d3bdf1d6ddac7d4d65a2b9fbc9600027e92f28ad Mon Sep 17 00:00:00 2001
From: "A. Maitland Bottoms" <address@hidden>
Date: Wed, 11 Nov 2015 10:50:22 -0500
Subject: [PATCH] codec2-embedding-fixup
---
gr-vocoder/gnuradio-vocoder.pc.in | 2 +-
gr-vocoder/include/gnuradio/vocoder/codec2.h | 2 +-
gr-vocoder/lib/CMakeLists.txt | 7 +++++++
gr-vocoder/swig/CMakeLists.txt | 1 +
4 files changed
diff --git a/gr-vocoder/gnuradio-vocoder.pc.in
b/gr-vocoder/gnuradio-vocoder.pc.in
index c5c860d..f937319 100644
--- a/gr-vocoder/gnuradio-vocoder.pc.in
+++ b/gr-vocoder/gnuradio-vocoder.pc.in
@@ -8,4 +8,4 @@ Description: GNU Radio blocks implementing voice codecs
Requires: gnuradio-runtime
Version: @LIBVER@
Libs: -L${libdir} -lgnuradio-vocoder
-Cflags: -I${includedir}
+Cflags: -I${includedir} @EMBEDDED_CODEC2_INCLUDE@
diff --git a/gr-vocoder/include/gnuradio/vocoder/codec2.h
b/gr-vocoder/include/gnuradio/vocoder/codec2.h
index a3c2225..871903f 100644
--- a/gr-vocoder/include/gnuradio/vocoder/codec2.h
+++ b/gr-vocoder/include/gnuradio/vocoder/codec2.h
@@ -26,7 +26,7 @@
#include <gnuradio/vocoder/api.h>
extern "C" {
-#include "../lib/codec2/codec2.h"
+#include <codec2/codec2.h>
}
namespace gr {
diff --git a/gr-vocoder/lib/CMakeLists.txt b/gr-vocoder/lib/CMakeLists.txt
index a347cbf..7e813de 100644
--- a/gr-vocoder/lib/CMakeLists.txt
+++ b/gr-vocoder/lib/CMakeLists.txt
@@ -140,6 +140,9 @@ else (NOT DEFINED GR_USE_SYSTEM_LIBCODEC2)
else (GR_USE_SYSTEM_LIBCODEC2)
set(GR_USE_LOCAL_LIBCODEC2 TRUE)
message(STATUS "Using gnuradio local copy of libcodec2.")
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ set(EMBEDDED_CODEC2_INCLUDE "-I\${includedir}/gnuradio/vocoder"
PARENT_SCOPE)
+ set(EMBEDDED_CODEC2_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/gr-vocoder/lib
PARENT_SCOPE)
endif (GR_USE_SYSTEM_LIBCODEC2)
endif (NOT DEFINED GR_USE_SYSTEM_LIBCODEC2)
@@ -151,6 +154,7 @@ mark_as_advanced(LIBCODEC2_INCLUDE_DIR LIBCODEC2_LIBRARIES)
########################################################################
include_directories(
${GR_VOCODER_INCLUDE_DIRS}
+ ${EMBEDDED_CODEC2_INCLUDE_DIRS}
${GNURADIO_RUNTIME_INCLUDE_DIRS}
${LOG4CXX_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
@@ -210,6 +214,9 @@ GR_INCLUDE_SUBDIRECTORY(g7xx)
if(GR_USE_LOCAL_LIBCODEC2)
GR_INCLUDE_SUBDIRECTORY(codec2)
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/codec2/codec2.h
+ DESTINATION ${GR_INCLUDE_DIR}/gnuradio/vocoder/codec2/
+ COMPONENT "vocoder_devel")
endif(GR_USE_LOCAL_LIBCODEC2)
if(GR_USE_LOCAL_LIBGSM)
diff --git a/gr-vocoder/swig/CMakeLists.txt b/gr-vocoder/swig/CMakeLists.txt
index 2662396..4e15442 100644
--- a/gr-vocoder/swig/CMakeLists.txt
+++ b/gr-vocoder/swig/CMakeLists.txt
@@ -25,6 +25,7 @@ include(GrSwig)
set(GR_SWIG_INCLUDE_DIRS
${GR_VOCODER_INCLUDE_DIRS}
+ ${EMBEDDED_CODEC2_INCLUDE_DIRS}
${GNURADIO_RUNTIME_SWIG_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
)
--
2.1.4
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Discuss-gnuradio] Schedule for GNU Radio 3.7.9 release - abi-compliance-checker,
Maitland Bottoms <=