tools/cmake_uninstall.cmake.in
author unc0rr
Tue, 20 Nov 2012 00:10:12 +0400
changeset 8070 66bc20d089fc
parent 2593 dd995a9c8871
permissions -rw-r--r--
Okay, remove previous request only if it has same parent as this one. Fixes the last note of previous commit (which was nearly impossible to hit, but whatever, just cleaning implementation)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2593
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     1
IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/../install_manifest.txt")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     2
  MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/../install_manifest.txt\"")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     3
ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/../install_manifest.txt")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     4
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     5
FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/../install_manifest.txt" files)
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     6
STRING(REGEX REPLACE "\n" ";" files "${files}")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     7
FOREACH(file ${files})
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     8
  MESSAGE(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
     9
  IF(EXISTS "$ENV{DESTDIR}${file}")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    10
    EXEC_PROGRAM(
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    11
      "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    12
      OUTPUT_VARIABLE rm_out
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    13
      RETURN_VALUE rm_retval
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    14
      )
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    15
    IF(NOT "${rm_retval}" STREQUAL 0)
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    16
      MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    17
    ENDIF(NOT "${rm_retval}" STREQUAL 0)
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    18
  ELSE(EXISTS "$ENV{DESTDIR}${file}")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    19
    MESSAGE(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    20
  ENDIF(EXISTS "$ENV{DESTDIR}${file}")
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    21
ENDFOREACH(file)
dd995a9c8871 add an uninstall target (to be tested)
koda
parents:
diff changeset
    22