# # Copyright 2004,2005,2006,2008,2009 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 3, 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. # include $(top_srcdir)/Makefile.common # ---------------------------------------------------------------------- # C++ block API interface librar(ies) # # libgr-usrp.so # ---------------------------------------------------------------------- AM_CPPFLAGS = \ $(STD_DEFINES_AND_INCLUDES) \ $(GRUEL_INCLUDES) \ $(PYTHON_CPPFLAGS) \ $(USRP2_INCLUDES) \ $(WITH_INCLUDES) lib_LTLIBRARIES = libgr-usrp2.la libgr_usrp2_la_SOURCES = \ rx_16sc_handler.cc \ rx_32fc_handler.cc \ usrp2_base.cc \ usrp2_source_base.cc \ usrp2_source_16sc.cc \ usrp2_source_32fc.cc \ usrp2_sink_base.cc \ usrp2_sink_16sc.cc \ usrp2_sink_32fc.cc libgr_usrp2_la_LIBADD = \ $(USRP2_LA) \ $(GNURADIO_CORE_LA) grinclude_HEADERS = \ usrp2_base.h \ usrp2_source_base.h \ usrp2_source_32fc.h \ usrp2_source_16sc.h \ usrp2_sink_base.h \ usrp2_sink_16sc.h \ usrp2_sink_32fc.h noinst_HEADERS = \ rx_16sc_handler.h \ rx_32fc_handler.h # ---------------------------------------------------------------------- # Python SWIG wrapper around C++ library # # usrp2.py # _usrp2.so # ---------------------------------------------------------------------- # Python installation locations ourpythondir = $(grpythondir) ourlibdir = $(grpyexecdir) # SWIG interface files LOCAL_IFILES = $(srcdir)/usrp2.i NON_LOCAL_IFILES = $(GNURADIO_I) ALL_IFILES = $(LOCAL_IFILES) $(NON_LOCAL_IFILES) # Install the SWIG interface files swiginclude_HEADERS = $(LOCAL_IFILES) # Generated by SWIG wrapper generator BUILT_SOURCES = usrp2.cc usrp2.py # Install the SWIG python output ourpython_PYTHON = usrp2.py # Special swig arguments LOCAL_SWIG_DEFINES_AND_INCLUDES = $(USRP2_INCLUDES) # Invoke SWIG wrapper generator usrp2.cc usrp2.py: $(ALL_IFILES) $(SWIG) $(STD_SWIG_PYTHON_ARGS) -module usrp2 \ -o usrp2.cc $(LOCAL_IFILES) # Create the Python shared library ourlib_LTLIBRARIES = _usrp2.la _usrp2_la_SOURCES = usrp2.cc _usrp2_la_CXXFLAGS = @swig_CXXFLAGS@ _usrp2_la_LDFLAGS = $(swig_CXXFLAGS) $(NO_UNDEFINED) -module -avoid-version # Link the library as needed _usrp2_la_LIBADD = \ $(PYTHON_LDFLAGS) \ libgr-usrp2.la \ $(GNURADIO_CORE_LA) \ $(USRP2_LIBS) \ -lstdc++ # Don't distribute output of swig dist-hook: @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done # ---------------------------------------------------------------------- # Local Python files, not installed # # qa_usrp2.py # ---------------------------------------------------------------------- noinst_PYTHON = qa_usrp2.py # ---------------------------------------------------------------------- # Miscellaneous build operations # ---------------------------------------------------------------------- EXTRA_DIST = run_tests.in TESTS = run_tests MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc