Merged r7478:7608 from michaelld/t186 into trunk. Adds ability to compile GNU Radio...
[debian/gnuradio] / config / grc_pmt.m4
index 1c1819e50c78c56209d5f8108e7893aba8a7bc69..2a512273e7aba07f7b175ddb05a24fd719cd679c 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,2008 Free Software Foundation, Inc.
 dnl 
 dnl This file is part of GNU Radio
 dnl 
@@ -19,26 +19,53 @@ dnl Boston, MA 02110-1301, USA.
 
 AC_DEFUN([GRC_PMT],[
     GRC_ENABLE([pmt])
-
-    AC_CONFIG_FILES([\
-       pmt/Makefile \
-       pmt/pmt.pc
-       pmt/doc/Makefile \
-       pmt/src/Makefile \
-       pmt/src/lib/Makefile \
-       pmt/src/scheme/Makefile \
-       pmt/src/scheme/gnuradio/Makefile \
-    ])
-
-    passed=yes
-    AC_PATH_PROG(GUILE,guile)
-    if test "$GUILE" = "" ; then
-      AC_MSG_RESULT([Component pmt requires guile, which was not found.])
-      passed=no
+    GRC_WITH([pmt])
+    passed=no
+    if test x$with_pmt = xyes; then
+        if test x$enable_pmt = xyes; then
+           AC_MSG_ERROR([Component pmt: Cannot use both --enable and --with])
+        else
+           PKG_CHECK_MODULES(PMT, pmt, passed=with,
+                  AC_MSG_RESULT([Component pmt: PKGCONFIG cannot find info]))
+            if test x$passed = xwith; then
+                pmt_INCLUDES=`$PKG_CONFIG --cflags-only-I pmt`
+               pmt_LA=$PMT_LIBS
+            fi
+       fi
+    fi
+    dnl if $passed = with, then "--with" worked; ignore the "--enable" stuff
+    dnl otherwise, $passed = no; check the "--enable" stuff
+    if test x$passed = xno; then
+        AC_CONFIG_FILES([\
+            pmt/Makefile \
+           pmt/pmt.pc \
+           pmt/doc/Makefile \
+           pmt/src/Makefile \
+           pmt/src/lib/Makefile \
+           pmt/src/scheme/Makefile \
+           pmt/src/scheme/gnuradio/Makefile \
+        ])
+       passed=yes
+       # Don't do pmt if omnithread skipped
+       if test x$omnithread_skipped = xyes; then
+           AC_MSG_RESULT([Component pmt requires omnithread, which is not being built or specified via pre-installed files.])
+           passed=no
+       fi
+       # Don't do pmt if guile not available
+        AC_PATH_PROG(GUILE,guile)
+        if test "$GUILE" = "" ; then
+            AC_MSG_RESULT([Component pmt requires guile, which was not found.])
+            passed=no
+        fi
+       pmt_INCLUDES="-I\${abs_top_srcdir}/pmt/src/lib"
+        pmt_LA="\${abs_top_builddir}/pmt/src/lib/libpmt.la"
     fi
 
     GRC_BUILD_CONDITIONAL([pmt],[
         dnl run_tests is created from run_tests.in.  Make it executable.
        dnl AC_CONFIG_COMMANDS([run_tests_pmt], [chmod +x pmt/src/python/run_tests])
     ])
+
+    AC_SUBST([pmt_INCLUDES], [$pmt_INCLUDES])
+    AC_SUBST([pmt_LA], [$pmt_LA])
 ])