diff options
author | Josh Blum <josh@joshknows.com> | 2010-02-16 10:41:07 -0800 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2010-02-16 10:41:07 -0800 |
commit | 1b70ff306342ca1078e105488811a52c49b446f4 (patch) | |
tree | 9489b2d99bd2a630a352b06e4ddba1d660b5af53 | |
parent | 9d1041f8150e047d929aaf7c0461201f043d8b93 (diff) | |
download | uhd-1b70ff306342ca1078e105488811a52c49b446f4.tar.gz uhd-1b70ff306342ca1078e105488811a52c49b446f4.tar.bz2 uhd-1b70ff306342ca1078e105488811a52c49b446f4.zip |
added uninstall target
-rw-r--r-- | CMakeLists.txt | 19 | ||||
-rw-r--r-- | cmake_uninstall.cmake.in | 23 |
2 files changed, 39 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 58254e413..3f4559c24 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,6 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(UHD) ENABLE_TESTING() -#SET(CMAKE_VERBOSE_MAKEFILE true) ######################################################################## # Setup CPack @@ -71,13 +70,27 @@ INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS}) LINK_DIRECTORIES(${Boost_LIBRARY_DIRS}) ######################################################################## +# Create Uninstall Target +######################################################################## +CONFIGURE_FILE( + "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + @ONLY +) + +ADD_CUSTOM_TARGET(uninstall + "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" +) + +######################################################################## # Create Pkg Config File ######################################################################## CONFIGURE_FILE( - ${CMAKE_SOURCE_DIR}/uhd.pc.in - ${CMAKE_CURRENT_BINARY_DIR}/uhd.pc + "${CMAKE_SOURCE_DIR}/uhd.pc.in" + "${CMAKE_CURRENT_BINARY_DIR}/uhd.pc" @ONLY ) + INSTALL( FILES ${CMAKE_CURRENT_BINARY_DIR}/uhd.pc DESTINATION ${LIBRARY_DIR}/pkgconfig diff --git a/cmake_uninstall.cmake.in b/cmake_uninstall.cmake.in new file mode 100644 index 000000000..6031a6ca9 --- /dev/null +++ b/cmake_uninstall.cmake.in @@ -0,0 +1,23 @@ +# http://www.vtk.org/Wiki/CMake_FAQ#Can_I_do_.22make_uninstall.22_with_CMake.3F + +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(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) |