mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-07-31 02:59:33 +02:00
gason, vma, cityhash, 7zip (ext/lzma-sdk), basis_universal, pugixml, kirk (ext/libkirk), sfmt19937, xbrz, and xxhash were each defined with a small add_library() block directly in the root CMakeLists.txt, even though ext/CMakeLists.txt already exists and handles every other vendor library (freetype, imgui, naett, discord-rpc, libchdr, zstd, miniupnp, armips, glew, snappy, ...) via add_subdirectory(). Gave each one its own ext/<name>/CMakeLists.txt to match that established pattern; xxhash stays a loose file pair in ext/ (it never had its own directory) so its add_library() lives directly in ext/CMakeLists.txt instead. ext/libkirk/CMakeLists.txt already existed but was dead - nothing add_subdirectory()'d it, and its source list was stale (missing amctrl.c/.h, which the live inline definition in root had). Replaced its contents with the current, correct list instead of leaving two diverging definitions around. Dropped several target_include_directories()/include_directories() calls that came along with these (e.g. cityhash, kirk, xbrz, xxhash, and the lzma-sdk one for 7zip): traced their actual consumers and found each library's own sources resolve their sibling headers via the default same-directory quote-include rule, and every external consumer already uses the full "ext/<name>/..." path resolved through the global root include - so these were dead weight regardless of position. Replaced two single-value alias variables (LIB7ZIP_LIBRARY, always "7zip"; BASISU_LIBRARIES, always "basis_universal") with their target names directly in Common/CMakeLists.txt, rather than trying to carry them across the new add_subdirectory boundary - plain set() variables don't propagate back up out of a child scope without PARENT_SCOPE, so keeping them as-was would have silently broken Common's link line. Verified with a fully clean rebuild (removed build/ entirely), a HEADLESS=ON UNITTEST=ON build, and a LIBRETRO=ON build. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PSNaZnHCjmryS3ziVN9gZU