[Cmake-commits] CMake branch, next, updated. v3.6.2-2211-g919d278

Brad King brad.king at kitware.com
Mon Sep 19 10:52:03 EDT 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  919d278d895b6b5b298d38f63da02ed1baa06d96 (commit)
       via  5e6716dbacb9fd4ef7537db5578ac15a0fae04f8 (commit)
       via  0f424c3d07a613820950e04e00431d57ba7f829f (commit)
      from  e704fca68009272ccdd4d76b46600a23dc45d640 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=919d278d895b6b5b298d38f63da02ed1baa06d96
commit 919d278d895b6b5b298d38f63da02ed1baa06d96
Merge: e704fca 5e6716d
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Sep 19 10:52:01 2016 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Mon Sep 19 10:52:01 2016 -0400

    Merge topic 'ExternalProject-HTTP_HEADER' into next
    
    5e6716db Help: Add notes for topic 'ExternalProject-HTTP_HEADER'
    0f424c3d ExternalProject: Add HTTP_HEADER


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5e6716dbacb9fd4ef7537db5578ac15a0fae04f8
commit 5e6716dbacb9fd4ef7537db5578ac15a0fae04f8
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Sep 19 10:51:08 2016 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Sep 19 10:51:08 2016 -0400

    Help: Add notes for topic 'ExternalProject-HTTP_HEADER'

diff --git a/Help/release/dev/ExternalProject-HTTP_HEADER.rst b/Help/release/dev/ExternalProject-HTTP_HEADER.rst
new file mode 100644
index 0000000..927d1b2
--- /dev/null
+++ b/Help/release/dev/ExternalProject-HTTP_HEADER.rst
@@ -0,0 +1,5 @@
+ExternalProject-HTTP_HEADER
+---------------------------
+
+* The :module:`ExternalProject` module gained a ``HTTP_HEADER``
+  option to add http download headers.

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0f424c3d07a613820950e04e00431d57ba7f829f
commit 0f424c3d07a613820950e04e00431d57ba7f829f
Author:     Ruslan Baratov <ruslan_baratov at yahoo.com>
AuthorDate: Mon Sep 19 15:41:00 2016 +0300
Commit:     Ruslan Baratov <ruslan_baratov at yahoo.com>
CommitDate: Mon Sep 19 16:05:12 2016 +0300

    ExternalProject: Add HTTP_HEADER

diff --git a/Auxiliary/vim/syntax/cmake.vim b/Auxiliary/vim/syntax/cmake.vim
index 53681a9..11b0fcb 100644
--- a/Auxiliary/vim/syntax/cmake.vim
+++ b/Auxiliary/vim/syntax/cmake.vim
@@ -44,7 +44,7 @@ syn keyword cmakeModule
             \ contained
 
 syn keyword cmakeKWExternalProject
