Bug 207061 - graphics/openimageio: update to 1.5.23
Summary: graphics/openimageio: update to 1.5.23
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Dmitry Marakasov
URL:
Keywords:
Depends on: 207278
Blocks: 199601
  Show dependency treegraph
 
Reported: 2016-02-09 15:39 UTC by Dmitry Marakasov
Modified: 2016-03-04 19:06 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (FreeBSD)


Attachments
Patch (899 bytes, patch)
2016-02-09 15:39 UTC, Dmitry Marakasov
no flags Details | Diff
openimageio1.6.10 update (3.49 KB, patch)
2016-02-10 16:31 UTC, Shane
no flags Details | Diff
openshadinglanguage 1.6.9 update (1.23 KB, patch)
2016-02-16 08:38 UTC, Shane
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Marakasov freebsd_committer 2016-02-09 15:39:01 UTC
Created attachment 166803 [details]
Patch

- Update to 1.5.23 which also fixes build with recent boost
Comment 1 Martin Wilke freebsd_committer 2016-02-10 02:28:22 UTC
Submitter is committer.
Comment 2 Shane 2016-02-10 16:31:38 UTC
Created attachment 166836 [details]
openimageio1.6.10 update

I was about to submit this update to 1.6.10

I have just re-tested and it builds with the boost 1.60 update.
Comment 3 Dmitry Marakasov freebsd_committer 2016-02-13 13:58:10 UTC
The update breaks graphics/openshadinglanguage:

In file included from /wrkdirs/usr/ports/graphics/openshadinglanguage/work/OpenShadingLanguage-Release-1.6.6/src/liboslexec/shadingsys.cpp:38:
/wrkdirs/usr/ports/graphics/openshadinglanguage/work/OpenShadingLanguage-Release-1.6.6/src/liboslexec/oslexec_pvt.h:65:7: error: no member named 'thread_specific_ptr' in namespace 'OpenImageIO::v1_6'; did you mean 'boost::thread_specific_ptr'?
using OIIO::thread_specific_ptr;
      ^~~~~~~~~~~~~~~~~~~~~~~~~
      boost::thread_specific_ptr
/usr/local/include/boost/thread/tss.hpp:31:11: note: 'boost::thread_specific_ptr' declared here
    class thread_specific_ptr
          ^

and graphics/luxrender:

/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_InternFromString'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromFormat'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromString'
/usr/local/lib/libboost_python.so: undefined reference to `PyBytes_Size'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsUTF8'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromEncodedObject'
/usr/local/lib/libboost_python.so: undefined reference to `PyBytes_AsString'
/usr/local/lib/libboost_python.so: undefined reference to `PyModule_Create2'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsWideChar'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsUTF8String'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromStringAndSize'

However luxrender is only broken with boost 1.55, ok with boost 1.60.

Please fix openshadinglanguage, and try to fix luxrender - if there're problem with the latter, whole openimageio update may be synced with boost update.
Comment 4 Dmitry Marakasov freebsd_committer 2016-02-13 14:13:14 UTC
Also tests fail. Seem to require additional files and dependencies.
Comment 5 Shane 2016-02-16 08:38:45 UTC
Created attachment 167071 [details]
openshadinglanguage 1.6.9 update

The undefined references in luxrender belong to libpython. Adding LDFLAGS= -lpython2.7 to luxrender's Makefile fixes that.

Currently openshadinglanguage is used by graphics/blender and graphics/appleseed, both have OSL options with blender off and appleseed on as default. The next version of blender is due in the next few weeks and only compiles with OSL 1.7. As 1.7 breaks appleseed and 1.6 breaks blender I am planning to update OSL to 1.7.1 in sync with the next blender release. I have notified the appleseed maintainer to give them time to update the port before or in sync with the OSL update.

If the boost update goes in within the next few weeks then OSL could be updated to 1.6.9 to build with boost 1.60 without affecting blender or appleseed. Otherwise the OSL 1.7.1 update will go in before the boost update.
Comment 6 Dmitry Marakasov freebsd_committer 2016-02-16 19:03:21 UTC
(In reply to FreeBSD from comment #5)

> The undefined references in luxrender belong to libpython. Adding LDFLAGS=
> -lpython2.7 to luxrender's Makefile fixes that.

Um, no. It already links with /usr/local/lib/libpython2.7.so, neither this nor adding -lpython2.7 helps:

cd /wrkdirs/usr/ports/graphics/luxrender/work/luxrender-luxrays-8577ff287efb/samples/benchsimple && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/benchsimple.dir/link.txt --verbose=1
/usr/local/libexec/ccache/c++   -O2 -pipe -fstack-protector -fno-strict-aliasing -Wall -Wno-long-long -msse -fPIC -DNDEBUG   -lpython2.7 -fstack-protector CMakeFiles/benchsimple.dir/benchsimple.cpp.o  -o ../../bin/benchsimple  -L/usr/local/lib  ../../lib/libluxrays.a /usr/local/lib/libpython2.7.so -pthread ../../lib/libluxrays.a /usr/local/lib/libembree.so /usr/local/lib/libboost_thread.so /usr/local/lib/libboost_program_options.so /usr/local/lib/libboost_filesystem.so /usr/local/lib/libboost_serialization.so /usr/local/lib/libboost_iostreams.so /usr/local/lib/libboost_regex.so /usr/local/lib/libboost_system.so /usr/local/lib/libboost_python.so /usr/local/lib/libOpenImageIO.so -Wl,-rpath,/usr/local/lib
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_InternFromString'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromFormat'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromString'
/usr/local/lib/libboost_python.so: undefined reference to `PyBytes_Size'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsUTF8'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromEncodedObject'
/usr/local/lib/libboost_python.so: undefined reference to `PyBytes_AsString'
/usr/local/lib/libboost_python.so: undefined reference to `PyModule_Create2'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsWideChar'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_AsUTF8String'
/usr/local/lib/libboost_python.so: undefined reference to `PyUnicode_FromStringAndSize'
Comment 7 Shane 2016-02-17 08:05:58 UTC
Adding -lpython2.7 fixed the luxrender build on my system, I can't test within poudriere as I can't get embree to compile. The actual symbol names you list vary from what I get here, but have similar naming.

Either way the undefined references come from libboost_python and the symbols look to be python related. I don't see any reason the openimageio version will effects this.
Comment 8 commit-hook freebsd_committer 2016-03-04 19:06:31 UTC
A commit references this bug:

Author: amdmi3
Date: Fri Mar  4 19:06:04 UTC 2016
New revision: 410146
URL: https://svnweb.freebsd.org/changeset/ports/410146

Log:
  - Update to 1.6.10

  PR:		207061
  Submitted by:	FreeBSD@ShaneWare.Biz (maintainer)

Changes:
  head/graphics/openimageio/Makefile
  head/graphics/openimageio/distinfo
  head/graphics/openimageio/pkg-plist
Comment 9 commit-hook freebsd_committer 2016-03-04 19:06:32 UTC
A commit references this bug:

Author: amdmi3
Date: Fri Mar  4 19:06:09 UTC 2016
New revision: 410147
URL: https://svnweb.freebsd.org/changeset/ports/410147

Log:
  - Update to 1.6.9

  PR:		207061
  Submitted by:	FreeBSD@ShaneWare.Biz (maintainer)

Changes:
  head/graphics/openshadinglanguage/Makefile
  head/graphics/openshadinglanguage/distinfo