summaryrefslogtreecommitdiff
path: root/gr-howto-write-a-block/Makefile.swig
diff options
context:
space:
mode:
Diffstat (limited to 'gr-howto-write-a-block/Makefile.swig')
-rw-r--r--gr-howto-write-a-block/Makefile.swig208
1 files changed, 0 insertions, 208 deletions
diff --git a/gr-howto-write-a-block/Makefile.swig b/gr-howto-write-a-block/Makefile.swig
deleted file mode 100644
index 2ed69c6c7..000000000
--- a/gr-howto-write-a-block/Makefile.swig
+++ /dev/null
@@ -1,208 +0,0 @@
-# -*- Makefile -*-
-#
-# Copyright 2009,2010 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.
-#
-
-## This makefile should be included using
-## include $(top_srcdir)/Makefile.swig
-## in Makefile.am's which require SWIG wrapping / compilation.
-## For just installing .i files, this Makefile is not required.
-
-
-## include the built Makefile.swig.gen, always the one from the srcdir
-include $(srcdir)/Makefile.swig.gen
-
-
-## swig flags
-## -w511 turns off keyword argument warning
-## "-outdir $(builddir)" writes all generated output files to
-## the local builddir (which should always be '.')
-## In some older autotools, $(builddir) is not defined, so
-## just use '.' instead.
-
-SWIG_PYTHON_FLAGS = \
- -fvirtual \
- -python \
- -modern \
- -keyword \
- -w511 \
- -outdir .
-
-STD_SWIG_PYTHON_ARGS = \
- $(SWIG_PYTHON_FLAGS) \
- $(STD_DEFINES_AND_INCLUDES) \
- $(WITH_SWIG_INCLUDES) \
- $(WITH_INCLUDES)
-
-# NOTE: -Linkage passive and -Linkage module don't define SWIG_init()
-SWIG_GUILE_FLAGS = \
- -guile \
- -scm \
- -scmstub \
- -package gnuradio \
- -Linkage module \
- -proxy \
- -goopsprefix gr: \
- -emit-slot-accessors \
- -emit-setters \
- -outdir .
-
-## standard swig flags used by most components
-
-STD_SWIG_GUILE_ARGS = \
- $(SWIG_GUILE_FLAGS) \
- $(STD_DEFINES_AND_INCLUDES) \
- $(WITH_SWIG_INCLUDES) \
- $(WITH_INCLUDES)
-
-## standard SWIG LD flags for library creation
-
-STD_SWIG_LA_LD_FLAGS = \
- $(PYTHON_LDFLAGS) \
- -module \
- -avoid-version \
- $(NO_UNDEFINED)
-
-## standard SWIG library additions for library creation
-
-STD_SWIG_LA_LIB_ADD = -lstdc++
-
-## standard SWIG CXXFLAGS
-## This allows for code to be compiled with "-O1" instead of "-g -O2"
-## for some systems, avoiding some optimization issues.
-
-STD_SWIG_CXX_FLAGS = @swig_CXXFLAGS@
-
-# We drive the dependencies off of swig_built_sources. This variable
-# ends up containing only the generated .py and/or .scm files, not the .h
-# or .cc files. This allows us to use the pattern rules defined
-# below to generate all the pieces without the parallel make
-# problems that occur when both the .py's and .cc's are in swig_built_sources.
-
-swig_built_sources =
-
-# swig_all_built_sources contains swig_built_sources plus the .cc and .h files.
-# It contains the files to remove from the distribution and the files to
-# remove for make clean.
-
-swig_all_built_sources =
-
-if PYTHON
-# Create a list of .py files based on the top level .i files.
-PYTHON_GEN = $(foreach IFILE,$(TOP_SWIG_IFILES), $(subst .i,.py,$(IFILE)))
-swig_built_sources += $(PYTHON_GEN)
-swig_all_built_sources += $(PYTHON_GEN)
-
-# Now add .h, .cc to _all_
-swig_all_built_sources += $(foreach IFILE,$(TOP_SWIG_IFILES), $(patsubst %.i,python/%.h,$(IFILE)))
-swig_all_built_sources += $(foreach IFILE,$(TOP_SWIG_IFILES), $(patsubst %.i,python/%.cc,$(IFILE)))
-endif
-
-if GUILE
-# Create a list of .scm files based on the top level .i files.
-GUILE_GEN = $(foreach IFILE,$(TOP_SWIG_IFILES), $(patsubst %.i,gnuradio/%.scm,$(IFILE)))
-swig_built_sources += $(GUILE_GEN)
-swig_all_built_sources += $(GUILE_GEN)
-
-# Now add -primitive.scm, .cc to _all_
-swig_all_built_sources += $(foreach IFILE,$(TOP_SWIG_IFILES), $(patsubst %.i,gnuradio/%-primitive.scm,$(IFILE)))
-swig_all_built_sources += $(foreach IFILE,$(TOP_SWIG_IFILES), $(patsubst %.i,guile/%.cc,$(IFILE)))
-endif
-
-# N.B. Only $(swig_built_sources), not $(swig_all_built_sources)
-BUILT_SOURCES += $(swig_built_sources)
-
-# Don't distribute any of the swig generated files
-no_dist_files = $(swig_all_built_sources)
-
-CLEANFILES += $(swig_all_built_sources)
-CLEANFILES += python/*.lo python/*.o python/*.d
-CLEANFILES += guile/*.lo guile/*.o guile/*.d
-
-
-## SWIG suffixes for automake to know about
-SUFFIXES = .i .scm .py
-
-# Compile a .i to what guile needs. We use -o to set the output file name,
-# or even with -outdir guile in SWIG_GUILE_ARGS, swig keeps putting a
-# gnuradio_core_*_wrap.cxx in the source directory.
-gnuradio/%.scm : %.i
- @echo "Compile .i to .scm"
- @test -d "guile" || $(mkinstalldirs) "guile"
- @test -d "gnuradio" || $(mkinstalldirs) "gnuradio"
- $(SWIG) $(STD_SWIG_GUILE_ARGS) $($*_swig_args) \
- -MD -MF guile/$*.Std \
- -module $* -o guile/$*.cc $<
- $(SED) -e 's|guile/\(.*\)\.cc:|gnuradio/\1.scm:|' guile/$*.Std > guile/$*.d
- $(SED) -i -e 's/<--dummy-[0-9]\+-->/<top>/g' gnuradio/$*.scm
- $(SED) -i -e 's/^(export /(export-safely /' gnuradio/$*.scm
- $(RM) guile/$*.Std
-
-# Compile a .i file to what python needs
-.i.py:
- @echo "Compile .i to .py"
- @test -d "python" || $(mkinstalldirs) "python"
- $(SWIG) $(STD_SWIG_PYTHON_ARGS) $($*_swig_args) \
- -MD -MF python/$*.Std \
- -module $* -o python/$*.cc -oh python/$*.h $<
- $(SED) -e 's|python/\(.*\)\.cc:|\1.py:|' python/$*.Std > python/$*.d
- $(RM) python/$*.Std
-
-## ------------------------------------------------------------------------
-## Rule that (re)generates Makefile.swig.gen using TOP_SWIG_IFILES and
-## Makefile.swig.gen.t
-##
-## Create $(srcdir)/Makefile.swig.gen, containing all of the rules
-## for running SWIG to generate or re-generate outputs. SWIG file
-## names are to be defined in TOP_SWIG_IFILES, and must include the
-## full path to the file and full filename including extension. This
-## Makefile addition will be made only if either it does not exist or
-## if the top-level template has been modified.
-
-generate-makefile-swig $(srcdir)/Makefile.swig.gen: $(top_srcdir)/Makefile.swig.gen.t
-## recreate $(srcdir)/Makefile.swig.gen only if ...
- @do_recreate=0; \
- if test -f $(srcdir)/Makefile.swig.gen; then \
-## the file exists and can be removed; or ...
- if $(RM) $(srcdir)/Makefile.swig.gen 2>/dev/null; then \
- if touch $(srcdir)/Makefile.swig.gen 2>/dev/null; then \
- do_recreate=1; \
- fi; \
- fi; \
- else \
-## the file doesn't exist, but can be created (e.g., by touching it).
- if touch $(srcdir)/Makefile.swig.gen 2>/dev/null; then \
- do_recreate=1; \
- fi; \
- fi; \
- if test "$$do_recreate" == "1"; then \
- echo "Regenerating $(srcdir)/Makefile.swig.gen"; \
- for TFILE in $(TOP_SWIG_IFILES); do \
-## retrieve just the filename, without path or extension
- TNAME=`python -c "import os.path as op; (dN, fN) = op.split ('$$TFILE'); (fbN, fE) = op.splitext (fN); print fbN;"`; \
-## Replace the @-named strings in the template Makefile for SWIG.
- $(SED) -e 's|@NAME@|'$$TNAME'|g;' < $(top_srcdir)/Makefile.swig.gen.t >> $(srcdir)/Makefile.swig.gen; \
- echo "" >> $(srcdir)/Makefile.swig.gen; \
- done; \
- else \
- echo "Cannot recreate $(srcdir)/Makefile.swig.gen because the directory or file is write-protected."; \
- exit -1; \
- fi;
-