-            \ ALGO ALWAYS BINARY_DIR BUILD_ALWAYS BUILD_BYPRODUCTS BUILD_COMMAND BUILD_IN_SOURCE BYPRODUCTS CMAKE_ARGS CMAKE_CACHE_ARGS CMAKE_CACHE_DEFAULT_ARGS COMMAND COMMENT CONFIGURE_COMMAND CVS CVSROOT CVS_ CVS_MODULE CVS_REPOSITORY CVS_TAG DEPENDEES DEPENDERS DEPENDS DIRECTORY DOWNLOAD_COMMAND DOWNLOAD_DIR DOWNLOAD_NAME DOWNLOAD_NO_PROGRESS EP_BASE EP_INDEPENDENT_STEP_TARGETS EP_PREFIX EP_STEP_TARGETS EP_UPDATE_DISCONNECTED EXCLUDE_FROM_ALL EXCLUDE_FROM_MAIN FORCE GIT_REMOTE_NAME GIT_REPOSITORY GIT_SUBMODULES GIT_TAG HG_REPOSITORY HG_TAG INDEPENDENT INDEPENDENT_STEP_TARGETS INSTALL_COMMAND INSTALL_DIR JOB_POOLS LIST_SEPARATOR LOG LOG_BUILD LOG_CONFIGURE LOG_DOWNLOAD LOG_INSTALL LOG_TEST LOG_UPDATE NO_DEPENDS PATCH_COMMAND PREFIX PROPERTY SOURCE_DIR STAMP_DIR STEP_TARGETS SVN_ SVN_PASSWORD SVN_REPOSITORY SVN_REVISION SVN_TRUST_CERT SVN_USERNAME TEST_AFTER_INSTALL TEST_BEFORE_INSTALL TEST_COMMAND TEST_EXCLUDE_FROM_MAIN TIMEOUT TLS_CAINFO TLS_VERIFY TMP_DIR UPDATE_COMMAND UPDATE_DISCONNECTED URL URL_HASH HTTP_USERNAME HTTP_PASSWORD USES_TERMINAL USES_TERMINAL_BUILD USES_TERMINAL_CONFIGURE USES_TERMINAL_DOWNLOAD USES_TERMINAL_INSTALL USES_TERMINAL_TEST USES_TERMINAL_UPDATE WORKING_DIRECTORY _COMMAND _DIR
+            \ ALGO ALWAYS BINARY_DIR BUILD_ALWAYS BUILD_BYPRODUCTS BUILD_COMMAND BUILD_IN_SOURCE BYPRODUCTS CMAKE_ARGS CMAKE_CACHE_ARGS CMAKE_CACHE_DEFAULT_ARGS COMMAND COMMENT CONFIGURE_COMMAND CVS CVSROOT CVS_ CVS_MODULE CVS_REPOSITORY CVS_TAG DEPENDEES DEPENDERS DEPENDS DIRECTORY DOWNLOAD_COMMAND DOWNLOAD_DIR DOWNLOAD_NAME DOWNLOAD_NO_PROGRESS EP_BASE EP_INDEPENDENT_STEP_TARGETS EP_PREFIX EP_STEP_TARGETS EP_UPDATE_DISCONNECTED EXCLUDE_FROM_ALL EXCLUDE_FROM_MAIN FORCE GIT_REMOTE_NAME GIT_REPOSITORY GIT_SUBMODULES GIT_TAG HG_REPOSITORY HG_TAG INDEPENDENT INDEPENDENT_STEP_TARGETS INSTALL_COMMAND INSTALL_DIR JOB_POOLS LIST_SEPARATOR LOG LOG_BUILD LOG_CONFIGURE LOG_DOWNLOAD LOG_INSTALL LOG_TEST LOG_UPDATE NO_DEPENDS PATCH_COMMAND PREFIX PROPERTY SOURCE_DIR STAMP_DIR STEP_TARGETS SVN_ SVN_PASSWORD SVN_REPOSITORY SVN_REVISION SVN_TRUST_CERT SVN_USERNAME TEST_AFTER_INSTALL TEST_BEFORE_INSTALL TEST_COMMAND TEST_EXCLUDE_FROM_MAIN TIMEOUT TLS_CAINFO TLS_VERIFY TMP_DIR UPDATE_COMMAND UPDATE_DISCONNECTED URL URL_HASH HTTP_USERNAME HTTP_PASSWORD HTTP_HEADER USES_TERMINAL USES_TERMINAL_BUILD USES_TERMINAL_CONFIGURE USES_TERMINAL_DOWNLOAD USES_TERMINAL_INSTALL USES_TERMINAL_TEST USES_TERMINAL_UPDATE WORKING_DIRECTORY _COMMAND _DIR
             \ contained
 
 syn keyword cmakeKWadd_compile_options
diff --git a/Modules/ExternalProject-download.cmake.in b/Modules/ExternalProject-download.cmake.in
index 0e82adb..8e39a7e 100644
--- a/Modules/ExternalProject-download.cmake.in
+++ b/Modules/ExternalProject-download.cmake.in
@@ -136,6 +136,7 @@ foreach(i RANGE ${retry_number})
         STATUS status
         LOG log
         @USERPWD_ARGS@
