| # SPDX-License-Identifier: GPL-2.0-or-later |
| # Copyright (C) 2022 Rong Tao |
| # |
| function(UninstallManifest manifest) |
| if(NOT EXISTS "${manifest}") |
| message(FATAL_ERROR "Cannot find install manifest: ${manifest}") |
| endif() |
| |
| file(READ "${manifest}" files) |
| string(REGEX REPLACE "\n" ";" files "${files}") |
| foreach(file ${files}) |
| message(STATUS "Uninstalling $ENV{DESTDIR}${file}") |
| if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR 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() |
| else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") |
| message(STATUS "File $ENV{DESTDIR}${file} does not exist.") |
| endif() |
| endforeach() |
| endfunction() |
| |
| UninstallManifest("@CMAKE_BINARY_DIR@/install_manifest.txt") |
| UninstallManifest("@CMAKE_BINARY_DIR@/install_manifest_python_bcc.txt") |