[MacPorts] #38919: Add port for h3dutil
#38919: Add port for h3dutil -------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Keywords: | Port: -------------------------------+-------------------------------- Adding Portfile for h3dutil, part of the H3D framwork (www.h3dapi.org) -- Ticket URL: <https://trac.macports.org/ticket/38919> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Changes (by ryandesign@…): * cc: ryandesign@… (added) * port: => h3dutil Comment: "support" is not a valid maintainer name. Do we know what version(s) of the GPL this is under? -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:1 ryandesign@…]:
"support" is not a valid maintainer name.
Do we know what version(s) of the GPL this is under?
It is GPLv2. Why is support not a valid name? The reason for using it is that it is a company that maintains the port and that address will go to several developers at the company. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by ryandesign@…): Replying to [comment:2 daniel.evestedt@…]:
It is GPLv2.
Ok, then we should set the license field to "GPL-2". Unless the license is GPLv2 or later, in which case it should be "GPL-2+". And that does appear to be the case, based on what I see in src/H3DUtil.cpp: {{{ // H3DUtil is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. }}}
Why is support not a valid name? The reason for using it is that it is a company that maintains the port and that address will go to several developers at the company.
You've listed two maintainers, "support" and "sensegraphics.com:support". Without a domain, just listing "support" means "support at macports dot org" which isn't a valid email address. :) The other one, which expands to "support at sensegraphics dot com", is fine, assuming that's a valid email address. Note that when bug reports are submitted for this port, someone will assign the ticket to "support at sensegraphics dot com", which will cause emails to be sent to that address by our issue tracker. Is there a way the livecheck could be fixed? It currently fails: {{{ $ port livecheck Error: cannot check if h3dutil was updated (The requested URL returned error: 406) }}} -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:3 ryandesign@…]:
Replying to [comment:2 daniel.evestedt@…]:
It is GPLv2.
Ok, then we should set the license field to "GPL-2". Unless the license is GPLv2 or later, in which case it should be "GPL-2+". And that does appear to be the case, based on what I see in src/H3DUtil.cpp:
{{{ // H3DUtil is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. }}}
Ok, fixed.
Why is support not a valid name? The reason for using it is that it is
a company that maintains the port and that address will go to several developers at the company.
You've listed two maintainers, "support" and
"sensegraphics.com:support". Without a domain, just listing "support" means "support at macports dot org" which isn't a valid email address. :) The other one, which expands to "support at sensegraphics dot com", is fine, assuming that's a valid email address. Note that when bug reports are submitted for this port, someone will assign the ticket to "support at sensegraphics dot com", which will cause emails to be sent to that address by our issue tracker.
Ok, sorry, did not realize that. Fixed.
Is there a way the livecheck could be fixed? It currently fails: {{{ $ port livecheck Error: cannot check if h3dutil was updated (The requested URL returned error: 406) }}
Updated to work with livecheck. Please let me know if there is anything else that needs fixing. When this one is approved I will go on and update the other submissions that I did which have the same issues. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by khindenburg@…): I can't get 1.2.0 or 1.3.0 to build - does it work for you on Mavericks? {{{ :info:build Undefined symbols for architecture x86_64: :info:build "__libiconv_version", referenced from: :info:build OFCharacterEncoding::getLibraryVersionString() in libofstd.a(ofchrenc.o) :info:build "_libiconv", referenced from: :info:build OFCharacterEncoding::convertString(void*, char const*, unsigned long, OFString&, bool) in libofstd.a(ofchrenc.o) :info:build "_libiconv_close", referenced from: :info:build OFCharacterEncoding::closeDescriptor(void*&) in libofstd.a(ofchrenc.o) :info:build "_libiconv_open", referenced from: :info:build OFCharacterEncoding::openDescriptor(void*&, OFString const&, OFString const&) in libofstd.a(ofchrenc.o) :info:build "_libiconvctl", referenced from: :info:build OFCharacterEncoding::convertString(void*, char const*, unsigned long, OFString&, bool) in libofstd.a(ofchrenc.o) :info:build "_locale_charset", referenced from: :info:build OFCharacterEncoding::updateLocaleEncoding() in libofstd.a(ofchrenc.o) :info:build ld: symbol(s) not found for architecture x86_64 :info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)}+ }}} -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by ryandesign@…): I get the same error. libofstd.a is part of dcmtk, and it seems to use libiconv functions, but h3dutil's build process has not requested to link with libiconv, hence the symbols are missing. dcmtk doesn't seem to provide a pkg-config file or -config script, so I'm not sure how h3dutil decides what libraries to link with. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:7> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:7 ryandesign@…]:
I get the same error. libofstd.a is part of dcmtk, and it seems to use libiconv functions, but h3dutil's build process has not requested to link with libiconv, hence the symbols are missing. dcmtk doesn't seem to provide a pkg-config file or -config script, so I'm not sure how h3dutil decides what libraries to link with.
I am running Mountain Lion on the system here and cannot seem to be able to reproduce this problem. Is this for Mavericks only? I seem to recall I had a similar issue a few years back with Snow Leopard that I could solve by installing dcmtk from source instead of the pre-compiled binary. Could you please try this and see if it makes a difference for you? -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by ryandesign@…): I am on Yosemite beta, and I am building from source. I can try on earlier OS versions later. dcmtk takes some time to build. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:9 ryandesign@…]:
I am on Yosemite beta, and I am building from source. I can try on earlier OS versions later. dcmtk takes some time to build.
I can try on a Mavericks system during the weekend and see if I get the same problem. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by ryandesign@…): Confirmed issue also exists on Mavericks, and issue does not exist on Mountain Lion. However, on Mountain Lion, I saw a different error: The following file was recorded as part of the port's contents: {{{ /Volumes/Data/macports/mountainlion/var/macports/build/_Volumes_Data_macports_dports_graphics_h3dutil/h3dutil/work/h3dutil-1.3.0/include/H3DUtil/H3DUtil.h }}} (where /Volumes/Data/macports/mountainlion is my MacPorts prefix and /Volumes/Data/macports/dports is my ports tree). It's the same file that also got installed to the proper location: {{{ /Volumes/Data/macports/mountainlion/include/H3DUtil/H3DUtil.h }}} I'm not sure how this problem occurred or how best to correct it. Unfortunately this project uses cmake, which is very difficult for me to understand. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:11> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:11 ryandesign@…]:
Confirmed issue also exists on Mavericks, and issue does not exist on Mountain Lion.
However, on Mountain Lion, I saw a different error: The following file was recorded as part of the port's contents:
{{{
/Volumes/Data/macports/mountainlion/var/macports/build/_Volumes_Data_macports_dports_graphics_h3dutil/h3dutil/work/h3dutil-1.3.0/include/H3DUtil/H3DUtil.h
}}}
(where /Volumes/Data/macports/mountainlion is my MacPorts prefix and /Volumes/Data/macports/dports is my ports tree).
It's the same file that also got installed to the proper location:
{{{ /Volumes/Data/macports/mountainlion/include/H3DUtil/H3DUtil.h }}}
I'm not sure how this problem occurred or how best to correct it. Unfortunately this project uses cmake, which is very difficult for me to understand.
H3DUtil.h is automatically generated by CMake when H3DUtil is built. I think the location was changed between 1.2.0 and 1.3.0 and it is then put into place on install. How are you using 1.3.0 though? 1.2.0 seems to be the one in the current MacPorts version for me at least. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:12> MacPorts <http://www.macports.org/> Ports system for OS X
#38919: Add port for h3dutil --------------------------------+-------------------------------- Reporter: daniel.evestedt@… | Owner: macports-tickets@… Type: submission | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: h3dutil | --------------------------------+-------------------------------- Comment (by daniel.evestedt@…): Replying to [comment:12 daniel.evestedt@…]:
Replying to [comment:11 ryandesign@…]:
Confirmed issue also exists on Mavericks, and issue does not exist on Mountain Lion.
However, on Mountain Lion, I saw a different error: The following file was recorded as part of the port's contents:
{{{
/Volumes/Data/macports/mountainlion/var/macports/build/_Volumes_Data_macports_dports_graphics_h3dutil/h3dutil/work/h3dutil-1.3.0/include/H3DUtil/H3DUtil.h
}}}
(where /Volumes/Data/macports/mountainlion is my MacPorts prefix and /Volumes/Data/macports/dports is my ports tree).
It's the same file that also got installed to the proper location:
{{{ /Volumes/Data/macports/mountainlion/include/H3DUtil/H3DUtil.h }}}
I'm not sure how this problem occurred or how best to correct it. Unfortunately this project uses cmake, which is very difficult for me to understand.
H3DUtil.h is automatically generated by CMake when H3DUtil is built. I think the location was changed between 1.2.0 and 1.3.0 and it is then put into place on install. How are you using 1.3.0 though? 1.2.0 seems to be the one in the current MacPorts version for me at least.
I tried in Mavericks and get the same issue. I tried to track it down and found out a few things. The dcmtk that is used for Mavericks is a snapshot version of the dcmtk code and not an official release. It seems to not be in a fully stable state yet. There are two ways to build dcmtk, CMake or configure. If using CMake dcmtk build will fail with the same errors as H3DUtil when linking applications or shared libraries. configure seems to work though. I would recommend to have the default build of dcmtk to be without libiconv and add support for it as a variant. Otherwise all libraries that previously used MacPorts dcmtk will fail on Mavericks. The best solution would be to provide shared libraries as well which would avoid this linking problem. However since the CMake build for shared libraries fails and configure does not seem to have this option there is no simple way to do that. -- Ticket URL: <https://trac.macports.org/ticket/38919#comment:13> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts