Merged -r6847:6850 from eb/trial-merge into trunk. This changeset
[debian/gnuradio] / configure.ac
index 742593526b8288f0e1951a3f4969e20d529b74e1..526da90412cdf05cea83b0d5d79b3c1053f9a0a7 100644 (file)
@@ -4,7 +4,7 @@ dnl This file is part of GNU Radio
 dnl 
 dnl GNU Radio is free software; you can redistribute it and/or modify
 dnl it under the terms of the GNU General Public License as published by
 dnl 
 dnl GNU Radio is free software; you can redistribute it and/or modify
 dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation; either version 2, or (at your option)
+dnl the Free Software Foundation; either version 3, or (at your option)
 dnl any later version.
 dnl 
 dnl GNU Radio is distributed in the hope that it will be useful,
 dnl any later version.
 dnl 
 dnl GNU Radio is distributed in the hope that it will be useful,
@@ -20,14 +20,24 @@ dnl Boston, MA 02110-1301, USA.
 AC_INIT
 AC_PREREQ(2.57)
 AM_CONFIG_HEADER(config.h)
 AC_INIT
 AC_PREREQ(2.57)
 AM_CONFIG_HEADER(config.h)
-AC_CANONICAL_HOST
-AC_CANONICAL_TARGET([])
-AM_INIT_AUTOMAKE(gnuradio,3.0svn)
 AC_CONFIG_SRCDIR([gnuradio-core/src/lib/runtime/gr_vmcircbuf.cc])
 
 AC_CONFIG_SRCDIR([gnuradio-core/src/lib/runtime/gr_vmcircbuf.cc])
 
+AC_CANONICAL_BUILD
+AC_CANONICAL_HOST
+AC_CANONICAL_TARGET
+if test x$cross_compiling != xyes; then
+  AC_MSG_NOTICE([Configuring GNU Radio for cross compilation])
+else
+  AC_MSG_NOTICE([Configuring GNU Radio for native compilation])
+fi
+
+AM_INIT_AUTOMAKE(gnuradio,3.1svn)
+
+
 DEFINES=""
 AC_SUBST(DEFINES)
 
 DEFINES=""
 AC_SUBST(DEFINES)
 
+
 dnl Remember if the user explicity set CXXFLAGS
 if test -n "${CXXFLAGS}"; then
   user_set_cxxflags=yes
 dnl Remember if the user explicity set CXXFLAGS
 if test -n "${CXXFLAGS}"; then
   user_set_cxxflags=yes
@@ -49,14 +59,11 @@ if test "$user_set_cxxflags" != yes; then
   autoconf_default_CXXFLAGS="$CXXFLAGS"
   CXXFLAGS=""
   if test "$GXX" = yes; then
   autoconf_default_CXXFLAGS="$CXXFLAGS"
   CXXFLAGS=""
   if test "$GXX" = yes; then
-    case "$host_os" in
-       darwin*)
-       if test "$host_cpu" = i386; then
-          swig_CXXFLAGS="-g1 -O1"
-       else
-          # "-O1" breaks PPC-OSX for some reason
+    case "$host_cpu" in
+       powerpc*)
+          # "-O1" is broken on the PPC for some reason
+          # (at least as of g++ 4.1.1)
           swig_CXXFLAGS="-g1 -O2"
           swig_CXXFLAGS="-g1 -O2"
-       fi      
        ;;
        *) 
        swig_CXXFLAGS="-g1 -O1"
        ;;
        *) 
        swig_CXXFLAGS="-g1 -O1"
@@ -99,10 +106,15 @@ GR_OMNITHREAD
 CFLAGS="${CFLAGS} $PTHREAD_CFLAGS"
 CXXFLAGS="${CXXFLAGS} $PTHREAD_CFLAGS"
 
 CFLAGS="${CFLAGS} $PTHREAD_CFLAGS"
 CXXFLAGS="${CXXFLAGS} $PTHREAD_CFLAGS"
 
-if test "x$CXX_FOR_BUILD" = x
+if test x$CXX_FOR_BUILD = x
 then
 then
-  CXX_FOR_BUILD=${CXX}
+  if test x$cross_compiling = xno; then
+    CXX_FOR_BUILD=${CXX}
+  else
+    CXX_FOR_BUILD=g++
+  fi
 fi
 fi
+
 AC_SUBST(CXX_FOR_BUILD)
 
 dnl Check for SysV shm (mandatory)
 AC_SUBST(CXX_FOR_BUILD)
 
 dnl Check for SysV shm (mandatory)
@@ -114,7 +126,7 @@ AC_HEADER_STDC
 AC_HEADER_SYS_WAIT
 AC_CHECK_HEADERS(fcntl.h limits.h strings.h time.h sys/ioctl.h sys/time.h unistd.h)
 AC_CHECK_HEADERS(linux/ppdev.h sys/mman.h sys/select.h sys/types.h)
 AC_HEADER_SYS_WAIT
 AC_CHECK_HEADERS(fcntl.h limits.h strings.h time.h sys/ioctl.h sys/time.h unistd.h)
 AC_CHECK_HEADERS(linux/ppdev.h sys/mman.h sys/select.h sys/types.h)
-AC_CHECK_HEADERS(sys/resource.h stdint.h sched.h signal.h)
+AC_CHECK_HEADERS(sys/resource.h stdint.h sched.h signal.h sys/syscall.h)
 
 dnl Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
 
 dnl Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
