AcademySoftwareFoundation / AcademySoftwareFoundation/OpenShadingLanguage
Bitcode serialization fails with unset Python_EXECUTABLE variable
- Vorherrschende Sprache
- C++
- Sterne
- 2.3k
- Forks
- 415
- Ø Merge
- 3 T. 1 Std.
- Gemergte PRs (30 T.)
- 10
Beschreibung
### Problem
The custom command to serialize the bitcode for liboslexec fails if the `Python_EXECUTABLE` CMake variable is not set. This is due to a slight change in the invocation of the serialization script:
```diff
- COMMAND python "${CMAKE_SOURCE_DIR}/src/build-scripts/serialize-bc.py" ${llvm_bc} ${llvm_bc_cpp} ${prefix}
+ COMMAND ${Python_EXECUTABLE} "${CMAKE_SOURCE_DIR}/src/build-scripts/serialize-bc.py" ${llvm_bc} ${llvm_bc_cpp} ${prefix}
```
This can be worked around by setting `Python_EXECUTABLE` or setting `USE_PYTHON=ON` at configure time.
Perhaps for the sake of compatibility it would be better to either set a default value so that the build will work as before, or to issue a warning or error if the variable is not set?
### Versions
* OSL branch/version: main (033dae37)
* OS: Ubuntu 20.04
* C++ compiler: clang 12.0.0
* LLVM version: 12.0.0
* OIIO version: N/A
Beitragsleitfaden
Rechercherichtung
Finden Sie den benutzerdefinierten Befehl, der src/build-scripts/serialize-bc.py aufruft, und untersuchen Sie, wie Python_EXECUTABLE während der Konfiguration gesetzt wird. Reproduzieren Sie den Bitcode-Serialisierungs-Build mit nicht gesetztem Python_EXECUTABLE. Sorgen Sie dann dafür, dass das Verhalten funktioniert oder mit einer eindeutigen Diagnose fehlschlägt, und verifizieren Sie den betroffenen Build-Pfad.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- cmake, python
- Bereich
- build-system
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100