Several build-portability fixes already have open PRs across submodules — a roundup

Aperta
#280 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cmake, cpp

Direzione di ricerca

This issue is a roundup across submodules, and most listed fixes already have open pull requests. Start by checking the linked PRs for status and overlap; the two unclaimed changes name scene_rdl2/lib/render/util/IndexableArray.h and arras/distributed/CMakeLists.txt. The work is done when maintainers choose which outstanding portability fixes to take forward and redundant proposals are resolved.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Context

While updating the Arch Linux openmoonray AUR package to v2026.29.1, I've been maintaining a local patch to build cleanly on a modern toolchain (GCC 16, Boost 1.92, TBB 2023+, CMake 4, and a monolithic USD package). Cross-checking that patch against open PRs across the org, most of it turns out to already be proposed upstream — just sitting unreviewed, some for months. Listing them here in case it's useful to have them in one place.

I also checked each of these against the Rocky 9 build (GCC ~11, Boost 1.75, classic TBB 2020.3, non-monolithic USD, per building/Rocky9/install_packages.sh): none of them regress that build. The version/include fixes are backward-compatible no-ops there, and the two USD/TBB CMake changes are guarded (if(TARGET usd_ms), find_package(TBB CONFIG) falling through when not found) so they simply don't trigger on that toolchain.

Ready to merge (single PR each, exact fix)
  • arras_render #2 — missing <functional> include in OrbitCam.h
  • cmake_modules #2 — prefer modern system-provided TBB via find_package(TBB CONFIG) before falling back to the bundled find-module
  • hdMoonray #5 — support monolithic USD builds (interface polyfills for a combined usd_ms target)
  • moonray_sdr_plugins #1 — same monolithic-USD fix
  • moonshine_usd #1 — same monolithic-USD fix
  • moonray #12 — disable AVX512PF/AVX512ER cpuid checks removed from newer compiler headers
  • moonray_gui #3 — standardize on Q_EMIT/Q_SIGNALS/Q_SLOTS to avoid the Qt/TBB keyword collision (covers 7 files, supersedes older #1/#2)
  • moonshine #8 — DwaBase attribute lookup fix for stricter C++ standards
Same fix, multiple competing open PRs (worth picking one and closing the rest)
  • mcrt_dataio: #6, #7, #9 all add the same missing <cstdint> include in ClockDelta.h
  • scene_rdl2: #11 (narrow) and #13 (broader, also covers BinPacketDictionary.h and the python CMake Boost::system removal) overlap
Already merged
  • arras4_core #8 — Boost io_service→io_context, drop Boost::system 🎉
No PR yet, if anyone wants to pick these up
  • scene_rdl2/lib/render/util/IndexableArray.h — typename hasher::result_type → std::size_t (the former isn't guaranteed by std::hash in a way that compiles cleanly everywhere)
  • top-level arras/distributed/CMakeLists.txt — drop system from its Boost find_package COMPONENTS list (same class of fix as the merged arras4_core one)

Happy to help review/rebase any of the above if that's useful — just flagging since they'd remove a good chunk of what downstream packagers currently have to patch around.

Lingua principale
CMake
Stelle
4.7k
Fork
321
Merge medio
13m
PR unite (30g)
3

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di OpenMoonRay/openmoonray

Tutte le issue di OpenMoonRay/openmoonray

Issue simili

Altre issue su Build System

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.