This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

"make uninstall" bug has been fixed. (Symlinks are removed correctly.)

  • Loading branch information...
N.A.Y
N.A.Y committed May 4, 2012
1 parent ee415e0 commit a32ea5d9ef00afffd1becf8b9f6612e84fe4a2d6
Showing with 18 additions and 27 deletions.
  1. +18 −27 cmake/cmake_uninstall.cmake.in
@@ -1,28 +1,19 @@
-# implement 'make uninstall'
-#
-IF (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
- MESSAGE(WARNING "Cannot find install manifest: @CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
- MESSAGE(WARNING "Are you running it from the toplevel build directory?")
- MESSAGE(FATAL_ERROR "Uninstall failed")
-ENDIF (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-
-FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
-STRING(REGEX REPLACE "\n" ";" files "${files}")
-
-FOREACH (file ${files})
- MESSAGE(STATUS "Uninstalling "$ENV{DESTDIR}${file}"")
-
- IF (EXISTS "$ENV{DESTDIR}${file}")
- EXEC_PROGRAM("@CMAKE_COMMAND@" ARGS "-E remove "$ENV{DESTDIR}${file}""
- OUTPUT_VARIABLE rm_out
- RETURN_VALUE rm_retval
- )
-
- IF (NOT "${rm_retval}" STREQUAL 0)
- MESSAGE(FATAL_ERROR "Problem when removing "$ENV{DESTDIR}${file}"")
- ENDIF(NOT "${rm_retval}" STREQUAL 0)
- ELSE(EXISTS "$ENV{DESTDIR}${file}")
- MESSAGE(STATUS "File "$ENV{DESTDIR}${file}" does not exist.")
- ENDIF(EXISTS "$ENV{DESTDIR}${file}")
-ENDFOREACH(file)
+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()
+file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
+string(REGEX REPLACE "\n" ";" files "${files}")
+foreach(file ${files})
+ message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
+ if((EXISTS "$ENV{DESTDIR}${file}") OR (IS_SYMLINK "$ENV{DESTDIR}${file}"))
+ exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
+ OUTPUT_VARIABLE rm_out
+ RETURN_VALUE rm_retval)
+ if(NOT "${rm_retval}" STREQUAL 0)
+ message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
+ endif()
+ else()
+ message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
+ endif()
+endforeach()

0 comments on commit a32ea5d

Please sign in to comment.