howto: adds --disable-python option to gr-howto-write-a-block example.
[debian/gnuradio] / gr-howto-write-a-block / src / lib / Makefile.am
index 54847ede8b20c7b3d21f7f160e4ad9d81d63363a..fa6b439eaf78740a556653c83f11a527565ef9ec 100644 (file)
@@ -1,11 +1,11 @@
 #
-# Copyright 2004,2005,2006 Free Software Foundation, Inc.
+# 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 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,
 
 include $(top_srcdir)/Makefile.common
 
-# Install this stuff so that it ends up as the gnuradio.howto module
-# This usually ends up at:
-#   ${prefix}/lib/python${python_version}/site-packages/gnuradio
-
-ourpythondir = $(grpythondir)
-ourlibdir    = $(grpyexecdir)
-
-INCLUDES = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS)
-
-SWIGPYTHONARGS = $(SWIGPYTHONFLAGS) $(SWIGGRFLAGS)
-
-ALL_IFILES =                           \
-       $(LOCAL_IFILES)                 \
-       $(NON_LOCAL_IFILES)             
-
-NON_LOCAL_IFILES =                     \
-       $(GNURADIO_CORE_INCLUDEDIR)/swig/gnuradio.i
+###################################
+# howto C++ library
 
+# C/C++ headers get installed in ${prefix}/include/gnuradio
+grinclude_HEADERS =            \
+       howto_square_ff.h       \
+       howto_square2_ff.h
 
-LOCAL_IFILES =                                 \
-       howto.i                         
+lib_LTLIBRARIES = libgnuradio-howto.la
 
-# These files are built by SWIG.  The first is the C++ glue.
-# The second is the python wrapper that loads the _howto shared library
-# and knows how to call our extensions.
+libgnuradio_howto_la_SOURCES =         \
+       howto_square_ff.cc      \
+       howto_square2_ff.cc
 
-BUILT_SOURCES =                        \
-       howto.cc                        \
-       howto.py                                
+libgnuradio_howto_la_LIBADD =  \
+       $(GNURADIO_CORE_LA)
 
-# This gets howto.py installed in the right place
-ourpython_PYTHON =                     \
-       howto.py
+libgnuradio_howto_la_LDFLAGS = \
+       $(NO_UNDEFINED)
 
-ourlib_LTLIBRARIES = _howto.la
+if PYTHON
+###################################
+# SWIG Python interface and library
 
-# These are the source files that go into the shared library
-_howto_la_SOURCES =                    \
-       howto.cc                        \
-       howto_square_ff.cc              \
-       howto_square2_ff.cc             
-
-# magic flags
-_howto_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
-
-# link the library against some comon swig runtime code and the 
-# c++ standard library
-_howto_la_LIBADD =                     \
-       $(PYTHON_LDFLAGS)               \
-       -lstdc++                        
-
-howto.cc howto.py: howto.i $(ALL_IFILES)
-       $(SWIG) $(SWIGPYTHONARGS) -module howto -o howto.cc howto.i
-
-# These headers get installed in ${prefix}/include/gnuradio
-grinclude_HEADERS =                    \
-       howto_square_ff.h               \
-       howto_square2_ff.h              
+TOP_SWIG_IFILES =              \
+       howto.i
 
+# Install so that they end up available as:
+#   import gnuradio.howto
+# This ends up at:
+#   ${prefix}/lib/python${python_version}/site-packages/gnuradio
+howto_pythondir_category =     \
+       gnuradio
 
-# These swig headers get installed in ${prefix}/include/gnuradio/swig
-swiginclude_HEADERS =                  \
-       $(LOCAL_IFILES)
+howto_la_swig_libadd =         \
+       libgnuradio-howto.la
 
+include $(top_srcdir)/Makefile.swig
 
-MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc
+# add some of the variables generated inside the Makefile.swig.gen
+BUILT_SOURCES = $(swig_built_sources)
 
-# 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
+# Do not distribute the output of SWIG
+no_dist_files = $(swig_built_sources)
+endif