[MacPorts] #55932: qt4-mac: does no build with clang 5

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

[MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
#55932: qt4-mac: does no build with clang 5
----------------------+---------------------
 Reporter:  devernay  |      Owner:
     Type:  defect    |     Status:  new
 Priority:  Normal    |  Milestone:
Component:  ports     |    Version:
 Keywords:  haspatch  |       Port:  qt4-mac
----------------------+---------------------
 Thanks Michael for updating the qt4-mac port.

 There is stil an error when building with clang-5:

 {{{
 text/qfontengine_coretext.mm:889:20: error: qualified reference to
 'QFixed' is a constructor name rather than a type in this
       context
     return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
                    ^
 }}}

 patch:
 https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/qt-4.x/4.8/clang-5-darwin.patch

 BTW, there may be other interesting patches in that repo, such as:
 https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/qt-4.x/4.8
 /qsettings-recursive-global-mutex.patch

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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+----------------------
  Reporter:  devernay  |      Owner:
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  haspatch
      Port:  qt4-mac   |
-----------------------+----------------------

Comment (by devernay):

 note that the same patch is already there for qt5:
 https://github.com/macports/macports-ports/blob/master/aqua/qt5/files
 /patch-qualified_reference.diff

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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------
Changes (by mf2k):

 * owner:   => michaelld
 * keywords:  haspatch =>
 * status:  new => assigned
 * cc: michaelld (removed)


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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 You're welcome! Thanks for pushing this info on patches to me. I'll take a
 look & see what I can get in place. I thought I used MacPorts Clang 5 to
 build the updated qt4-mac & it was clean; maybe I'm mistaken. I build so
 many ports with so many compilers, to test / verify clean builds ... it's
 hard to keep track of which is used for which!

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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------
Changes (by michaelld):

 * cc: kencu (added)


Comment:

 @kencu: do you encounter this issue building with Clang 5? I'm pretty sure
 I didn't; no idea why or why not.

 I'm parsing through the NixOS Qt4 patches to see what's what.

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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by kencu):

 I may not have tried clang-5 on this. My 10.6.8 box usually uses clang-3.9
 as it seems the right combo of capable yet forgiving of older code...

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

Re: [MacPorts] #55932: qt4-mac: does no build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does no build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 OK after checking my qt4-mac build was using the Xcode provided Clang,
 whatever version that was. I'll try using clang 5 & see how it goes.

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5 (was: qt4-mac: does no build with clang 5)

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 OK I see this error too. I'll get at least that patch in place, after I've
 tested it on newer macOS to verify that it works there too.

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 So the patches that seem the most relevant from the NiXos list to me are:
 clang-5-darwin.patch, qsettings-recursive-global-mutex.patch, parallel-
 configure.patch, libressl.patch, and qt-4.8.7-unixmake-darwin.patch. I'll
 look at getting those integrated.

 The dlopen-* patches aren't clear to me that they are applicable or
 useful. Maybe the OP knows what they are for (beyond somehow setting the
 absolute path to various files; what is the rationale for doing this)?

 patch-qthread-stacksize.diff is already integrated; qt-musl-iconv-no-
 bom.patch and qt-musl.patch are Linux only; the other files are for NiXos.

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------
Changes (by michaelld):

 * Attachment "qt4-mac.tar.bz2" added.


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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 I'm testing the updated qt4-mac directory I just attached here on 10.8,
 10.12, and 10.13 right now. Patches are clean (enough), and builds are
 looking good. I added in the patch to set the number of jobs for building
 qmake (which is during configuration), so that will help speed things up a
 little for that stage. Please test / verify on your Mac OS X systems.

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 So all builds are clean using default compilers. I'm now testing using
 MacPorts' Clang 5.0 (on 10.8 and 10.12).

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 On 10.12 using Clang 5, the build errors out strangely (see below). I
 don't feel like messing with the TBD cruft & since the default works
 nicely there's really no need to.
 {{{
 shared/qaudioinput_mac_p.o .obj/release-shared/qaudio_mac.o .obj/release-
 shared/qabstractvideobuffer.o .obj/release-shared/qabstractvideosurface.o
 .obj/release-shared/qimagevideobuffer.o .obj/release-
 shared/qmemoryvideobuffer.o .obj/release-shared/qvideoframe.o .obj
 /release-shared/qvideosurfaceformat.o .obj/release-
 shared/moc_qaudioinput.o .obj/release-shared/moc_qaudiooutput.o .obj
 /release-shared/moc_qaudioengineplugin.o .obj/release-
 shared/moc_qaudioengine.o .obj/release-shared/moc_qaudioinput_mac_p.o .obj
 /release-shared/moc_qaudiooutput_mac_p.o .obj/release-
 shared/moc_qabstractvideosurface.o
 -F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/Library/Frameworks
 -F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/lib  -framework ApplicationServices
 -framework CoreAudio -framework AudioUnit -framework AudioToolbox
 -F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/Library/Frameworks
 -F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/lib
 -L/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/lib -framework QtGui
 -F/opt/local/Library/Frameworks -framework QtCore
 :info:build ld: warning: directory not found for option
 '-F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/Library/Frameworks'
 :info:build ld: warning: directory not found for option
 '-F/opt/local/var/macports/build/_opt_sources_MacPorts_ports_github_macports_aqua_qt4-mac/qt4-mac/work
 /qt-everywhere-opensource-src-4.8.7/Library/Frameworks'
 :info:build ld: unexpected token: !tapi-tbd-v2 file
 '/System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd' for
 architecture x86_64
 :info:build clang: error: linker command failed with exit code 1 (use -v
 to see invocation)
 :info:build make[1]: *** [../../lib/QtMultimedia.framework/QtMultimedia]
 Error 1
 }}}

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------

Comment (by michaelld):

 On 10.12 using Clang 6, there are all sorts of fun errors. I might
 investigate a little further if/as I have time since some look like
 authentic type-casting issues.

 The build worked for ma on 10.8 using Clang 5.

 I'll give folks through the weekend to test, then commit on Monday.

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

Re: [MacPorts] #55932: qt4-mac: does not build with clang 5

MacPorts
In reply to this post by MacPorts
#55932: qt4-mac: does not build with clang 5
-----------------------+-----------------------
  Reporter:  devernay  |      Owner:  michaelld
      Type:  defect    |     Status:  closed
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:  fixed     |   Keywords:
      Port:  qt4-mac   |
-----------------------+-----------------------
Changes (by michaelld):

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


Comment:

 In [changeset:"e60744bf4b2421b8065e51631bab67f852a01e47/macports-ports"
 e60744bf4b2421b8065e51631bab67f852a01e47/macports-ports]:
 {{{
 #!ConfigurableCommitTicketReference repository="macports-ports"
 revision="e60744bf4b2421b8065e51631bab67f852a01e47"
 qt4-mac: Fix building using MacPorts Clang 5.0 compiler

 Also add other patches from NiXos archive.

 Closes: https://trac.macports.org/ticket/55932
 }}}

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