# -*- Makefile -*-
#
-# Copyright 2004,2006 Free Software Foundation, Inc.
+# Copyright 2004,2006,2007 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)
+# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GNU Radio is distributed in the hope that it will be useful,
# 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_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/omnithread \
-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
-# 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
+# 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
-# The below used to be set in PKGCONFIG but now point to the current
-# build tree.
-USRP_INCLUDES = -I$(top_srcdir)/usrp/host/lib \
+# 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
-USRP_LIBS = -L$(top_builddir)/usrp/host/lib \
- -lusrp
-
+# How to link the PMT library from inside the tree
PMT_INCLUDES = -I$(top_srcdir)/pmt/src/lib
-PMT_LIBS = -L$(top_builddir)/pmt/src/lib -lpmt
+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) $(GNURADIO_INCLUDES) $(BOOST_CFLAGS)
+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