summaryrefslogtreecommitdiff
path: root/gr-howto-write-a-block/config/gr_standalone.m4
diff options
context:
space:
mode:
authorjcorgan2009-03-14 02:28:41 +0000
committerjcorgan2009-03-14 02:28:41 +0000
commitc3f962a1f0a4132ad643c58774bb69b190dccc49 (patch)
treedaa59a206d6fde01dc1404197e981927366af0e0 /gr-howto-write-a-block/config/gr_standalone.m4
parent4eea337c46db44a6ee7560a4552e158421776777 (diff)
downloadgnuradio-c3f962a1f0a4132ad643c58774bb69b190dccc49.tar.gz
gnuradio-c3f962a1f0a4132ad643c58774bb69b190dccc49.tar.bz2
gnuradio-c3f962a1f0a4132ad643c58774bb69b190dccc49.zip
Merged r10554:10595 from michaelld/am_swig_4 into trunk. Major overhaul of SWIG usage in build system, also fixes ticket:130. Trunk passes distcheck.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@10596 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gr-howto-write-a-block/config/gr_standalone.m4')
-rw-r--r--gr-howto-write-a-block/config/gr_standalone.m440
1 files changed, 32 insertions, 8 deletions
diff --git a/gr-howto-write-a-block/config/gr_standalone.m4 b/gr-howto-write-a-block/config/gr_standalone.m4
index a00d502db..44d9235f4 100644
--- a/gr-howto-write-a-block/config/gr_standalone.m4
+++ b/gr-howto-write-a-block/config/gr_standalone.m4
@@ -1,5 +1,5 @@
dnl
-dnl Copyright 2008 Free Software Foundation, Inc.
+dnl Copyright 2008,2009 Free Software Foundation, Inc.
dnl
dnl This file is part of GNU Radio
dnl
@@ -37,10 +37,41 @@ m4_define([GR_STANDALONE],
AM_INIT_AUTOMAKE
+ dnl Remember if the user explicity set CXXFLAGS
+ if test -n "${CXXFLAGS}"; then
+ user_set_cxxflags=yes
+ fi
+
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
+ dnl a good idea, it makes it hard to use other than -g -O2 when compiling
+ dnl selected files. Thus we "undo" the damage here...
+ dnl
+ dnl If the user specified CXXFLAGS, we use them. Otherwise when compiling
+ 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"
+ 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 -Wno-strict-aliasing -Wno-parentheses"
+ ;;
+ *)
+ swig_CXXFLAGS="-g -O1 -Wno-strict-aliasing -Wno-parentheses"
+ ;;
+ esac
+ fi
+ 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
@@ -67,13 +98,6 @@ m4_define([GR_STANDALONE],
GR_NO_UNDEFINED dnl do we need the -no-undefined linker flag
GR_SCRIPTING dnl Locate python, SWIG, etc
- dnl Set the c++ compiler that we use for the build system when cross compiling
- if test "x$CXX_FOR_BUILD" = x
- then
- CXX_FOR_BUILD=${CXX}
- fi
- AC_SUBST(CXX_FOR_BUILD)
-
dnl Checks for header files.
AC_HEADER_STDC