summaryrefslogtreecommitdiff
path: root/Makefile.common
blob: 39cd5106fbaf74807291b5a3b11f319d746e59cc (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# -*- Makefile -*-
#
# Copyright 2004,2006,2007,2008,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.
# 

# Every Makefile starts with common vars so we can
# consistently use +=
BUILT_SOURCES =
MOSTLYCLEANFILES = $(BUILT_SOURCES) $(STAMPS) *.pyc *.pyo *~ *.tmp *.loT
CLEANFILES = guile.log
DISTCLEANFILES =
EXTRA_DIST =
STAMPS =


# Make rebuilds less verbose with stuff we can safely ignore
# about GNU make only extensions.
AUTOMAKE += -Wno-portability -Wnone

AM_CFLAGS = @autoconf_default_CFLAGS@ @lf_CFLAGS@
AM_CXXFLAGS = @autoconf_default_CXXFLAGS@ @lf_CXXFLAGS@

# Sets ABI version in SONAME and appends -LIBVER to filename
LTVERSIONFLAGS = -version-info 0:0:0 -release $(LIBVER)

# includes
grincludedir = $(includedir)/gnuradio
gruelincludedir = $(includedir)/gruel

# swig includes
swigincludedir = $(grincludedir)/swig
gruelswigincludedir = $(gruelincludedir)/swig

# Guile scheme code ends up under here:
guiledir = $(prefix)/share/guile/site

# Install the gnuradio stuff in the appropriate subdirectory
# This usually ends up at:
#   ${prefix}/lib/python${python_version}/site-packages/gnuradio

grpythondir = $(pythondir)/gnuradio
grpyexecdir = $(pyexecdir)/gnuradio

# This used to be set in configure.ac but is now defined here for all 
# Makefiles when this fragment is included.
STD_DEFINES_AND_INCLUDES = $(DEFINES) $(GNURADIO_INCLUDES) \
	$(GRUEL_INCLUDES) $(VOLK_INCLUDES) $(BOOST_CPPFLAGS)

# when including for compilation from pre-installed libraries and such,
# need to make sure those are put last on the compile command
WITH_INCLUDES = @with_INCLUDES@
WITH_SWIG_INCLUDES = @with_SWIG_INCLUDES@

# Where to find gnuradio include files in the current build tree
# top_srcdir for original stuff, top_builddir for generated files
GNURADIO_INCLUDES = @gnuradio_core_INCLUDES@

# How to link in GNU Radio core library from inside the tree
GNURADIO_CORE_LA = @gnuradio_core_LA@

# How to link in the GRUEL library from inside the tree
GRUEL_INCLUDES = @gruel_INCLUDES@
GRUEL_LA = @gruel_LA@

# How to link in the VOLK library from inside the tree
VOLK_INCLUDES = @volk_INCLUDES@
VOLK_LA = @volk_LA@

# GR-DIGITAL includes and libraries
GR_DIGITAL_INCLUDES = @gr_digital_INCLUDES@
GR_DIGITAL_LA = @gr_digital_LA@

# GR-QTGUI includes and libraries
GR_QTGUI_INCLUDES = @gr_qtgui_INCLUDES@
GR_QTGUI_LA = @gr_qtgui_LA@

# Fix for BSD make not defining $(RM).  We define it now in configure.ac
# using AM_PATH_PROG, but now here have to add a -f to be like GNU make
RM=$(RM_PROG) -f

RUN_GUILE = GUILE_LOAD_PATH="@abs_top_srcdir@/gruel/src/scheme" @GUILE@ -e main -s

# Base directory for example applications
exampledir = $(datadir)/gnuradio/examples

# Base directory for documentation (docdir undefined in autoconf < 1.60)
docdir ?= $(datadir)/doc/$(PACKAGE)
gr_docdir = $(docdir)-$(DOCVER)

# System configuration files
gr_prefsdir = $(GR_PREFSDIR)

# Data directory for grc block wrappers
grc_blocksdir = $(pkgdatadir)/grc/blocks

# Other common defines; use "+=" to add to these
STAMPS =
MOSTLYCLEANFILES = $(BUILT_SOURCES) $(STAMPS) *.pyc *.pyo *~ *.tmp *.loT \
	.unittests/* .unittests/python/*

# Don't distribute the files defined in the variable 'no_dist_files'

dist-hook:
	@for file in $(no_dist_files); do \
		echo $(RM) $(distdir)/$$file; \
		$(RM) $(distdir)/$$file; \
	done