+        @HTTP_HEADERS_ARGS@
     )
 
     list(GET status 0 status_code)
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index 31fa459..79054a1 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -79,6 +79,8 @@ Create custom targets to build projects in external trees
     Username for download operation
   ``HTTP_PASSWORD <username>``
     Password for download operation
+  ``HTTP_HEADER <header>``
+    HTTP header for download operation. Suboption can be repeated several times.
   ``TLS_VERIFY <bool>``
     Should certificate for https be checked
   ``TLS_CAINFO <file>``
@@ -862,7 +864,7 @@ endif()
 
 endfunction(_ep_write_gitupdate_script)
 
-function(_ep_write_downloadfile_script script_filename REMOTE LOCAL timeout no_progress hash tls_verify tls_cainfo userpwd)
+function(_ep_write_downloadfile_script script_filename REMOTE LOCAL timeout no_progress hash tls_verify tls_cainfo userpwd http_headers)
   if(timeout)
     set(TIMEOUT_ARGS TIMEOUT ${timeout})
     set(TIMEOUT_MSG "${timeout} seconds")
@@ -916,6 +918,16 @@ function(_ep_write_downloadfile_script script_filename REMOTE LOCAL timeout no_p
     set(USERPWD_ARGS USERPWD "${userpwd}")
   endif()
 
+  set(HTTP_HEADERS_ARGS "")
+  if(NOT http_headers STREQUAL "")
+    foreach(header ${http_headers})
+      set(
+          HTTP_HEADERS_ARGS
+          "HTTPHEADER \"${header}\"\n        ${HTTP_HEADERS_ARGS}"
+      )
+    endforeach()
+  endif()
+
   # Used variables:
   # * TLS_VERIFY_CODE
   # * TLS_CAINFO_CODE
@@ -927,6 +939,7 @@ function(_ep_write_downloadfile_script script_filename REMOTE LOCAL timeout no_p
   # * TIMEOUT_ARGS
   # * TIMEOUT_MSG
   # * USERPWD_ARGS
+  # * HTTP_HEADERS_ARGS
   configure_file(
       "${_ExternalProject_SELF_DIR}/ExternalProject-download.cmake.in"
       "${script_filename}"
@@ -1932,8 +1945,9 @@ function(_ep_add_download_command name)
         get_property(tls_cainfo TARGET ${name} PROPERTY _EP_TLS_CAINFO)
         get_property(http_username TARGET ${name} PROPERTY _EP_HTTP_USERNAME)
         get_property(http_password TARGET ${name} PROPERTY _EP_HTTP_PASSWORD)
+        get_property(http_headers TARGET ${name} PROPERTY _EP_HTTP_HEADER)
         set(download_script "${stamp_dir}/download-${name}.cmake")
-        _ep_write_downloadfile_script("${download_script}" "${url}" "${file}" "${timeout}" "${no_progress}" "${hash}" "${tls_verify}" "${tls_cainfo}" "${http_username}:${http_password}")
+        _ep_write_downloadfile_script("${download_script}" "${url}" "${file}" "${timeout}" "${no_progress}" "${hash}" "${tls_verify}" "${tls_cainfo}" "${http_username}:${http_password}" "${http_headers}")
         set(cmd ${CMAKE_COMMAND} -P "${download_script}"
           COMMAND)
         if (no_extract)

-----------------------------------------------------------------------

Summary of changes:
 Auxiliary/vim/syntax/cmake.vim                   |    2 +-
 Help/release/dev/ExternalProject-HTTP_HEADER.rst |    5 +++++
 Modules/ExternalProject-download.cmake.in        |    1 +
 Modules/ExternalProject.cmake                    |   18 ++++++++++++++++--
 4 files changed, 23 insertions(+), 3 deletions(-)
 create mode 100644 Help/release/dev/ExternalProject-HTTP_HEADER.rst


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list