Add 'make uninstall' support using CMake. Typically must be run as root from build dir.
This commit is contained in:
parent
bab0258828
commit
44c39c95d3
|
@ -32,9 +32,20 @@ if(WIN32)
|
|||
set(KICAD_TEMPLATES template)
|
||||
endif(WIN32)
|
||||
|
||||
mark_as_advanced(KICAD_DATA
|
||||
KICAD_MODULES
|
||||
KICAD_LIBRARY)
|
||||
mark_as_advanced( KICAD_DATA KICAD_MODULES KICAD_LIBRARY )
|
||||
|
||||
|
||||
#================================================
|
||||
# "make uninstall" rules
|
||||
#================================================
|
||||
configure_file(
|
||||
"${PROJECT_SOURCE_DIR}/CMakeModules/cmake_uninstall.cmake.in"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
||||
IMMEDIATE @ONLY )
|
||||
|
||||
add_custom_target( uninstall
|
||||
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" )
|
||||
|
||||
|
||||
# CMake will look in these dirs for nested 'CMakeLists.txt' files.
|
||||
# Resources.
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
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}" )
|
||||
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( STATUS "Problem when removing \"$ENV{DESTDIR}${file}\"" )
|
||||
endif()
|
||||
else()
|
||||
message( STATUS "File \"$ENV{DESTDIR}${file}\" does not exist." )
|
||||
endif()
|
||||
endforeach()
|
Loading…
Reference in New Issue