appleseed is modern, open source, physically-based rendering engine designed
to produce photorealistic images, animations, and visual effects.
It provides individuals and small studios with an efficient, reliable suite
of tools built on robust foundations and open technologies.
Started in 2009, it has grown into a robust production rendering toolset and
has been battle-tested on several projects such as TV documentaries, ads,
promotional videos, and animation shorts.
WWW: https://appleseedhq.net/

===> The following configuration options are available for appleseed-1.7.1.b_8:
CPP11=off: Build in C++11 mode
EXAMPLES=on: Build and/or install examples
===> Use 'make config' to modify these settings

Remove expired ports:
2019-05-08 databases/ruby-odbc: Broken for more than 6 months
2019-05-08 databases/rubygem-dbd-odbc: Broken for more than 6 months
2019-05-08 devel/dlangui: Broken for more than 6 months
2019-05-08 editors/dlangide: Broken for more than 6 months
2019-05-08 emulators/desmume: Broken for more than 6 months
2019-05-08 emulators/yabause: Broken for more than 6 months
2019-05-08 emulators/yape: Broken for more than 6 months
2019-05-08 games/armagetron: Broken for more than 6 months
2019-05-08 games/boswars: Broken for more than 6 months
2019-05-08 games/ceferino: Broken for more than 6 months
2019-05-08 games/chanta: Broken for more than 6 months
2019-05-08 games/d2x-xl: Broken for more than 6 months
2019-05-08 games/drcreep: Broken for more than 6 months
2019-05-08 games/frobtads: Broken for more than 6 months

Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine

Update ilmbase and openexr to 2.3.0, rename OpenEXR to openexr.
Release notes: <https://github.com/openexr/openexr/releases/tag/v2.3.0>
Adjust LIB_DEPENDS of all ports that require ilmbase or openexr to chase
the new lower-case spelling of the name, and to omit the version from the
library name to ease future maintenance.
Bump PORTREVISION of all ports that depend on ilmbase or openexr directly,
so that they all get rebuilt on upgrades.
Add patches to graphics/ampasCTL to keep it alive, with (a) ilmbase now
that its Iex::BaseExc class is no longer derived from std::string,
details were given upstream through https://github.com/ampas/CTL/issues/71
and (b) to unwind semicolon/;-lists in cmake that stem from openexr/
ilmbase pkg-config variables.
(Note ampasCTL is unmaintained as FreeBSD port, and upstream,
and I cannot run-time test it.)
Poudriere build tests on 11.2-RELEASE-p1 amd64 of ALL ports depending
directly or indirectly on ilmbase and/or openexr have passed without
regressions. Thus invoking due diligence, I believe I have done the
equivalent of an -exp run, and do not require approval for the dependency
chases to third-party ports.

- Update to `graphics/appleseed' to version 1.7.1-beta
- OSL support is no longer optional. It complicated the code and the
build system, and developers' intention is to make OSL a first-class
citizen in appleseed; keeping OSL optional did not allow moving in
that direction
- Add a work-around for Core Working Group (CWG) Defect 253: prior to
GCC 4.6.4 and Clang 3.9.0, C++ required a user-provided default ctor
to default-construct a const object [*], and we still have supported
FreeBSD versions where Clang behaves the old way
[*] https://stackoverflow.com/questions/7411515
Because GitHub releases (tarballs) are not fetched with correct modification
time, set TIMESTAMP to 1501170801 which corresponds to commit ae7f346 tagged
as this release.

Security update OpenEXR and ilmbase to 2.2.1.
While here, fix libIlmImfUtil_la_LDFLAGp so that when linking libIlmImfUtil,
the locally built libIlmImf gets precedence over the one in /usr/local,
to permit upgrades in a running system with the older version installed.
This changes the library's SONAME, so bump PORTREVISION of all dependees.
Unfortunately, this looks a bit too intrusive for an MFH to 2017Q4.
Security: CVE-2017-9110
Security: CVE-2017-9111
Security: CVE-2017-9112
Security: CVE-2017-9113
Security: CVE-2017-9114
Security: CVE-2017-9115
Security: CVE-2017-9116
Security: 803879e9-4195-11e7-9b08-080027ef73ec

- Belatedly update `graphics/appleseed' to version 1.6.0, the latest
version where OSL support is optional (further updates require RTTI
enabled in both LLVM and OSL, and thus currently not possible)
- Allow to build in C++11 mode and backport a patch to fix spinlock
initialization to match the way it is initialized internally by
Boost: copy and assignment operators are deleted, which this logic
was attempting to use (in fact, it's surprising that it was working
before because it was most likely not possible even with C++98,
unless this is a very recent change in Boost) [*]
- While here, adjust OSL_BROKEN message to give the specific reason
PR: 222392 [*]
Submitted by: Roger Leigh

- Update to version 1.3.0-beta, which integrates most of our patches for
native FreeBSD support
- Provide the real ONLY_FOR_ARCHS_REASON
- Rename DISNEY_MATERIAL to simply DISNEY (previous name was too long)

Now that required supporting ports were fixed (r398753) and added to the
tree (r398907), allow to build with the Open Shading Language and Disney
material support and enable these features by default. While here, drop
useless USE_GL knob (implied by USE_QT4=opengl).

Improve cpuid() implementation:
- Correctly denote register use: for CPUID, %eax and %ecx are input/output
and %ebx and %edx are output only
- Do not insist on using %esi and %edi, let the compiler choose a register
- Always preserve %ebx/%rbx because ABI defines them as callee-saved
- Use xchg[lq] instead of mov[lq] to restore %ebx/%rbx
- Use separate implementation for x86-64 to preserve %rbx because 32-bit
operations would set the upper 32 bits to zero
Submitted by: tijl

Fix mysterious linking problems with bundled LZ4 code: it was due to the
fact that I had `archivers/liblz4' installed locally, and its header was
picked up before the bundled one which has "static inline" definition of
LZ4_compressBound() function vs. normal definition in system-wide header.

- Use %edi register to save/restore contents of %ebx instead of pushing
it on stack to make the code work for both 32/64-bit x86
- Make the corresponding comment more accurate while I'm at it
Reported by: pkg-fallout