[MacPorts] #52910: glbinding 2.1.1 submission

MacPorts noreply at macports.org
Wed Dec 21 19:58:52 CET 2016


#52910: glbinding 2.1.1 submission
------------------------------------+--------------------------------
  Reporter:  ken-cunningham-webuse  |      Owner:  macports-tickets@…
      Type:  submission             |     Status:  new
  Priority:  Normal                 |  Milestone:
 Component:  ports                  |    Version:
Resolution:                         |   Keywords:
      Port:  glbinding              |
------------------------------------+--------------------------------

Comment (by michaelld):

 There's a little more work to be done. I think all of this should be
 pushed back upstream, if nothing else than for their information. I'm
 going to attach a tarball of the current whole proposed directory
 structure, with my updates listed below in place. So ... IMHO, you need to
 address (2) and (5) for full port functionality.

 1) I'm not sure what SYSTEM_DIR_INSTALL is supposed to do internally, but
 checking for just /usr and /usr/local is pretty limiting. There has got to
 be a better way to do whatever they think they are doing with this
 variable that is more generic. Your patch is good enough for MacPorts'
 needs.

 2) This project stealth-links against other ports under specific variants.
 For example, if Qt5 is install then +examples will use the qt5 (>= 5.1)
 install without requiring is as a dependency. I don't think you want
 qt5-qtbase as a required dependency for this variant; I think it's best
 off as a separate variant (e.g., "qt_examples"). But, there needs to be an
 OPTION to select this on or off that's honored. Stealth-linking isn't a
 good idea. I don't know what other stealth-linking is going on; haven't
 had time to check.
 {{{
 $ port installed "glbi*"
 glbinding-devel @20161219_0+docs+examples (active)
 $ port contents glbinding-devel | grep -i qt
   /opt/local/share/glbinding/cubescape-qt.app/Contents/Info.plist
   /opt/local/share/glbinding/cubescape-qt.app/Contents/MacOS/cubescape-qt
 $ otool -L $(port contents glbinding-devel | grep MacOS) | grep -i qt
   /opt/local/share/glbinding/cubescape-qt.app/Contents/MacOS/cubescape-qt:
   /opt/local/libexec/qt5/lib/QtWidgets.framework/Versions/5/QtWidgets
 (compatibility version 5.6.0, current version 5.6.2)
   /opt/local/libexec/qt5/lib/QtGui.framework/Versions/5/QtGui
 (compatibility version 5.6.0, current version 5.6.2)
   /opt/local/libexec/qt5/lib/QtCore.framework/Versions/5/QtCore
 (compatibility version 5.6.0, current version 5.6.2)
 $ port rdeps glbinding-devel +docs +examples | grep -i qt
 $
 }}}

 3) When building documentation with doxygen, also include
 path:bin/dot:graphviz for dot (graph) files; I added this in already.

 4) For many actively-developed ports, having a release and devel version
 makes sense. I do this for many of mine & other MPdevs also do. I added in
 the code to the Portfile to do this properly.

 5) cmake files are usually placed into ${prefix}/share/cmake . No so for
 this port by default:
 {{{
 $ port contents glbinding-devel | grep cmake
   /opt/local/share/glbinding/cmake/glbinding/glbinding-export-
 release.cmake
   /opt/local/share/glbinding/cmake/glbinding/glbinding-export.cmake
   /opt/local/share/glbinding/glbinding-config.cmake
 }}}
 I haven't looked into how to change this install directory, but these devs
 seem to make such changes pretty simple. I'd much prefer to see the cmake
 files in their correct directory rather than a project-specific one; just
 easier to find. Ideally this would be set via configure.args as a way to
 override the default provided. See, e.g., gr-ais and the variable
 CMAKE_MODULES_DIR in the patch and top-level CMakeLists.txt for one way to
 do this.

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


More information about the macports-tickets mailing list