Merged changeset r9285:9377 from jblum/grc into trunk, with distcheck fixes
[debian/gnuradio] / configure.ac
index 05c2cc050e6b116bd5e0e0463a7e07fefcfe2d03..0986a9fdb05af0136b4335e524f35273194fdd9d 100644 (file)
@@ -28,14 +28,6 @@ AC_CANONICAL_TARGET
 
 AM_INIT_AUTOMAKE(gnuradio,3.1svn)
 
-dnl add ${prefix}/lib/pkgconfig to the head of the PKG_CONFIG_PATH
-if test [x]${PKG_CONFIG_PATH} = x; then
-    PKG_CONFIG_PATH=${prefix}/lib/pkgconfig
-else
-    PKG_CONFIG_PATH=${prefix}/lib/pkgconfig:${PKG_CONFIG_PATH}
-fi
-export PKG_CONFIG_PATH
-
 DEFINES=""
 AC_SUBST(DEFINES)
 
@@ -44,9 +36,9 @@ if test -n "${CXXFLAGS}"; then
   user_set_cxxflags=yes
 fi
 
-GR_X86_64              dnl check for lib64 suffix
 LF_CONFIGURE_CC
 LF_CONFIGURE_CXX
+GR_LIB64               dnl check for lib64 suffix after choosing compilers
 
 dnl The three macros above are known to override CXXFLAGS if the user
 dnl didn't specify them.  Though I'm sure somebody thought this was
@@ -75,6 +67,16 @@ fi
 AC_SUBST(autoconf_default_CXXFLAGS)
 AC_SUBST(swig_CXXFLAGS)
 
+
+dnl add ${prefix}/lib${gr_libdir_suffix}/pkgconfig to the head of the PKG_CONFIG_PATH
+if test x${PKG_CONFIG_PATH} = x; then
+    PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig
+else
+    PKG_CONFIG_PATH=${prefix}/lib${gr_libdir_suffix}/pkgconfig:${PKG_CONFIG_PATH}
+fi
+export PKG_CONFIG_PATH
+
+
 LF_SET_WARNINGS
 GR_SET_GPROF
 GR_SET_PROF
@@ -88,7 +90,7 @@ AC_LIBTOOL_WIN32_DLL
 dnl AC_DISABLE_SHARED  dnl don't build shared libraries
 AC_ENABLE_SHARED       dnl do build shared libraries
 AC_DISABLE_STATIC      dnl don't build static libraries
-AC_PROG_LIBTOOL
+m4_ifdef([LT_INIT],[LT_INIT],[AC_PROG_LIBTOOL])
 GR_FORTRAN
 
 GR_NO_UNDEFINED                dnl do we need the -no-undefined linker flag
@@ -100,11 +102,12 @@ AM_CONDITIONAL([HAS_XMLTO], [test x$XMLTO = xyes])
 dnl Checks for libraries.
 AC_CHECK_LIB(socket,socket)
 
-dnl check for threads (mandatory)
+dnl check for omnithreads (will soon be removed)
 GR_OMNITHREAD
-CFLAGS="${CFLAGS} $PTHREAD_CFLAGS"
-CXXFLAGS="${CXXFLAGS} $PTHREAD_CFLAGS"
+CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
 
+dnl Set the c++ compiler that we use for the build system when cross compiling
 if test x$CXX_FOR_BUILD = x
 then
   if test x$cross_compiling = xno; then
@@ -113,7 +116,6 @@ then
     CXX_FOR_BUILD=g++
   fi
 fi
-
 AC_SUBST(CXX_FOR_BUILD)
 
 dnl Check for SysV shm (mandatory)
@@ -134,7 +136,8 @@ AC_C_CONST
 AC_C_INLINE
 AC_TYPE_SIZE_T
 AC_HEADER_TIME
-AC_C_BIGENDIAN
+AC_C_BIGENDIAN([GR_ARCH_BIGENDIAN=1],[GR_ARCH_BIGENDIAN=0])
+AC_SUBST(GR_ARCH_BIGENDIAN)
 AC_STRUCT_TM
 
 dnl Checks for library functions.
