Skip to content

build: post-vcpkg cleanup of dead helper files#7523

Open
tete17 wants to merge 3 commits intoProject-OSRM:masterfrom
tete17:build/post-vcpkg-cleanup
Open

build: post-vcpkg cleanup of dead helper files#7523
tete17 wants to merge 3 commits intoProject-OSRM:masterfrom
tete17:build/post-vcpkg-cleanup

Conversation

@tete17
Copy link
Copy Markdown
Contributor

@tete17 tete17 commented May 4, 2026

Summary

Follow-up cleanup to the vcpkg migration. Three small, independent build-system commits that remove dead weight left behind once Conan + the third_party/ vendored deps were retired.

  • Remove scripts/update_dependencies.sh — the script managed git-subtree updates for vendored deps under third_party/. After build: migrate from Conan + vendored deps to vcpkg manifest mode #7487 (vcpkg migration), build: generate flatbuffers headers at build time #7488 (flatbuffers from vcpkg), build: replace vendored microtar with libarchive from vcpkg #7495 (microtar → libarchive), and build: unvendor vtzero, provide custom vcpkg overlay #7508 (vtzero unvendored via custom vcpkg overlay), third_party/ is empty and every entry the script knew how to update is now provided by vcpkg. Nothing left to manage — delete the file.
  • Remove unused CMake helper files (737 lines deleted across 4 files):
    • cmake/FindTBB.cmake — unused since find_package(TBB CONFIG REQUIRED) resolves via the vcpkg tbb port's TBBConfig.cmake and bypasses Find modules entirely.
    • cmake/FindLua.cmake — an older copy of CMake's upstream module that shadowed the built-in via CMAKE_MODULE_PATH. The vcpkg lua port ships a vcpkg-cmake-wrapper.cmake that redirects find_package(Lua) to unofficial-lua CONFIG and populates LUA_INCLUDE_DIR / LUA_LIBRARIES. Verified by rebuilding osrm_extract (which compiles scripting_environment_lua.cpp) with the file removed.
    • cmake/FindDebArch.cmake — never include()d; CPackConfig.cmake already inlines the equivalent dpkg --print-architecture logic.
    • cmake/cmake_options_script.py — a legacy SublimeClang helper for compile_commands.json consumption, superseded by clangd/LSP.
  • Modernise cmake_uninstall.cmake.in — replace constructs deprecated since CMake 3.0 / 3.17 (project already requires 3.18): exec_programexecute_process, cmake -E removecmake -E rm -f. Also fix a stringly-typed return-value check (STREQUAL on a stringified int → numeric EQUAL), drop an unused OUTPUT_VARIABLE, and remove the legacy duplicate-condition args on else()/endif()/endforeach() closers. No behaviour change.

Net diff: +10 / -811 across 6 files.

Test plan

  • CI green on all platforms (Linux, macOS, Windows)
  • cmake --build && cmake --install still produces the expected artefacts
  • make uninstall on an installed tree still removes everything in install_manifest.txt

tete17 and others added 3 commits May 4, 2026 18:41
The script managed git-subtree updates for vendored dependencies under
third_party/. After Project-OSRM#7487 (vcpkg migration), Project-OSRM#7488 (flatbuffers from
vcpkg), Project-OSRM#7495 (microtar -> libarchive), and Project-OSRM#7508 (vtzero unvendored
via custom vcpkg overlay), third_party/ is empty and every entry the
script knew how to update is now provided by vcpkg. Nothing left to
manage.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- cmake/FindTBB.cmake: unused since CMakeLists.txt calls
  find_package(TBB CONFIG REQUIRED), which uses the TBBConfig.cmake
  shipped by the vcpkg tbb port and bypasses Find modules entirely.
- cmake/FindLua.cmake: an older copy of CMake's upstream FindLua
  that shadows the built-in via CMAKE_MODULE_PATH. Now unnecessary:
  the vcpkg lua port ships a vcpkg-cmake-wrapper.cmake that
  redirects find_package(Lua) to unofficial-lua CONFIG and
  populates LUA_INCLUDE_DIR / LUA_LIBRARIES. Verified by building
  osrm_extract (which compiles scripting_environment_lua.cpp) with
  the file removed.
- cmake/FindDebArch.cmake: never include()d; CPackConfig.cmake
  already inlines the equivalent dpkg --print-architecture logic.
- cmake/cmake_options_script.py: a legacy SublimeClang helper for
  compile_commands.json consumption, superseded by clangd/LSP.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Replace deprecated constructs in the uninstall helper. No behavior
change — still reads install_manifest.txt and removes each path.

- exec_program -> execute_process (exec_program deprecated since
  CMake 3.0).
- cmake -E remove -> cmake -E rm -f (remove subcommand deprecated
  since CMake 3.17; project already requires CMake 3.18).
- Drop unused OUTPUT_VARIABLE capture.
- Fix return-value check to use numeric EQUAL instead of STREQUAL
  on a stringified int.
- Drop the legacy duplicate condition args on else()/endif()/
  endforeach() closers.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tete17 tete17 force-pushed the build/post-vcpkg-cleanup branch from e6953d8 to 9a2c84e Compare May 4, 2026 16:42
@tete17 tete17 changed the title build: post-vcpkg cleanup of unused CMake helpers and uninstall script build: post-vcpkg cleanup of dead helper files May 4, 2026
@DennisOSRM DennisOSRM requested a review from Copilot May 4, 2026 19:18
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes build-system leftovers that became obsolete after the repository’s migration away from vendored/Conan-managed dependencies toward vcpkg, and lightly modernizes the generated uninstall script to match the project’s current CMake baseline.

Changes:

  • Deletes dead maintenance/helpers tied to the old vendored dependency flow (scripts/update_dependencies.sh, cmake/FindTBB.cmake, cmake/FindLua.cmake, cmake/FindDebArch.cmake, cmake/cmake_options_script.py).
  • Keeps the active build path intact by relying on the current find_package(... CONFIG ...) / built-in CMake behavior already present in CMakeLists.txt.
  • Modernizes cmake_uninstall.cmake.in by replacing deprecated CMake commands with supported equivalents without changing the uninstall target wiring.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
scripts/update_dependencies.sh Removes obsolete vendored-dependency subtree update script.
cmake/FindTBB.cmake Deletes unused custom TBB find module; project now uses find_package(TBB CONFIG REQUIRED).
cmake/FindLua.cmake Deletes shadowing custom Lua find module; project continues through built-in/vcpkg package resolution.
cmake/FindDebArch.cmake Removes unreferenced Debian architecture helper superseded by cmake/CPackConfig.cmake.
cmake/cmake_uninstall.cmake.in Updates uninstall script to modern CMake commands and simplified control-flow syntax.
cmake/cmake_options_script.py Removes legacy editor helper with no remaining in-repo references.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

2 participants