summaryrefslogtreecommitdiff
path: root/contrib/ports/unix/posixlib/Uninstall.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ports/unix/posixlib/Uninstall.cmake')
-rw-r--r--contrib/ports/unix/posixlib/Uninstall.cmake22
1 files changed, 22 insertions, 0 deletions
diff --git a/contrib/ports/unix/posixlib/Uninstall.cmake b/contrib/ports/unix/posixlib/Uninstall.cmake
new file mode 100644
index 00000000000..466ee4ea86f
--- /dev/null
+++ b/contrib/ports/unix/posixlib/Uninstall.cmake
@@ -0,0 +1,22 @@
+cmake_minimum_required(VERSION 3.13)
+set(MANIFEST "${CMAKE_CURRENT_BINARY_DIR}/install_manifest.txt")
+
+if(NOT EXISTS ${MANIFEST})
+ message(FATAL_ERROR "Cannot find install manifest: '${MANIFEST}'")
+endif()
+
+file(STRINGS ${MANIFEST} files)
+foreach(file ${files})
+ if(EXISTS ${file} OR IS_SYMLINK ${file})
+ message(STATUS "Removing: ${file}")
+
+ execute_process(
+ COMMAND rm -f ${file}
+ RESULT_VARIABLE retcode
+ )
+
+ if(NOT "${retcode}" STREQUAL "0")
+ message(WARNING "Failed to remove: ${file}")
+ endif()
+ endif()
+endforeach(file)