blob: 8485c4793036b158965262f7274a090449d28ef3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
#
# Copyright 2008 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 this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
include $(top_srcdir)/Makefile.common
AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS)
SWIGPYTHONARGS = $(SWIGPYTHONFLAGS) $(SWIGGRFLAGS)
BUILT_SOURCES = $(swig_built_sources)
MOSTLYCLEANFILES = $(BUILT_SOURCES) *.pyc
# Don't distribute the output of swig
dist-hook:
@for file in $(swig_built_sources); do echo $(RM) $(distdir)/$$file; done
@for file in $(swig_built_sources); do $(RM) $(distdir)/$$file; done
# if we're not using python, ignore the rest...
TESTS =
ALL_IFILES = \
$(LOCAL_IFILES) \
$(NON_LOCAL_IFILES)
NON_LOCAL_IFILES = \
$(GNURADIO_CORE_INCLUDEDIR)/swig/gnuradio.i
LOCAL_IFILES = \
libvector.i \
libvector_square_ff.i
# These files are built by SWIG. The first is the C++ glue.
# The second is the python wrapper that loads the _libvector shared library
# and knows how to call our extensions.
swig_built_sources = \
libvector_swig.cc \
libvector_swig.py
# This gets libvector.py installed in the right place.
# Any hand-written python should be listed here too.
ourpython_PYTHON = \
__init__.py \
libvector_swig.py
# Python QA code gets listed here. It's not installed.
noinst_PYTHON =
# This library contains the swig generated glue
ourpyexec_LTLIBRARIES = _libvector_swig.la
# These are the source files that go into the shared library
_libvector_swig_la_SOURCES = \
libvector_swig.cc
# Dummy C++ source to cause C++ linking
nodist_EXTRA__libvector_swig_la_SOURCES = dummy.cc
# magic flags
_libvector_swig_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version
# Link the swig generated code against our library and some python magic.
_libvector_swig_la_LIBADD = \
../lib/liblibvector.la \
$(PYTHON_LDFLAGS)
libvector_swig.cc libvector_swig.py: $(LOCAL_IFILES) $(ALL_IFILES)
$(SWIG) $(SWIGPYTHONARGS) -module libvector_swig -o libvector_swig.cc $(srcdir)/libvector.i
# These swig headers get installed in ${prefix}/include/<component>/swig
ourswiginclude_HEADERS = \
$(LOCAL_IFILES)
|