Le Tue, 11 Nov 2008 17:55:03 +0200,
"Ioan Calin Borcoman" <[EMAIL PROTECTED]> a écrit :

> Hi,
> 
> Is it possible to change the CPACK_SOURCE_PACKAGE_FILE_NAME when I run
> "make package_source"?

I don't know, but I decide to do it differently.

> 
> I would like to set it to a value like foo-`date +%Y%m%d_%H%M`. Is it
> possible?

I do use a custom made UsePackageBackup.cmake macro attached to this
mail for the same need.

If you add:

INCLUDE(UsePackageBackup)

after
INCLUDE(CPack)

in your main CMakeLists.txt
then you will have new

package_source_backup 

target which will create a dated source package file.

The macro use TGZ generator but you may change this easily from within
the UsePackageBackup.cmake


-- 
Erk
#
# - Define a toplevel package_source_backup target
#   which build a dated tarball
#
# Those CMake macros are provided by the TSP Developer Team
# https://savannah.nongnu.org/projects/tsp
#
IF (UNIX)
  FILE(WRITE ${CMAKE_BINARY_DIR}/PackageBackup.cmake  
"MESSAGE(STATUS \"Package Backup running...\")
INCLUDE(CPackSourceConfig.cmake)
MESSAGE(STATUS \"Package Backup gets username...\")
# get the date
EXECUTE_PROCESS(COMMAND whoami
		TIMEOUT 5
		RESULT_VARIABLE WHO_RES
		OUTPUT_VARIABLE WHO_OUT 
		ERROR_VARIABLE  WHO_ERR
		OUTPUT_STRIP_TRAILING_WHITESPACE)
MESSAGE(STATUS \"Package Backup got \${WHO_OUT}.\")
MESSAGE(STATUS \"Package Backup gets date...\")
# get the date
EXECUTE_PROCESS(COMMAND date +%d%b%Y-%Hh%M
		TIMEOUT 5
		RESULT_VARIABLE DATE_RES
		OUTPUT_VARIABLE DATE_OUT 
		ERROR_VARIABLE  DATE_ERR
		OUTPUT_STRIP_TRAILING_WHITESPACE)
MESSAGE(STATUS \"Package Backup got \${DATE_OUT}.\")
# run cpack
MESSAGE(STATUS \"Package Backup running cpack...\")
EXECUTE_PROCESS(COMMAND cpack -G TGZ --config CPackSourceConfig.cmake
		TIMEOUT 3600
		WORKING_DIRECTORY \${CMAKE_BINARY_DIR})	
MESSAGE(STATUS \"Copy \${CPACK_SOURCE_PACKAGE_FILE_NAME}.tar.gz -->  \${CPACK_SOURCE_PACKAGE_FILE_NAME}-\${WHO_OUT}-\${DATE_OUT}.tar.gz\")
EXECUTE_PROCESS(COMMAND \${CMAKE_COMMAND} -E copy \${CPACK_SOURCE_PACKAGE_FILE_NAME}.tar.gz \${CPACK_SOURCE_PACKAGE_FILE_NAME}-\${WHO_OUT}-\${DATE_OUT}.tar.gz)
MESSAGE(STATUS \"Package backup done in: \${CPACK_SOURCE_PACKAGE_FILE_NAME}-\${WHO_OUT}-\${DATE_OUT}.tar.gz\")"
)
  #
  # Add custom target
  # 
  ADD_CUSTOM_TARGET(package_source_backup
    COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}/PackageBackup.cmake
    )  

ENDIF(UNIX)
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to