John Gilmore <gnu@toad.com> ideas, bug fixes, financial support
Stephane Fillod <f8cfe@free.fr> SIMD speed ups, lots of other good stuff
Chuck Swiger <cswiger@widomaker.com> hf stuff, enthusiasm ;)
-Ramakrishnan Muthukrishnan <rkrishnan@symonds.net> Debian pkgs + misc stuff
+Ramakrishnan Muthukrishnan <rkrishnan@symonds.net> Debian packages, Misc. stuff
Martin Dudok van Heel <nldudok1@olifantasia.com> lots of stuff
Bob McGwier N4HY <rwmcgwier@comcast.net> wisdom, code, bugfixes.
Krzysztof Kamieniecki <krys@kamieniecki.com> bugfixes
Andrew Thomas Beck <Andrew.Beck@postgrads.unisa.edu.au> bugfixes
Joshua Lackey <jl@noether.uoregon.edu> Original GMSK implementation.
-Johnathan Corgan <jcorgan@aeinet.com> Goertzel, squelch, adaptive filtering, misc.
+Johnathan Corgan <jcorgan@aeinet.com> Build system, Goertzel, squelch, adaptive filtering
+Bdale Garbee <bdale@gag.com> Debian release packages
bootstrap \
configure \
config.h.in \
- run_tests.sh.in
+ run_tests.sh.in \
+ README.hacking
SUBDIRS = @build_dirs@
DIST_SUBDIRS = @build_dirs@ @skipped_dirs@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
bootstrap \
configure \
config.h.in \
- run_tests.sh.in
+ run_tests.sh.in \
+ README.hacking
SUBDIRS = @build_dirs@
DIST_SUBDIRS = @build_dirs@ @skipped_dirs@
--- /dev/null
+# -*- Outline -*-
+#
+# Copyright 2004 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 2, 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.
+#
+
+
+Random notes on coding conventions, some explanations about why things
+aren't done differently, etc, etc,
+
+
+* C++ and Python
+
+GNU Radio is now a hybrid system. Some parts of the system are built
+in C++ and some of it in Python. In general, prefer Python to C++.
+Signal processing primitives are still built in C++ for performance.
+
+It is no longer possible to build user applications entirely in C++.
+Essential parts of the runtime system have been moved into Python.
+
+
+* C++ namespaces
+
+In the cleanup process, I considered putting everything in the
+gnuradio namespace and dropping the Gr|gr prefix. In fact, I think
+it's probably the right idea, but when I tested it out, I ran into
+problems with SWIG's handling of namespaces. Bottom line, SWIG
+(1.3.21) got confused and generated bad code when I started playing
+around with namespaces in a not particularly convoluted way. I saw
+problems using the boost::shared_ptr template in combination with
+classes defined in the gnuradio namespace. It wasn't pretty...
+
+
+* Naming conventions
+
+Death to CamelCaseNames! We've returned to a kinder, gentler era.
+We're now using the "STL style" naming convention with a couple of
+modifications since we're not using namespaces.
+
+With the exception of macros and other constant values, all
+identifiers shall be lower case with words_separated_like_this.
+
+Macros and constant values (e.g., enumerated values,
+static const int FOO = 23) shall be in UPPER_CASE.
+
+
+** Global names
+
+All globally visible names (types, functions, variables, consts, etc)
+shall begin with a "package prefix", followed by an '_'. The bulk of
+the code in GNU Radio logically belongs to the "gr" package, hence
+names look like gr_open_file (...).
+
+Large coherent bodies of code may use other package prefixes, but
+let's try to keep them to a well thought out list. See the list
+below.
+
+*** Package prefixes
+
+These are the current package prefixes:
+
+ gr_ Almost everything
+
+ gri_ Implementation primitives. Sometimes we
+ have both a gr_<foo> and a gri_<foo>. In that case,
+ gr_<foo> would be derived from gr_block and gri_<foo>
+ would be the low level guts of the function.
+
+ atsc_ Code related to the Advanced Television
+ Standards Committee HDTV implementation
+
+ usrp_ Universal Software Radio Peripheral
+
+ qa_ Quality Assurance. Test code.
+
+
+** Class data members (instance variables)
+
+All class data members shall begin with d_<foo>.
+
+The big win is when you're staring at a block of code it's obvious
+which of the things being assigned to persist outside of the block.
+This also keeps you from having to be creative with parameter names
+for methods and constructors. You just use the same name as the
+instance variable, without the d_.
+
+class gr_wonderfulness {
+ std::string d_name;
+ double d_wonderfulness_factor;
+
+public:
+ gr_wonderfulness (std::string name, double wonderfulness_factor)
+ : d_name (name), d_wonderfulness_factor (wonderfulness_factor)
+ {
+ ...
+ }
+ ...
+};
+
+
+** Class static data members (class variables)
+
+All class static data members shall begin with s_<foo>.
+
+
+** File names
+
+Each significant class shall be contained in it's own file. The
+declaration of class gr_foo shall be in gr_foo.h, the definition in
+gr_foo.cc.
+
+
+
+* Storage management
+
+Strongly consider using the boost smart pointer templates, scoped_ptr
+and shared_ptr. scoped_ptr should be used for locals that contain
+pointers to objects that we need to delete when we exit the current
+scope. shared_ptr implements transparent reference counting and is a
+major win. You never have to worry about calling delete. The right
+thing happens.
+
+See http://www.boost.org/libs/smart_ptr/smart_ptr.htm
+
+
+* Unit tests
+
+Build unit tests for everything non-trivial and run them after every
+change. Check out Extreme Programming:
+http://c2.com/cgi/wiki?ExtremeProgrammingRoadmap
+
+Unit tests should also be written for all examples. This should kill
+off the bit rot we've been plagued with.
+
+** C++ unit tests
+
+For C++ we're using the cppunit framework. cppunit has its bad
+smells, but it's mostly workable. http://cppunit.sf.net
+
+Currently each directory <dirname> contains files qa_<dirname>.{h,cc}
+that bring together all the qa_<foo> test suites in the directory.
+We ought to be able to automate this without too much trouble.
+
+The directory gnuradio-core/src/tests contains programs that run
+the tests. test_all runs all of the registered C++ unit tests.
+
+As far as I can tell, the cppunit TestFactoryRegistry maybe able to be
+tricked into doing what we want. As is, I don't think it's enough by
+itself, since there's nothing dragging the qa* files out of the
+library and into the program. I haven't tested out this idea.
+
+** Python unit tests
+
+We use the standard unittest package for unit testing of Python code.
+
+
+* Subversion line ending styles
+
+All text files in the tree should have the subversion property
+'svn:eol-style' set to 'native', with the following exceptions:
+
+config/*.m4
+configure.ac
+gr-howto-write-a-block/config/*.m4
+gr-howto-write-a-block/configure.ac
+
+The easiest way to ensure this is to add or edit the following lines in
+your svn client configuration file (~/.subversion/config):
+
+enable-auto-props=yes
+
+[auto-props]
+*.c = svn:eol-style=native
+*.cc = svn:eol-style=native
+*.i = svn:eol-style=native
+*.h = svn:eol-style=native
+*.am = svn:eol-style=native
+*.py = svn:eol-style=native
+*.ac = svn:eol-style=LF
+*.m4 = svn:eol-style=LF
+
+* Misc tips
+
+ccache, a compiler cache, can really speed up your builds.
+See http://ccache.samba.org/
+
+Be sure to create links for gcc and g++
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.9.6])])
+# Figure out how to run the assembler. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_PROG_AS
+# ----------
+AC_DEFUN([AM_PROG_AS],
+[# By default we simply use the C compiler to build assembly code.
+AC_REQUIRE([AC_PROG_CC])
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+AC_ARG_VAR([CCAS], [assembler compiler command (defaults to CC)])
+AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)])
+])
+
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
m4_include([config/acx_pthread.m4])
m4_include([config/cppunit.m4])
-m4_include([config/gr_as.m4])
m4_include([config/gr_boost.m4])
m4_include([config/gr_check_createfilemapping.m4])
m4_include([config/gr_check_shm_open.m4])
/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H
+/* Define to 1 if you have the <linux/compiler.h> header file. */
+#undef HAVE_LINUX_COMPILER_H
+
/* Define to 1 if you have the <linux/ppdev.h> header file. */
#undef HAVE_LINUX_PPDEV_H
acx_pthread.m4 \
bnv_have_qt.m4 \
cppunit.m4 \
- gr_as.m4 \
gr_boost.m4 \
grc_build.m4 \
grc_gnuradio_core.m4 \
subdir = config
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
acx_pthread.m4 \
bnv_have_qt.m4 \
cppunit.m4 \
- gr_as.m4 \
gr_boost.m4 \
grc_build.m4 \
grc_gnuradio_core.m4 \
+++ /dev/null
-# Figure out how to run the assembler. -*- Autoconf -*-
-
-# serial 2
-
-# Copyright 2001 Free Software Foundation, Inc.
-
-# This program 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 2, or (at your option)
-# any later version.
-
-# This program 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 this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Boston, MA
-# 02110-1301, USA.
-
-# I just copy and renamed this from automake-1.6.3 so we should work
-# under both 1.4-p6 and later. -eb
-
-# GR_PROG_AS
-# ----------
-AC_DEFUN([GR_PROG_AS],
-[# By default we simply use the C compiler to build assembly code.
-AC_REQUIRE([AC_PROG_CC])
-: ${CCAS='$(CC)'}
-# Set ASFLAGS if not already set.
-: ${CCASFLAGS='$(CFLAGS)'}
-AC_SUBST(CCAS)
-AC_SUBST(CCASFLAGS)])
[path to boost c++ include files]),
[
# "yes" and "no" are bogus answers
- if test x"$with_boost_include_dir" == xyes ||
- test x"$with_boost_include_dir" == xno; then
+ if test x"$with_boost_include_dir" = xyes ||
+ test x"$with_boost_include_dir" = xno; then
gr_boost_include_dir=
else
gr_boost_include_dir=$with_boost_include_dir
passed=yes
SDL_VERSION=1.2.0
AM_PATH_SDL($SDL_VERSION,[],
- [passed=no;AC_MSG_RESULT([gr-video-sdl requires library sdl, not found.])])
+ [passed=no;AC_MSG_RESULT([gr-video-sdl requires library sdl, not found or failed test.])])
GRC_BUILD_CONDITIONAL([gr-video-sdl],[
AC_SUBST(SDL_CFLAGS)
# These checks don't fail
AC_C_BIGENDIAN
- AC_CHECK_HEADERS([byteswap.h])
+ AC_CHECK_HEADERS([byteswap.h linux/compiler.h])
AC_CHECK_FUNCS([getrusage sched_setscheduler])
AC_CHECK_FUNCS([sigaction snprintf])
CXXFLAGS
CCC
CXXCPP
+CCAS
+CCASFLAGS
F77
FFLAGS'
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CXXCPP C++ preprocessor
+ CCAS assembler compiler command (defaults to CC)
+ CCASFLAGS assembler compiler flags (defaults to CFLAGS)
F77 Fortran 77 compiler command
FFLAGS Fortran 77 compiler flags
# Define the identity of the package.
PACKAGE=gnuradio
- VERSION=3.0
+ VERSION=3.0.2
cat >>confdefs.h <<_ACEOF
# By default we simply use the C compiler to build assembly code.
-: ${CCAS='$(CC)'}
-# Set ASFLAGS if not already set.
-: ${CCASFLAGS='$(CFLAGS)'}
+test "${CCAS+set}" = set || CCAS=$CC
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
+
{ echo "$as_me:$LINENO: checking whether ln -s works" >&5
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 6754 "configure"' > conftest.$ac_ext
+ echo '#line 6758 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8925: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8929: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8929: \$? = $ac_status" >&5
+ echo "$as_me:8933: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9193: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9197: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:9197: \$? = $ac_status" >&5
+ echo "$as_me:9201: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9297: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:9301: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:9301: \$? = $ac_status" >&5
+ echo "$as_me:9305: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11738 "configure"
+#line 11742 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 11838 "configure"
+#line 11842 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14206: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14210: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:14210: \$? = $ac_status" >&5
+ echo "$as_me:14214: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14310: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14314: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:14314: \$? = $ac_status" >&5
+ echo "$as_me:14318: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15871: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15875: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15875: \$? = $ac_status" >&5
+ echo "$as_me:15879: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15975: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15979: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:15979: \$? = $ac_status" >&5
+ echo "$as_me:15983: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18194: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18198: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:18198: \$? = $ac_status" >&5
+ echo "$as_me:18202: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18462: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18466: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:18466: \$? = $ac_status" >&5
+ echo "$as_me:18470: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:18566: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:18570: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:18570: \$? = $ac_status" >&5
+ echo "$as_me:18574: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
if test "${with_boost_include_dir+set}" = set; then
withval=$with_boost_include_dir;
# "yes" and "no" are bogus answers
- if test x"$with_boost_include_dir" == xyes ||
- test x"$with_boost_include_dir" == xno; then
+ if test x"$with_boost_include_dir" = xyes ||
+ test x"$with_boost_include_dir" = xno; then
gr_boost_include_dir=
else
gr_boost_include_dir=$with_boost_include_dir
esac
-for ac_header in byteswap.h
+
+for ac_header in byteswap.h linux/compiler.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
fi
SDL_CFLAGS=""
SDL_LIBS=""
- passed=no;{ echo "$as_me:$LINENO: result: gr-video-sdl requires library sdl, not found." >&5
-echo "${ECHO_T}gr-video-sdl requires library sdl, not found." >&6; }
+ passed=no;{ echo "$as_me:$LINENO: result: gr-video-sdl requires library sdl, not found or failed test." >&5
+echo "${ECHO_T}gr-video-sdl requires library sdl, not found or failed test." >&6; }
fi
AM_CONFIG_HEADER(config.h)
AC_CANONICAL_HOST
AC_CANONICAL_TARGET([])
-AM_INIT_AUTOMAKE(gnuradio,3.0)
+AM_INIT_AUTOMAKE(gnuradio,3.0.2)
AC_CONFIG_SRCDIR([gnuradio-core/src/lib/runtime/gr_vmcircbuf.cc])
GR_X86_64 dnl check for lib64 suffix
LF_SET_WARNINGS
GR_SET_GPROF
GR_SET_PROF
-GR_PROG_AS
+AM_PROG_AS
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_INSTALL
subdir = gnuradio-core
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(docdir)
- @for i in $(top_srcdir)/README $(top_srcdir)/README.hacking $(top_srcdir)/ChangeLog; do \
+ @for i in $(top_srcdir)/README $(top_srcdir)/README.hacking; do \
echo "$(INSTALL_DATA) $$i $(DESTDIR)$(docdir)"; \
$(INSTALL_DATA) $$i $(DESTDIR)$(docdir); \
done
cp -r html $(DESTDIR)$(docdir)
uninstall-local:
- @for i in README README.hacking ChangeLog; do \
+ @for i in README README.hacking; do \
echo "$(RM) $(DESTDIR)$(docdir)/$$i;"; \
$(RM) $(DESTDIR)$(docdir)/$$i; \
done
subdir = gnuradio-core/doc
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(docdir)
- @for i in $(top_srcdir)/README $(top_srcdir)/README.hacking $(top_srcdir)/ChangeLog; do \
+ @for i in $(top_srcdir)/README $(top_srcdir)/README.hacking; do \
echo "$(INSTALL_DATA) $$i $(DESTDIR)$(docdir)"; \
$(INSTALL_DATA) $$i $(DESTDIR)$(docdir); \
done
cp -r html $(DESTDIR)$(docdir)
uninstall-local:
- @for i in README README.hacking ChangeLog; do \
+ @for i in README README.hacking; do \
echo "$(RM) $(DESTDIR)$(docdir)/$$i;"; \
$(RM) $(DESTDIR)$(docdir)/$$i; \
done
subdir = gnuradio-core/doc/other
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/gen_interpolator_taps
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/filter
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/g72x
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
gr_add_const_XX.cc.t \
gr_add_const_XX.h.t \
gr_add_const_XX.i.t \
- gr_chunks_to_symbols_XX.cc.t \
- gr_chunks_to_symbols_XX.h.t \
- gr_chunks_to_symbols_XX.i.t \
+ gr_add_vXX.cc.t \
+ gr_add_vXX.h.t \
+ gr_add_vXX.i.t \
+ gr_add_const_vXX.cc.t \
+ gr_add_const_vXX.h.t \
+ gr_add_const_vXX.i.t \
+ gr_chunks_to_symbols_XX.cc.t \
+ gr_chunks_to_symbols_XX.h.t \
+ gr_chunks_to_symbols_XX.i.t \
gr_divide_XX.cc.t \
gr_divide_XX.h.t \
gr_divide_XX.i.t \
gr_multiply_const_XX.cc.t \
gr_multiply_const_XX.h.t \
gr_multiply_const_XX.i.t \
+ gr_multiply_vXX.cc.t \
+ gr_multiply_vXX.h.t \
+ gr_multiply_vXX.i.t \
+ gr_multiply_const_vXX.cc.t \
+ gr_multiply_const_vXX.h.t \
+ gr_multiply_const_vXX.i.t \
gr_mute_XX.cc.t \
gr_mute_XX.h.t \
gr_mute_XX.i.t \
subdir = gnuradio-core/src/lib/general
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
gr_add_const_XX.cc.t \
gr_add_const_XX.h.t \
gr_add_const_XX.i.t \
- gr_chunks_to_symbols_XX.cc.t \
- gr_chunks_to_symbols_XX.h.t \
- gr_chunks_to_symbols_XX.i.t \
+ gr_add_vXX.cc.t \
+ gr_add_vXX.h.t \
+ gr_add_vXX.i.t \
+ gr_add_const_vXX.cc.t \
+ gr_add_const_vXX.h.t \
+ gr_add_const_vXX.i.t \
+ gr_chunks_to_symbols_XX.cc.t \
+ gr_chunks_to_symbols_XX.h.t \
+ gr_chunks_to_symbols_XX.i.t \
gr_divide_XX.cc.t \
gr_divide_XX.h.t \
gr_divide_XX.i.t \
gr_multiply_const_XX.cc.t \
gr_multiply_const_XX.h.t \
gr_multiply_const_XX.i.t \
+ gr_multiply_vXX.cc.t \
+ gr_multiply_vXX.h.t \
+ gr_multiply_vXX.i.t \
+ gr_multiply_const_vXX.cc.t \
+ gr_multiply_const_vXX.h.t \
+ gr_multiply_const_vXX.i.t \
gr_mute_XX.cc.t \
gr_mute_XX.h.t \
gr_mute_XX.i.t \
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <@NAME@.h>
+#include <gr_io_signature.h>
+
+@SPTR_NAME@
+gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k)
+{
+ return @SPTR_NAME@ (new @NAME@ (k));
+}
+
+@NAME@::@NAME@ (const std::vector<@I_TYPE@> k)
+ : gr_sync_block ("@BASE_NAME@",
+ gr_make_io_signature (1, 1, sizeof(@I_TYPE@)*k.size()),
+ gr_make_io_signature (1, 1, sizeof(@O_TYPE@)*k.size()))
+{
+ d_k = k;
+}
+
+int
+@NAME@::work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items)
+{
+ @I_TYPE@ *iptr = (@O_TYPE@ *)input_items[0];
+ @O_TYPE@ *optr = (@O_TYPE@ *)output_items[0];
+
+ int nitems_per_block = output_signature()->sizeof_stream_item(0)/sizeof(@I_TYPE@);
+
+ for (int i = 0; i < noutput_items; i++)
+ for (int j = 0; j < nitems_per_block; j++)
+ *optr++ = *iptr++ + d_k[j];
+
+ return noutput_items;
+}
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifndef @GUARD_NAME@
+#define @GUARD_NAME@
+
+#include <gr_sync_block.h>
+
+class @NAME@;
+typedef boost::shared_ptr<@NAME@> @SPTR_NAME@;
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+/*!
+ * \brief output vector = input vector + constant vector
+ * \ingroup block
+ */
+class @NAME@ : public gr_sync_block
+{
+ friend @SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+ std::vector<@I_TYPE@> d_k; // the constant
+ @NAME@ (const std::vector<@I_TYPE@> k);
+
+ public:
+ const std::vector<@I_TYPE@> k () const { return d_k; }
+ void set_k (const std::vector<@I_TYPE@> k) { d_k = k; }
+
+ int work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items);
+};
+
+#endif
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+GR_SWIG_BLOCK_MAGIC(gr,@BASE_NAME@)
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+class @NAME@ : public gr_sync_block
+{
+ private:
+ @NAME@ (const std::vector<@I_TYPE@> k);
+
+ public:
+ std::vector<@I_TYPE@> k () const { return d_k; }
+ void set_k (const std::vector<@I_TYPE@> k) { d_k = k; }
+};
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <@NAME@.h>
+#include <gr_io_signature.h>
+
+@SPTR_NAME@
+gr_make_@BASE_NAME@ (size_t nitems_per_block)
+{
+ return @SPTR_NAME@ (new @NAME@ (nitems_per_block));
+}
+
+@NAME@::@NAME@ (size_t nitems_per_block)
+ : gr_sync_block ("@BASE_NAME@",
+ gr_make_io_signature (1, -1, sizeof (@I_TYPE@)*nitems_per_block),
+ gr_make_io_signature (1, 1, sizeof (@O_TYPE@)*nitems_per_block))
+{
+}
+
+int
+@NAME@::work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items)
+{
+ @O_TYPE@ *optr = (@O_TYPE@ *) output_items[0];
+
+ int ninputs = input_items.size ();
+ int nitems_per_block = output_signature()->sizeof_stream_item(0)/sizeof(@I_TYPE@);
+
+ for (int i = 0; i < noutput_items; i++){
+ for (int j = 0; j < nitems_per_block; j++){
+ @I_TYPE@ acc = ((@I_TYPE@ *) input_items[0])[i*nitems_per_block+j];
+ for (int k = 1; k < ninputs; k++)
+ acc += ((@I_TYPE@ *) input_items[k])[i*nitems_per_block+j];
+
+ *optr++ = (@O_TYPE@) acc;
+ }
+ }
+ return noutput_items;
+}
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifndef @GUARD_NAME@
+#define @GUARD_NAME@
+
+#include <gr_sync_block.h>
+
+class @NAME@;
+typedef boost::shared_ptr<@NAME@> @SPTR_NAME@;
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+/*!
+ * \brief output = sum (input_0, input_1, ...)
+ * \ingroup block
+ *
+ * Add across all input vectors.
+ */
+class @NAME@ : public gr_sync_block
+{
+ friend @SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+ @NAME@ (size_t nitems_per_block);
+
+ public:
+
+ int work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items);
+};
+
+#endif
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+GR_SWIG_BLOCK_MAGIC(gr,@BASE_NAME@)
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+class @NAME@ : public gr_sync_block
+{
+ private:
+ @NAME@ (size_t nitems_per_block);
+};
#include <assert.h>
-template<unsigned int k> static inline int gr_log2_const() { assert(0); }
+template<unsigned int k> static inline int gr_log2_const() { assert(0); return 0; }
template<> static inline int gr_log2_const<1>() { return 0; }
template<> static inline int gr_log2_const<2>() { return 1; }
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <@NAME@.h>
+#include <gr_io_signature.h>
+
+@SPTR_NAME@
+gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k)
+{
+ return @SPTR_NAME@ (new @NAME@ (k));
+}
+
+@NAME@::@NAME@ (const std::vector<@I_TYPE@> k)
+ : gr_sync_block ("@BASE_NAME@",
+ gr_make_io_signature (1, 1, sizeof(@I_TYPE@)*k.size()),
+ gr_make_io_signature (1, 1, sizeof(@O_TYPE@)*k.size()))
+{
+ d_k = k;
+}
+
+int
+@NAME@::work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items)
+{
+ @I_TYPE@ *iptr = (@O_TYPE@ *)input_items[0];
+ @O_TYPE@ *optr = (@O_TYPE@ *)output_items[0];
+
+ int nitems_per_block = output_signature()->sizeof_stream_item(0)/sizeof(@I_TYPE@);
+
+ for (int i = 0; i < noutput_items; i++)
+ for (int j = 0; j < nitems_per_block; j++)
+ *optr++ = *iptr++ * d_k[j];
+
+ return noutput_items;
+}
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifndef @GUARD_NAME@
+#define @GUARD_NAME@
+
+#include <gr_sync_block.h>
+
+class @NAME@;
+typedef boost::shared_ptr<@NAME@> @SPTR_NAME@;
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+/*!
+ * \brief output vector = input vector * constant vector (element-wise)
+ * \ingroup block
+ */
+class @NAME@ : public gr_sync_block
+{
+ friend @SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+ std::vector<@I_TYPE@> d_k; // the constant
+ @NAME@ (const std::vector<@I_TYPE@> k);
+
+ public:
+ const std::vector<@I_TYPE@> k () const { return d_k; }
+ void set_k (const std::vector<@I_TYPE@> k) { d_k = k; }
+
+ int work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items);
+};
+
+#endif
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004,2006 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 2, 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.
+ */
+
+// @WARNING@
+
+GR_SWIG_BLOCK_MAGIC(gr,@BASE_NAME@)
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (const std::vector<@I_TYPE@> k);
+
+class @NAME@ : public gr_sync_block
+{
+ private:
+ @NAME@ (const std::vector<@I_TYPE@> k);
+
+ public:
+ std::vector<@I_TYPE@> k () const { return d_k; }
+ void set_k (const std::vector<@I_TYPE@> k) { d_k = k; }
+};
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <@NAME@.h>
+#include <gr_io_signature.h>
+
+@SPTR_NAME@
+gr_make_@BASE_NAME@ (size_t nitems_per_block)
+{
+ return @SPTR_NAME@ (new @NAME@ (nitems_per_block));
+}
+
+@NAME@::@NAME@ (size_t nitems_per_block)
+ : gr_sync_block ("@BASE_NAME@",
+ gr_make_io_signature (1, -1, sizeof (@I_TYPE@)*nitems_per_block),
+ gr_make_io_signature (1, 1, sizeof (@O_TYPE@)*nitems_per_block))
+{
+}
+
+int
+@NAME@::work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items)
+{
+ @O_TYPE@ *optr = (@O_TYPE@ *) output_items[0];
+
+ int ninputs = input_items.size ();
+ int nitems_per_block = output_signature()->sizeof_stream_item(0)/sizeof(@I_TYPE@);
+
+ for (int i = 0; i < noutput_items; i++){
+ for (int j = 0; j < nitems_per_block; j++){
+ @I_TYPE@ acc = ((@I_TYPE@ *) input_items[0])[i*nitems_per_block+j];
+ for (int k = 1; k < ninputs; k++)
+ acc *= ((@I_TYPE@ *) input_items[k])[i*nitems_per_block+j];
+
+ *optr++ = (@O_TYPE@) acc;
+ }
+ }
+ return noutput_items;
+}
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+#ifndef @GUARD_NAME@
+#define @GUARD_NAME@
+
+#include <gr_sync_block.h>
+
+class @NAME@;
+typedef boost::shared_ptr<@NAME@> @SPTR_NAME@;
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+/*!
+ * \brief output = prod (input_0, input_1, ...)
+ * \ingroup block
+ *
+ * Element-wise multiply across all input vectors.
+ */
+class @NAME@ : public gr_sync_block
+{
+ friend @SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+ @NAME@ (size_t nitems_per_block);
+
+ public:
+
+ int work (int noutput_items,
+ gr_vector_const_void_star &input_items,
+ gr_vector_void_star &output_items);
+};
+
+#endif
--- /dev/null
+/* -*- c++ -*- */
+/*
+ * Copyright 2004 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 2, 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.
+ */
+
+// @WARNING@
+
+GR_SWIG_BLOCK_MAGIC(gr,@BASE_NAME@)
+
+@SPTR_NAME@ gr_make_@BASE_NAME@ (size_t nitems_per_block);
+
+class @NAME@ : public gr_sync_block
+{
+ private:
+ @NAME@ (size_t nitems_per_block);
+};
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- unsigned int index_tmp;
+ unsigned int index_tmp = d_index;
assert (input_items.size() == output_items.size());
int nstreams = input_items.size();
}
protected:
- float _decay_rate; // decay rate for slow changing signals
float _attack_rate; // attack rate for fast changing signals
+ float _decay_rate; // decay rate for slow changing signals
float _reference; // reference value
float _gain; // current gain
float _max_gain; // max allowable gain
subdir = gnuradio-core/src/lib/io
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/omnithread
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
#include <stdlib.h>
#include <errno.h>
+#include <WinError.h>
#include <omnithread.h>
#include <process.h>
void
omni_semaphore::post(void)
{
- if (!ReleaseSemaphore(nt_sem, 1, NULL))
+ if (!ReleaseSemaphore(nt_sem, 1, NULL)
+ && GetLastError() != ERROR_TOO_MANY_POSTS ) // MinGW fix--see ticket:95 in trac
throw omni_thread_fatal(GetLastError());
}
subdir = gnuradio-core/src/lib/reed-solomon
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/runtime
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/lib/swig
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/bin
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/gnuradio
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/gnuradio/blks
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/gnuradio/blksimpl
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/gnuradio/gr
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
src_size = src_sig.sizeof_stream_item (src_endpoint.port)
dst_size = dst_sig.sizeof_stream_item (dst_endpoint.port)
if src_size != dst_size:
- raise ValueError, 'source and destination data sizes are different'
+ raise ValueError, (
+' '.join(('source and destination data sizes are different:',
+src_endpoint.block.name(),
+dst_endpoint.block.name())))
def _check_contiguity (self, m, sig, used_ports, dir):
used_ports.sort ()
subdir = gnuradio-core/src/python/gnuradio/gru
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/python/gnuradio/gruimpl
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/tests
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-core/src/utils
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gnuradio-examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
parser.add_option ("-f", "--rf-freq", type="eng_float", default=None,
help="set RF center frequency to FREQ")
parser.add_option ("-i", "--interp", type="int", default=64,
- help="set fgpa interpolation rate to INTERP")
+ help="set fgpa interpolation rate to INTERP [default=%default]")
parser.add_option ("--sine", dest="type", action="store_const", const=gr.GR_SIN_WAVE,
help="generate a complex sinusoid [default]", default=gr.GR_SIN_WAVE)
help="generate Uniform random output")
parser.add_option ("-w", "--waveform-freq", type="eng_float", default=100e3,
- help="set waveform frequency to FREQ")
+ help="set waveform frequency to FREQ [default=%default]")
parser.add_option ("-a", "--amplitude", type="eng_float", default=16e3,
- help="set waveform amplitude to AMPLITUDE", metavar="AMPL")
+ help="set waveform amplitude to AMPLITUDE [default=%default]", metavar="AMPL")
parser.add_option ("-o", "--offset", type="eng_float", default=0,
- help="set waveform offset to OFFSET")
+ help="set waveform offset to OFFSET [default=%default]")
(options, args) = parser.parse_args ()
if len(args) != 0:
subdir = gr-audio-alsa
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-alsa/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-jack
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-jack/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-oss
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-oss/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-osx
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-osx/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-portaudio
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-portaudio/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-windows
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-audio-windows/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-gsm-fr-vocoder
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-gsm-fr-vocoder/src/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-gsm-fr-vocoder/src/lib/gsm
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-gsm-fr-vocoder/src/python
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-radio-astronomy
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-radio-astronomy/src/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-radio-astronomy/src/python
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-trellis
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
# Boston, MA 02110-1301, USA.
#
+include $(top_srcdir)/Makefile.common
+
docdir=$(prefix)/share/doc/@PACKAGE@-@VERSION@
HTML_FILES =
# the Free Software Foundation, Inc., 51 Franklin Street,
# Boston, MA 02110-1301, USA.
#
+
+# -*- Makefile -*-
+#
+# Copyright 2004,2006 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 2, 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.
+#
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/Makefile.common
@HAS_XMLTO_TRUE@am__append_1 = \
@HAS_XMLTO_TRUE@ gr-trellis.html
subdir = gr-trellis/doc
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
+
+# includes
+grincludedir = $(includedir)/gnuradio
+
+# swig includes
+swigincludedir = $(grincludedir)/swig
+
+# Install this stuff in the appropriate subdirectory
+# This usually ends up at:
+# ${prefix}/lib/python${python_version}/site-packages/gnuradio
+grpythondir = $(pythondir)/gnuradio
+grpyexecdir = $(pyexecdir)/gnuradio
+
+# swig flags
+SWIGPYTHONFLAGS = -fvirtual -python -modern
+
+# Where to find gnuradio include files in the current build tree
+# top_srcdir for original stuff, top_builddir for generated files
+GNURADIO_INCLUDES = -I$(top_srcdir)/gnuradio-core/src/lib/runtime \
+ -I$(top_srcdir)/gnuradio-core/src/lib/general \
+ -I$(top_builddir)/gnuradio-core/src/lib/general \
+ -I$(top_srcdir)/gnuradio-core/src/lib/filter \
+ -I$(top_builddir)/gnuradio-core/src/lib/filter \
+ -I$(top_srcdir)/gnuradio-core/src/lib/reed-solomon \
+ -I$(top_srcdir)/gnuradio-core/src/lib/io \
+ -I$(top_srcdir)/gnuradio-core/src/lib/g72x \
+ -I$(top_srcdir)/gnuradio-core/src/lib/omnithread \
+ -I$(top_srcdir)/gnuradio-core/src/lib/swig \
+ -I$(top_builddir)/gnuradio-core/src/lib/swig \
+ $(FFTW3F_CFLAGS)
+
+
+# These used to be set in PKGCONFIG but now point to the current
+# build tree.
+GNURADIO_CORE_LIBS = -L$(top_builddir)/gnuradio-core/src/lib \
+ -lgnuradio-core -lfftw3f -lm
+
+
+# This is a dependency for many swig operations
+GNURADIO_I = $(top_srcdir)/gnuradio-core/src/lib/swig/gnuradio.i
+
+# The below used to be set in PKGCONFIG but now point to the current
+# build tree.
+USRP_INCLUDES = -I$(top_srcdir)/usrp/host/lib \
+ -I$(top_srcdir)/usrp/firmware/include
+
+USRP_LIBS = -L$(top_builddir)/usrp/host/lib \
+ -lusrp
+
+PMT_INCLUDES = -I$(top_srcdir)/pmt/src/lib
+PMT_LIBS = -L$(top_builddir)/pmt/src/lib -lpmt
+
+# This used to be set in configure.ac but is now defined here for all
+# Makefiles when this fragment is included.
+STD_DEFINES_AND_INCLUDES = $(DEFINES) $(GNURADIO_INCLUDES) $(BOOST_CFLAGS)
+
+# Fix for BSD make not defining $(RM). We define it now in configure.ac
+# using AM_PATH_PROG, but now here have to add a -f to be like GNU make
+RM = $(RM_PROG) -f
HTML_FILES = $(am__append_1)
EXTRA_DIST = \
gr-trellis.xml \
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/Makefile.common $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
distdir: $(DISTFILES)
+ $(mkdir_p) $(distdir)/../..
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-trellis/src/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-trellis/src/python
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-usrp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-usrp/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-video-sdl
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-video-sdl/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-wxgui
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-wxgui/src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = gr-wxgui/src/python
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
+2006-10-10 Greg Troxel <gdt@ir.bbn.com>
+
+ * firmware/include/Makefile.am: avoid nonportable use of $< (first
+ prereq in GNU make, implied source for pattern rule in BSD make)
+ used in a non-pattern rule.
+
2006-06-25 Eric Blossom <eb@comsec.com>
* firmware/include/fpga_regs_standard.h: doc fix to reflect current reality.
$(srcdir)/usrp.iss.in $(srcdir)/usrp.pc.in AUTHORS ChangeLog
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/doc
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/doc/other
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
$(CODE_GENERATOR)
fpga_regs_common.v: fpga_regs_common.h generate_regs.py
- PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py $< $@
+ PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py fpga_regs_common.h $@
fpga_regs_standard.v: fpga_regs_standard.h generate_regs.py
- PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py $< $@
+ PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py fpga_regs_standard.h $@
$(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
fpga_regs_common.v: fpga_regs_common.h generate_regs.py
- PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py $< $@
+ PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py fpga_regs_common.h $@
fpga_regs_standard.v: fpga_regs_standard.h generate_regs.py
- PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py $< $@
+ PYTHONPATH=$(top_srcdir)/usrp/firmware/include $(srcdir)/generate_regs.py fpga_regs_standard.h $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/fpga
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/fpga/rbf
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/host/apps
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/host/lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
#include <fusb_linux.h>
#include <usb.h> // libusb header
#include <stdexcept>
+#ifdef HAVE_LINUX_COMPILER_H
#include <linux/compiler.h>
+#endif
#include <linux/usbdevice_fs.h> // interface to kernel portion of user mode usb driver
#include <sys/ioctl.h>
#include <assert.h>
std::string
usrp_serial_number(struct usb_dev_handle *udh)
{
- u_int8_t iserial = usb_device(udh)->descriptor.iSerialNumber;
+ unsigned char iserial = usb_device(udh)->descriptor.iSerialNumber;
if (iserial == 0)
return "";
gettimeofday.c mkstemp.c tempname.c usleep.c
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \
subdir = usrp/host/swig
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/acx_pthread.m4 \
- $(top_srcdir)/config/cppunit.m4 $(top_srcdir)/config/gr_as.m4 \
+ $(top_srcdir)/config/cppunit.m4 \
$(top_srcdir)/config/gr_boost.m4 \
$(top_srcdir)/config/gr_check_createfilemapping.m4 \
$(top_srcdir)/config/gr_check_shm_open.m4 \