# -*- Makefile -*-
#
-# Copyright 2004,2006 Free Software Foundation, Inc.
+# Copyright 2004,2006,2007 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
#
#
# 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., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
#
+AM_CXXFLAGS = @autoconf_default_CXXFLAGS@
+
# includes
grincludedir = $(includedir)/gnuradio
# swig includes
swigincludedir = $(grincludedir)/swig
-# Install this stuff in the appropriate subdirectory
+# Install the gnuradio stuff in the appropriate subdirectory
# This usually ends up at:
# ${prefix}/lib/python${python_version}/site-packages/gnuradio
grpythondir = $(pythondir)/gnuradio
grpyexecdir = $(pyexecdir)/gnuradio
+# Install the non-gnuradio usrp stuff in the appropriate subdirectory
+# This usually ends up at:
+# ${prefix}/lib/python${python_version}/site-packages/usrpm
+
+usrppythondir = $(pythondir)/usrpm
+usrppyexecdir = $(pyexecdir)/usrpm
+
+
# swig flags
SWIGPYTHONFLAGS = -fvirtual -python -modern
-# gnuradio-core library link command
-GNURADIO_CORE_LIBS = -L$(top_srcdir)/gnuradio-core/src/lib/.libs -lgnuradio-core -lfftw3f -lm
+# 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/gengen \
+ -I$(top_builddir)/gnuradio-core/src/lib/gengen \
+ -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/swig \
+ -I$(top_builddir)/gnuradio-core/src/lib/swig \
+ $(FFTW3F_CFLAGS)
+
+# How to link in the top-level omnithreads library from inside the tree
+OMNITHREAD_INCLUDES = -I$(top_srcdir)/omnithread
+OMNITHREAD_LA = $(top_builddir)/omnithread/libgromnithread.la
+
+# How to link in GNU Radio core library from inside the tree
+GNURADIO_CORE_LA = $(top_builddir)/gnuradio-core/src/lib/libgnuradio-core.la
+
+# This is a dependency for many swig operations
+GNURADIO_I = $(top_srcdir)/gnuradio-core/src/lib/swig/gnuradio.i
+
+# How to link in the USRP library from inside the tree
+USRP_INCLUDES = -I$(top_srcdir)/usrp/host/lib/legacy \
+ -I$(top_srcdir)/usrp/host/lib/inband \
+ -I$(top_srcdir)/usrp/firmware/include
+USRP_LA = $(top_builddir)/usrp/host/lib/legacy/libusrp.la
+
+# How to link the PMT library from inside the tree
+PMT_INCLUDES = -I$(top_srcdir)/pmt/src/lib
+PMT_LA = $(top_builddir)/pmt/src/lib/libpmt.la
+
+# How to link the mblock library from inside the tree
+MBLOCK_INCLUDES = -I$(top_srcdir)/mblock/src/lib
+MBLOCK_LA = $(top_builddir)/mblock/src/lib/libmblock.la
+
+# 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) $(OMNITHREAD_INCLUDES) $(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
+
+RUN_GUILE = GUILE_LOAD_PATH="@abs_top_srcdir@/pmt/src/scheme:@abs_top_srcdir@/mblock/src/scheme" @GUILE@ -e main -s
+COMPILE_MBH = $(RUN_GUILE) $(top_srcdir)/mblock/src/scheme/gnuradio/compile-mbh.scm