[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