OpenShadingLanguage
OpenShadingLanguage copied to clipboard
testsuites that build subprojects ignore the options top level cmake was invoked with
Problem
Testsuites that build subprojects ignore the options top level cmake was invoked with.
Actual behavior:
Example:
https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/blob/main/testsuite/example-deformer/run.py
currently ignores any cmake options this build was invoked with, ie:
MYCC=...
MYCXX=...
LLVM_DIRECTORY=...
ILMBASE_ROOT=...
OPENEXR_ROOT=...
BOOST_ROOT=...
OpenImageIO_ROOT=...
pugixml_ROOT=...
pybind11_ROOT=...
partio_ROOT=.. \
This can cause build failures from cmake not configuring because it can't find dependency or worse if the wrong version of the dependency is found. Failed builds from API/ABI incompatibilities or undefined behavior could ensue.
Expected behavior: Any CMAKE options that apply to testsuite subprojects would be propagated through to their cmake invocations
Steps to Reproduce
- Remove OIIO from your path or have it point to an older version.
- Build using OpenImageIO_ROOT cmake option
- build TEST target and see example-deformer fail to build.
Versions
- OSL branch/version: All
- OS: Linux
- C++ compiler: All
- LLVM version: All
- OIIO version: All