@@ -130,7 +142,8 @@ AC_FUNC_SETVBUF_REVERSED
 AC_FUNC_VPRINTF
 AC_CHECK_FUNCS([mmap select socket strcspn strerror strspn getpagesize sysconf])
 AC_CHECK_FUNCS([snprintf gettimeofday nanosleep sched_setscheduler])
 AC_FUNC_VPRINTF
 AC_CHECK_FUNCS([mmap select socket strcspn strerror strspn getpagesize sysconf])
 AC_CHECK_FUNCS([snprintf gettimeofday nanosleep sched_setscheduler])
-AC_CHECK_FUNCS([modf sqrt sigaction sigprocmask])
+AC_CHECK_FUNCS([modf sqrt sigaction sigprocmask pthread_sigmask])
+AC_CHECK_FUNCS([sched_setaffinity])
 
 AC_CHECK_LIB(m, sincos, [AC_DEFINE([HAVE_SINCOS],[1],[Define to 1 if your system has `sincos'.])])
 AC_CHECK_LIB(m, sincosf,[AC_DEFINE([HAVE_SINCOSF],[1],[Define to 1 if your system has `sincosf'.])])
 
 AC_CHECK_LIB(m, sincos, [AC_DEFINE([HAVE_SINCOS],[1],[Define to 1 if your system has `sincos'.])])
 AC_CHECK_LIB(m, sincosf,[AC_DEFINE([HAVE_SINCOSF],[1],[Define to 1 if your system has `sincosf'.])])
@@ -178,8 +191,11 @@ GR_SET_MD_CPU
 
 dnl Define where to look for cppunit includes and libs
 dnl sets CPPUNIT_CFLAGS and CPPUNIT_LIBS
 
 dnl Define where to look for cppunit includes and libs
 dnl sets CPPUNIT_CFLAGS and CPPUNIT_LIBS
-AM_PATH_CPPUNIT([1.9.14],[],
-               [AC_MSG_ERROR([GNU Radio requires cppunit.  Stop])])
+dnl Try using pkg-config first, then fall back to cppunit-config.
+PKG_CHECK_EXISTS(cppunit,
+  [PKG_CHECK_MODULES(CPPUNIT, cppunit >= 1.9.14)],
+  [AM_PATH_CPPUNIT([1.9.14],[],
+               [AC_MSG_ERROR([GNU Radio requires cppunit.  Stop])])])
 
 CPPUNIT_INCLUDES=$CPPUNIT_CFLAGS
 AC_SUBST(CPPUNIT_INCLUDES)
 
 CPPUNIT_INCLUDES=$CPPUNIT_CFLAGS
 AC_SUBST(CPPUNIT_INCLUDES)
@@ -188,6 +204,9 @@ dnl Define where to find boost includes
 dnl defines BOOST_CFLAGS
 GR_REQUIRE_BOOST_INCLUDES
 
 dnl defines BOOST_CFLAGS
 GR_REQUIRE_BOOST_INCLUDES
 
+# If this is being done from a subversion tree, create variables
+GR_SUBVERSION
+
 dnl Component specific configuration
 dnl The order of the GR_ macros determines the order of compilation
 AC_ARG_ENABLE(
 dnl Component specific configuration
 dnl The order of the GR_ macros determines the order of compilation
 AC_ARG_ENABLE(
@@ -198,6 +217,8 @@ AC_ARG_ENABLE(
 build_dirs="config"
 GRC_OMNITHREAD                 dnl must come before gnuradio-core and mblock
 GRC_GNURADIO_CORE
 build_dirs="config"
 GRC_OMNITHREAD                 dnl must come before gnuradio-core and mblock
 GRC_GNURADIO_CORE
+GRC_PMT
+GRC_MBLOCK                     dnl this must come after GRC_PMT
 GRC_USRP
 GRC_GR_USRP                    dnl this must come after GRC_USRP
 GRC_GR_AUDIO_ALSA
 GRC_USRP
 GRC_GR_USRP                    dnl this must come after GRC_USRP
 GRC_GR_AUDIO_ALSA
@@ -208,18 +229,17 @@ GRC_GR_AUDIO_PORTAUDIO
 GRC_GR_AUDIO_WINDOWS
 GRC_GR_ATSC
 GRC_GR_COMEDI
 GRC_GR_AUDIO_WINDOWS
 GRC_GR_ATSC
 GRC_GR_COMEDI
+GRC_GR_CVSD_VOCODER
 GRC_GR_GSM_FR_VOCODER
 GRC_GR_PAGER
 GRC_GR_GSM_FR_VOCODER
 GRC_GR_PAGER
+GRC_GR_RADAR_MONO
 GRC_GR_RADIO_ASTRONOMY
 GRC_GR_TRELLIS
 GRC_GR_VIDEO_SDL
 GRC_GR_RADIO_ASTRONOMY
 GRC_GR_TRELLIS
 GRC_GR_VIDEO_SDL
-#GRC_GR_QTGUI                  dnl disabled until grc_gr_qtgui.m4 is final
+GRC_GR_QTGUI
 GRC_GR_WXGUI
 GRC_GR_WXGUI
-GRC_PMT
-GRC_MBLOCK                     dnl this must come after GRC_PMT
-GRC_EZDOP              
-GRC_GR_EZDOP                   dnl this must come after GRC_EZDOP
-GRC_GR_RDF
+GRC_GR_SOUNDER                 dnl this must come after GRC_USRP
+GRC_GR_UTILS
 GRC_GNURADIO_EXAMPLES          dnl must come last
 
 # Each component is now either to be built, was skipped, or failed dependencies
 GRC_GNURADIO_EXAMPLES          dnl must come last
 
 # Each component is now either to be built, was skipped, or failed dependencies