From 3a8a729a52892a881f0dbb4e871663898ac8009d Mon Sep 17 00:00:00 2001 From: Alexander Shishkov Date: Fri, 8 Jul 2011 07:08:59 +0000 Subject: [PATCH] removed CPack added target package_source (tar or zip) --- CMakeLists.txt | 49 +++++++-------------------- Package.cmake.in | 100 ------------------------------------------------------- 2 files changed, 12 insertions(+), 137 deletions(-) delete mode 100644 Package.cmake.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 30e8711..2c00659 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1407,51 +1407,26 @@ CONFIGURE_FILE( ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") -# ---------------------------------------------------------------------------- -# CPack target -# ---------------------------------------------------------------------------- - +#----------------------------------- +# Source package: +#----------------------------------- set(BUILD_PACKAGE ON CACHE BOOL "Enables 'make package_source' command") if(BUILD_PACKAGE) - configure_file( - Package.cmake.in - ${CMAKE_BINARY_DIR}/.cpack/Package.cmake - @ONLY - ) - include(${CMAKE_BINARY_DIR}/.cpack/Package.cmake) - - set(root_files README) - file(GLOB root_src_files *.in *.cmake *.rst CMakeLists.txt) - + set(TARBALL_NAME "${CMAKE_PROJECT_NAME}-${OPENCV_VERSION_MAJOR}.${OPENCV_VERSION_MINOR}.${OPENCV_VERSION_PATCH}") if (NOT WIN32) - install(FILES ${root_files} - DESTINATION ${OPENCV_DOC_INSTALL_PATH} - COMPONENT main) + add_custom_target(package_source + #TODO: maybe we should not remove dll's + COMMAND tar --transform 's,^,${TARBALL_NAME}/,S' -cjpf ${CMAKE_CURRENT_BINARY_DIR}/${TARBALL_NAME}.tar.bz2 --exclude-vcs --exclude="*.pyc" --exclude="*.vcproj" --exclude="*/lib/*" --exclude="*.dll" ./ + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) else() - install(FILES ${root_files} - DESTINATION "." - COMPONENT main) - install(FILES ${root_src_files} - DESTINATION "." - COMPONENT src) - # Add the "win-install/OpenCVConfig.cmake" file to the "main" install component - install(FILES - "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" - DESTINATION "." - COMPONENT main - ) - install(FILES - "include/CMakeLists.txt" - DESTINATION "include/" - COMPONENT src - ) - - install(DIRECTORY data samples DESTINATION "." COMPONENT main PATTERN ".svn" EXCLUDE) - install(DIRECTORY 3rdparty android modules doc DESTINATION "." COMPONENT src PATTERN ".svn" EXCLUDE) + add_custom_target(package_source + COMMAND zip -9 -r ${CMAKE_CURRENT_BINARY_DIR}/${TARBALL_NAME}.zip . -x '*/.svn/*' '*.vcproj' '*.pyc' + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) endif() endif() + #----------------------------------- # Solution folders: #----------------------------------- diff --git a/Package.cmake.in b/Package.cmake.in deleted file mode 100644 index 4d4eee7..0000000 --- a/Package.cmake.in +++ /dev/null @@ -1,100 +0,0 @@ -# -# CPack template for OpenCV -# -# (c) Copyrights 2008 Hartmut Seichter, HIT Lab NZ -# - -set(CPACK_PACKAGE_NAME "OpenCV") -set(CPACK_PACKAGE_VENDOR "OpenCV project opencvlibrary.sourceforge.net") - -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenCV SDK for ${CMAKE_GENERATOR} is an All-In-One package for developing computer vision applications") - -set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/doc/license.txt") - -set(CPACK_PACKAGE_VERSION_MAJOR "${OPENCV_VERSION_MAJOR}") -set(CPACK_PACKAGE_VERSION_MINOR "${OPENCV_VERSION_MINOR}") -set(CPACK_PACKAGE_VERSION_PATCH "${OPENCV_VERSION_PATCH}") - -set(CPACK_PACKAGE_INSTALL_DIRECTORY "OpenCV${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}") - -set(CPACK_PACKAGE_EXECUTABLES "") - -set(CPACK_COMPONENTS_ALL main src Unspecified) - -set(CPACK_COMPONENT_main_DISPLAY_NAME "Binaries and the Documentation") -set(CPACK_COMPONENT_src_DISPLAY_NAME "The source code") - -set(CPACK_ALL_INSTALL_TYPES Full) - -set(CPACK_COMPONENT_MAIN_INSTALL_TYPES Full) -set(CPACK_COMPONENT_SRC_INSTALL_TYPES Full) - -set(CPACK_SOURCE_IGNORE_FILES - "/\\\\.svn/" - "/autom4te.cache/" - "/build/" - "/interfaces/" - "/swig_python/" - "/octave/" - "/gtest/" - "~$" - "\\\\.aux$" - "\\\\.bbl$" - "\\\\.blg$" - "\\\\.idx$" - "\\\\.ilg$" - "\\\\.ind$" - "\\\\.log$" - "\\\\.toc$" - "\\\\.out$" - "\\\\.pyc$" - "\\\\.pyo$" - "\\\\.vcproj$" - "/1$" - "${CPACK_SOURCE_IGNORE_FILES}") - -if(NOT WIN32) - set(CPACK_SOURCE_IGNORE_FILES - "/lib/" - "\\\\.dll$" - "${CPACK_SOURCE_IGNORE_FILES}") -endif() - -set(CPACK_SOURCE_PACKAGE_FILE_NAME - "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") - -if(WIN32) - set(CPACK_GENERATOR "NSIS") - set(CPACK_SOURCE_GENERATOR "ZIP") - set(CPACK_NSIS_PACKAGE_NAME "OpenCV ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}rc") - set(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}\\\\doc\\\\opencv.ico") - set(CPACK_NSIS_MUI_UNIICON "${CMAKE_SOURCE_DIR}\\\\doc\\\\opencv.ico") - #set(CPACK_PACKAGE_ICON "utils/opencv.ico") - - set(CPACK_NSIS_INSTALLED_ICON_NAME "${CMAKE_SOURCE_DIR}\\\\doc\\\\opencv.ico") - set(CPACK_NSIS_HELP_LINK "http:\\\\\\\\opencv.willowgarage.com") - set(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\opencv.willowgarage.com") - set(CPACK_NSIS_CONTACT "") - set(CPACK_NSIS_DISPLAY_NAME "Open Source Computer Vision Library") - - set(CPACK_NSIS_MENU_LINKS - "http://opencv.willowgarage.com" "Start Page" - "doc\\\\opencv2refman.pdf" "The OpenCV Reference Manual" - "doc\\\\opencv_tutorials.pdf" "The OpenCV Tutorials for Beginners" - "CMakeLists.txt" "The Build Script (open with CMake)" - "samples\\\\c" "C Samples" - "samples\\\\cpp" "C++ Samples" - "samples\\\\python" "Python Samples") - - # Add "/bin" to the system PATH - set(CPACK_NSIS_MODIFY_PATH ON) -else() - set(CPACK_GENERATOR "TBZ2") - set(CPACK_SOURCE_GENERATOR "TBZ2") - - if(APPLE) - set(CPACK_GENERATOR "PackageMaker;TBZ2") - endif() -endif() - -include(CPack) -- 2.7.4