Imported Upstream version 3.2.2
[debian/gnuradio] / config / grc_gnuradio_core.m4
index 90134add10849413be3f6dbce946667da58d0b9e..a1724aea9de5ce53ec76d0ea2a248d78abd1af80 100644 (file)
@@ -1,4 +1,4 @@
-dnl Copyright 2001,2002,2003,2004,2005,2006 Free Software Foundation, Inc.
+dnl Copyright 2001,2002,2003,2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc.
 dnl 
 dnl This file is part of GNU Radio
 dnl 
@@ -18,15 +18,68 @@ dnl the Free Software Foundation, Inc., 51 Franklin Street,
 dnl Boston, MA 02110-1301, USA.
 
 AC_DEFUN([GRC_GNURADIO_CORE],[
-    GRC_ENABLE([gnuradio-core])
+    GRC_ENABLE(gnuradio-core)
+
+    GRC_WITH(gnuradio-core, [
+        dnl gnuradio-core has some extra defines if --with specified
+       gnuradio_core_SWIGDIRPATH="$gnuradio_core_INCLUDEDIR/swig"
+       gnuradio_core_I="$gnuradio_core_SWIGDIRPATH/gnuradio.i"
+       gnuradio_core_SWIG_INCLUDES="-I$gnuradio_core_SWIGDIRPATH"
+       gnuradio_core_PYDIRPATH=$pythondir
+    ])
+
+    dnl Don't do gnuradio-core if gruel or omnithread skipped
+    GRC_CHECK_DEPENDENCY(gnuradio-core, gruel)
+    GRC_CHECK_DEPENDENCY(gnuradio-core, omnithread)
+
+    dnl If execution gets to here, $passed will be:
+    dnl   with : if the --with code didn't error out
+    dnl   yes  : if the --enable code passed muster and all dependencies are met
+    dnl   no   : otherwise
+    if test $passed = yes; then        
+       dnl look for fast CBLAS for GSL, but don't complain if not found
+       ACX_CBLAS([],[])
+        dnl check for GSL
+       PKG_CHECK_MODULES(GSL, gsl >= 1.10,
+           [], dnl FIXME remove -lgslcblas from GSL_LIBS if we found a better CBLAS_LIBS above
+           [passed=no;AC_MSG_RESULT([gnuradio-core requires package gsl >= 1.10, not found.])])
+    fi
+
+    if test $passed != with; then
+       dnl how and where to find INCLUDES and LA and such
+        gnuradio_core_INCLUDES="\
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/runtime \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/general \
+-I\${abs_top_builddir}/gnuradio-core/src/lib/general \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/gengen \
+-I\${abs_top_builddir}/gnuradio-core/src/lib/gengen \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/filter \
+-I\${abs_top_builddir}/gnuradio-core/src/lib/filter \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/missing \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/reed-solomon \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/viterbi \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/io \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/g72x \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/swig \
+-I\${abs_top_srcdir}/gnuradio-core/src/lib/hier \
+-I\${abs_top_builddir}/gnuradio-core/src/lib/swig \
+\$(FFTW3F_CFLAGS) \
+\$(GSL_CFLAGS)"
+        gnuradio_core_LA="\${abs_top_builddir}/gnuradio-core/src/lib/libgnuradio-core.la"
+       dnl gnuradio_core_I="\${abs_top_srcdir}/gnuradio-core/src/lib/swig/gnuradio.i"
+       gnuradio_core_LIBDIRPATH="\${abs_top_builddir}/gnuradio-core/src/lib:\${abs_top_builddir}/gnuradio-core/src/lib/.libs"
+       gnuradio_core_SWIGDIRPATH="\${abs_top_builddir}/gnuradio-core/src/lib/swig:\${abs_top_builddir}/gnuradio-core/src/lib/swig/.libs:\${abs_top_srcdir}/gnuradio-core/src/lib/swig"
+       gnuradio_core_PYDIRPATH="\${abs_top_srcdir}/gnuradio-core/src/python"
+    fi
+
+    dnl other externally-required gnuradio-core variables
+    AC_SUBST(gnuradio_core_I)
+    AC_SUBST(gnuradio_core_SWIGDIRPATH)
+    AC_SUBST(gnuradio_core_PYDIRPATH)
 
     AC_CONFIG_FILES([ \
         gnuradio-core/Makefile
         gnuradio-core/gnuradio-core.pc \
-        gnuradio-core/doc/Doxyfile \
-        gnuradio-core/doc/Makefile \
-        gnuradio-core/doc/other/Makefile \
-        gnuradio-core/doc/xml/Makefile \
         gnuradio-core/src/Makefile \
         gnuradio-core/src/gen_interpolator_taps/Makefile \
         gnuradio-core/src/lib/Makefile \
@@ -34,31 +87,30 @@ AC_DEFUN([GRC_GNURADIO_CORE],[
         gnuradio-core/src/lib/g72x/Makefile \
         gnuradio-core/src/lib/general/Makefile \
         gnuradio-core/src/lib/general/gr_prefix.cc \
+        gnuradio-core/src/lib/gengen/Makefile \
         gnuradio-core/src/lib/io/Makefile \
         gnuradio-core/src/lib/missing/Makefile \
-        gnuradio-core/src/lib/omnithread/Makefile \
         gnuradio-core/src/lib/reed-solomon/Makefile \
+        gnuradio-core/src/lib/viterbi/Makefile \
         gnuradio-core/src/lib/runtime/Makefile \
+       gnuradio-core/src/lib/hier/Makefile \
         gnuradio-core/src/lib/swig/Makefile \
         gnuradio-core/src/python/Makefile \
         gnuradio-core/src/python/bin/Makefile \
         gnuradio-core/src/python/gnuradio/Makefile \
-        gnuradio-core/src/python/gnuradio/blks/Makefile \
-        gnuradio-core/src/python/gnuradio/blksimpl/Makefile \
+        gnuradio-core/src/python/gnuradio/blks2/Makefile \
+        gnuradio-core/src/python/gnuradio/blks2impl/Makefile \
         gnuradio-core/src/python/gnuradio/gr/Makefile \
         gnuradio-core/src/python/gnuradio/gr/run_tests \
         gnuradio-core/src/python/gnuradio/gru/Makefile \
         gnuradio-core/src/python/gnuradio/gruimpl/Makefile \
+        gnuradio-core/src/python/gnuradio/vocoder/Makefile \
         gnuradio-core/src/tests/Makefile \
         gnuradio-core/src/utils/Makefile \
     ])
-    
-    passed=yes
-    GRC_BUILD_CONDITIONAL([gnuradio-core],[
-        dnl run_tests is created from run_tests.in.  Make it executable.
-        AC_CONFIG_COMMANDS([run_tests_core], [chmod +x gnuradio-core/src/python/gnuradio/gr/run_tests])
 
-        dnl kludge up initial swig dependency file
-        AC_CONFIG_COMMANDS([swig_deps], [touch gnuradio-core/src/lib/swig/gnuradio_swig_python.d])
+    GRC_BUILD_CONDITIONAL(gnuradio-core, [
+        dnl run_tests is created from run_tests.in.  Make it executable.
+        AC_CONFIG_COMMANDS([run_tests_core],[chmod +x gnuradio-core/src/python/gnuradio/gr/run_tests])
     ])
 ])