From 1bd1e21a69ee38a5c4e584b0c0ce739e8c8273ad Mon Sep 17 00:00:00 2001 From: Wilson Snyder <wsnyder@wsnyder.org> Date: Sat, 11 Jul 2020 08:56:40 -0400 Subject: [PATCH] Change --enable-prec11 to --enable-prec11-final and give stronger warning --- Changes | 3 +++ bin/verilator | 8 ++++---- configure.ac | 17 ++++++++--------- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/Changes b/Changes index eb0f0c933..dfa4b629e 100644 --- a/Changes +++ b/Changes @@ -5,6 +5,9 @@ The contributors that suggested a given feature are shown in []. Thanks! * Verilator 4.037 devel +** Versions 4.038 and 4.040 are planned to be the final versions that will + support pre-C++11 compilers. Please move to C++11 or newer compilers. + *** Support VPI access to parameters and localparam. [Ludwig Rogiers] *** Support parsing (not elaboration, yet) of UVM. diff --git a/bin/verilator b/bin/verilator index 091c92593..83712deca 100755 --- a/bin/verilator +++ b/bin/verilator @@ -4935,14 +4935,14 @@ The following deprecated items are scheduled for future removal: =item Pre-C++11 compiler support Verilator supports pre-C++11 compilers for non-threaded models when -configured with --enable-prec11. This flag will be removed and C++11 -compilers will be required for both compiling Verilator and compiling -Verilated models no sooner than September 2020. +configured with --enable-prec11/--enable-prec11-final. This flag will be +removed and C++11 compilers will be required for both compiling Verilator +and compiling Verilated models no sooner than September 2020. =item SystemC 2.2 and earlier support Support for SystemC versions 2.2 and earlier including the related sc_clock -variable attribute will be removed no sooner than August 2020. The +variable attribute will be removed no sooner than September 2020. The supported versions will be SystemC 2.3.0 (SYSTEMC_VERSION 20111121) and later (presently 2.3.0, 2.3.1, 2.3.2, 2.3.3). diff --git a/configure.ac b/configure.ac index 011df9ad4..01a24da15 100644 --- a/configure.ac +++ b/configure.ac @@ -114,14 +114,14 @@ AC_MSG_RESULT($CFG_WITH_LONGTESTS) # CFG_WITH_PREC11 AC_MSG_CHECKING(whether allow pre-C++11) -AC_ARG_ENABLE([prec11], - [AS_HELP_STRING([--enable-prec11], +AC_ARG_ENABLE([prec11-final], + [AS_HELP_STRING([--enable-prec11-final], [enable pre-C++11 compilers for Verilator binary and Verilated makefiles])], [case "${enableval}" in yes) CFG_WITH_PREC11=yes ;; no) CFG_WITH_PREC11=no ;; - *) AC_MSG_ERROR([bad value ${enableval} for --enable-prec11]) ;; + *) AC_MSG_ERROR([bad value ${enableval} for --enable-prec11-final]) ;; esac], [CFG_WITH_PREC11=no;] ) @@ -433,12 +433,11 @@ if test "$CFG_WITH_THREADED" = "no" ; then AC_MSG_NOTICE([[]]) AC_MSG_ERROR([[the $CXX compiler appears to not support C++11. -Verilator plans to require a C++11 or newer compiler in a future release, -unless sufficient people report problems. Therefore, if you do not have a -C++11 compiler, please post a message to -https://www.veripool.org/boards/3/topics/2580-Verilator-Requiring-C-11-compiler -indicating your OS and when you think C++11 might be ok, and then rerun -configure with the --enable-prec11 argument. Thanks.]]) +Verilator will require a C++11 or newer compiler for all releases starting +September 2020. Please investigate a C++11 build environment now so you +will be ready. Until then you may rerun configure with the +--enable-prec11-final argument to enable reduced functionality with such +older compilers. Thanks.]]) fi fi