Re: CMAKE_CXX_STANDARD

Nick Porcino <[email protected]> Fri, 13 Jul 2018 23:30:58 +0000
Newsgroups gmane.comp.video.openexr.devel
Message-ID <CY4PR16MB1670E579BB7A039A4384ACE2A4580@CY4PR16MB1670.namprd16.prod.outlook.com>
--===============7679672602372213622==
Content-Language: en-US
Content-Type: multipart/alternative;
	boundary="_000_CY4PR16MB1670E579BB7A039A4384ACE2A4580CY4PR16MB1670namp_"

--_000_CY4PR16MB1670E579BB7A039A4384ACE2A4580CY4PR16MB1670namp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

To be honest, it's the Linux distros that also ship openexr that had me cri=
nging.

Debian wheezy (2.8)
Debian stretch (3.7.2) * stable
Debian buster (3.11.2)
Ubuntu trusty (2.8)
Ubuntu xenial (3.5.1) * stable
Ubuntu cosmic (3.11.2)
Suse tumbleweed (3.11.2) * stable

Any other distros to check?

I can't see any reason not to leap ahead to 3.11, because (1) versions less=
 than 3.11 are very broken on Windows with regards to the combination of re=
cent visual studios and boost and (2) a new OpenEXR on a Linux will ship wi=
th a distro containing at least 3.11.

Make sense?


________________________________
From: Larry Gritz <[email protected]>
Sent: Friday, July 13, 2018 4:11 PM
To: Nick Porcino
Cc: [email protected]
Subject: Re: [Openexr-devel] CMAKE_CXX_STANDARD

I don't see why we would have to preserve 2.x compatibility. USD seems to n=
eed CMake 3.1 on Windows. OpenVDB needs 3.1. OIIO and OSL both require 3.2.=
 Partio requires 3.8!  So lack of support for 2.x would be in good company =
with other widely used packages.

A few people have commented on the VFX Platform forum that it should includ=
e a minimum cmake release, so that package maintainers can count on some re=
asonable minimum.



On Jul 13, 2018, at 3:50 PM, Nick Porcino <[email protected]<mailto:meshu=
[email protected]>> wrote:

The develop branch of OpenEXR uses CMake 3 features. So that line is an err=
or.

I hadn't thought about it, but it's troubling* to think that we might have =
to preserve compatibility with CMake 2.x

* troubling =3D=3D sobbing in terror in the corner as the shambling revenan=
t shadow of CMake 2 groans and lurches forward belching broken features and=
 ad hoc syntax


________________________________
From: Openexr-devel <[email protected]=
<mailto:[email protected]>> on behalf =
of Larry Gritz <[email protected]<mailto:[email protected]>>
Sent: Friday, July 13, 2018 11:47 AM
To: [email protected]<mailto:[email protected]>
Subject: [Openexr-devel] CMAKE_CXX_STANDARD

Is anybody troubled by the fact that the OpenEXR CMakeLists.txt starts with

CMAKE_MINIMUM_REQUIRED(VERSION 2.8)

but then makes use of CMAKE_CXX_STANDARD, which was only introduced with CM=
ake 3.1?

So I think that if anybody actually uses CMake < 3.1, it will just silently=
 fail to provide the right -std=3Dc++XX flags.


--
Larry Gritz
[email protected]<mailto:[email protected]>





_______________________________________________
Openexr-devel mailing list
[email protected]<mailto:[email protected]>
https://lists.nongnu.org/mailman/listinfo/openexr-devel

--
Larry Gritz
[email protected]<mailto:[email protected]>





--_000_CY4PR16MB1670E579BB7A039A4384ACE2A4580CY4PR16MB1670namp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo=
ttom:0;} </style>
</head>
<body dir=3D"ltr">
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
To be honest, it's the Linux distros that also ship openexr that had me cri=
nging.</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Debian wheezy (2.8)</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Debian stretch (3.7.2) * stable</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Debian buster (3.11.2)</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Ubuntu trusty (2.8)</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Ubuntu xenial (3.5.1) * stable</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<span style=3D"color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-s=
erif; font-size: 12pt;">Ubuntu cosmic (3.11.2</span><span style=3D"color: r=
gb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;"=
>)</span><br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Suse tumbleweed (3.11.2) * stable</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Any other distros to check?</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
I can't see any reason not to leap ahead to 3.11, because (1) versions less=
 than 3.11 are very broken on Windows with regards to the combination of re=
cent visual studios and boost and (2) a new OpenEXR on a Linux will ship wi=
th a distro containing at least
 3.11.</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
Make sense?</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;=
 color: rgb(0, 0, 0);">
<br>
</div>
<hr style=3D"display:inline-block;width:98%" tabindex=3D"-1">
<div id=3D"divRplyFwdMsg" dir=3D"ltr"><font face=3D"Calibri, sans-serif" st=
yle=3D"font-size:11pt" color=3D"#000000"><b>From:</b> Larry Gritz &lt;lg@la=
rrygritz.com&gt;<br>
<b>Sent:</b> Friday, July 13, 2018 4:11 PM<br>
<b>To:</b> Nick Porcino<br>
<b>Cc:</b> [email protected]<br>
<b>Subject:</b> Re: [Openexr-devel] CMAKE_CXX_STANDARD</font>
<div>&nbsp;</div>
</div>
<meta content=3D"text/html; charset=3Dus-ascii">
<div class=3D"" style=3D"word-wrap:break-word; line-break:after-white-space=
">I don't see why we would have to preserve 2.x compatibility. USD seems to=
 need CMake 3.1 on Windows. OpenVDB needs 3.1.&nbsp;OIIO and OSL both requi=
re 3.2.&nbsp;Partio requires 3.8! &nbsp;So lack of
 support for 2.x would be in good company with other widely used packages.
<div class=3D""><br class=3D"">
</div>
<div class=3D"">A few people have commented on the VFX Platform forum that =
it should include a minimum cmake release, so that package maintainers can =
count on some reasonable minimum.&nbsp;</div>
<div class=3D""><br class=3D"">
</div>
<div class=3D""><br class=3D"">
<div><br class=3D"">
<blockquote type=3D"cite" class=3D"">
<div class=3D"">On Jul 13, 2018, at 3:50 PM, Nick Porcino &lt;<a href=3D"ma=
ilto:[email protected]" class=3D"">[email protected]</a>&gt; wrote:</di=
v>
<br class=3D"x_Apple-interchange-newline">
<div class=3D"">
<div class=3D"" style=3D"font-style:normal; font-weight:normal; letter-spac=
ing:normal; text-align:start; text-indent:0px; text-transform:none; white-s=
pace:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,He=
lvetica,sans-serif; font-size:12pt">
The develop branch of OpenEXR uses CMake 3 features. So that line is an err=
or.</div>
<div class=3D"" style=3D"font-style:normal; font-weight:normal; letter-spac=
ing:normal; text-align:start; text-indent:0px; text-transform:none; white-s=
pace:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,He=
lvetica,sans-serif; font-size:12pt">
<br class=3D"">
</div>
<div class=3D"" style=3D"font-style:normal; font-weight:normal; letter-spac=
ing:normal; text-align:start; text-indent:0px; text-transform:none; white-s=
pace:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,He=
lvetica,sans-serif; font-size:12pt">
I hadn't thought about it, but it's troubling* to think that we might have =
to preserve compatibility with CMake 2.x</div>
<div class=3D"" style=3D"font-style:normal; font-weight:normal; letter-spac=
ing:normal; text-align:start; text-indent:0px; text-transform:none; white-s=
pace:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,He=
lvetica,sans-serif; font-size:12pt">
<br class=3D"">
</div>
<div class=3D"" style=3D"font-family:Helvetica; font-size:14px; font-style:=
normal; font-weight:normal; letter-spacing:normal; text-align:start; text-i=
ndent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-=
decoration:none">
<font face=3D"Calibri, Helvetica, sans-serif" class=3D"">* troubling =3D=3D=
 sobbing in terror in the corner as the shambling revenant&nbsp;shadow of C=
Make 2 groans and lurches forward belching broken features and ad hoc synta=
x</font></div>
<div class=3D"" style=3D"font-family:Helvetica; font-size:14px; font-style:=
normal; font-weight:normal; letter-spacing:normal; text-align:start; text-i=
ndent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-=
decoration:none">
<font face=3D"Calibri, Helvetica, sans-serif" class=3D""><br class=3D"">
</font></div>
<div class=3D"" style=3D"font-family:Helvetica; font-size:14px; font-style:=
normal; font-weight:normal; letter-spacing:normal; text-align:start; text-i=
ndent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-=
decoration:none">
<font face=3D"Calibri, Helvetica, sans-serif" class=3D""><br class=3D"">
</font></div>
<hr tabindex=3D"-1" class=3D"" style=3D"font-family:Helvetica; font-size:14=
px; font-style:normal; font-weight:normal; letter-spacing:normal; text-alig=
n:start; text-indent:0px; text-transform:none; white-space:normal; word-spa=
cing:0px; text-decoration:none; display:inline-block; width:702.65625px">
<span class=3D"" style=3D"font-family:Helvetica; font-size:14px; font-style=
:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-=
indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text=
-decoration:none; float:none; display:inline!important"></span>
<div id=3D"x_divRplyFwdMsg" dir=3D"ltr" class=3D"" style=3D"font-family:Hel=
vetica; font-size:14px; font-style:normal; font-weight:normal; letter-spaci=
ng:normal; text-align:start; text-indent:0px; text-transform:none; white-sp=
ace:normal; word-spacing:0px; text-decoration:none">
<font face=3D"Calibri, sans-serif" class=3D"" style=3D"font-size:11pt"><b c=
lass=3D"">From:</b><span class=3D"x_Apple-converted-space">&nbsp;</span>Ope=
nexr-devel &lt;<a href=3D"mailto:openexr-devel-bounces&#43;meshula=3Dhotmai=
[email protected]" class=3D"">openexr-devel-bounces&#43;meshula=3Dhotmail.co=
[email protected]</a>&gt;
 on behalf of Larry Gritz &lt;<a href=3D"mailto:[email protected]" class=3D=
