Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-9637

"root-config --cflags" echoes bad -std=c++1y

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Blocker
    • Resolution: Fixed
    • 6.14/02
    • 6.16/00, 6.14/08
    • None
    • None
    • Gentoo Linux x86_64, gcc 7.4.0

    Description

      Dear ROOTers,

       

      when compiling ROOT with CMake with:

      -Dcxx14=ON

      I can see how all compile commands contain:

      -std=c++14

      just as expected. However, after finishing, I get:

      $ root-config --cflags
      -pthread -std=c++1y -m64 -march=haswell -mabm -O2 -pipe -ggdb -I/usr/lib64/root/6.14/include

      So the standard shown here is a different one.

      According to https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-std-108 that is indeed the same for gcc (but c++1y is deprecated and hence may be dropped in the future). It may not be the same for all compilers, though, so if other packages linking against ROOT pick this up, they may break.

       

      It seems this is deliberately rewritten in root-config.in.

       

      Cheers,

      Oliver

      Attachments

        Activity

          People

            dpiparo Danilo Piparo
            ofreyerm Oliver Freyermuth
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              Actual Start:
              Actual End: