Bug 198330 - [PATCH] graphics/openimageio Missing dependency on OpenSSL
Summary: [PATCH] graphics/openimageio Missing dependency on OpenSSL
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Marcus von Appen
URL:
Keywords: patch, patch-ready
Depends on:
Blocks:
 
Reported: 2015-03-05 20:09 UTC by Bernard Spil
Modified: 2015-06-14 11:03 UTC (History)
1 user (show)

See Also:
koobs: maintainer-feedback+


Attachments
svn diff for graphics/openimageio (396 bytes, patch)
2015-03-05 20:09 UTC, Bernard Spil
koobs: maintainer-approval-
Details | Diff
Poudriere build log of graphics/openimageio (236.06 KB, text/plain)
2015-03-06 08:14 UTC, Bernard Spil
no flags Details
Poudriere build log of graphics/blender (144.46 KB, application/gzip)
2015-03-06 08:16 UTC, Bernard Spil
no flags Details
disable use of openssl (452 bytes, patch)
2015-03-06 21:14 UTC, Shane
FreeBSD: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Bernard Spil freebsd_committer freebsd_triage 2015-03-05 20:09:32 UTC
Created attachment 153861 [details]
svn diff for graphics/openimageio

During a build with LibreSSL we've discovered a bug with graphics/openimageio. The port does not define a dependency on OpenSSL.

Linking CXX executable ../../bin/blender
/usr/bin/c++ ...
<snip>
/usr/local/lib/libXxf86vm.so -lutil -lc -lm -Wl,-rpath,/usr/local/lib:  
/usr/bin/ld: warning: libssl.so.30, needed by /usr/local/lib/libOpenImageIO.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libcrypto.so.30, needed by /usr/local/lib/libOpenImageIO.so, not found (try using -rpath or -rpath-link)
/usr/local/lib/libOpenImageIO.so: undefined reference to `SHA1_Init'

Attached patch fixes this by adding OPENSSL_USE= yes
Comment 1 Bernard Spil freebsd_committer freebsd_triage 2015-03-06 08:14:10 UTC
Created attachment 153876 [details]
Poudriere build log of graphics/openimageio
Comment 2 Bernard Spil freebsd_committer freebsd_triage 2015-03-06 08:16:22 UTC
Created attachment 153877 [details]
Poudriere build log of graphics/blender

Added the blender log as well as this is where the missing OpenSSL dependency resulted in a linker error.

6MB log, so zipped
Comment 3 Shane 2015-03-06 21:14:39 UTC
Created attachment 153935 [details]
disable use of openssl

I had overlooked the openssl dependacy. openimageio uses the sha1 functions from openssl, if openssl isn't present it uses an internal version of sha1.

The response from the lead oiio developer is that in older versions openssl offered a performance gain of about 25%. Testing now that the code that uses sha1 has been multi-threaded to use available cores makes the speed difference minimal, with disk io now being the bottleneck. He now feels that disabling the use of openssl by default is a valid option for future releases.

I opt to go the same route and disable use of openssl. I think if oiio were to keep using openssl I would prefer to have it as an option rather than a permanent feature.
Comment 4 Bernard Spil freebsd_committer freebsd_triage 2015-03-06 22:01:37 UTC
Hi,

Let met test that tomorrow, I'll let you know.
No objections to not building with OpenSSL, just want to verify that the build with LibreSSL is successful with OpenSSL disabled.

Thanks! Bernard.
Comment 5 Bernard Spil freebsd_committer freebsd_triage 2015-03-07 21:08:02 UTC
Looks good!
The error appeared when linking Blender, hope this fixes that failure...

Thanks!
Comment 6 Marcus von Appen freebsd_committer freebsd_triage 2015-04-08 16:26:17 UTC
Is there anything left to do before getting it into the tree? And is attachement 153935 the only one to commit?
Comment 7 Kubilay Kocak freebsd_committer freebsd_triage 2015-04-09 05:45:05 UTC
Comment on attachment 153935 [details]
disable use of openssl

Maintainer, please set the maintainer-approval flag on attachment 153861 [details] and attachment 153935 [details] to + (approved) or - (not approved) according to what you would like committed. 

Alternatively, provide a new patch, set maintainer-approval to + on it, and obsolete others.

Bernard, in future please leave flags for maintainers to modify themselves, as it allows us to record explicit proof of approval and feedback
Comment 8 Shane 2015-04-09 08:49:29 UTC
Comment on attachment 153861 [details]
svn diff for graphics/openimageio

prefer to remove dependency
Comment 9 Shane 2015-04-09 08:51:55 UTC
Comment on attachment 153935 [details]
disable use of openssl

Disabling openssl dependency to match changes made upstream.
Comment 10 Kubilay Kocak freebsd_committer freebsd_triage 2015-04-09 09:42:36 UTC
Comment on attachment 153861 [details]
svn diff for graphics/openimageio

Just to note, another alternative is making OpenSSL support an OPTION'al dependency
Comment 11 Bernard Spil freebsd_committer freebsd_triage 2015-04-11 11:45:31 UTC
Hi Marcus,

The addition of USE_OPENSSL= yes is the only change.

Thanks, Bernard.
Comment 12 Marcus von Appen freebsd_committer freebsd_triage 2015-06-14 11:03:46 UTC
Superseded by bug 200818.