"">[email protected]</a>&gt;<br class=3D"">
<b class=3D"">Sent:</b><span class=3D"x_Apple-converted-space">&nbsp;</span=
>Friday, July 13, 2018 11:47 AM<br class=3D"">
<b class=3D"">To:</b><span class=3D"x_Apple-converted-space">&nbsp;</span><=
a href=3D"mailto:[email protected]" class=3D"">openexr-devel@nongnu.=
org</a><br class=3D"">
<b class=3D"">Subject:</b><span class=3D"x_Apple-converted-space">&nbsp;</s=
pan>[Openexr-devel] CMAKE_CXX_STANDARD</font>
<div class=3D"">&nbsp;</div>
</div>
<div class=3D"x_BodyFragment" style=3D"font-family:Helvetica; font-size:14p=
x; font-style:normal; font-weight:normal; letter-spacing:normal; text-align=
:start; text-indent:0px; text-transform:none; white-space:normal; word-spac=
ing:0px; text-decoration:none">
<font size=3D"2" class=3D""><span class=3D"" style=3D"font-size:11pt">
<div class=3D"x_PlainText">Is anybody troubled by the fact that the OpenEXR=
 CMakeLists.txt starts with<br class=3D"">
<br class=3D"">
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)<br class=3D"">
<br class=3D"">
but then makes use of CMAKE_CXX_STANDARD, which was only introduced with CM=
ake 3.1?<br class=3D"">
<br class=3D"">
So I think that if anybody actually uses CMake &lt; 3.1, it will just silen=
tly fail to provide the right -std=3Dc&#43;&#43;XX flags.<br class=3D"">
<br class=3D"">
<br class=3D"">
--<br class=3D"">
Larry Gritz<br class=3D"">
<a href=3D"mailto:[email protected]" class=3D"">[email protected]</a><br cl=
ass=3D"">
<br class=3D"">
<br class=3D"">
<br class=3D"">
<br class=3D"">
<br class=3D"">
_______________________________________________<br class=3D"">
Openexr-devel mailing list<br class=3D"">
<a href=3D"mailto:[email protected]" class=3D"">Openexr-devel@nongnu=
.org</a><br class=3D"">
<a href=3D"https://lists.nongnu.org/mailman/listinfo/openexr-devel" class=
=3D"">https://lists.nongnu.org/mailman/listinfo/openexr-devel</a></div>
</span></font></div>
</div>
</blockquote>
</div>
<br class=3D"">
<div class=3D"">
<div class=3D"" style=3D"word-wrap:break-word">
<div style=3D"color:rgb(0,0,0); font-family:Helvetica; font-size:14px; font=
-style:normal; font-weight:normal; letter-spacing:normal; text-align:start;=
 text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px=
">
--</div>
<div style=3D"color:rgb(0,0,0); font-family:Helvetica; font-size:14px; font=
-style:normal; font-weight:normal; letter-spacing:normal; text-align:start;=
 text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px=
">
Larry Gritz</div>
<div style=3D"color:rgb(0,0,0); font-family:Helvetica; font-size:14px; font=
-style:normal; font-weight:normal; letter-spacing:normal; text-align:start;=
 text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px=
">
<a href=3D"mailto:[email protected]" class=3D"">[email protected]</a></div>
<div class=3D"" style=3D"color:rgb(0,0,0); font-family:Helvetica; font-size=
:14px; font-style:normal; font-weight:normal; letter-spacing:normal; text-a=
lign:start; text-indent:0px; text-transform:none; white-space:normal; word-=
spacing:0px">
<br class=3D"">
</div>
<br class=3D"x_Apple-interchange-newline">
</div>
<br class=3D"x_Apple-interchange-newline">
</div>
<br class=3D"">
</div>
</div>
</body>
</html>

--_000_CY4PR16MB1670E579BB7A039A4384ACE2A4580CY4PR16MB1670namp_--


--===============7679672602372213622==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Openexr-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/openexr-devel

--===============7679672602372213622==--