Make C++ shared libraries versioned
[debian/gnuradio] / gr-audio-windows / src / Makefile.am
index 8618dd54999c00d70acc30430888b82e7e67146d..d3e3f5a85b0f0ade0f29d8e53211b93433935ce5 100644 (file)
 
 include $(top_srcdir)/Makefile.common
 
-# Install this stuff so that it ends up as the gnuradio.audio_windows module
-# This usually ends up at:
-#   ${prefix}/lib/python${python_version}/site-packages/gnuradio
-
-ourpythondir = $(grpythondir)
-ourlibdir    = $(grpyexecdir)
-
 EXTRA_DIST = run_tests.in
-TESTS = run_tests
-
-LOCAL_IFILES =                                 \
-       $(srcdir)/audio_windows.i                               
-
-NON_LOCAL_IFILES =                     \
-       $(GNURADIO_I)
-
-ALL_IFILES =                           \
-       $(LOCAL_IFILES)                 \
-       $(NON_LOCAL_IFILES)             
-
-BUILT_SOURCES =                        \
-       audio_windows.cc                        \
-       audio_windows.py                                
-
-ourpython_PYTHON =                     \
-       audio_windows.py
 
 AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) $(WITH_INCLUDES)
 
-ourlib_LTLIBRARIES = _audio_windows.la
-
-_audio_windows_la_SOURCES =            \
-       audio_windows.cc                        \
-       audio_windows_sink.cc           \
-       audio_windows_source.cc                 
-
+noinst_PYTHON = qa_audio_windows.py
 
+# C/C++ headers get installed in ${prefix}/include/gnuradio
 grinclude_HEADERS =                    \
        audio_windows_sink.h            \
-       audio_windows_source.h                  
+       audio_windows_source.h
 
-swiginclude_HEADERS =                  \
-       $(LOCAL_IFILES)
+lib_LTLIBRARIES = libgnuradio-audio-windows.la
+
+libgnuradio_audio_windows_la_SOURCES =         \
+       audio_windows_sink.cc           \
+       audio_windows_source.cc         
 
-_audio_windows_la_LIBADD =             \
-       $(PYTHON_LDFLAGS)               \
+libgnuradio_audio_windows_la_LIBADD =  \
        $(GNURADIO_CORE_LA)             \
-       $(WINAUDIO_LIBS)                \
-       -lstdc++                                
+       $(WINAUDIO_LIBS)
 
-_audio_windows_la_LDFLAGS = -no-undefined -module -avoid-version \
-                            $(LIBGNURADIO_CORE_EXTRA_LDFLAGS)
+libgnuradio_audio_windows_la_LDFLAGS = \
+       $(LIBGNURADIO_CORE_EXTRA_LDFLAGS) \
+       $(NO_UNDEFINED) \
+       $(LTVERSIONFLAGS)
 
-_audio_windows_la_CXXFLAGS = @swig_CXXFLAGS@
+if PYTHON
+###################################
+# SWIG Python interface and library
+TESTS = run_tests
+DISTCLEANFILES = run_tests
 
-audio_windows.cc audio_windows.py: $(ALL_IFILES)
-       $(SWIG) $(STD_SWIG_PYTHON_ARGS) -module audio_windows \
-               -o audio_windows.cc $(LOCAL_IFILES)
+TOP_SWIG_IFILES =                      \
+       audio_windows.i
 
-noinst_PYTHON = qa_audio_windows.py
+# Install so that they end up available as:
+#   import gnuradio.audio_windows
+# This ends up at:
+#   ${prefix}/lib/python${python_version}/site-packages/gnuradio
+audio_windows_pythondir_category =     \
+       gnuradio
+
+# additional libraries for linking with the SWIG-generated library
+audio_windows_la_swig_libadd =         \
+       libgnuradio-audio-windows.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