Merged r6224:6268 from features/deb into trunk. Implements most of a Debian package...
[debian/gnuradio] / Makefile.common
index 31bf0839cc709b075626f822a4f20761902d1d89..a90dbaa41f6acec7d78d189676bcb64d4e7e91d3 100644 (file)
@@ -1,12 +1,12 @@
 # -*- 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
 
@@ -41,40 +51,48 @@ 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