-
Notifications
You must be signed in to change notification settings - Fork 606
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
build: support static OCIO self-builds #4517
build: support static OCIO self-builds #4517
Conversation
Problem on Windows? |
Problems on Windows, a tale older than time itself. Just a little trouble with finding Expat's config. I haven't looked into this too carefully yet -- I'll have another go today. |
5cf8575
to
c854c87
Compare
So close. I'm not quite sure what's happening here, but there seems to be a problem with reliably finding pystring after it's built. As you can see, all the CI tests pass for c854c87; but...
There aren't really any significant differences between the commits, just alternating between finding and re-finding pystring. Pystring compiles really quickly. I'm wondering if there's some kind of race condition occurring, or if the "find_package" command is bumping into a cache somewhere that isn't being updated quickly enough... or... something? Maybe I'll try deferring the REQUIRED find_package to after the OCIO build... On the bright side, stuff seems to work ~95% of the time! |
Nice, putting some distance between building pystring and REQUIRED-finding it seems to more reliably pass all CI checks. |
* Add SOURCE_SUBDIR option to `build_dependency_with_cmake` that mimics the behavior of the FetchContent option of the same name * Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp * Tweak OpenColorIO build recipe to always build static libraries by default. Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Zach Lewis <[email protected]>
If we let the build system build OCIO, its build directory should persist for the duration of the parent OIIO build. Try to find the static dependencies that OCIO builds for itself in <OCIO-build-dir>/ext/dist; and if that fails, try to build and install those same static libraries ourselves. Signed-off-by: Zach Lewis <[email protected]>
that didn't seem to work too well. Signed-off-by: Zach Lewis <[email protected]>
_Occasionally_, libpystring can't be re-found once it's built, and it's not clear why. Attempting various tiny changes to see if I can figure out what's going wrong where .... Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Zach Lewis <[email protected]>
Really just an excuse to assess the reliability of the CI tests Signed-off-by: Zach Lewis <[email protected]>
Triggering another CI run to assess reliability. Signed-off-by: Zach Lewis <[email protected]>
Signed-off-by: Zach Lewis <[email protected]>
bdbd474
to
7ac8ea2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM and seems to pass all tests now!
* Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp * Add SOURCE_SUBDIR option to `build_dependency_with_cmake` that mimics the behavior of the FetchContent option of the same name * Tweak OpenColorIO build recipe to always build static libraries by default. --------- Signed-off-by: Zach Lewis <[email protected]>
* Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp * Add SOURCE_SUBDIR option to `build_dependency_with_cmake` that mimics the behavior of the FetchContent option of the same name * Tweak OpenColorIO build recipe to always build static libraries by default. --------- Signed-off-by: Zach Lewis <[email protected]>
* Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp * Add SOURCE_SUBDIR option to `build_dependency_with_cmake` that mimics the behavior of the FetchContent option of the same name * Tweak OpenColorIO build recipe to always build static libraries by default. --------- Signed-off-by: Zach Lewis <[email protected]>
* Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp * Add SOURCE_SUBDIR option to `build_dependency_with_cmake` that mimics the behavior of the FetchContent option of the same name * Tweak OpenColorIO build recipe to always build static libraries by default. --------- Signed-off-by: Zach Lewis <[email protected]>
Add build recipes for certain dependencies needed for linking static OpenColorIO libs: expat, minizip-ng, pystring, and yaml-cpp
Add SOURCE_SUBDIR option to
build_dependency_with_cmake
that mimics the behavior of the FetchContent option of the same nameTweak OpenColorIO build recipe to always build static libraries by default.