From 4f38db1735ece216707e0330e8818c46e43bee4b Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Thu, 12 Oct 2017 08:44:45 -0700 Subject: [PATCH] Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target Steve Robinson When I try to build the 'uninstall' target in CMake when SDL2 is added to a subdirectory of my project, I get this error: 1>CMake Error at cmake_uninstall.cmake:2 (message): 1> Cannot find install manifest: 1> "D:/Code/sdl2-tutorial/_build/3rdparty/SDL2/SDL2-2.0.6/install_manifest.txt" The install_manifest.txt is actually in the top-level binary directory, not the project-specific binary directory. To fix it, change all instances of: CMAKE_CURRENT_BINARY_DIR To: CMAKE_BINARY_DIR In: cmake_uninstall.cmake.in --- cmake_uninstall.cmake.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cmake_uninstall.cmake.in b/cmake_uninstall.cmake.in index e3a5a4be9..1761561b3 100644 --- a/cmake_uninstall.cmake.in +++ b/cmake_uninstall.cmake.in @@ -1,8 +1,8 @@ -if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") - message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") -endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") +if (NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") + message(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_BINARY_DIR@/install_manifest.txt\"") +endif(NOT EXISTS "@CMAKE_BINARY_DIR@/install_manifest.txt") -file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) +file(READ "@CMAKE_BINARY_DIR@/install_manifest.txt" files) string(REGEX REPLACE "\n" ";" files "${files}") foreach (file ${files}) message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")