Re: Curious: Why '--std=c++11' and '--std=gnu++11' in compiler options? (Was: Required C++ standard for building LyX, i.e. do we require >= C++11?)

2017-07-23 Thread Jean-Marc Lasgouttes

Le 23/07/2017 à 22:17, Christian Ridderström a écrit :
For my curiosity, I noted that in addition to '-std=c++11' among the 
compiler options, there's also an option for '-std=gnu++11' in the 
compile command. In my case I was using cmake and the compiler was 
Apples LLVM/clang-compiler, not gcc.


Does anyone know why we use both '-std=c++11' and '-std=gnu++11'?


This should not happen IMO, only one of the options should appear. It 
might be related to the strange versioning used by clang, especially 
Apple's one.


Can you send your config.log?

JMarc



Curious: Why '--std=c++11' and '--std=gnu++11' in compiler options? (Was: Required C++ standard for building LyX, i.e. do we require >= C++11?)

2017-07-23 Thread Christian Ridderström
For my curiosity, I noted that in addition to '-std=c++11' among the
compiler options, there's also an option for '-std=gnu++11' in the compile
command. In my case I was using cmake and the compiler was Apples
LLVM/clang-compiler, not gcc.

Does anyone know why we use both '-std=c++11' and '-std=gnu++11'?

cd /Users/chrid/repos/lyx/m0/build-master/src/tex2lyx &&
 /Applications/Xcode.app/Contents/Developer/Toolchains/
XcodeDefault.xctoolchain/usr/bin/c++
-DBOOST_USER_CONFIG=""
-I/Users/chrid/repos/lyx/m0/build-master  ...
-Wall -Wunused-parameter
--std=c++11 -Wno-deprecated-register -fno-strict-aliasing
-Wall -Wunused-parameter
--std=c++11 -Wno-deprecated-register -fno-strict-aliasing
-O0 -g3 -D_DEBUG   -F/usr/local/Cellar/qt/4.8.7_2/lib
   -std=gnu++11
   -o CMakeFiles/tex2lyx.dir/Context.cpp.o -c
   /Users/chrid/repos/lyx/m0/src/tex2lyx/Context.cpp

/Christian

PS. There also seems to be a duplication of the '--std=c++11' as well as
the next two options.


Re: Required C++ standard for building LyX, i.e. do we require >= C++11?

2017-07-10 Thread Pavel Sanda
Jean-Marc Lasgouttes wrote:
> > It's a minor thing and just reminded me to check what the requirements
> > really are.
>
> The requirements were actually that Pavel and myself should be able to 
> compile on our ancient systems. I am currently moving the said machine from 
> ubuntu 12.04 to 16.04, so I will maybe not be able to pester Guillaume as 
> much :)

It's actually not possible to build it without hassle on 12.04 anymore 
(autotools)
so I think gcc 4.6 requirement will not hold for a long time.
Pavel


Re: Required C++ standard for building LyX, i.e. do we require >= C++11?

2017-07-08 Thread Jean-Marc Lasgouttes

Le 08/07/2017 à 00:22, Christian Ridderström a écrit :

Hi,

I was trying to confirm that compiling LyX requires at least C++11, but 
so far I've only seen the following in INSTALL:


 Requirements
 

 First of all, you will need a recent C++ compiler, where recent means
 that the compilers are close to C++11 standard conforming like gcc (at
 least 4.6) or clang.

The text says "close to C++11", why don't we say that we require a 
compiler conformant to C++11?


Because gcc 4.6 is not C++11 compliant, only C++0x.

Is there some other place where we''re stating, or should be stating, 
the requirements to build LyX?


These requirements are precise enough ;)


If we require C++11, then C++03 template code like this (from LaTeX.cpp):

stack  > child;

can now be reformatted as

stack > child;



We already do that in many places.

> It's a minor thing and just reminded me to check what the requirements
> really are.

The requirements were actually that Pavel and myself should be able to 
compile on our ancient systems. I am currently moving the said machine 
from ubuntu 12.04 to 16.04, so I will maybe not be able to pester 
Guillaume as much :)


JMarc


Required C++ standard for building LyX, i.e. do we require >= C++11?

2017-07-07 Thread Christian Ridderström
Hi,

I was trying to confirm that compiling LyX requires at least C++11, but so
far I've only seen the following in INSTALL:

Requirements


First of all, you will need a recent C++ compiler, where recent means
that the compilers are close to C++11 standard conforming like gcc (at
least 4.6) or clang.

The text says "close to C++11", why don't we say that we require a compiler
conformant to C++11?

Is there some other place where we''re stating, or should be stating, the
requirements to build LyX?

Cheers
/Christian

PS. Background to my question.

If we require C++11, then C++03 template code like this (from LaTeX.cpp):

   stack  > child;

can now be reformatted as

   stack > child;

It's a minor thing and just reminded me to check what the requirements
really are.