X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=configure.ac;h=6b6dc161dc3f0af8795d2b68e3705b7fe69401b5;hb=6ab7109a1e7e2bb22aa1075f890de4e444958cd1;hp=e3cd1870f263f2369f07cf782185bc0a862c03ce;hpb=a22202008689a4a893c29af118febf5c57cb8103;p=debian%2Fgnuradio diff --git a/configure.ac b/configure.ac index e3cd1870..6b6dc161 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -dnl Copyright 2001,2002,2003,2004,2005,2006,2007,2008 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 @@ -26,15 +26,7 @@ AC_CANONICAL_BUILD AC_CANONICAL_HOST 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 +AM_INIT_AUTOMAKE(gnuradio,3.2svn) 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 @@ -58,16 +50,15 @@ dnl the output of swig use use -O1 if we're using g++. dnl See Makefile.common for the rest of the magic. if test "$user_set_cxxflags" != yes; then autoconf_default_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="" if test "$GXX" = yes; then case "$host_cpu" in powerpc*) dnl "-O1" is broken on the PPC for some reason dnl (at least as of g++ 4.1.1) - swig_CXXFLAGS="-g1 -O2" + swig_CXXFLAGS="-g1 -O2 -Wno-strict-aliasing -Wno-parentheses" ;; *) - swig_CXXFLAGS="-g -O1" + swig_CXXFLAGS="-g -O1 -Wno-strict-aliasing -Wno-parentheses" ;; esac fi @@ -75,13 +66,23 @@ fi AC_SUBST(autoconf_default_CXXFLAGS) AC_SUBST(swig_CXXFLAGS) -LF_SET_WARNINGS + +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 + + GR_SET_GPROF GR_SET_PROF AM_PROG_AS AC_PROG_LN_S AC_PROG_MAKE_SET AC_PROG_INSTALL +AC_PROG_MKDIR_P AC_PATH_PROG([RM_PROG], [rm]) AC_LIBTOOL_WIN32_DLL @@ -100,11 +101,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 +115,6 @@ then CXX_FOR_BUILD=g++ fi fi - AC_SUBST(CXX_FOR_BUILD) dnl Check for SysV shm (mandatory) @@ -125,20 +126,23 @@ 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 dev/ppbus/ppi.h sys/mman.h sys/select.h sys/types.h) -AC_CHECK_HEADERS(sys/resource.h stdint.h sched.h signal.h sys/syscall.h) +AC_CHECK_HEADERS(sys/resource.h stdint.h sched.h signal.h sys/syscall.h malloc.h) AC_CHECK_HEADERS(netinet/in.h) AC_CHECK_HEADERS(windows.h) +AC_CHECK_HEADERS(vec_types.h) dnl Checks for typedefs, structures, and compiler characteristics. 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. AC_FUNC_ALLOCA +GR_CHECK_MEMALIGN AC_FUNC_SETVBUF_REVERSED AC_FUNC_VPRINTF AC_CHECK_FUNCS([mmap select socket strcspn strerror strspn getpagesize sysconf]) @@ -203,15 +207,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) +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__LIB) and define HAVE_BOOST_ +dnl +AX_BOOST_DATE_TIME +dnl AX_BOOST_FILESYSTEM +dnl AX_BOOST_IOSTREAMS +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 @@ -219,7 +247,7 @@ GR_SUBVERSION dnl Component specific configuration dnl The order of the GR_ macros determines the order of compilation dnl For -any- checks on $enable_all_components -dnl use the following guildlines: +dnl use the following guidelines: dnl yes : --enable-all-components was specified, so error out if any dnl components do not pass configuration checks. dnl no : --disable-all-components was specified, so try to build the @@ -239,15 +267,18 @@ 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_USRP2 GRC_GR_USRP dnl this must come after GRC_USRP +GRC_GR_USRP2 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 @@ -265,9 +296,11 @@ GRC_GR_RADIO_ASTRONOMY GRC_GR_TRELLIS GRC_GR_VIDEO_SDL GRC_GR_WXGUI +GRC_GR_QTGUI 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 @@ -276,9 +309,10 @@ AC_SUBST([build_dirs], [$build_dirs]) AC_SUBST([skipped_dirs], [$skipped_dirs]) AC_SUBST([with_dirs], [$with_dirs]) -# fix for older autotools that don't define "abs_top_YYY" by default +# fix for older autotools that don't define these by default AC_SUBST(abs_top_srcdir) AC_SUBST(abs_top_builddir) +AC_SUBST(MKDIR_P) # 'with' variables - the pre-installed libraries, includes, and paths # - must always come last in the lists, so they require special @@ -299,6 +333,11 @@ AC_CONFIG_FILES([\ dnl run_tests.sh is created from run_tests.sh.in . Make it executable. AC_CONFIG_COMMANDS([run_tests_build], [chmod +x run_tests.sh]) +dnl Enable warnings as the last thing before generating output, since +dnl this may add -Werror to CFLAGS which can cause various configure +dnl checks to fail. +LF_SET_WARNINGS + AC_OUTPUT echo