From 9a4eca584321408ecac7b67a562d9c37be719d6a Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Wed, 10 Aug 2016 13:07:29 +1000 Subject: build-system: Always enable C++ if the compiler is present. We always build a C++ compiler and building with C++ does not effect RTEMS or the runtime. This patch always enabled the support. There is no need to manually enable it any more. You can disable C++ with '--disable-cxx'. If an architecture does not have a C++ compiler support is automatically disabled. --- c/src/aclocal/enable-cxx.m4 | 5 +++-- c/src/aclocal/prog-cxx.m4 | 37 +++++++++++++++++++++---------------- 2 files changed, 24 insertions(+), 18 deletions(-) (limited to 'c/src/aclocal') diff --git a/c/src/aclocal/enable-cxx.m4 b/c/src/aclocal/enable-cxx.m4 index 759d81b1e9..952f0151a8 100644 --- a/c/src/aclocal/enable-cxx.m4 +++ b/c/src/aclocal/enable-cxx.m4 @@ -1,10 +1,11 @@ AC_DEFUN([RTEMS_ENABLE_CXX], [ AC_ARG_ENABLE(cxx, -[AS_HELP_STRING(--enable-cxx,enable C++ support and build the rtems++ library)], +[AS_HELP_STRING([--enable-cxx], +[enable C++ support])], [case "${enable_cxx}" in yes) RTEMS_HAS_CPLUSPLUS=yes ;; no) RTEMS_HAS_CPLUSPLUS=no ;; *) AC_MSG_ERROR(bad value ${enableval} for enable-cxx option) ;; -esac], [RTEMS_HAS_CPLUSPLUS=no]) +esac], [RTEMS_HAS_CPLUSPLUS=yes]) ]) diff --git a/c/src/aclocal/prog-cxx.m4 b/c/src/aclocal/prog-cxx.m4 index 957a595da2..66c986c57d 100644 --- a/c/src/aclocal/prog-cxx.m4 +++ b/c/src/aclocal/prog-cxx.m4 @@ -1,6 +1,6 @@ -dnl +dnl dnl Check for target g++ -dnl +dnl AC_DEFUN([RTEMS_PROG_CXX_FOR_TARGET], [ @@ -18,21 +18,26 @@ fi RTEMS_CHECK_TOOL(CXX,g++) if test "$RTEMS_HAS_CPLUSPLUS" = "yes"; then -dnl Only accept g++ -dnl NOTE: This might be too restrictive -test -z "$CXX" \ - && AC_MSG_ERROR([no acceptable c++ found in \$PATH]) -AC_PROG_CXX -AC_PROG_CXXCPP - - if test "$ac_cv_prog_cc_cross" != "$ac_cv_prog_cxx_cross"; then - AC_MSG_ERROR([***] - [Inconsistency in compiler configuration:] - [Target C compiler and target C++ compiler] - [must both either be cross compilers or native compilers]) + dnl Only accept g++ + dnl NOTE: This might be too restrictive + if test -z "$CXX"; + then + RTEMS_HAS_CPLUSPLUS=no + HAS_CPLUSPLUS=no + ## Work-around to a bug in automake + AM_CONDITIONAL([am__fastdepCXX],[false]) + else + AC_PROG_CXX + AC_PROG_CXXCPP + if test "$ac_cv_prog_cc_cross" != "$ac_cv_prog_cxx_cross"; then + AC_MSG_ERROR([***] + [Inconsistency in compiler configuration:] + [Target C compiler and target C++ compiler] + [must both either be cross compilers or native compilers]) + fi fi else -## Work-around to a bug in automake -AM_CONDITIONAL([am__fastdepCXX],[false]) + ## Work-around to a bug in automake + AM_CONDITIONAL([am__fastdepCXX],[false]) fi ]) -- cgit v1.2.3