You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2013/04/01 18:47:11 UTC
svn commit: r1463202 - in /qpid/trunk/qpid/cpp: CMakeLists.txt
bindings/qmf/python/CMakeLists.txt bindings/qmf2/python/CMakeLists.txt
cmake_uninstall.cmake.in
Author: aconway
Date: Mon Apr 1 16:47:10 2013
New Revision: 1463202
URL: http://svn.apache.org/r1463202
Log:
QPID-4687: Add uninstall make target to cmake build
Added:
qpid/trunk/qpid/cpp/cmake_uninstall.cmake.in
Modified:
qpid/trunk/qpid/cpp/CMakeLists.txt
qpid/trunk/qpid/cpp/bindings/qmf/python/CMakeLists.txt
qpid/trunk/qpid/cpp/bindings/qmf2/python/CMakeLists.txt
Modified: qpid/trunk/qpid/cpp/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/CMakeLists.txt?rev=1463202&r1=1463201&r2=1463202&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/CMakeLists.txt Mon Apr 1 16:47:10 2013
@@ -101,6 +101,17 @@ else (OPTIONAL_ARG)
add_custom_target(docs ALL)
endif (OPTIONAL_ARG)
+# uninstall target
+configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
+ IMMEDIATE @ONLY)
+
+add_custom_target(uninstall
+ COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
+
+
+# Subdirectories
add_subdirectory(managementgen)
add_subdirectory(src)
add_subdirectory(etc)
Modified: qpid/trunk/qpid/cpp/bindings/qmf/python/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf/python/CMakeLists.txt?rev=1463202&r1=1463201&r2=1463202&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf/python/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf/python/CMakeLists.txt Mon Apr 1 16:47:10 2013
@@ -31,23 +31,37 @@ set_source_files_properties(${swig_gener
##------------------------------------
## Install the complete Python binding
##------------------------------------
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmfengine.py
- ${CMAKE_CURRENT_SOURCE_DIR}/qmf.py
- DESTINATION ${PYTHON_SITEARCH_PACKAGES}
- COMPONENT ${QPID_COMPONENT_CLIENT}
- )
+
+# Copy py source to binary dir so pyc/pyo will be generated in binary dir.
+file(COPY
+ "${CMAKE_CURRENT_SOURCE_DIR}/qmf.py"
+ DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
+
+# Python compile the modules
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmfengine.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmfengine.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmf.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmf.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+
+install(FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/qmfengine.py
+ ${CMAKE_CURRENT_BINARY_DIR}/qmfengine.pyc
+ ${CMAKE_CURRENT_BINARY_DIR}/qmfengine.pyo
+ ${CMAKE_CURRENT_SOURCE_DIR}/qmf.py
+ ${CMAKE_CURRENT_BINARY_DIR}/qmf.pyc
+ ${CMAKE_CURRENT_BINARY_DIR}/qmf.pyo
+ DESTINATION ${PYTHON_SITEARCH_PACKAGES}
+ COMPONENT ${QPID_COMPONENT_CLIENT}
+ )
+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/_qmfengine_python.so
RENAME _qmfengine.so
DESTINATION ${PYTHON_SITEARCH_PACKAGES}
COMPONENT ${QPID_COMPONENT_CLIENT}
)
-# Python compile the installed modules
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmfengine.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmfengine.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmf.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmf.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
Modified: qpid/trunk/qpid/cpp/bindings/qmf2/python/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf2/python/CMakeLists.txt?rev=1463202&r1=1463201&r2=1463202&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf2/python/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf2/python/CMakeLists.txt Mon Apr 1 16:47:10 2013
@@ -28,26 +28,36 @@ swig_link_libraries(cqmf2_python qmf2 ${
set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-fno-strict-aliasing -I${PYTHON_INCLUDE_PATH} -I${qpid-cpp_SOURCE_DIR}/include")
+# Move source into binary dir so compiled .pyc,pyo files will be in binary dir.
+file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/qmf2.py"
+ DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
+
+# Python compile the modules
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile cqmf2.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile cqmf2.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmf2.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
+install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmf2.py
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})")
##------------------------------------
## Install the complete Python binding
##------------------------------------
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cqmf2.py
- ${CMAKE_CURRENT_SOURCE_DIR}/qmf2.py
- DESTINATION ${PYTHON_SITEARCH_PACKAGES}
- COMPONENT ${QPID_COMPONENT_CLIENT}
- )
+install(FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/cqmf2.py
+ ${CMAKE_CURRENT_BINARY_DIR}/cqmf2.pyc
+ ${CMAKE_CURRENT_BINARY_DIR}/cqmf2.pyo
+ ${CMAKE_CURRENT_SOURCE_DIR}/qmf2.py
+ ${CMAKE_CURRENT_BINARY_DIR}/qmf2.pyc
+ ${CMAKE_CURRENT_BINARY_DIR}/qmf2.pyo
+ DESTINATION ${PYTHON_SITEARCH_PACKAGES}
+ COMPONENT ${QPID_COMPONENT_CLIENT}
+ )
+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/_cqmf2_python.so
RENAME _cqmf2.so
DESTINATION ${PYTHON_SITEARCH_PACKAGES}
COMPONENT ${QPID_COMPONENT_CLIENT}
)
-# Python compile the installed modules
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile cqmf2.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile cqmf2.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile qmf2.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
-install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile qmf2.py
- WORKING_DIRECTORY ${PYTHON_SITEARCH_PACKAGES})")
Added: qpid/trunk/qpid/cpp/cmake_uninstall.cmake.in
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/cmake_uninstall.cmake.in?rev=1463202&view=auto
==============================================================================
--- qpid/trunk/qpid/cpp/cmake_uninstall.cmake.in (added)
+++ qpid/trunk/qpid/cpp/cmake_uninstall.cmake.in Mon Apr 1 16:47:10 2013
@@ -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(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}")
+list(REVERSE files)
+foreach (file ${files})
+ message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
+ if (EXISTS "$ENV{DESTDIR}${file}")
+ execute_process(
+ COMMAND @CMAKE_COMMAND@ -E remove "$ENV{DESTDIR}${file}"
+ OUTPUT_VARIABLE rm_out
+ RESULT_VARIABLE rm_retval
+ )
+ if(NOT ${rm_retval} EQUAL 0)
+ message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
+ endif (NOT ${rm_retval} EQUAL 0)
+ else (EXISTS "$ENV{DESTDIR}${file}")
+ message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
+ endif (EXISTS "$ENV{DESTDIR}${file}")
+endforeach(file)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org