Commit 4f38db1735ece216707e0330e8818c46e43bee4b

Sam Lantinga 2017-10-12T08:44:45

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
diff --git a/cmake_uninstall.cmake.in b/cmake_uninstall.cmake.in
index e3a5a4b..1761561 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}\"")