|
From: <ai...@us...> - 2013-07-28 04:02:16
|
Revision: 12437
http://sourceforge.net/p/plplot/code/12437
Author: airwin
Date: 2013-07-28 04:02:04 +0000 (Sun, 28 Jul 2013)
Log Message:
-----------
As a temporary workaround, replace cmake -E tar <options> by the
equivalent tar <options> command to unpack *.tar.xz files in the
ExternalProject.cmake module.
This workaround should be left in place until the current CMake fix by
Brad King (import the latest version of the libarchive source code
into CMake) that finally allows cmake -E tar ... to work on *.tar.xz
files gets propagated to a CMake release.
Modified Paths:
--------------
trunk/cmake/build_projects/ExternalProject.cmake
Modified: trunk/cmake/build_projects/ExternalProject.cmake
===================================================================
--- trunk/cmake/build_projects/ExternalProject.cmake 2013-07-26 23:13:38 UTC (rev 12436)
+++ trunk/cmake/build_projects/ExternalProject.cmake 2013-07-28 04:02:04 UTC (rev 12437)
@@ -543,9 +543,18 @@
# Extract it:
#
message(STATUS \"extracting... [tar ${args}]\")
-execute_process(COMMAND \${CMAKE_COMMAND} -E tar ${args} \${filename}
- WORKING_DIRECTORY \${ut_dir}
- RESULT_VARIABLE rv)
+if(filename MATCHES \"tar\\\\.xz$\")
+ # --force-local required so that drive-letter colon for filename on
+ # Windows platforms is not interpreted as a remote host.
+ find_program(TAR_EXECUTABLE tar)
+ execute_process(COMMAND \${TAR_EXECUTABLE} --force-local -Jxf \${filename}
+ WORKING_DIRECTORY \${ut_dir}
+ RESULT_VARIABLE rv)
+else(filename MATCHES \"tar\\\\.xz$\")
+ execute_process(COMMAND \${CMAKE_COMMAND} -E tar ${args} \${filename}
+ WORKING_DIRECTORY \${ut_dir}
+ RESULT_VARIABLE rv)
+endif(filename MATCHES \"tar\\\\.xz$\")
if(NOT rv EQUAL 0)
message(STATUS \"extracting... [error clean up]\")
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|