Skip to content

chore: remove legacy Matlab-based OEM test and its build machinery - #1185

Merged
olemke merged 2 commits into
atmtools:mainfrom
olemke:remove-matlab-leftovers
Oct 6, 2026
Merged

olemke merged 2 commits into
atmtools:mainfrom
olemke:remove-matlab-leftovers

Conversation

@olemke

@olemke olemke commented Oct 5, 2026

Copy link
Copy Markdown
Member

This PR removes the last remnants of the old Matlab/Atmlab-based OEM test infrastructure, which has been dead code for years. The legacy test_oem target required a local Matlab install, Atmlab, and csh to be configured via CMake cache variables, and it referenced Matlab script files that no longer exist in the repository (#1183) — so it could not actually be built or run in any current setup. OEM is now fully covered by the dependency-free, deterministic workspace-interface regressions in test_oem_methods, so nothing is lost in coverage.

Changes

  • src/tests/test_oem.cc: Deleted the 2015-era OEM test (991 lines) that drove the OEM functions through the Matlab Engine API (engine.h) and Atmlab. It was only conditionally compiled when MATLABDIR, ATMLABDIR, and csh were all present.
  • src/tests/CMakeLists.txt: Removed the entire conditional test_oem build block, including the MATLABDIR/ATMLABDIR cache options, csh detection, Matlab engine library lookup (libeng/libmx), Matlab interface macros, and the copy step for .m test scripts (which are no longer in the repo). Also dropped the now-obsolete "independent of Matlab" comment on the test_oem_methods target.
  • doc/arts/dev.oem.rst: Dropped the reference to the removed legacy invlib-level Matlab tests, rewording the note to state that the OEM tests run without any optional external dependencies.
  • src/tests/test_oem_methods.cc: Updated a comment to remove the stale mention of a Matlab installation.

Breaking Changes

⚠️ Downstream builds that still set MATLABDIR/ATMLABDIR and expect the test_oem CTest target will no longer find it. No replacement is needed — test_oem_methods already covers the OEM methods without external dependencies.

olemke added 2 commits October 5, 2026 13:49
The Matlab/atmlab-based OEM test integration is dead: the .m scripts
were removed in the Lm merge, timings.cc was never tracked, and the
configure-time FILE(COPY) of the missing scripts broke configuration
whenever MATLABDIR/ATMLABDIR were set.

- Drop the MATLABDIR/ATMLABDIR/CSHFOUND block and the broken
  test_oem target from src/tests/CMakeLists.txt
- Delete src/tests/test_oem.cc, the only consumer of the Matlab
  engine API; coverage lives on in test_oem_methods.cc
- Drop stale Matlab mention from the test_oem_methods comment
The dev.oem guide still pointed readers at the legacy
src/tests/test_oem.cc, which no longer exists. State instead that
the workspace-interface OEM tests have no optional external
dependencies.
@olemke
olemke merged commit a9cf3e5 into atmtools:main Oct 6, 2026
9 checks passed
@olemke
olemke deleted the remove-matlab-leftovers branch October 6, 2026 08:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant