Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-10-29 Thread Robert Burmeister

USES= compiler:c++11

Means you need a c++1 capable compiler but not necessary a c++ 11 aware standard
library, in that case if the base compiler is not able to support c++11 clang33
will be used from ports otherwise gcc 4.6+ if you specify it in make.conf.

Problem, if clang from ports is 3.3.

http://freebsd.1045724.n5.nabble.com/FreeBSD-Port-editors-libreoffice-td5856164.html

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-17 Thread Baptiste Daroussin
On Mon, Sep 16, 2013 at 09:56:50PM +0300, David Naylor wrote:
 On Friday 13 September 2013 15:17:53 Baptiste Daroussin wrote:
  Hi,
 
 Hi,
 
  Given how old our gcc in base is and the work done on clang and libc++.
  
  It is becoming complicating to make some ports properly working on all
  supported version of FreeBSD.
  
  To help in that I would like to propose a new USES:
  compiler
  
  http://people.freebsd.org/~bapt/compiler.mk.txt
 
 Would it be possible to add a quirks ability.  For example PyPy triggers the 
 GCC memory bug for the gcc in base, so it needs any compiler (clang or gcc) 
 as 
 long as gcc is 4.3+.  
 
 Regards

What about USES=compiler:modern

using clang from base if  3.3
using clang from ports otherwise
falling back on gcc from ports if the user specify he does prefer gcc?

regards,
Bapt


pgp74Ty1tyeoS.pgp
Description: PGP signature


Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-16 Thread David Naylor
On Friday 13 September 2013 15:17:53 Baptiste Daroussin wrote:
 Hi,

Hi,

 Given how old our gcc in base is and the work done on clang and libc++.
 
 It is becoming complicating to make some ports properly working on all
 supported version of FreeBSD.
 
 To help in that I would like to propose a new USES:
 compiler
 
 http://people.freebsd.org/~bapt/compiler.mk.txt

Would it be possible to add a quirks ability.  For example PyPy triggers the 
GCC memory bug for the gcc in base, so it needs any compiler (clang or gcc) as 
long as gcc is 4.3+.  

Regards


signature.asc
Description: This is a digitally signed message part.


[HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-13 Thread Baptiste Daroussin
Hi,

Given how old our gcc in base is and the work done on clang and libc++.

It is becoming complicating to make some ports properly working on all supported
version of FreeBSD.

To help in that I would like to propose a new USES:
compiler

http://people.freebsd.org/~bapt/compiler.mk.txt

What it does is:

USES=compiler

Will set 2 variables:
COMPILER_TYPE to gcc or clang depending on the base compiler
COMPILER_VERSION wish will be the 2 first digits of the compiler version 46 for
gcc 4.6.* 33 for clang 3.3.*

USES=compiler:features
It creates a new COMPILER_FEATURES which will gather the supported features of
the compiler.

Features being:
libstdc++ if the c++ compiler uses libstdc++ by default
libc++ if the c++ compiler uses libc++ by default
And the standard supported by the compiler:
c89, c99, c11, gnu89, gnu99, gnu11, c++98, c++11, gnu++98, gnu++11

USES=compiler:c11

Means you need a c11 capable compiler, and if your default comiler is not able
to do it, it will picked clang33 by default of gcc 4.6+ if you specify in your
make.conf you do prefer gcc over clang

USES= compiler:c++11

Means you need a c++1 capable compiler but not necessary a c++ 11 aware standard
library, in that case if the base compiler is not able to support c++11 clang33
will be used from ports otherwise gcc 4.6+ if you specify it in make.conf.

USES= compiler=stdc++11

You need a c++11 aware stdlibrary, if the base compiler doesn't have it then gcc
4.6+ will be used.

To specify you do prefer gcc over clang by default add FAVORITE_COMPILER=gcc in
your make.conf

For all cases that does not fall into one of the above case continue using
USE_GCC as you where doing before

regards,
Bapt


pgp7LFOzwvVe7.pgp
Description: PGP signature


Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-13 Thread Jerry
On Fri, 13 Sep 2013 15:17:53 +0200
Baptiste Daroussin articulated:

 Hi,
 
 Given how old our gcc in base is and the work done on clang and
 libc++.
 
 It is becoming complicating to make some ports properly working on
 all supported version of FreeBSD.
 
 To help in that I would like to propose a new USES:
 compiler
 
 http://people.freebsd.org/~bapt/compiler.mk.txt
 
 What it does is:
 
 USES=compiler
 
 Will set 2 variables:
 COMPILER_TYPE to gcc or clang depending on the base compiler
 COMPILER_VERSION wish will be the 2 first digits of the compiler
 version 46 for gcc 4.6.* 33 for clang 3.3.*
 
 USES=compiler:features
 It creates a new COMPILER_FEATURES which will gather the supported
 features of the compiler.
 
 Features being:
 libstdc++ if the c++ compiler uses libstdc++ by default
 libc++ if the c++ compiler uses libc++ by default
 And the standard supported by the compiler:
 c89, c99, c11, gnu89, gnu99, gnu11, c++98, c++11, gnu++98, gnu++11
 
 USES=compiler:c11
 
 Means you need a c11 capable compiler, and if your default comiler is
 not able to do it, it will picked clang33 by default of gcc 4.6+ if
 you specify in your make.conf you do prefer gcc over clang
 
 USES= compiler:c++11
 
 Means you need a c++1 capable compiler but not necessary a c++ 11
 aware standard library, in that case if the base compiler is not able
 to support c++11 clang33 will be used from ports otherwise gcc 4.6+
 if you specify it in make.conf.
 
 USES= compiler=stdc++11
 
 You need a c++11 aware stdlibrary, if the base compiler doesn't have
 it then gcc 4.6+ will be used.
 
 To specify you do prefer gcc over clang by default add
 FAVORITE_COMPILER=gcc in your make.conf
 
 For all cases that does not fall into one of the above case continue
 using USE_GCC as you where doing before

Excellent idea. I was never in favor of switching to clang anyway. I
would have preferred that the base gcc was updated to the latest
stable version; however, too many people got their shorts in a bunch
and that wasn't going to happen. This sounds like a smart, well thought
out concept; therefore, it will probably be rejected.

-- 
Jerry ♔

Disclaimer: off-list followups get on-list replies or get ignored.
Please do not ignore the Reply-To header.
__



signature.asc
Description: PGP signature


Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-13 Thread Pietro Cerutti
On 2013-Sep-13, 15:17, Baptiste Daroussin wrote:
 USES= compiler:c++11
 
 Means you need a c++1 capable compiler but not necessary a c++ 11 aware 
 standard
 library, in that case if the base compiler is not able to support c++11 
 clang33
 will be used from ports otherwise gcc 4.6+ if you specify it in make.conf.
 
 USES= compiler=stdc++11
 
 You need a c++11 aware stdlibrary, if the base compiler doesn't have it then 
 gcc
 4.6+ will be used.

Very nice! I suggest to change these last two names in 

c++11-lang
c++11-lib

since 'stdc++11' sounds too much like libstdc++ for me (implying GNU's
implementation).

.2$


-- 
Pietro Cerutti
The FreeBSD Project
g...@freebsd.org

PGP Public Key:
http://gahr.ch/pgp


pgpEfZehuUIJq.pgp
Description: PGP signature


Re: [HEADSUP][CFT] New compiler USES flag, please test, review comment

2013-09-13 Thread Konstantin Tokarev


13.09.2013, 19:04, Pietro Cerutti g...@freebsd.org:
 On 2013-Sep-13, 15:17, Baptiste Daroussin wrote:

  USES= compiler:c++11

  Means you need a c++1 capable compiler but not necessary a c++ 11 aware 
 standard
  library, in that case if the base compiler is not able to support c++11 
 clang33
  will be used from ports otherwise gcc 4.6+ if you specify it in make.conf.

  USES= compiler=stdc++11

  You need a c++11 aware stdlibrary, if the base compiler doesn't have it 
 then gcc
  4.6+ will be used.

 Very nice! I suggest to change these last two names in

 c++11-lang
 c++11-lib

 since 'stdc++11' sounds too much like libstdc++ for me (implying GNU's
 implementation).

Or like standard C++11 vs non-standard C++11.

-- 
Regards,
Konstantin
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org