<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    I spent nearly the whole day on OSL and made some progress! :) <br>
    <br>
    1) Compile OSL lib<br>
    I managed to compile OSL libs (Trunk) on Ubuntu Linux x64 (12.04). <br>
    <br>
    Some notes to that:<br>
    -OSL needs flex and bison, which is not said in their INSTALL file.
    Installed them from the Ubuntu repository.<br>
    - I had to recompile Boost 1.49 and OIIO (Trunk) with cxxflag -fPIC,
    otherwise OSL won't build.<br>
    - I had to disable <span style="font-weight: bolder;background:
      #22ff00;">acum</span>_test, testshade and shaders in OSL (cmake)
    because I got linker errors with those. Those things are unit tests,
    test apps and example shaders.<br>
    Needs to be investigated, but not urgently needed for Blender, those
    things are optional.<br>
    <br>
    As a result I got OSL libs (bin, include, lib folder are needed).<br>
    <br>
    2) Cycles and OSL<br>
    I did some fixes and commited to SVN to get OSL building, but it's
    still a long road I am afraid. <br>
    <br>
    If you want to give it a try or even better want to help:<br>
    -Enable WITH_CYCLES_OSL in cmake.<br>
    -Set "CYCLES_OSL" path to point to the libs. (<br>
    <br>
    Fixes where I am unsure: I changed isfinite to std::isfinite in
    kernel_accumulate.h, otherwise it complains when compiling for OSL.
    Is that fix correct?<br>
    <br>
    3) Current status:<br>
    -First thing is to get the kernel to compile, there are a few errors
    in osl/nodes but they can be handled later.<br>
    -We have to remove the dependency of "oslexec_pvt.h" in
    osl_shaders.cpp, that should not be needed anymore, see OSL 0.6.0
    where it says:<br>
    "* ShadeExec API overhaul -- an app using it no longer needs
    ShadingSystemImpl internal knowledge."<br>
    <br>
    That's where I am at the moment, any feedback and help would be
    great.<br>
    <br>
    Best regards,<br>
    Thomas<br>
    <br>
    <br>
    Am 03.06.2012 23:31, schrieb Brecht Van Lommel:
    <blockquote
cite="mid:CAKFUgC2D3bhC8ao8FadnLju4bpaiBcJVBZmsYVG45J7OrwNdtQ@mail.gmail.com"
      type="cite">
      <pre wrap="">Hi Thomas,

Thanks for bringing things up to date somewhat, I haven't really
looked at in the past few months. I wouldn't expect major changes are
needed, but it's probably not compiling at the moment and some code
tweaks will be needed.

On Sun, Jun 3, 2012 at 6:42 PM, Thomas Dinges <a class="moz-txt-link-rfc2396E" href="mailto:blender@dingto.org">&lt;blender@dingto.org&gt;</a> wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">4) Proposal
I realize this is not an immediate and urgent task but I want to propose
the following integration process for OSL in Cycles:

a) Build a stable library of OSL (OSL 1.1 at this time) for Linux (then
Windows, Mac) which works with our other libraries.
b) Fix possible issues and get Cycles to compile with the OSL libs.
c) Port over remaining nodes/shaders to OSL and check existing OSL code.
d) Write support for custom OSL shaders, by adding a OSL node or
something similar.

It would be good to at least have "a" and "b" done, and keep it working
on "b" level. Any other work then can be done step by step and when
resources are available.

I would like to hear your opinion (especially yours Brecht) on that,
could that work?
I guess I can do some more work and fixes, but until now I was not able
to build the OSL libraries myself, so it's a bit guessing if the code
works or not.
</pre>
      </blockquote>
      <pre wrap="">
If others like to contribute to the OSL backend and get it compiling
working, that's fine with me. I only have limited time at the moment,
can give some pointers and advice, but further it's probably up to
others at the moment.

I'd say OSL itself is pretty much working as well as we would need it
to work. There might be some minor bumps that we run into when we
decide to use it for an actual release but overall I just don't really
have any requests to improve OSL itself. I've contributed patches to
get things building on Windows, and that's probably the main area
where more tweaks are needed in OSL itself, it's not quite working out
of the box there. It's similar with OIIO, things are quite well
production tested, just not really maintained for
Windows/BSD/Solaris/..

Brecht.
</pre>
    </blockquote>
    <pre class="moz-signature" cols="72">-- 
Thomas Dinges
Blender Developer, Artist and Musician

<a class="moz-txt-link-abbreviated" href="http://www.dingto.org">www.dingto.org</a></pre>
  </body>
</html>