Skip to content

{BugFix} Core - Wire NeuralBand calibration libs into OSS CMake build - #384

Open
YLouWashU wants to merge 1 commit into
facebookresearch:mainfrom
YLouWashU:export-D114627185
Open

{BugFix} Core - Wire NeuralBand calibration libs into OSS CMake build#384
YLouWashU wants to merge 1 commit into
facebookresearch:mainfrom
YLouWashU:export-D114627185

Conversation

@YLouWashU

Copy link
Copy Markdown
Contributor

Summary:
Explanation:
D114276637 added NeuralBandEmgCalibration, NeuralBandImuCalibration,
and the NeuralBandBatchCalibration wrapper under core/calibration/
and consumed them from NeuralBandBatchPlayer.cpp, but only wired the
new sources through BUCK. The OSS CMake build was never updated, so the
GitHub Actions build-and-test.yml and test-for-build-wheels.yml
workflows fail at link time with 4 undefined references
(NeuralBandEmgCalibration::fromParamsJson,
NeuralBandImuCalibration::fromParamsJson,
NeuralBandImuCalibration::getAccelScalingFactor,
NeuralBandImuCalibration::getGyroScalingFactor) coming from
libplayers.a(NeuralBandBatchPlayer.cpp.o).

This mirrors the BUCK targets in CMake:

  • core/calibration/CMakeLists.txt: add neural_band_emg_calibration
    and neural_band_imu_calibration libraries (matching the BUCK
    oxx_static_library targets), add NeuralBandBatchCalibration.h to
    sensor_calibration's header list, and link both new libs from
    sensor_calibration PUBLIC (so downstream users of
    SensorCalibration.h get the wrapper header + symbols).
  • core/data_provider/players/CMakeLists.txt: link
    neural_band_emg_calibration and neural_band_imu_calibration from
    players PUBLIC, matching the public_deps on the players BUCK
    target.

Reproducibility:
GitHub Actions build-and-test.yml and test-for-build-wheels.yml
will pass on the next ShipIt export. Local BUCK build is unaffected.


Differential Revision: D114627185

Summary:
Explanation:
D114276637 added `NeuralBandEmgCalibration`, `NeuralBandImuCalibration`,
and the `NeuralBandBatchCalibration` wrapper under `core/calibration/`
and consumed them from `NeuralBandBatchPlayer.cpp`, but only wired the
new sources through BUCK. The OSS CMake build was never updated, so the
GitHub Actions `build-and-test.yml` and `test-for-build-wheels.yml`
workflows fail at link time with 4 undefined references
(`NeuralBandEmgCalibration::fromParamsJson`,
`NeuralBandImuCalibration::fromParamsJson`,
`NeuralBandImuCalibration::getAccelScalingFactor`,
`NeuralBandImuCalibration::getGyroScalingFactor`) coming from
`libplayers.a(NeuralBandBatchPlayer.cpp.o)`.

This mirrors the BUCK targets in CMake:

- `core/calibration/CMakeLists.txt`: add `neural_band_emg_calibration`
  and `neural_band_imu_calibration` libraries (matching the BUCK
  `oxx_static_library` targets), add `NeuralBandBatchCalibration.h` to
  `sensor_calibration`'s header list, and link both new libs from
  `sensor_calibration` `PUBLIC` (so downstream users of
  `SensorCalibration.h` get the wrapper header + symbols).
- `core/data_provider/players/CMakeLists.txt`: link
  `neural_band_emg_calibration` and `neural_band_imu_calibration` from
  `players` `PUBLIC`, matching the `public_deps` on the players BUCK
  target.

Reproducibility:
GitHub Actions `build-and-test.yml` and `test-for-build-wheels.yml`
will pass on the next ShipIt export. Local BUCK build is unaffected.

___

Differential Revision: D114627185
@meta-cla meta-cla Bot added the cla signed label Aug 3, 2026
@meta-codesync

meta-codesync Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

@YLouWashU has exported this pull request. If you are a Meta employee, you can view the originating Diff in D114627185.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants