[MacPorts] #56274: terra @ 0.7 Fix broken compilation

classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|

[MacPorts] #56274: terra @ 0.7 Fix broken compilation

MacPorts
#56274: terra @ 0.7 Fix broken compilation
---------------------------------+--------------------
 Reporter:  lockhart             |      Owner:  (none)
     Type:  defect               |     Status:  new
 Priority:  Normal               |  Milestone:
Component:  ports                |    Version:
 Keywords:  haspatch maintainer  |       Port:  terra
---------------------------------+--------------------
 terra is very old code and clang++ has finally given up on some of the
 original constructs and class names.
 This patch for the Portfile fixes use of "array" as a class name and
 "typeof" (a gcc extension) by substituting "Array" and "decltype" instead.

--
Ticket URL: <https://trac.macports.org/ticket/56274>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @ 0.7 Fix broken compilation

MacPorts
#56274: terra @ 0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  (none)
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------
Changes (by lockhart):

 * Attachment "Portfile.diff" added.

 Add reinplace substitutions for "array" becoming "Array" and "typeof"
 becoming "decltype". Code now compiles.

--
Ticket URL: <https://trac.macports.org/ticket/56274>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @ 0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @ 0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  (none)
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------
Changes (by lockhart):

 * Attachment "Portfile.diff" added.

 Fix compilation problems with newer language standards.

--
Ticket URL: <https://trac.macports.org/ticket/56274>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation (was: terra @ 0.7 Fix broken compilation)

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  accepted
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------
Changes (by ryandesign):

 * status:  new => accepted
 * owner:  (none) => ryandesign


Comment:

 Thanks, I expect this will fix what I reported in #56238.

 Since this only fixes a build problem, not a runtime problem, I don't
 expect a revision increase to be necessary.

 There is already a patchfile in this portfile to fix compiler issues. I'm
 inclined to include these new changes in that patchfile, rather than use
 `reinplace`.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  accepted
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by ryandesign):

 Your `reinplace` also changed `array2` to `Array2`; I'm not including that
 in the patch, since while `array` apparently has new meaning under recent
 C++, `array2` doesn't.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  accepted
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------
Changes (by ryandesign):

 * cc: kencu (added)


Comment:

 Oh. Ken already committed your changes in
 [c9a1e98f66671e9813c9b6f69c8287fae558c8b5/macports-ports].

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------
Changes (by ryandesign):

 * status:  accepted => closed
 * resolution:   => fixed


Comment:

 In [changeset:"3ef0c6ef1a9446347bfc8a7812ab875c0dfec7ba/macports-ports"
 3ef0c6ef1a9446347bfc8a7812ab875c0dfec7ba/macports-ports]:
 {{{
 #!ConfigurableCommitTicketReference repository="macports-ports"
 revision="3ef0c6ef1a9446347bfc8a7812ab875c0dfec7ba"
 terra: Move reinplaces to patchfile

 And refresh and clean up patches, fix license so that port becomes
 distributable, and add size to checksums.

 Closes: https://trac.macports.org/ticket/56238
 Closes: https://trac.macports.org/ticket/56274
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by lockhart):

 OK. The source code was last changed in 1996 so I'm just happy the stuff
 can compile. Thanks for applying patches!

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 Ah, sorry. And somehow I line-wrapped the "4" so it didnt' automatically
 close the ticket, to make it worse.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 The new patches break builds on systems 10.8 or less.

 It can be fixed by including the cxx11 1.1 PortGroup, and adding
 `-std=c++11` to the build line. The easiest way I found to do that was to
 add it to the compiler spec as this port doesn't use configure. But I know
 this is cheating:
 {{{
 reinplace -E "s,@CXX@,${configure.cxx} -std=c++11,g"
 ${worksrcpath}/Makefile
 }}}

 Or we could use the old patch on older systems.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by ryandesign):

 I see you committed a fix in [a23f4698d61e570c089e223c7889b13ada989933
 /macports-ports].

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:8>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 Sorry to jam it in the optflags. Just easiest in the end I thought. It
 doesn't work on i386 for some reason (stdlib not set right?), but the
 others work. Still waiting on PPC, FWIW.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:9>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by ryandesign):

 Replying to [comment:9 kencu]:
 > Sorry to jam it in the optflags. Just easiest in the end I thought.

 It's certainly not an optimization flag...

 > It doesn't work on i386 for some reason (stdlib not set right?), but the
 others work.

 The `-stdlib` isn't set correctly anywhere, so I don't know why it works
 on other systems. There's no code in the portfile to set it. The port
 doesn't use the configure phase, which means the port is responsible for
 setting it manually.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:10>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 Let me see what happens on PPC, and when I get some time I'll fix up the
 last few systems if you like.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:11>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by ryandesign):

 Replying to [comment:11 kencu]:
 > I'll fix up the last few systems if you like.

 where by "the last few systems" you mean all systems running 10.8 or
 earlier. The right stdlib is not being used. The binaries that got
 produced for 10.6, for example, are linked with
 /usr/lib/libstdc++.6.dylib, but the use of the cxx11 1.1 portgroup means
 that we wanted it to use the MacPorts copy of libstdc++, not the system's.

 On the other hand, the fact that the build succeeded with the system's
 libstdc++ suggests the use of the cxx11 1.1 portgroup wasn't necessary,
 and that this code doesn't actually require a C++11-capable C++ library.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 You want me to leave it for you?

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:13>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by ryandesign):

 I have no plans to deal with this port at the moment.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:14>
MacPorts <https://www.macports.org/>
Ports system for macOS
Reply | Threaded
Open this post in threaded view
|

Re: [MacPorts] #56274: terra @0.7 Fix broken compilation

MacPorts
In reply to this post by MacPorts
#56274: terra @0.7 Fix broken compilation
-----------------------+---------------------------------
  Reporter:  lockhart  |      Owner:  ryandesign
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:  haspatch maintainer
      Port:  terra     |
-----------------------+---------------------------------

Comment (by kencu):

 let's see how this <https://github.com/macports/macports-
 ports/commit/e1d45cfc35edb169ddd0152ed97fee2f126be015> works out.

--
Ticket URL: <https://trac.macports.org/ticket/56274#comment:15>
MacPorts <https://www.macports.org/>
Ports system for macOS