Statistics
| Branch: | Tag: | Revision:

root / configure.ac @ b949d474

History | View | Annotate | Download (5.8 kB)

1
dnl Copyright 2001,2002,2003,2004,2005,2006 Free Software Foundation, Inc.
2
dnl 
3
dnl This file is part of GNU Radio
4
dnl 
5
dnl GNU Radio is free software; you can redistribute it and/or modify
6
dnl it under the terms of the GNU General Public License as published by
7
dnl the Free Software Foundation; either version 2, or (at your option)
8
dnl any later version.
9
dnl 
10
dnl GNU Radio is distributed in the hope that it will be useful,
11
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
12
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
dnl GNU General Public License for more details.
14
dnl 
15
dnl You should have received a copy of the GNU General Public License
16
dnl along with GNU Radio; see the file COPYING.  If not, write to
17
dnl the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18
dnl Boston, MA 02111-1307, USA.
19
20
AC_INIT
21
AC_PREREQ(2.57)
22
AM_CONFIG_HEADER(config.h)
23
AC_CANONICAL_HOST
24
AC_CANONICAL_TARGET([])
25
AM_INIT_AUTOMAKE(gnuradio,2.8svn)
26
27
GR_X86_64		dnl check for lib64 suffix
28
LF_CONFIGURE_CC
29
LF_CONFIGURE_CXX
30
LF_SET_WARNINGS
31
GR_SET_GPROF
32
GR_SET_PROF
33
GR_PROG_AS
34
AC_PROG_LN_S
35
AC_PROG_MAKE_SET
36
AC_PROG_INSTALL
37
38
AC_LIBTOOL_WIN32_DLL
39
dnl AC_DISABLE_SHARED	dnl don't build shared libraries
40
AC_ENABLE_SHARED	dnl do build shared libraries
41
AC_DISABLE_STATIC	dnl don't build static libraries
42
AC_PROG_LIBTOOL
43
GR_FORTRAN
44
45
GR_NO_UNDEFINED		dnl do we need the -no-undefined linker flag
46
GR_SCRIPTING
47
48
dnl Checks for libraries.
49
AC_CHECK_LIB(socket,socket)
50
51
dnl check for threads (mandatory)
52
GR_OMNITHREAD
53
54
CFLAGS="${CFLAGS} $PTHREAD_CFLAGS"
55
CXXFLAGS="${CXXFLAGS} $PTHREAD_CFLAGS"
56
57
if test "x$CXX_FOR_BUILD" = x
58
then
59
  CXX_FOR_BUILD=${CXX}
