Adding a block in tarball distribution


#1

I am using the 2.7 tarballs.
Suppose I want to add a block to my local gnuradio-core.
I put the *.i, *.h, *.cc files in
gnuradio-core2.7/src/lib/general
and modify Makefile.am

Now after make clean, configure, make, make install
although the new blocks have been compiled, they are not
part of the python library.

I noticed that there are certain files, such as
src/lib/swig/gnuradio_*.d (and similar files in src/lib/swig/)
that are automatically generated (no warning !!!)
and they do not list my new block.
So I guess there is something I am missing regarding the
generation of these swig files.

Which additional files should I also modify for this to work?

Thanks
Achilleas


#2

On Fri, Apr 21, 2006 at 11:15:33AM -0400, Achilleas A.
wrote:

I am using the 2.7 tarballs.
Suppose I want to add a block to my local gnuradio-core.
I put the *.i, *.h, *.cc files in
gnuradio-core2.7/src/lib/general
and modify Makefile.am

Now after make clean, configure, make, make install
although the new blocks have been compiled, they are not
part of the python library.

You have to add the includes of the .h and .i file to the directory
specific foo.i include file. In the case of lib/general, the
file is called general.i

FYI, the top level source file fed to swig is src/lib/swig/gnuradio.i
It includes the directory specific .i files, which in turn include the
rest of the .i’s.

I noticed that there are certain files, such as
src/lib/swig/gnuradio_*.d (and similar files in src/lib/swig/)
that are automatically generated (no warning !!!)

Yes, they are. That was the bug fix that ensured that only a single
version of swig was used to build all of the modules :wink:

and they do not list my new block.
So I guess there is something I am missing regarding the
generation of these swig files.

Which additional files should I also modify for this to work?

Thanks
Achilleas

Eric