Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

oslc --embed-source : embed preprocessed source at end of oso file #1081

Merged
merged 1 commit into from Dec 2, 2019

Conversation

@lgritz
Copy link
Member

lgritz commented Nov 28, 2019

This can be useful in debugging situations, since the oso file would
completely contain a readable (though preprocessed) and recompilable
version of the source.

In the oso file, this is signified by the hint %preprocessed_source,
and following that the remainder of the file is assumed to be source
code or comments and will be ignored by the oso parser.

This can be useful in debugging situations, since the oso file would
completly contain a readable (though preprocessed) and recompilable
version of the source.

In the oso file, this is signified by the hint `%preprocessed_source`,
and following that the remainder of the file is assumed to be source
code or comments and will be ignored by the oso parser.
@aghiles

This comment has been minimized.

Copy link

aghiles commented Nov 28, 2019

Very nice to see "--embed-source" back from the dead! :)

@fpsunflower

This comment has been minimized.

Copy link
Collaborator

fpsunflower commented Dec 2, 2019

LGTM!

I assume you are planning to add a shading system option that would optionally recompile the pre-processed source on .oso load?

@lgritz

This comment has been minimized.

Copy link
Member Author

lgritz commented Dec 2, 2019

Maybe in the future? I wasn't going to do it right away.

@fpsunflower

This comment has been minimized.

Copy link
Collaborator

fpsunflower commented Dec 2, 2019

Another idea that might have advantages from a debugging standpoint is to let oslc compile .oso files that have this metadata present.

Then you could directly diff the old and new and see what the new compiler did differently (if anything).

@lgritz lgritz merged commit 3aba693 into imageworks:master Dec 2, 2019
6 of 7 checks passed
6 of 7 checks passed
Linux VFX 2018-ish: gcc6, C++11, llvm7, OIIO 2.0, sse2, exr2.2
Details
Linux VFX 2019-ish: gcc6, C++14, llvm8, OIIO master, sse4, exr2.3
Details
Linux gcc8, C++14, llvm9, oiio master, avx2, exr2.4
Details
Linux bleeding edge: gcc8, C++17, llvm9, oiio master, avx2, exr2.4
Details
Mac py37
Details
continuous-integration/appveyor/pr AppVeyor build failed
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@lgritz lgritz deleted the lgritz:lg-source branch Dec 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.