CMake and Meson build definitions are Out Of Sync
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 38/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- cmake, cpp
- Ambito
- build-system, tooling
Direzione di ricerca
Confronta le definizioni di build di CMake e Meson nel commit main e0399c6, iniziando dall’installazione degli header pubblici, dai sorgenti di table_test e dai pin delle dipendenze elencati. Controlla snapshot_summary_builder_test.cc e l’issue #256 per l’ambito indicato. Il lavoro è completato quando le differenze accidentali sono allineate, mentre le differenze intenzionali relative a dipendenze e funzionalità sono documentate e testate.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
The CMake and Meson build definitions are maintained separately and have drifted. On current main (e0399c6945326dd5281da07de8ed14a61c9f2cac), equivalent configurations do not install the same public headers or run the same core tests.
Examples:
-
CMake installs public headers by globbing each directory, while Meson lists them manually. As a result:
- CMake installs
iceberg/puffin_dv_io.handiceberg/catalog/rest/auth/token_refresh_scheduler.h, but Meson does not. - Meson installs
iceberg/catalog/catalog_util.h,iceberg/catalog/session_catalog.h, andiceberg/catalog/session_context.h, but CMake does not install headers fromsrc/iceberg/catalog/.
- CMake installs
-
CMake includes
snapshot_summary_builder_test.ccintable_test, but Meson does not include that test source, so the Meson CI path does not exercise it. -
Vendored/fallback dependency versions differ between the two build systems:
Dependency CMake Meson CRoaring 4.4.3 4.3.11 nlohmann/json 3.11.3 3.12.0 GoogleTest 1.15.2 1.17.0 Other shared dependencies, such as nanoarrow 0.9.0, utf8proc 2.10.0, spdlog 1.15.3, cpr 1.14.1, and Google Benchmark 1.8.4, are currently aligned but can drift because their pins are also declared independently.
-
Dependency resolution policy also differs: CMake requires system Zlib and Curl, while Meson can fall back to pinned wraps (Zlib 1.3.1 and Curl 8.10.1). Any intentional difference here should be documented and tested explicitly.
The Meson bundle gap is already tracked by #256 and is outside the scope of this issue. Other intentional feature differences should likewise remain explicit rather than appearing as accidental drift.
This to track current status and initiated a discussion on how we can maintain and sync the build tools in the long term.
- Lingua principale
- C++
- Stelle
- 223
- Fork
- 127
- Merge medio
- 1g 13h
- PR unite (30g)
- 28
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/iceberg-cpp
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
apache/iceberg-cpp#973 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
apache/iceberg-cpp#959 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
apache/iceberg-cpp#955 · 3 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
apache/iceberg-cpp#946 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
apache/iceberg-cpp#944 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di apache/iceberg-cpp
Issue simili
-
Broken links in the docsAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
microsoft/onnxruntime#33018 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
DataLakeFileSystemClient::ListPaths() throws JSON exception due to accessing undefined fieldsApertacustomer-reported needs-triage question
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Azure/azure-sdk-for-cpp#7435 ·
I maintainer di solito rispondono entro 1 giorno
-
ChromieCraft Generic Confirmed World Event
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
azerothcore/azerothcore-wotlk#27882 ·
I maintainer di solito rispondono entro 1 giorno
-
MacOS build failureApertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
aristocratos/btop#1874 ·
I maintainer di solito rispondono entro 1 giorno