zhjwpku opened a new pull request, #628:
URL: https://github.com/apache/iceberg-cpp/pull/628

   Replace the monolithic `iceberg` library with two targets:
   
   * `iceberg-core` — schema/types/partition/sort/transform, table/snapshot/ 
metadata/transactions/updates, manifest handling, expressions, catalog 
(including in-memory), utilities, file I/O abstractions, and 
`delete_file_index` (kept in core because `manifest_group` holds 
`DeleteFileIndex::Builder` by value and only depends on core types).
   
   * `iceberg-data` — `data/`, `deletes/`, `puffin/`; publicly links 
`iceberg-core`.
   
   `iceberg_bundle` links `iceberg-data`; `iceberg_rest` links `iceberg-core` 
only. There is no umbrella `iceberg` compatibility target.
   
   CMake: optional `EXPORT_NAME` on `add_iceberg_lib`; hyphenated target names 
map to `ICEBERG_*_EXPORTING` via underscore substitution for MSVC. Per-package 
`iceberg_install_cmake_package` installs `iceberg-core-config.cmake`, 
`iceberg-data-config.cmake`, and matching `*-targets.cmake` under 
`lib/cmake/<package>/`; install namespace remains `iceberg::` (e.g. 
`iceberg::iceberg-core_static`). Vendored third-party installs are routed to 
the export set that owns them (core vs bundle vs rest). System 
`find_dependency` lists are split per package so `iceberg-core` consumers do 
not pull Arrow/Parquet/Avro/cpr.
   
   Symbol visibility: `iceberg_export.h` defines `ICEBERG_CORE_EXPORT` / 
`ICEBERG_EXPORT` (core-only toggles); `iceberg_data_export.h` defines 
`ICEBERG_DATA_EXPORT` for data-layer public APIs. Cross-boundary symbols used 
from data (`WriterProperties`, `ArrowArrayGuard`, `ArrowSchemaGuard`) are 
exported from core.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to