60
fi
61
AC_SUBST(CXX_FOR_BUILD)
62
63
dnl Check for SysV shm (mandatory)
64
dnl FIXME this is no longer mandatory.  Check the macro.
65
GR_SYSV_SHM
66
67
dnl Checks for header files.
68
AC_HEADER_STDC
69
AC_HEADER_SYS_WAIT
70
AC_CHECK_HEADERS(fcntl.h limits.h strings.h time.h sys/ioctl.h sys/time.h unistd.h)
71
AC_CHECK_HEADERS(linux/ppdev.h sys/mman.h sys/select.h sys/types.h)
72
AC_CHECK_HEADERS(sys/resource.h stdint.h sched.h)
73
74
dnl Checks for typedefs, structures, and compiler characteristics.
75
AC_C_CONST
76
AC_C_INLINE
77
AC_TYPE_SIZE_T
78
AC_HEADER_TIME
79
AC_C_BIGENDIAN
80
81
dnl Checks for library functions.
82
AC_FUNC_ALLOCA
83
AC_FUNC_SETVBUF_REVERSED
84
AC_FUNC_VPRINTF
85
AC_CHECK_FUNCS([mmap select socket strcspn strerror strspn getpagesize sysconf])
86
AC_CHECK_FUNCS([snprintf gettimeofday nanosleep sched_setscheduler])
87
88
AC_CHECK_LIB(m, sincos, [AC_DEFINE([HAVE_SINCOS],[1],[Define to 1 if your system has `sincos'.])])
89
AC_CHECK_LIB(m, sincosf,[AC_DEFINE([HAVE_SINCOSF],[1],[Define to 1 if your system has `sincosf'.])])
90
AC_CHECK_LIB(m, sinf, [AC_DEFINE([HAVE_SINF],[1],[Define to 1 if your system has `sinf'.])])
91
AC_CHECK_LIB(m, cosf, [AC_DEFINE([HAVE_COSF],[1],[Define to 1 if your system has `cosf'.])])
92
AC_CHECK_LIB(m, trunc, [AC_DEFINE([HAVE_TRUNC],[1],[Define to 1 if your system has `trunc'.])])
93
AH_BOTTOM([
94
#ifndef HAVE_TRUNC
95
#include <math.h>
96
inline static double trunc(double x)
97
{
98
  return x >= 0 ? floor(x) : ceil(x);
99
}
100
#endif
101
])
102
103
GR_CHECK_SHM_OPEN
104
GR_LIBGNURADIO_CORE_EXTRA_LDFLAGS
105
GR_CHECK_CREATEFILEMAPPING
106
107
dnl Check for Mingw support
108
GR_PWIN32
109
110
dnl Do we have "dot", part of the graphviz package from AT&T?
111
dnl Doxgen will use it to draw pretty diagrams ;-)
112
AC_CHECK_PROG(HAVE_DOT, [dot],[YES],[NO])
113
114
PKG_CHECK_MODULES(FFTW3F, fftw3f >= 3.0)
115
AC_SUBST(FFTW3F_LIBS)
116
117
dnl conditional build stuff
118
GR_CHECK_DOXYGEN
119
GR_SET_MD_CPU
120
121
dnl Define where to look for GNURADIO includes
122
GNURADIO_INCLUDES='-I$(top_srcdir)/gnuradio-core/src/lib/runtime -I$(top_srcdir)/gnuradio-core/src/lib/general -I$(top_srcdir)/gnuradio-core/src/lib/filter -I$(top_srcdir)/gnuradio-core/src/lib/io -I$(top_srcdir)/gnuradio-core/src/lib/g72x -I$(top_srcdir)/gnuradio-core/src/lib/atsc -I$(top_srcdir)/gnuradio-core/src/lib/omnithread -I$(top_builddir)/gnuradio-core/src/lib/general -I$(top_builddir)/gnuradio-core/src/lib/filter -I$(top_builddir)/gnuradio-core/src/lib/reed-solomon -I$(top_builddir)/gnuradio-core/src/lib/swig $(FFTW3F_CFLAGS)'
123
AC_SUBST(GNURADIO_INCLUDES)
124
125
dnl Define where to look for cppunit includes and libs
126
dnl sets CPPUNIT_CFLAGS and CPPUNIT_LIBS
127
AM_PATH_CPPUNIT([1.9.14],[],
128
		[AC_MSG_ERROR([GNU Radio requires cppunit.  Stop])])
129
130
CPPUNIT_INCLUDES=$CPPUNIT_CFLAGS
131
AC_SUBST(CPPUNIT_INCLUDES)
132
133
dnl Define where to find boost includes
134
dnl defines BOOST_CFLAGS
135
GR_REQUIRE_BOOST_INCLUDES
136
137
DEFINES=""
138
AC_SUBST(DEFINES)
139
140
STD_DEFINES_AND_INCLUDES="$DEFINES $GNURADIO_INCLUDES $BOOST_CFLAGS"
141
AC_SUBST(STD_DEFINES_AND_INCLUDES)
142
143
dnl Component specific configuration
144
dnl The order of the GR_ macros determines the order of compilation
145
subdirs="config"
146
GRC_GNURADIO_CORE
147
GRC_GNURADIO_EXAMPLES
148
GRC_USRP
149
GRC_GR_USRP			dnl this must come after GRC_USRP
150
GRC_GR_AUDIO_ALSA
151
GRC_GR_AUDIO_JACK
152
GRC_GR_AUDIO_OSS
153
GRC_GR_AUDIO_OSX		dnl ***NOT TESTED***
154
GRC_GR_AUDIO_PORTAUDIO		dnl ***NOT TESTED***
155
GRC_GR_AUDIO_WINDOWS		dnl ***NOT TESTED***
156
GRC_GR_ATSC
157
GRC_GR_COMEDI
158
GRC_GR_ERROR_CORRECTING_CODES
159
GRC_GR_GSM_FR_VOCODER
160
GRC_GR_RADAR
161
GRC_GR_RADIO_ASTRONOMY
162
GRC_GR_PMT
163
GRC_GR_VIDEO_SDL
164
GRC_GR_WXGUI
165
166
dnl Has list of successfully configured components
167
AC_SUBST([subdirs],$subdirs)
168
AC_SUBST([failed_subdirs], $failed)
169
 
170
AC_CONFIG_FILES([\
171
	  Makefile \
172
	  config/Makefile
173
])
174
175
AC_OUTPUT
176
177
echo
178
echo "*******************************************************************"
179
echo The following GNU Radio components have been successfully configured:
180
echo 
181
for dir in $subdirs
182
do
183
    echo $dir
184
done
185
echo
186
if test "$failed" != ""; then
187
    echo However, the following components did not configure successfully due to 
188
    echo missing dependencies:
189
    echo
190
    for dir in $failed
191
    do
192
        echo $dir
193
    done
194
    echo
195
    echo You may still run the 'make' command to build the successfully configured
196
    echo components.
197
    echo
198
    exit 1
199
fi
200
echo You my now run the 'make' command to build these packages.
201
echo