@@ -152,6 +155,7 @@ AC_CHECK_LIB(m, sinf, [AC_DEFINE([HAVE_SINF],[1],[Define to 1 if your system has
 AC_CHECK_LIB(m, cosf, [AC_DEFINE([HAVE_COSF],[1],[Define to 1 if your system has `cosf'.])])
 AC_CHECK_LIB(m, trunc, [AC_DEFINE([HAVE_TRUNC],[1],[Define to 1 if your system has `trunc'.])])
 AC_CHECK_LIB(m, exp10, [AC_DEFINE([HAVE_EXP10],[1],[Define to 1 if your system has 'exp10'.])])
+AC_CHECK_LIB(m, log2, [AC_DEFINE([HAVE_LOG2],[1],[Define to 1 if your system has 'log2'.])])
 #AC_FUNC_MKTIME
 
 AH_BOTTOM([
@@ -202,15 +206,39 @@ PKG_CHECK_EXISTS(cppunit,
   [AM_PATH_CPPUNIT([1.9.14],[],
                [AC_MSG_ERROR([GNU Radio requires cppunit.  Stop])])])
 
+CPPUNIT_INCLUDES=$CPPUNIT_CFLAGS
+AC_SUBST(CPPUNIT_INCLUDES)
+
 dnl see if GUILE is installed
 AC_PATH_PROG(GUILE,guile)
 
-CPPUNIT_INCLUDES=$CPPUNIT_CFLAGS
-AC_SUBST(CPPUNIT_INCLUDES)
+dnl
+dnl We require the boost headers, thread lib and date_time lib.
+dnl AX_BOOST_BASE finds the headers and the lib dir (-L<foo>)
+dnl
+dnl calls AC_SUBST(BOOST_CPPFLAGS), AC_SUBST(BOOST_LDFLAGS) and defines HAVE_BOOST
+AX_BOOST_BASE([1.35])
+
+dnl calls AC_SUBST(BOOST_THREAD_LIB), AC_SUBST(BOOST_CXXFLAGS) and defines HAVE_BOOST_THREAD
+AX_BOOST_THREAD
+CXXFLAGS="$CXXFLAGS $BOOST_CXXFLAGS"       dnl often picks up a -pthread or something similar
+CFLAGS="$CFLAGS $BOOST_CXXFLAGS"           dnl often picks up a -pthread or something similar
+
+dnl
+dnl all the rest of these call AC_SUBST(BOOST_<foo>_LIB) and define HAVE_BOOST_<foo>
+dnl
+AX_BOOST_DATE_TIME
+dnl AX_BOOST_FILESYSTEM
+dnl AX_BOOST_IOSTREAMS
+dnl AX_BOOST_PROGRAM_OPTIONS
+dnl AX_BOOST_REGEX
+dnl AX_BOOST_SERIALIZATION
+dnl AX_BOOST_SIGNALS
+dnl AX_BOOST_SYSTEM
+dnl AX_BOOST_TEST_EXEC_MONITOR
+dnl AX_BOOST_UNIT_TEST_FRAMEWORK
+dnl AX_BOOST_WSERIALIZATION
 
-dnl Define where to find boost includes
-dnl defines BOOST_CFLAGS
-GR_REQUIRE_BOOST_INCLUDES
 
 dnl If this is being done from a subversion tree, create variables
 GR_SUBVERSION
@@ -238,15 +266,16 @@ AC_ARG_ENABLE(
 )
 
 build_dirs="config"
+GRC_GRUEL                       dnl must come first
 GRC_OMNITHREAD                 dnl must come before gnuradio-core and mblock
-GRC_PMT
-GRC_MBLOCK                     dnl this must come after GRC_PMT
 GRC_GCELL
 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_GCELL                   dnl this must come after GRC_GCELL and GRC_GNURADIO_CORE
-GRC_GR_MSDD6000
+GRC_GR_MSDD6000        
 GRC_GR_AUDIO_ALSA
 GRC_GR_AUDIO_JACK
 GRC_GR_AUDIO_OSS
@@ -266,7 +295,8 @@ GRC_GR_VIDEO_SDL
 GRC_GR_WXGUI
 GRC_GR_SOUNDER                 dnl this must come after GRC_USRP
 GRC_GR_UTILS                    dnl this must come after GRC_GR_WXGUI
-GRC_GNURADIO_EXAMPLES          dnl must come last
+GRC_GNURADIO_EXAMPLES          dnl must come after all GRC_GR_*
+GRC_GRC
 
 # Each component is now either to be built, was skipped, will be
 # included from pre-installed libraries and includes, or failed