diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2016-09-29 08:27:12 -0700 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2016-09-29 08:31:12 -0700 |
| commit | d9aba9f0fe217b53603b6643c268b5ee6b090267 (patch) | |
| tree | b4273555e77bb04cb7ae07e20da0791a1cee876e /scripts | |
| parent | 36799555441089420f29fcb2724d9fde23bc9ec1 (diff) | |
| download | vcpkg-d9aba9f0fe217b53603b6643c268b5ee6b090267.tar.gz vcpkg-d9aba9f0fe217b53603b6643c268b5ee6b090267.zip | |
[vcpkg] Add extract destination argument to vcpkg_extract_source_archive
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/cmake/vcpkg_extract_source_archive.cmake | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/scripts/cmake/vcpkg_extract_source_archive.cmake b/scripts/cmake/vcpkg_extract_source_archive.cmake index 7e4efde07..70c9fe06b 100644 --- a/scripts/cmake/vcpkg_extract_source_archive.cmake +++ b/scripts/cmake/vcpkg_extract_source_archive.cmake @@ -1,16 +1,22 @@ include(vcpkg_execute_required_process) function(vcpkg_extract_source_archive ARCHIVE) + if(NOT ARGC EQUAL 2) + set(WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src) + else() + set(WORKING_DIRECTORY ${ARGV1}) + endif() + get_filename_component(ARCHIVE_FILENAME ${ARCHIVE} NAME) - if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_FILENAME}.extracted) + if(NOT EXISTS ${WORKING_DIRECTORY}/${ARCHIVE_FILENAME}.extracted) message(STATUS "Extracting source ${ARCHIVE}") - file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src) + file(MAKE_DIRECTORY ${WORKING_DIRECTORY}) vcpkg_execute_required_process( COMMAND ${CMAKE_COMMAND} -E tar xjf ${ARCHIVE} - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src + WORKING_DIRECTORY ${WORKING_DIRECTORY} LOGNAME extract ) - file(WRITE ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_FILENAME}.extracted) + file(WRITE ${WORKING_DIRECTORY}/${ARCHIVE_FILENAME}.extracted) endif() message(STATUS "Extracting done") endfunction() |
