diff -Nru cmake-3.3.2is3.2.2/Auxiliary/bash-completion/cmake cmake-3.5.0/Auxiliary/bash-completion/cmake --- cmake-3.3.2is3.2.2/Auxiliary/bash-completion/cmake 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/bash-completion/cmake 2016-03-08 14:36:21.000000000 +0000 @@ -3,7 +3,14 @@ _cmake() { local cur prev words cword split=false - _init_completion -n := || return + if type -t _init_completion >/dev/null; then + _init_completion -n = || return + else + # manual initialization for older bash completion versions + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + fi # Workaround for options like -DCMAKE_BUILD_TYPE=Release local prefix= diff -Nru cmake-3.3.2is3.2.2/Auxiliary/bash-completion/cpack cmake-3.5.0/Auxiliary/bash-completion/cpack --- cmake-3.3.2is3.2.2/Auxiliary/bash-completion/cpack 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/bash-completion/cpack 2016-03-08 14:36:21.000000000 +0000 @@ -3,7 +3,14 @@ _cpack() { local cur prev words cword - _init_completion -n = || return + if type -t _init_completion >/dev/null; then + _init_completion -n = || return + else + # manual initialization for older bash completion versions + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + fi case "$prev" in -G) diff -Nru cmake-3.3.2is3.2.2/Auxiliary/bash-completion/ctest cmake-3.5.0/Auxiliary/bash-completion/ctest --- cmake-3.3.2is3.2.2/Auxiliary/bash-completion/ctest 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/bash-completion/ctest 2016-03-08 14:36:21.000000000 +0000 @@ -3,7 +3,14 @@ _ctest() { local cur prev words cword - _init_completion -n = || return + if type -t _init_completion >/dev/null; then + _init_completion -n = || return + else + # manual initialization for older bash completion versions + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + fi case "$prev" in -C|--build-config) diff -Nru cmake-3.3.2is3.2.2/Auxiliary/cmake-indent.vim cmake-3.5.0/Auxiliary/cmake-indent.vim --- cmake-3.3.2is3.2.2/Auxiliary/cmake-indent.vim 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/cmake-indent.vim 2016-03-08 14:36:21.000000000 +0000 @@ -16,7 +16,7 @@ " Version: $Revision$ " " Licence: The CMake license applies to this file. See -" http://www.cmake.org/licensing +" https://cmake.org/licensing " This implies that distribution with Vim is allowed if exists("b:did_indent") diff -Nru cmake-3.3.2is3.2.2/Auxiliary/cmake-mode.el cmake-3.5.0/Auxiliary/cmake-mode.el --- cmake-3.3.2is3.2.2/Auxiliary/cmake-mode.el 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/cmake-mode.el 2016-03-08 14:36:21.000000000 +0000 @@ -43,7 +43,14 @@ (setenv \"PATH\" (concat (getenv \"PATH\") \":/usr/local/cmake/bin\"))" :type 'file :group 'cmake) -;; + +;; Keywords +(defconst cmake-keywords-block-open '("IF" "MACRO" "FOREACH" "ELSE" "ELSEIF" "WHILE" "FUNCTION")) +(defconst cmake-keywords-block-close '("ENDIF" "ENDFOREACH" "ENDMACRO" "ELSE" "ELSEIF" "ENDWHILE" "ENDFUNCTION")) +(defconst cmake-keywords + (let ((kwds (append cmake-keywords-block-open cmake-keywords-block-close nil))) + (delete-dups kwds))) + ;; Regular expressions used by line indentation function. ;; (defconst cmake-regex-blank "^[ \t]*$") @@ -51,40 +58,39 @@ (defconst cmake-regex-paren-left "(") (defconst cmake-regex-paren-right ")") (defconst cmake-regex-argument-quoted - "\"\\([^\"\\\\]\\|\\\\\\(.\\|\n\\)\\)*\"") + (rx ?\" (* (or (not (any ?\" ?\\)) (and ?\\ anything))) ?\")) (defconst cmake-regex-argument-unquoted - "\\([^ \t\r\n()#\"\\\\]\\|\\\\.\\)\\([^ \t\r\n()#\\\\]\\|\\\\.\\)*") -(defconst cmake-regex-token (concat "\\(" cmake-regex-comment - "\\|" cmake-regex-paren-left - "\\|" cmake-regex-paren-right - "\\|" cmake-regex-argument-unquoted - "\\|" cmake-regex-argument-quoted - "\\)")) -(defconst cmake-regex-indented (concat "^\\(" - cmake-regex-token - "\\|" "[ \t\r\n]" - "\\)*")) + (rx (or (not (any space "()#\"\\\n")) (and ?\\ nonl)) + (* (or (not (any space "()#\\\n")) (and ?\\ nonl))))) +(defconst cmake-regex-token + (rx-to-string `(group (or (regexp ,cmake-regex-comment) + ?( ?) + (regexp ,cmake-regex-argument-unquoted) + (regexp ,cmake-regex-argument-quoted))))) +(defconst cmake-regex-indented + (rx-to-string `(and bol (* (group (or (regexp ,cmake-regex-token) (any space ?\n))))))) (defconst cmake-regex-block-open - "^\\(if\\|macro\\|foreach\\|else\\|elseif\\|while\\|function\\)$") + (rx-to-string `(and symbol-start (or ,@(append cmake-keywords-block-open + (mapcar 'downcase cmake-keywords-block-open))) symbol-end))) (defconst cmake-regex-block-close - "^[ \t]*\\(endif\\|endforeach\\|endmacro\\|else\\|elseif\\|endwhile\\|endfunction\\)[ \t]*(") + (rx-to-string `(and symbol-start (or ,@(append cmake-keywords-block-close + (mapcar 'downcase cmake-keywords-block-close))) symbol-end))) +(defconst cmake-regex-close + (rx-to-string `(and bol (* space) (regexp ,cmake-regex-block-close) + (* space) (regexp ,cmake-regex-paren-left)))) ;------------------------------------------------------------------------------ -;; -;; Helper functions for line indentation function. -;; +;; Line indentation helper functions + (defun cmake-line-starts-inside-string () "Determine whether the beginning of the current line is in a string." - (if (save-excursion - (beginning-of-line) - (let ((parse-end (point))) - (goto-char (point-min)) - (nth 3 (parse-partial-sexp (point) parse-end)) - ) - ) - t - nil + (save-excursion + (beginning-of-line) + (let ((parse-end (point))) + (goto-char (point-min)) + (nth 3 (parse-partial-sexp (point) parse-end)) + ) ) ) @@ -111,57 +117,40 @@ ;; Line indentation function. ;; (defun cmake-indent () - "Indent current line as CMAKE code." + "Indent current line as CMake code." (interactive) - (if (cmake-line-starts-inside-string) - () + (unless (cmake-line-starts-inside-string) (if (bobp) (cmake-indent-line-to 0) (let (cur-indent) - (save-excursion (beginning-of-line) - (let ((point-start (point)) (case-fold-search t) ;; case-insensitive token) - ; Search back for the last indented line. (cmake-find-last-indented-line) - ; Start with the indentation on this line. (setq cur-indent (current-indentation)) - ; Search forward counting tokens that adjust indentation. (while (re-search-forward cmake-regex-token point-start t) (setq token (match-string 0)) - (if (string-match (concat "^" cmake-regex-paren-left "$") token) - (setq cur-indent (+ cur-indent cmake-tab-width)) - ) - (if (string-match (concat "^" cmake-regex-paren-right "$") token) - (setq cur-indent (- cur-indent cmake-tab-width)) - ) - (if (and - (string-match cmake-regex-block-open token) - (looking-at (concat "[ \t]*" cmake-regex-paren-left)) - ) - (setq cur-indent (+ cur-indent cmake-tab-width)) - ) + (when (or (string-match (concat "^" cmake-regex-paren-left "$") token) + (and (string-match cmake-regex-block-open token) + (looking-at (concat "[ \t]*" cmake-regex-paren-left)))) + (setq cur-indent (+ cur-indent cmake-tab-width))) + (when (string-match (concat "^" cmake-regex-paren-right "$") token) + (setq cur-indent (- cur-indent cmake-tab-width))) ) (goto-char point-start) - - ; If this is the end of a block, decrease indentation. - (if (looking-at cmake-regex-block-close) - (setq cur-indent (- cur-indent cmake-tab-width)) + ;; If next token closes the block, decrease indentation + (when (looking-at cmake-regex-close) + (setq cur-indent (- cur-indent cmake-tab-width)) ) ) ) - ; Indent this line by the amount selected. - (if (< cur-indent 0) - (cmake-indent-line-to 0) - (cmake-indent-line-to cur-indent) - ) + (cmake-indent-line-to (max cur-indent 0)) ) ) ) @@ -183,17 +172,19 @@ ;; ;; Helper functions for buffer ;; -(defun unscreamify-cmake-buffer () +(defun cmake-unscreamify-buffer () "Convert all CMake commands to lowercase in buffer." (interactive) - (goto-char (point-min)) - (while (re-search-forward "^\\([ \t]*\\)\\(\\w+\\)\\([ \t]*(\\)" nil t) - (replace-match - (concat - (match-string 1) - (downcase (match-string 2)) - (match-string 3)) - t)) + (save-excursion + (goto-char (point-min)) + (while (re-search-forward "^\\([ \t]*\\)\\_<\\(\\(?:\\w\\|\\s_\\)+\\)\\_>\\([ \t]*(\\)" nil t) + (replace-match + (concat + (match-string 1) + (downcase (match-string 2)) + (match-string 3)) + t)) + ) ) ;------------------------------------------------------------------------------ @@ -202,18 +193,32 @@ ;; Keyword highlighting regex-to-face map. ;; (defconst cmake-font-lock-keywords - (list '("^[ \t]*\\([[:word:]_]+\\)[ \t]*(" 1 font-lock-function-name-face)) - "Highlighting expressions for CMAKE mode." - ) + `((,(rx-to-string `(and symbol-start + (or ,@cmake-keywords + ,@(mapcar #'downcase cmake-keywords)) + symbol-end)) + . font-lock-keyword-face) + (,(rx symbol-start (group (+ (or word (syntax symbol)))) (* blank) ?\() + 1 font-lock-function-name-face) + (,(rx "${" (group (+(any alnum "-_+/."))) "}") + 1 font-lock-variable-name-face t) + ) + "Highlighting expressions for CMake mode.") ;------------------------------------------------------------------------------ -;; -;; Syntax table for this mode. Initialize to nil so that it is -;; regenerated when the cmake-mode function is called. -;; -(defvar cmake-mode-syntax-table nil "Syntax table for cmake-mode.") -(setq cmake-mode-syntax-table nil) +;; Syntax table for this mode. +(defvar cmake-mode-syntax-table nil + "Syntax table for CMake mode.") +(or cmake-mode-syntax-table + (setq cmake-mode-syntax-table + (let ((table (make-syntax-table))) + (modify-syntax-entry ?\( "()" table) + (modify-syntax-entry ?\) ")(" table) + (modify-syntax-entry ?# "<" table) + (modify-syntax-entry ?\n ">" table) + (modify-syntax-entry ?$ "'" table) + table))) ;; ;; User hook entry point. @@ -227,39 +232,23 @@ ;------------------------------------------------------------------------------ -;; -;; CMake mode startup function. +;; For compatibility with Emacs < 24 +(defalias 'cmake--parent-mode + (if (fboundp 'prog-mode) 'prog-mode 'fundamental-mode)) + +;;------------------------------------------------------------------------------ +;; Mode definition. ;; ;;;###autoload -(defun cmake-mode () - "Major mode for editing CMake listfiles." - (interactive) - (kill-all-local-variables) - (setq major-mode 'cmake-mode) - (setq mode-name "CMAKE") - - ; Create the syntax table - (setq cmake-mode-syntax-table (make-syntax-table)) - (set-syntax-table cmake-mode-syntax-table) - (modify-syntax-entry ?\( "()" cmake-mode-syntax-table) - (modify-syntax-entry ?\) ")(" cmake-mode-syntax-table) - (modify-syntax-entry ?# "<" cmake-mode-syntax-table) - (modify-syntax-entry ?\n ">" cmake-mode-syntax-table) +(define-derived-mode cmake-mode cmake--parent-mode "CMake" + "Major mode for editing CMake source files." ; Setup font-lock mode. - (make-local-variable 'font-lock-defaults) - (setq font-lock-defaults '(cmake-font-lock-keywords)) - + (set (make-local-variable 'font-lock-defaults) '(cmake-font-lock-keywords)) ; Setup indentation function. - (make-local-variable 'indent-line-function) - (setq indent-line-function 'cmake-indent) - + (set (make-local-variable 'indent-line-function) 'cmake-indent) ; Setup comment syntax. - (make-local-variable 'comment-start) - (setq comment-start "#") - - ; Run user hooks. - (run-hooks 'cmake-mode-hook)) + (set (make-local-variable 'comment-start) "#")) ; Help mode starts here diff -Nru cmake-3.3.2is3.2.2/Auxiliary/cmake-syntax.vim cmake-3.5.0/Auxiliary/cmake-syntax.vim --- cmake-3.3.2is3.2.2/Auxiliary/cmake-syntax.vim 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Auxiliary/cmake-syntax.vim 2016-03-08 14:36:21.000000000 +0000 @@ -16,7 +16,7 @@ " Version: $Revision$ " " Licence: The CMake license applies to this file. See -" http://www.cmake.org/licensing +" https://cmake.org/licensing " This implies that distribution with Vim is allowed " For version 5.x: Clear all syntax items diff -Nru cmake-3.3.2is3.2.2/bootstrap cmake-3.5.0/bootstrap --- cmake-3.3.2is3.2.2/bootstrap 2015-04-13 17:09:03.000000000 +0000 +++ cmake-3.5.0/bootstrap 2016-03-08 14:36:25.000000000 +0000 @@ -63,9 +63,11 @@ cmake_data_dir_keyword="OTHER" cmake_doc_dir_keyword="OTHER" cmake_man_dir_keyword="OTHER" +cmake_xdgdata_dir_keyword="OTHER" cmake_data_dir="" cmake_doc_dir="" cmake_man_dir="" +cmake_xdgdata_dir="" cmake_init_file="" cmake_bootstrap_system_libs="" cmake_bootstrap_qt_gui="" @@ -74,6 +76,7 @@ cmake_sphinx_html="" cmake_sphinx_qthelp="" cmake_sphinx_build="" +cmake_sphinx_flags="" # Determine whether this is a Cygwin environment. if echo "${cmake_system}" | grep CYGWIN >/dev/null 2>&1; then @@ -213,6 +216,7 @@ cmake_data_dir_default="`cmake_install_dest_default DATA ${cmake_data_dir_keyword}`" cmake_doc_dir_default="`cmake_install_dest_default DOC ${cmake_doc_dir_keyword}`" cmake_man_dir_default="`cmake_install_dest_default MAN ${cmake_man_dir_keyword}`" +cmake_xdgdata_dir_default="`cmake_install_dest_default XDGDATA ${cmake_xdgdata_dir_keyword}`" CMAKE_KNOWN_C_COMPILERS="cc gcc xlc icc tcc" CMAKE_KNOWN_CXX_COMPILERS="aCC xlC CC g++ c++ icc como " @@ -247,6 +251,7 @@ cmCommandArgumentLexer \ cmCommandArgumentParser \ cmCommandArgumentParserHelper \ + cmCommonTargetGenerator \ cmCPackPropertiesGenerator \ cmDefinitions \ cmDepends \ @@ -257,22 +262,28 @@ cmPropertyMap \ cmPropertyDefinition \ cmPropertyDefinitionMap \ - cmMakeDepend \ cmMakefile \ + cmExportBuildFileGenerator \ cmExportFileGenerator \ cmExportInstallFileGenerator \ cmExportTryCompileFileGenerator \ cmExportSet \ cmExportSetMap \ - cmInstallDirectoryGenerator \ + cmExternalMakefileProjectGenerator \ + cmGeneratorExpressionEvaluationFile \ cmGeneratedFileStream \ cmGeneratorTarget \ + cmGeneratorExpressionContext \ cmGeneratorExpressionDAGChecker \ cmGeneratorExpressionEvaluator \ cmGeneratorExpressionLexer \ + cmGeneratorExpressionNode \ cmGeneratorExpressionParser \ cmGeneratorExpression \ + cmGlobalCommonGenerator \ cmGlobalGenerator \ + cmInstallDirectoryGenerator \ + cmLocalCommonGenerator \ cmLocalGenerator \ cmInstalledFile \ cmInstallGenerator \ @@ -283,6 +294,7 @@ cmScriptGenerator \ cmSourceFile \ cmSourceFileLocation \ + cmState \ cmSystemTools \ cmTestGenerator \ cmVersion \ @@ -293,6 +305,7 @@ cmMakefileLibraryTargetGenerator \ cmMakefileTargetGenerator \ cmMakefileUtilityTargetGenerator \ + cmOutputConverter \ cmOSXBundleGenerator \ cmNewLineStyle \ cmBootstrapCommands1 \ @@ -312,11 +325,6 @@ cmExprLexer \ cmExprParser \ cmExprParserHelper \ - cmGlobalNinjaGenerator \ - cmLocalNinjaGenerator \ - cmNinjaTargetGenerator \ - cmNinjaNormalTargetGenerator \ - cmNinjaUtilityTargetGenerator \ " if ${cmake_system_mingw}; then @@ -334,13 +342,15 @@ EncodingC \ ProcessWin32 \ String \ - System" + System \ + Terminal" else KWSYS_C_SOURCES="\ EncodingC \ ProcessUNIX \ String \ - System" + System \ + Terminal" fi KWSYS_CXX_SOURCES="\ @@ -363,18 +373,8 @@ String.h \ String.hxx \ System.h \ - SystemTools.hxx" - -KWSYS_IOS_FILES=" - fstream \ - iosfwd \ - iostream \ - sstream" - -KWIML_FILES=' - ABI.h - INT.h -' + SystemTools.hxx \ + Terminal.h" # Display CMake bootstrap usage cmake_usage() @@ -404,6 +404,8 @@ --no-system-zlib use cmake-provided zlib library (default) --system-bzip2 use system-installed bzip2 library --no-system-bzip2 use cmake-provided bzip2 library (default) + --system-liblzma use system-installed liblzma library + --no-system-liblzma use cmake-provided liblzma library (default) --system-libarchive use system-installed libarchive library --no-system-libarchive use cmake-provided libarchive library (default) @@ -415,6 +417,7 @@ --sphinx-html build html help with Sphinx --sphinx-qthelp build qch help with Sphinx --sphinx-build= use as the sphinx-build executable + --sphinx-flags= pass to sphinx-build executable Directory and file names: --prefix=PREFIX install files in tree rooted at PREFIX @@ -425,6 +428,8 @@ ['"${cmake_doc_dir_default}"'] --mandir=DIR install man pages files in PREFIX/DIR/manN ['"${cmake_man_dir_default}"'] + --xdgdatadir=DIR install XDG specific files in PREFIX/DIR + ['"${cmake_xdgdata_dir_default}"'] ' exit 10 } @@ -452,6 +457,18 @@ exit ${res} } +cmake_generate_file () +{ + OUTFILE="$1" + CONTENT="$2" + echo "$CONTENT" > "$OUTFILE.tmp" + if "${_diff}" "$OUTFILE.tmp" "$OUTFILE" > /dev/null 2> /dev/null ; then + rm -f "$OUTFILE.tmp" + else + mv -f "$OUTFILE.tmp" "$OUTFILE" + fi +} + # Replace KWSYS_NAMESPACE with cmsys cmake_replace_string () { @@ -489,31 +506,8 @@ s/@KWSYS_LFS_AVAILABLE@/${KWSYS_LFS_AVAILABLE}/g; s/@KWSYS_LFS_REQUESTED@/${KWSYS_LFS_REQUESTED}/g; s/@KWSYS_NAME_IS_KWSYS@/${KWSYS_NAME_IS_KWSYS}/g; - s/@KWSYS_IOS_USE_ANSI@/${KWSYS_IOS_USE_ANSI}/g; - s/@KWSYS_IOS_HAVE_STD@/${KWSYS_IOS_HAVE_STD}/g; - s/@KWSYS_IOS_USE_SSTREAM@/${KWSYS_IOS_USE_SSTREAM}/g; - s/@KWSYS_IOS_USE_STRSTREAM_H@/${KWSYS_IOS_USE_STRSTREAM_H}/g; - s/@KWSYS_IOS_USE_STRSTREA_H@/${KWSYS_IOS_USE_STRSTREA_H}/g; - s/@KWSYS_IOS_HAVE_BINARY@/${KWSYS_IOS_HAVE_BINARY}/g; - s/@KWSYS_STL_HAVE_STD@/${KWSYS_STL_HAVE_STD}/g; - s/@KWSYS_STL_STRING_HAVE_ISTREAM@/${KWSYS_STL_STRING_HAVE_ISTREAM}/g; - s/@KWSYS_STL_STRING_HAVE_OSTREAM@/${KWSYS_STL_STRING_HAVE_OSTREAM}/g; - s/@KWSYS_STL_STRING_HAVE_NEQ_CHAR@/${KWSYS_STL_STRING_HAVE_NEQ_CHAR}/g; - s/@KWSYS_STL_HAS_ITERATOR_TRAITS@/${KWSYS_STL_HAS_ITERATOR_TRAITS}/g; - s/@KWSYS_STL_HAS_ITERATOR_CATEGORY@/${KWSYS_STL_HAS_ITERATOR_CATEGORY}/g; - s/@KWSYS_STL_HAS___ITERATOR_CATEGORY@/${KWSYS_STL_HAS___ITERATOR_CATEGORY}/g; - s/@KWSYS_STL_HAS_ALLOCATOR_TEMPLATE@/${KWSYS_STL_HAS_ALLOCATOR_TEMPLATE}/g; - s/@KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE@/${KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE}/g; - s/@KWSYS_STL_HAS_ALLOCATOR_REBIND@/${KWSYS_STL_HAS_ALLOCATOR_REBIND}/g; - s/@KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT@/${KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT}/g; - s/@KWSYS_STL_HAS_ALLOCATOR_OBJECTS@/${KWSYS_STL_HAS_ALLOCATOR_OBJECTS}/g; s/@KWSYS_STL_HAS_WSTRING@/${KWSYS_STL_HAS_WSTRING}/g; - s/@KWSYS_CXX_HAS_CSTDDEF@/${KWSYS_CXX_HAS_CSTDDEF}/g; - s/@KWSYS_CXX_HAS_NULL_TEMPLATE_ARGS@/${KWSYS_CXX_HAS_NULL_TEMPLATE_ARGS}/g; - s/@KWSYS_CXX_HAS_MEMBER_TEMPLATES@/${KWSYS_CXX_HAS_MEMBER_TEMPLATES}/g; - s/@KWSYS_CXX_HAS_FULL_SPECIALIZATION@/${KWSYS_CXX_HAS_FULL_SPECIALIZATION}/g; - s/@KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP@/${KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP}/g; - s/@KWSYS_STAT_HAS_ST_MTIM@/${KWSYS_STAT_HAS_ST_MTIM}/g;}" >> "${OUTFILE}${_tmp}" + }" >> "${OUTFILE}${_tmp}" if [ -f "${OUTFILE}${_tmp}" ]; then if "${_diff}" "${OUTFILE}" "${OUTFILE}${_tmp}" > /dev/null 2> /dev/null ; then #echo "Files are the same" @@ -592,7 +586,7 @@ echo "Test produced non-zero return code" return 3 fi - echo "Test succeded" + echo "Test succeeded" return 0 } @@ -636,13 +630,14 @@ --datadir=*) cmake_data_dir=`cmake_arg "$1"` ;; --docdir=*) cmake_doc_dir=`cmake_arg "$1"` ;; --mandir=*) cmake_man_dir=`cmake_arg "$1"` ;; + --xdgdatadir=*) cmake_xdgdata_dir=`cmake_arg "$1"` ;; --init=*) cmake_init_file=`cmake_arg "$1"` ;; --system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=1" ;; --no-system-libs) cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARIES=0" ;; - --system-bzip2|--system-curl|--system-expat|--system-jsoncpp|--system-libarchive|--system-zlib) + --system-bzip2|--system-curl|--system-expat|--system-jsoncpp|--system-libarchive|--system-zlib|--system-liblzma) lib=`cmake_arg "$1" "--system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=1" ;; - --no-system-bzip2|--no-system-curl|--no-system-expat|--no-system-jsoncpp|--no-system-libarchive|--no-system-zlib) + --no-system-bzip2|--no-system-curl|--no-system-expat|--no-system-jsoncpp|--no-system-libarchive|--no-system-zlib|--no-system-liblzma) lib=`cmake_arg "$1" "--no-system-"` cmake_bootstrap_system_libs="${cmake_bootstrap_system_libs} -DCMAKE_USE_SYSTEM_LIBRARY_`cmake_toupper $lib`=0" ;; --qt-gui) cmake_bootstrap_qt_gui="1" ;; @@ -652,6 +647,7 @@ --sphinx-html) cmake_sphinx_html="1" ;; --sphinx-qthelp) cmake_sphinx_qthelp="1" ;; --sphinx-build=*) cmake_sphinx_build=`cmake_arg "$1"` ;; + --sphinx-flags=*) cmake_sphinx_flags=`cmake_arg "$1"` ;; --help) cmake_usage ;; --version) cmake_version_display ; exit 2 ;; --verbose) cmake_verbose=TRUE ;; @@ -721,18 +717,6 @@ cmake_error 4 "Cannot create directory ${cmake_bootstrap_dir}/cmsys" fi -for a in stl ios; do - [ -d "cmsys/${a}" ] || mkdir "cmsys/${a}" - if [ ! -d "cmsys/${a}" ]; then - cmake_error 5 "Cannot create directory ${cmake_bootstrap_dir}/cmsys/${a}" - fi -done - -[ -d "cmIML" ] || mkdir "cmIML" -if [ ! -d "cmIML" ]; then - cmake_error 12 "Cannot create directory ${cmake_bootstrap_dir}/cmIML" -fi - # Delete all the bootstrap files rm -f "${cmake_bootstrap_dir}/cmake_bootstrap.log" rm -f "${cmake_bootstrap_dir}/cmConfigure.h${_tmp}" @@ -1192,38 +1176,12 @@ KWSYS_BUILD_SHARED=0 KWSYS_LFS_AVAILABLE=0 KWSYS_LFS_REQUESTED=0 -KWSYS_IOS_USE_STRSTREAM_H=0 -KWSYS_IOS_USE_STRSTREA_H=0 -KWSYS_IOS_HAVE_STD=0 -KWSYS_IOS_USE_SSTREAM=0 -KWSYS_IOS_USE_ANSI=0 -KWSYS_IOS_HAVE_BINARY=0 -KWSYS_STL_HAVE_STD=0 -KWSYS_STAT_HAS_ST_MTIM=0 -KWSYS_STL_STRING_HAVE_NEQ_CHAR=0 -KWSYS_STL_HAS_ITERATOR_TRAITS=0 -KWSYS_STL_HAS_ITERATOR_CATEGORY=0 -KWSYS_STL_HAS___ITERATOR_CATEGORY=0 -KWSYS_STL_HAS_ALLOCATOR_TEMPLATE=0 -KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE=0 -KWSYS_STL_HAS_ALLOCATOR_REBIND=0 -KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT=0 -KWSYS_STL_HAS_ALLOCATOR_OBJECTS=0 KWSYS_STL_HAS_WSTRING=0 KWSYS_CXX_HAS_SETENV=0 KWSYS_CXX_HAS_UNSETENV=0 KWSYS_CXX_HAS_ENVIRON_IN_STDLIB_H=0 KWSYS_CXX_HAS_UTIMENSAT=0 KWSYS_CXX_HAS_UTIMES=0 -KWSYS_CXX_HAS_CSTDDEF=0 -KWSYS_CXX_HAS_NULL_TEMPLATE_ARGS=0 -KWSYS_CXX_HAS_MEMBER_TEMPLATES=0 -KWSYS_CXX_HAS_FULL_SPECIALIZATION=0 -KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP=0 - -# Hardcode these kwsys features. They work on all known UNIX compilers anyway. -KWSYS_STL_STRING_HAVE_ISTREAM=1 -KWSYS_STL_STRING_HAVE_OSTREAM=1 if cmake_try_run "${cmake_cxx_compiler}" \ "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_SETENV" \ @@ -1253,151 +1211,7 @@ fi if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAVE_STD" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAVE_STD=1 - echo "${cmake_cxx_compiler} has STL in std:: namespace" -else - echo "${cmake_cxx_compiler} does not have STL in std:: namespace" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_USE_ANSI" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_USE_ANSI=1 - echo "${cmake_cxx_compiler} has ANSI streams" -else - echo "${cmake_cxx_compiler} does not have ANSI streams" -fi - -if [ "x$KWSYS_IOS_USE_ANSI" = "x1" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_HAVE_STD" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_HAVE_STD=1 - echo "${cmake_cxx_compiler} has streams in std:: namespace" - else - echo "${cmake_cxx_compiler} does not have streams in std:: namespace" - fi - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_USE_SSTREAM" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_USE_SSTREAM=1 - echo "${cmake_cxx_compiler} has sstream" - else - echo "${cmake_cxx_compiler} does not have sstream" - fi -fi - -if [ "x$KWSYS_IOS_USE_SSTREAM" = "x0" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_USE_STRSTREAM_H" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_USE_STRSTREAM_H=1 - echo "${cmake_cxx_compiler} has strstream.h" - else - echo "${cmake_cxx_compiler} does not have strstream.h" - fi - if [ "x$KWSYS_IOS_USE_STRSTREAM_H" = "x0" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_USE_STRSTREA_H" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_USE_STRSTREA_H=1 - echo "${cmake_cxx_compiler} has strstrea.h" - else - echo "${cmake_cxx_compiler} does not have strstrea.h" - fi - fi -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_STRING_HAVE_NEQ_CHAR -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_STRING_HAVE_NEQ_CHAR=1 - echo "${cmake_cxx_compiler} has operator!=(string, char*)" -else - echo "${cmake_cxx_compiler} does not have operator!=(string, char*)" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ITERATOR_TRAITS -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ITERATOR_TRAITS=1 - echo "${cmake_cxx_compiler} has stl iterator_traits" -else - echo "${cmake_cxx_compiler} does not have stl iterator_traits" -fi - -if [ "x${KWSYS_STL_HAS_ITERATOR_TRAITS}" = "x0" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ITERATOR_CATEGORY -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ITERATOR_CATEGORY=1 - echo "${cmake_cxx_compiler} has old iterator_category" - else - echo "${cmake_cxx_compiler} does not have old iterator_category" - fi - if [ "x${KWSYS_STL_HAS_ITERATOR_CATEGORY}" = "x0" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS___ITERATOR_CATEGORY -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS___ITERATOR_CATEGORY=1 - echo "${cmake_cxx_compiler} has old __iterator_category" - else - echo "${cmake_cxx_compiler} does not have old __iterator_category" - fi - fi -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ALLOCATOR_TEMPLATE -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ALLOCATOR_TEMPLATE=1 - echo "${cmake_cxx_compiler} has standard template allocator" -else - echo "${cmake_cxx_compiler} does not have standard template allocator" -fi - -if [ "x${KWSYS_STL_HAS_ALLOCATOR_TEMPLATE}" = "x1" ]; then - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ALLOCATOR_REBIND -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ALLOCATOR_REBIND=1 - echo "${cmake_cxx_compiler} has allocator<>::rebind<>" - else - echo "${cmake_cxx_compiler} does not have allocator<>::rebind<>" - fi - - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT=1 - echo "${cmake_cxx_compiler} has non-standard allocator<>::max_size argument" - else - echo "${cmake_cxx_compiler} does not have non-standard allocator<>::max_size argument" - fi -else - if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE=1 - echo "${cmake_cxx_compiler} has old non-template allocator" - else - echo "${cmake_cxx_compiler} does not have old non-template allocator" - fi -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ALLOCATOR_OBJECTS -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STL_HAS_ALLOCATOR_OBJECTS=1 - echo "${cmake_cxx_compiler} has stl containers supporting allocator objects" -else - echo "${cmake_cxx_compiler} does not have stl containers supporting allocator objects" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_WSTRING -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \ + "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_WSTRING" \ "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then KWSYS_STL_HAS_WSTRING=1 echo "${cmake_cxx_compiler} has stl wstring" @@ -1405,69 +1219,6 @@ echo "${cmake_cxx_compiler} does not have stl wstring" fi -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_CSTDDEF" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_CXX_HAS_CSTDDEF=1 - echo "${cmake_cxx_compiler} has header cstddef" -else - echo "${cmake_cxx_compiler} does not have header cstddef" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_NULL_TEMPLATE_ARGS" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - echo "${cmake_cxx_compiler} does not require template friends to use <>" -else - KWSYS_CXX_HAS_NULL_TEMPLATE_ARGS=1 - echo "${cmake_cxx_compiler} requires template friends to use <>" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_MEMBER_TEMPLATES" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_CXX_HAS_MEMBER_TEMPLATES=1 - echo "${cmake_cxx_compiler} supports member templates" -else - echo "${cmake_cxx_compiler} does not support member templates" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_FULL_SPECIALIZATION" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_CXX_HAS_FULL_SPECIALIZATION=1 - echo "${cmake_cxx_compiler} has standard template specialization syntax" -else - echo "${cmake_cxx_compiler} does not have standard template specialization syntax" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP=1 - echo "${cmake_cxx_compiler} has argument dependent lookup" -else - echo "${cmake_cxx_compiler} does not have argument dependent lookup" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_STAT_HAS_ST_MTIM" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_STAT_HAS_ST_MTIM=1 - echo "${cmake_cxx_compiler} has struct stat with st_mtim member" -else - echo "${cmake_cxx_compiler} does not have struct stat with st_mtim member" -fi - -if cmake_try_run "${cmake_cxx_compiler}" \ - "${cmake_cxx_flags} -DTEST_KWSYS_IOS_HAVE_BINARY -DKWSYS_IOS_USE_ANSI=${KWSYS_IOS_USE_ANSI} -DKWSYS_IOS_HAVE_STD=${KWSYS_IOS_HAVE_STD}" \ - "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then - KWSYS_IOS_HAVE_BINARY=1 - echo "${cmake_cxx_compiler} has ios::binary openmode" -else - echo "${cmake_cxx_compiler} does not have ios::binary openmode" -fi - # Just to be safe, let us store compiler and flags to the header file cmake_bootstrap_version='$Revision$' @@ -1539,26 +1290,7 @@ "${cmake_bootstrap_dir}/cmsys/${a}" KWSYS_NAMESPACE cmsys done -for a in ${KWSYS_IOS_FILES}; do - cmake_replace_string "${cmake_source_dir}/Source/kwsys/kwsys_ios_${a}.h.in" \ - "${cmake_bootstrap_dir}/cmsys/ios/${a}" KWSYS_NAMESPACE cmsys -done - -cmake_replace_string "${cmake_source_dir}/Source/kwsys/kwsys_stl.hxx.in" \ - "${cmake_bootstrap_dir}/cmsys/stl/stl.hxx_a" KWSYS_STL_HEADER_EXTRA "" - -cmake_replace_string "${cmake_bootstrap_dir}/cmsys/stl/stl.hxx_a" \ - "${cmake_bootstrap_dir}/cmsys/stl/stl.hxx_b" KWSYS_NAMESPACE cmsys - -for a in string vector set map algorithm; do - cmake_replace_string "${cmake_bootstrap_dir}/cmsys/stl/stl.hxx_b" \ - "${cmake_bootstrap_dir}/cmsys/stl/${a}" KWSYS_STL_HEADER ${a} -done - -for a in ${KWIML_FILES}; do - cmake_replace_string "${cmake_source_dir}/Utilities/KWIML/${a}.in" \ - "${cmake_bootstrap_dir}/cmIML/${a}" KWIML cmIML -done +cmake_generate_file "${cmake_bootstrap_dir}/cmThirdParty.h" "" # Generate Makefile dep="cmConfigure.h cmsys/*.hxx cmsys/*.h `cmake_escape \"${cmake_source_dir}\"`/Source/*.h" @@ -1601,9 +1333,9 @@ -DKWSYS_CXX_HAS_UTIMES=${KWSYS_CXX_HAS_UTIMES} " cmake_c_flags="${cmake_c_flags}-I`cmake_escape \"${cmake_bootstrap_dir}\"` -I`cmake_escape \"${cmake_source_dir}/Source\"` \ - -I`cmake_escape \"${cmake_bootstrap_dir}\"`" + -I`cmake_escape \"${cmake_source_dir}/Utilities\"`" cmake_cxx_flags="${cmake_cxx_flags} -I`cmake_escape \"${cmake_bootstrap_dir}\"` -I`cmake_escape \"${cmake_source_dir}/Source\"` \ - -I`cmake_escape \"${cmake_bootstrap_dir}\"`" + -I`cmake_escape \"${cmake_source_dir}/Utilities\"`" echo "cmake: ${objs}" > "${cmake_bootstrap_dir}/Makefile" echo " ${cmake_cxx_compiler} ${cmake_ld_flags} ${cmake_cxx_flags} ${objs} -o cmake" >> "${cmake_bootstrap_dir}/Makefile" for a in ${CMAKE_CXX_SOURCES}; do @@ -1643,6 +1375,7 @@ set (CMAKE_DOC_DIR "'"${cmake_doc_dir}"'" CACHE PATH "Install location for documentation (relative to prefix)." FORCE) set (CMAKE_MAN_DIR "'"${cmake_man_dir}"'" CACHE PATH "Install location for man pages (relative to prefix)." FORCE) set (CMAKE_DATA_DIR "'"${cmake_data_dir}"'" CACHE PATH "Install location for data (relative to prefix)." FORCE) +set (CMAKE_XDGDATA_DIR "'"${cmake_xdgdata_dir}"'" CACHE PATH "Install location for XDG specific files (relative to prefix)." FORCE) ' > "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" # Add configuration settings given as command-line options. @@ -1658,17 +1391,17 @@ fi if [ "x${cmake_sphinx_man}" != "x" ]; then echo ' -set (SPHINX_MAN "'"${cmake_sphinx_man}"'" CACHE FILEPATH "Build man pages with Sphinx" FORCE) +set (SPHINX_MAN "'"${cmake_sphinx_man}"'" CACHE BOOL "Build man pages with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_html}" != "x" ]; then echo ' -set (SPHINX_HTML "'"${cmake_sphinx_html}"'" CACHE FILEPATH "Build html help with Sphinx" FORCE) +set (SPHINX_HTML "'"${cmake_sphinx_html}"'" CACHE BOOL "Build html help with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_qthelp}" != "x" ]; then echo ' -set (SPHINX_QTHELP "'"${cmake_sphinx_qthelp}"'" CACHE FILEPATH "Build qch help with Sphinx" FORCE) +set (SPHINX_QTHELP "'"${cmake_sphinx_qthelp}"'" CACHE BOOL "Build qch help with Sphinx" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi if [ "x${cmake_sphinx_build}" != "x" ]; then @@ -1676,6 +1409,11 @@ set (SPHINX_EXECUTABLE "'"${cmake_sphinx_build}"'" CACHE FILEPATH "Location of Qt sphinx-build" FORCE) ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" fi +if [ "x${cmake_sphinx_flags}" != "x" ]; then + echo ' +set (SPHINX_FLAGS [==['"${cmake_sphinx_flags}"']==] CACHE STRING "Flags to pass to sphinx-build" FORCE) +' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" +fi # Add user-specified settings. Handle relative-path case for # specification of cmake_init_file. diff -Nru cmake-3.3.2is3.2.2/CMakeCPack.cmake cmake-3.5.0/CMakeCPack.cmake --- cmake-3.3.2is3.2.2/CMakeCPack.cmake 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/CMakeCPack.cmake 2016-03-08 14:36:21.000000000 +0000 @@ -22,7 +22,9 @@ set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON) endif() - include(${CMake_SOURCE_DIR}/Modules/InstallRequiredSystemLibraries.cmake) + if(CMake_INSTALL_DEPENDENCIES) + include(${CMake_SOURCE_DIR}/Modules/InstallRequiredSystemLibraries.cmake) + endif() endif() set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CMake is a build tool") @@ -65,6 +67,61 @@ endif() endif() + # Components + if(CMake_INSTALL_COMPONENTS) + set(_CPACK_IFW_COMPONENTS_ALL cmake ctest cpack) + if(APPLE) + list(APPEND _CPACK_IFW_COMPONENTS_ALL cmakexbuild) + endif() + if(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME) + set(_CPACK_IFW_COMPONENT_UNSPECIFIED_NAME + ${CMAKE_INSTALL_DEFAULT_COMPONENT_NAME}) + else() + set(_CPACK_IFW_COMPONENT_UNSPECIFIED_NAME Unspecified) + endif() + list(APPEND _CPACK_IFW_COMPONENTS_ALL ${_CPACK_IFW_COMPONENT_UNSPECIFIED_NAME}) + string(TOUPPER "${_CPACK_IFW_COMPONENT_UNSPECIFIED_NAME}" + _CPACK_IFW_COMPONENT_UNSPECIFIED_UNAME) + if(BUILD_CursesDialog) + list(APPEND _CPACK_IFW_COMPONENTS_ALL ccmake) + endif() + if(BUILD_QtDialog) + list(APPEND _CPACK_IFW_COMPONENTS_ALL cmake-gui) + set(_CPACK_IFW_COMPONENT_CMAKE-GUI_LICENSES "set(CPACK_IFW_COMPONENT_CMAKE-GUI_LICENSES + \"LGPLv2.1\" \"${CMake_SOURCE_DIR}/Licenses/LGPLv2.1.txt\")") + endif() + if(SPHINX_MAN) + list(APPEND _CPACK_IFW_COMPONENTS_ALL sphinx-man) + endif() + if(SPHINX_HTML) + list(APPEND _CPACK_IFW_COMPONENTS_ALL sphinx-html) + endif() + if(SPHINX_SINGLEHTML) + list(APPEND _CPACK_IFW_COMPONENTS_ALL sphinx-singlehtml) + endif() + if(SPHINX_QTHELP) + list(APPEND _CPACK_IFW_COMPONENTS_ALL sphinx-qthelp) + endif() + set(_CPACK_IFW_COMPONENTS_CONFIGURATION " + # Components + set(CPACK_COMPONENTS_ALL \"${_CPACK_IFW_COMPONENTS_ALL}\") + set(CPACK_COMPONENTS_GROUPING IGNORE) +") + else() + if(BUILD_QtDialog AND CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL) + set(_CPACK_IFW_ADDITIONAL_LICENSES + "\"LGPLv2.1\" \"${CMake_SOURCE_DIR}/Licenses/LGPLv2.1.txt\"") + endif() + endif() + + # Components scripts configuration + foreach(_script + CMake + CMake.Documentation.SphinxHTML) + configure_file("${CMake_SOURCE_DIR}/Source/QtIFW/${_script}.qs.in" + "${CMake_BINARY_DIR}/${_script}.qs" @ONLY) + endforeach() + if(${CMAKE_SYSTEM_NAME} MATCHES Windows) set(_CPACK_IFW_PACKAGE_ICON "set(CPACK_IFW_PACKAGE_ICON \"${CMake_SOURCE_DIR}/Source/QtDialog/CMakeSetup.ico\")") @@ -78,9 +135,13 @@ "${CMake_BINARY_DIR}/installscript.qs" @ONLY ) install(FILES "${CMake_SOURCE_DIR}/Source/QtIFW/cmake.org.html" - DESTINATION "." + DESTINATION "${CMAKE_DOC_DIR}" ) - set(_CPACK_IFW_PACKAGE_SCRIPT "set(CPACK_IFW_COMPONENT_GROUP_CMAKE_SCRIPT \"${CMake_BINARY_DIR}/installscript.qs\")") + if(CMake_INSTALL_COMPONENTS) + set(_CPACK_IFW_PACKAGE_SCRIPT "${CMake_BINARY_DIR}/CMake.qs") + else() + set(_CPACK_IFW_PACKAGE_SCRIPT "${CMake_BINARY_DIR}/installscript.qs") + endif() endif() if(${CMAKE_SYSTEM_NAME} MATCHES Linux) @@ -137,6 +198,17 @@ set(CPACK_WIX_UPGRADE_GUID "8ffd1d72-b7f1-11e2-8ee5-00238bca4991") + if(MSVC AND NOT "$ENV{WIX}" STREQUAL "") + set(WIX_CUSTOM_ACTION_ENABLED TRUE) + if(CMAKE_CONFIGURATION_TYPES) + set(WIX_CUSTOM_ACTION_MULTI_CONFIG TRUE) + else() + set(WIX_CUSTOM_ACTION_MULTI_CONFIG FALSE) + endif() + else() + set(WIX_CUSTOM_ACTION_ENABLED FALSE) + endif() + # Set the options file that needs to be included inside CMakeCPackOptions.cmake set(QT_DIALOG_CPACK_OPTIONS_FILE ${CMake_BINARY_DIR}/Source/QtDialog/QtDialogCPack.cmake) configure_file("${CMake_SOURCE_DIR}/CMakeCPackOptions.cmake.in" diff -Nru cmake-3.3.2is3.2.2/CMakeCPackOptions.cmake.in cmake-3.5.0/CMakeCPackOptions.cmake.in --- cmake-3.3.2is3.2.2/CMakeCPackOptions.cmake.in 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/CMakeCPackOptions.cmake.in 2016-03-08 14:36:21.000000000 +0000 @@ -14,14 +14,14 @@ # tell cpack to create links to the doc files set(CPACK_NSIS_MENU_LINKS "@CMAKE_DOC_DIR@/html/index.html" "CMake Documentation" - "http://www.cmake.org" "CMake Web Site" + "https://cmake.org" "CMake Web Site" ) # Use the icon from cmake-gui for add-remove programs set(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\cmake-gui.exe") set(CPACK_NSIS_PACKAGE_NAME "@CPACK_NSIS_PACKAGE_NAME@") set(CPACK_NSIS_DISPLAY_NAME "@CPACK_NSIS_PACKAGE_NAME@, a cross-platform, open-source build system") - set(CPACK_NSIS_HELP_LINK "http://www.cmake.org") + set(CPACK_NSIS_HELP_LINK "https://cmake.org") set(CPACK_NSIS_URL_INFO_ABOUT "http://www.kitware.com") set(CPACK_NSIS_CONTACT @CPACK_PACKAGE_CONTACT@) set(CPACK_NSIS_MODIFY_PATH ON) @@ -32,25 +32,141 @@ include("@QT_DIALOG_CPACK_OPTIONS_FILE@" OPTIONAL) if(CPACK_GENERATOR MATCHES "IFW") + # Installer configuration set(CPACK_IFW_PACKAGE_TITLE "CMake Build Tool") - set(CPACK_IFW_PRODUCT_URL "http://www.cmake.org") + set(CPACK_IFW_PRODUCT_URL "https://cmake.org") @_CPACK_IFW_PACKAGE_ICON@ set(CPACK_IFW_PACKAGE_WINDOW_ICON "@CMake_SOURCE_DIR@/Source/QtDialog/CMakeSetup128.png") + set(CPACK_IFW_PACKAGE_CONTROL_SCRIPT + "@CMake_SOURCE_DIR@/Source/QtIFW/controlscript.qs") + + # Uninstaller configuration + set(CPACK_IFW_PACKAGE_MAINTENANCE_TOOL_NAME "cmake-maintenance") + @_CPACK_IFW_COMPONENTS_CONFIGURATION@ + # Unspecified + set(CPACK_IFW_COMPONENT_@_CPACK_IFW_COMPONENT_UNSPECIFIED_UNAME@_VERSION + "@_CPACK_IFW_PACKAGE_VERSION@") + # Package configuration group set(CPACK_IFW_PACKAGE_GROUP CMake) + # Group configuration + + # CMake set(CPACK_COMPONENT_GROUP_CMAKE_DISPLAY_NAME "@CPACK_PACKAGE_NAME@") set(CPACK_COMPONENT_GROUP_CMAKE_DESCRIPTION "@CPACK_PACKAGE_DESCRIPTION_SUMMARY@") - # IFW group configuration set(CPACK_IFW_COMPONENT_GROUP_CMAKE_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") set(CPACK_IFW_COMPONENT_GROUP_CMAKE_LICENSES - "@CPACK_PACKAGE_NAME@ Copyright" "@CPACK_RESOURCE_FILE_LICENSE@") - @_CPACK_IFW_PACKAGE_SCRIPT@ + "@CPACK_PACKAGE_NAME@ Copyright" "@CPACK_RESOURCE_FILE_LICENSE@" + @_CPACK_IFW_ADDITIONAL_LICENSES@) + set(CPACK_IFW_COMPONENT_GROUP_CMAKE_SCRIPT "@_CPACK_IFW_PACKAGE_SCRIPT@") + set(CPACK_IFW_COMPONENT_GROUP_CMAKE_PRIORITY 100) + + # Tools + set(CPACK_COMPONENT_GROUP_TOOLS_DISPLAY_NAME "Command-Line Tools") + set(CPACK_COMPONENT_GROUP_TOOLS_DESCRIPTION + "Command-Line Tools: cmake, ctest and cpack") + set(CPACK_COMPONENT_GROUP_TOOLS_PARENT_GROUP CMake) + set(CPACK_IFW_COMPONENT_GROUP_TOOLS_PRIORITY 90) + set(CPACK_IFW_COMPONENT_GROUP_TOOLS_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_CMAKE_DISPLAY_NAME "cmake") + set(CPACK_COMPONENT_CMAKE_DESCRIPTION + "The \"cmake\" executable is the CMake command-line interface") + set(CPACK_COMPONENT_CMAKE_REQUIRED TRUE) + set(CPACK_COMPONENT_CMAKE_GROUP Tools) + set(CPACK_IFW_COMPONENT_CMAKE_NAME "CMake") + set(CPACK_IFW_COMPONENT_CMAKE_PRIORITY 89) + set(CPACK_IFW_COMPONENT_CMAKE_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_CTEST_DISPLAY_NAME "ctest") + set(CPACK_COMPONENT_CTEST_DESCRIPTION + "The \"ctest\" executable is the CMake test driver program") + set(CPACK_COMPONENT_CTEST_REQUIRED TRUE) + set(CPACK_COMPONENT_CTEST_GROUP Tools) + set(CPACK_IFW_COMPONENT_CTEST_NAME "CTest") + set(CPACK_IFW_COMPONENT_CTEST_PRIORITY 88) + set(CPACK_IFW_COMPONENT_CTEST_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_CPACK_DISPLAY_NAME "cpack") + set(CPACK_COMPONENT_CPACK_DESCRIPTION + "The \"cpack\" executable is the CMake packaging program") + set(CPACK_COMPONENT_CPACK_REQUIRED TRUE) + set(CPACK_COMPONENT_CPACK_GROUP Tools) + set(CPACK_IFW_COMPONENT_CPACK_NAME "CPack") + set(CPACK_IFW_COMPONENT_CPACK_PRIORITY 87) + set(CPACK_IFW_COMPONENT_CPACK_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_CMAKEXBUILD_DISPLAY_NAME "cmakexbuild") + set(CPACK_COMPONENT_CMAKEXBUILD_DESCRIPTION + "The \"cmakexbuild\" executable is a wrapper program for \"xcodebuild\"") + set(CPACK_COMPONENT_CMAKEXBUILD_REQUIRED TRUE) + set(CPACK_COMPONENT_CMAKEXBUILD_GROUP Tools) + set(CPACK_IFW_COMPONENT_CMAKEXBUILD_NAME "CMakeXBuild") + set(CPACK_IFW_COMPONENT_CMAKEXBUILD_PRIORITY 86) + set(CPACK_IFW_COMPONENT_CMAKEXBUILD_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + # Dialogs + set(CPACK_COMPONENT_GROUP_DIALOGS_DISPLAY_NAME "Interactive Dialogs") + set(CPACK_COMPONENT_GROUP_DIALOGS_DESCRIPTION + "Interactive Dialogs with Console and GUI interfaces") + set(CPACK_COMPONENT_GROUP_DIALOGS_PARENT_GROUP CMake) + set(CPACK_IFW_COMPONENT_GROUP_DIALOGS_PRIORITY 80) + set(CPACK_IFW_COMPONENT_GROUP_DIALOGS_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_CMAKE-GUI_DISPLAY_NAME "cmake-gui") + set(CPACK_COMPONENT_CMAKE-GUI_GROUP Dialogs) + set(CPACK_IFW_COMPONENT_CMAKE-GUI_NAME "QtGUI") + set(CPACK_IFW_COMPONENT_CMAKE-GUI_SCRIPT + "@CMake_SOURCE_DIR@/Source/QtIFW/CMake.Dialogs.QtGUI.qs") + set(CPACK_IFW_COMPONENT_CMAKE-GUI_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + @_CPACK_IFW_COMPONENT_CMAKE-GUI_LICENSES@ + + set(CPACK_COMPONENT_CCMAKE_DISPLAY_NAME "ccmake") + set(CPACK_COMPONENT_CCMAKE_GROUP Dialogs) + set(CPACK_IFW_COMPONENT_CCMAKE_NAME "CursesGUI") + set(CPACK_IFW_COMPONENT_CCMAKE_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + # Documentation + set(CPACK_COMPONENT_GROUP_DOCUMENTATION_DISPLAY_NAME "Documentation") + set(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION + "CMake Documentation in different formats (html, man, qch)") + set(CPACK_COMPONENT_GROUP_DOCUMENTATION_PARENT_GROUP CMake) + set(CPACK_IFW_COMPONENT_GROUP_DOCUMENTATION_PRIORITY 60) + set(CPACK_IFW_COMPONENT_GROUP_DOCUMENTATION_VERSION + "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_SPHINX-MAN_DISPLAY_NAME "man") + set(CPACK_COMPONENT_SPHINX-MAN_GROUP Documentation) + set(CPACK_COMPONENT_SPHINX-MAN_DISABLED TRUE) + set(CPACK_IFW_COMPONENT_SPHINX-MAN_NAME "SphinxMan") + set(CPACK_IFW_COMPONENT_SPHINX-MAN_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_SPHINX-HTML_DISPLAY_NAME "HTML") + set(CPACK_COMPONENT_SPHINX-HTML_GROUP Documentation) + set(CPACK_IFW_COMPONENT_SPHINX-HTML_NAME "SphinxHTML") + set(CPACK_IFW_COMPONENT_SPHINX-HTML_SCRIPT + "@CMake_BINARY_DIR@/CMake.Documentation.SphinxHTML.qs") + set(CPACK_IFW_COMPONENT_SPHINX-HTML_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_SPHINX-SINGLEHTML_DISPLAY_NAME "Single HTML") + set(CPACK_COMPONENT_SPHINX-SINGLEHTML_GROUP Documentation) + set(CPACK_COMPONENT_SPHINX-SINGLEHTML_DISABLED TRUE) + set(CPACK_IFW_COMPONENT_SPHINX-SINGLEHTML_NAME "SphinxSingleHTML") + set(CPACK_IFW_COMPONENT_SPHINX-SINGLEHTML_VERSION + "@_CPACK_IFW_PACKAGE_VERSION@") + + set(CPACK_COMPONENT_SPHINX-QTHELP_DISPLAY_NAME "Qt Compressed Help") + set(CPACK_COMPONENT_SPHINX-QTHELP_GROUP Documentation) + set(CPACK_COMPONENT_SPHINX-QTHELP_DISABLED TRUE) + set(CPACK_IFW_COMPONENT_SPHINX-QTHELP_NAME "SphinxQtHelp") + set(CPACK_IFW_COMPONENT_SPHINX-QTHELP_VERSION "@_CPACK_IFW_PACKAGE_VERSION@") + endif() if(CPACK_GENERATOR MATCHES "CygwinSource") @@ -67,13 +183,20 @@ endif() endif() +if("${CPACK_GENERATOR}" STREQUAL "DragNDrop") + set(CPACK_DMG_BACKGROUND_IMAGE + "@CMake_SOURCE_DIR@/Packaging/CMakeDMGBackground.tif") + set(CPACK_DMG_DS_STORE_SETUP_SCRIPT + "@CMake_SOURCE_DIR@/Packaging/CMakeDMGSetup.scpt") +endif() + if("${CPACK_GENERATOR}" STREQUAL "WIX") # Reset CPACK_PACKAGE_VERSION to deal with WiX restriction. # But the file names still use the full CMake_VERSION value: set(CPACK_PACKAGE_FILE_NAME - "${CPACK_PACKAGE_NAME}-@CMake_VERSION@-${CPACK_SYSTEM_NAME}") + "cmake-@CMake_VERSION@-${CPACK_SYSTEM_NAME}") set(CPACK_SOURCE_PACKAGE_FILE_NAME - "${CPACK_PACKAGE_NAME}-@CMake_VERSION@-Source") + "cmake-@CMake_VERSION@") if(NOT CPACK_WIX_SIZEOF_VOID_P) set(CPACK_WIX_SIZEOF_VOID_P "@CMAKE_SIZEOF_VOID_P@") @@ -87,4 +210,81 @@ if(patch MATCHES "^[0-9]+$" AND patch LESS 65535) set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}.${patch}") endif() + + set(CPACK_WIX_PROPERTY_ARPURLINFOABOUT "https://cmake.org") + + set(CPACK_WIX_PROPERTY_ARPCONTACT "@CPACK_PACKAGE_CONTACT@") + + set(CPACK_WIX_PROPERTY_ARPCOMMENTS + "CMake is a cross-platform, open-source build system." + ) + + set(CPACK_WIX_PRODUCT_ICON + "@CMake_SOURCE_DIR@/Utilities/Release/CMakeLogo.ico" + ) + + set_property(INSTALL "@CMAKE_DOC_DIR@/html/index.html" PROPERTY + CPACK_START_MENU_SHORTCUTS "CMake Documentation" + ) + + set_property(INSTALL "cmake.org.html" PROPERTY + CPACK_START_MENU_SHORTCUTS "CMake Web Site" + ) + + set(CPACK_WIX_LIGHT_EXTRA_FLAGS "-dcl:high") + + set(CPACK_WIX_UI_BANNER + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/ui_banner.jpg" + ) + + set(CPACK_WIX_UI_DIALOG + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/ui_dialog.jpg" + ) + + set(CPACK_WIX_EXTRA_SOURCES + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/install_dir.wxs" + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/cmake_extra_dialog.wxs" + ) + + set(_WIX_CUSTOM_ACTION_ENABLED "@WIX_CUSTOM_ACTION_ENABLED@") + if(_WIX_CUSTOM_ACTION_ENABLED) + list(APPEND CPACK_WIX_EXTRA_SOURCES + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/cmake_nsis_overwrite_dialog.wxs" + ) + list(APPEND CPACK_WIX_CANDLE_EXTRA_FLAGS -dCHECK_NSIS=1) + + set(_WIX_CUSTOM_ACTION_MULTI_CONFIG "@WIX_CUSTOM_ACTION_MULTI_CONFIG@") + if(_WIX_CUSTOM_ACTION_MULTI_CONFIG) + if(CPACK_BUILD_CONFIG) + set(_WIX_CUSTOM_ACTION_CONFIG "${CPACK_BUILD_CONFIG}") + else() + set(_WIX_CUSTOM_ACTION_CONFIG "Release") + endif() + + list(APPEND CPACK_WIX_EXTRA_SOURCES + "@CMake_BINARY_DIR@/Utilities/Release/WiX/custom_action_dll-${_WIX_CUSTOM_ACTION_CONFIG}.wxs") + else() + list(APPEND CPACK_WIX_EXTRA_SOURCES + "@CMake_BINARY_DIR@/Utilities/Release/WiX/custom_action_dll.wxs") + endif() + endif() + + set(CPACK_WIX_UI_REF "CMakeUI_InstallDir") + + set(CPACK_WIX_PATCH_FILE + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/patch_path_env.xml" + ) + + set(CPACK_WIX_TEMPLATE + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/WIX.template.in" + ) + + set(BUILD_QtDialog "@BUILD_QtDialog@") + + if(BUILD_QtDialog) + list(APPEND CPACK_WIX_PATCH_FILE + "@CMake_SOURCE_DIR@/Utilities/Release/WiX/patch_desktop_shortcut.xml" + ) + list(APPEND CPACK_WIX_CANDLE_EXTRA_FLAGS -dBUILD_QtDialog=1) + endif() endif() diff -Nru cmake-3.3.2is3.2.2/CMakeLists.txt cmake-3.5.0/CMakeLists.txt --- cmake-3.3.2is3.2.2/CMakeLists.txt 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/CMakeLists.txt 2016-03-08 14:36:21.000000000 +0000 @@ -13,6 +13,9 @@ if(POLICY CMP0025) cmake_policy(SET CMP0025 NEW) endif() +if(POLICY CMP0053) + cmake_policy(SET CMP0053 NEW) +endif() project(CMake) if(CMAKE_BOOTSTRAP) @@ -37,11 +40,24 @@ endif() # Use most-recent available language dialects with GNU and Clang -if(NOT DEFINED CMAKE_C_STANDARD) - set(CMAKE_C_STANDARD 11) +if(NOT DEFINED CMAKE_C_STANDARD AND NOT CMake_NO_C_STANDARD) + include(${CMake_SOURCE_DIR}/Source/Checks/cm_c11_thread_local.cmake) + if(NOT CMake_C11_THREAD_LOCAL_BROKEN) + set(CMAKE_C_STANDARD 11) + else() + set(CMAKE_C_STANDARD 99) + endif() endif() -if(NOT DEFINED CMAKE_CXX_STANDARD) - set(CMAKE_CXX_STANDARD 14) +if(NOT DEFINED CMAKE_CXX_STANDARD AND NOT CMake_NO_CXX_STANDARD) + include(${CMake_SOURCE_DIR}/Source/Checks/cm_cxx14_cstdio.cmake) + if(NOT CMake_CXX14_CSTDIO_BROKEN) + set(CMAKE_CXX_STANDARD 14) + else() + set(CMAKE_CXX_STANDARD 11) + endif() +endif() +if(NOT CMake_TEST_EXTERNAL_CMAKE) + include(${CMake_SOURCE_DIR}/Source/Checks/cm_cxx11_unordered_map.cmake) endif() # option to set the internal encoding of CMake to UTF-8 @@ -51,6 +67,22 @@ set(KWSYS_ENCODING_DEFAULT_CODEPAGE CP_UTF8) endif() +# option to use COMPONENT with install command +option(CMake_INSTALL_COMPONENTS "Using components when installing" OFF) +mark_as_advanced(CMake_INSTALL_COMPONENTS) +macro(CMake_OPTIONAL_COMPONENT NAME) + if(CMake_INSTALL_COMPONENTS) + set(COMPONENT COMPONENT ${NAME}) + else() + set(COMPONENT) + endif() +endmacro() + +# option to disable installing 3rd-party dependencies +option(CMake_INSTALL_DEPENDENCIES + "Whether to install 3rd-party runtime dependencies" OFF) +mark_as_advanced(CMake_INSTALL_DEPENDENCIES) + #----------------------------------------------------------------------- # a macro to deal with system libraries, implemented as a macro # simply to improve readability of the main script @@ -106,8 +138,13 @@ option(CMAKE_USE_SYSTEM_FORM "Use system-installed libform" "${CMAKE_USE_SYSTEM_LIBRARY_FORM}") option(CMAKE_USE_SYSTEM_JSONCPP "Use system-installed jsoncpp" "${CMAKE_USE_SYSTEM_LIBRARY_JSONCPP}") + # For now use system KWIML only if explicitly requested rather + # than activating via the general system libs options. + option(CMAKE_USE_SYSTEM_KWIML "Use system-installed KWIML" OFF) + mark_as_advanced(CMAKE_USE_SYSTEM_KWIML) + # Mention to the user what system libraries are being used. - foreach(util ${UTILITIES}) + foreach(util ${UTILITIES} KWIML) if(CMAKE_USE_SYSTEM_${util}) message(STATUS "Using system-installed ${util}") endif() @@ -120,17 +157,6 @@ endmacro() - - - -if(NOT CMake_TEST_EXTERNAL_CMAKE) - set(CMAKE_BUILD_ON_VISUAL_STUDIO 0) - if(WIN32 AND NOT UNIX AND NOT MINGW) - set(CMAKE_BUILD_ON_VISUAL_STUDIO 1) - endif() -endif() - - #----------------------------------------------------------------------- # a macro to determine the generator and ctest executable to use # for testing. Simply to improve readability of the main script. @@ -249,6 +275,20 @@ # (a macro defined in this file) CMAKE_HANDLE_SYSTEM_LIBRARIES() + if(CMAKE_USE_SYSTEM_KWIML) + find_package(KWIML 1.0) + if(NOT KWIML_FOUND) + message(FATAL_ERROR "CMAKE_USE_SYSTEM_KWIML is ON but KWIML is not found!") + endif() + set(CMake_KWIML_LIBRARIES kwiml::kwiml) + else() + set(CMake_KWIML_LIBRARIES "") + if(BUILD_TESTING) + set(KWIML_TEST_ENABLE 1) + endif() + add_subdirectory(Utilities/KWIML) + endif() + #--------------------------------------------------------------------- # Build zlib library for Curl, CMake, and CTest. set(CMAKE_ZLIB_HEADER "cm_zlib.h") @@ -351,12 +391,14 @@ set(ENABLE_LZMA ON CACHE INTERNAL "Enable the use of the system found LZMA library if found") set(ENABLE_ZLIB ON CACHE INTERNAL "Enable the use of the system found ZLIB library if found") set(ENABLE_BZip2 ON CACHE INTERNAL "Enable the use of the system found BZip2 library if found") + set(ENABLE_LIBXML2 OFF CACHE INTERNAL "Enable the use of the system found libxml2 library if found") set(ENABLE_EXPAT OFF CACHE INTERNAL "Enable the use of the system found EXPAT library if found") set(ENABLE_PCREPOSIX OFF CACHE INTERNAL "Enable the use of the system found PCREPOSIX library if found") set(ENABLE_LibGCC OFF CACHE INTERNAL "Enable the use of the system found LibGCC library if found") set(ENABLE_XATTR OFF CACHE INTERNAL "Enable extended attribute support") set(ENABLE_ACL OFF CACHE INTERNAL "Enable ACL support") set(ENABLE_ICONV OFF CACHE INTERNAL "Enable iconv support") + set(ENABLE_CNG OFF CACHE INTERNAL "Enable the use of CNG(Crypto Next Generation)") add_subdirectory(Utilities/cmlibarchive) CMAKE_SET_TARGET_FOLDER(cmlibarchive "Utilities/3rdParty") set(CMAKE_TAR_LIBRARIES cmlibarchive ${BZIP2_LIBRARIES}) @@ -515,10 +557,10 @@ set(CMAKE_TESTS_CDASH_SERVER "http://open.cdash.org") endif() -# Create the KWIML library for CMake. -set(KWIML cmIML) -set(KWIML_HEADER_ROOT ${CMake_BINARY_DIR}/Utilities) -add_subdirectory(Utilities/KWIML) +if(CMake_TEST_EXTERNAL_CMAKE) + set(KWIML_TEST_ENABLE 1) + add_subdirectory(Utilities/KWIML) +endif() if(NOT CMake_TEST_EXTERNAL_CMAKE) # build the utilities (a macro defined in this file) @@ -543,10 +585,7 @@ "${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CMake_VERSION_PATCH}") set(CMAKE_BUNDLE_LOCATION "${CMAKE_INSTALL_PREFIX}") # make sure CMAKE_INSTALL_PREFIX ends in / - string(LENGTH "${CMAKE_INSTALL_PREFIX}" LEN) - math(EXPR LEN "${LEN} -1" ) - string(SUBSTRING "${CMAKE_INSTALL_PREFIX}" ${LEN} 1 ENDCH) - if(NOT "${ENDCH}" STREQUAL "/") + if(NOT CMAKE_INSTALL_PREFIX MATCHES "/$") set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/") endif() set(CMAKE_INSTALL_PREFIX diff -Nru cmake-3.3.2is3.2.2/CONTRIBUTING.rst cmake-3.5.0/CONTRIBUTING.rst --- cmake-3.3.2is3.2.2/CONTRIBUTING.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/CONTRIBUTING.rst 2016-03-08 14:36:21.000000000 +0000 @@ -14,7 +14,7 @@ contributions. Regular and productive contributors may be invited to gain direct push access. -.. _`CMake Developers List`: http://www.cmake.org/mailman/listinfo/cmake-developers +.. _`CMake Developers List`: https://cmake.org/mailman/listinfo/cmake-developers Patches ======= @@ -28,7 +28,7 @@ We do not require any formal copyright assignment or contributor license agreement. Any contributions intentionally sent upstream are presumed -to be offerred under terms of the OSI-approved BSD 3-clause License. +to be offered under terms of the OSI-approved BSD 3-clause License. See `Copyright.txt`_ for details. .. _`Copyright.txt`: Copyright.txt diff -Nru cmake-3.3.2is3.2.2/Copyright.txt cmake-3.5.0/Copyright.txt --- cmake-3.3.2is3.2.2/Copyright.txt 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Copyright.txt 2016-03-08 14:36:21.000000000 +0000 @@ -1,5 +1,5 @@ CMake - Cross Platform Makefile Generator -Copyright 2000-2015 Kitware, Inc. +Copyright 2000-2016 Kitware, Inc. Copyright 2000-2011 Insight Software Consortium All rights reserved. diff -Nru cmake-3.3.2is3.2.2/CTestCustom.cmake.in cmake-3.5.0/CTestCustom.cmake.in --- cmake-3.3.2is3.2.2/CTestCustom.cmake.in 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/CTestCustom.cmake.in 2016-03-08 14:36:21.000000000 +0000 @@ -1,9 +1,7 @@ -set(CTEST_CUSTOM_ERROR_MATCH - ${CTEST_CUSTOM_ERROR_MATCH} +list(APPEND CTEST_CUSTOM_ERROR_MATCH "ERROR:") -set(CTEST_CUSTOM_WARNING_EXCEPTION - ${CTEST_CUSTOM_WARNING_EXCEPTION} +list(APPEND CTEST_CUSTOM_WARNING_EXCEPTION "xtree.[0-9]+. : warning C4702: unreachable code" "warning LNK4221" "warning LNK4204" # Occurs by race condition with objects in small libs @@ -23,7 +21,8 @@ "Utilities.cmcurl" "Utilities.cmexpat." "Utilities.cmlibarchive" - "/usr/include.*warning.*shadowed declaration is here" + "warning: declaration of .single. shadows a global declaration" + "/usr/include.*(warning|note).*shadowed declaration is here" "/usr/bin/ld.*warning.*-..*directory.name.*bin.*does not exist" "Redeclaration of .send..... with a different storage class specifier" "is not used for resolving any symbol" @@ -32,9 +31,13 @@ "remark: .*LOOP WAS VECTORIZED" "warning .980: wrong number of actual arguments to intrinsic function .std::basic_" "LINK : warning LNK4089: all references to.*ADVAPI32.dll.*discarded by /OPT:REF" + "LINK : warning LNK4089: all references to.*CRYPT32.dll.*discarded by /OPT:REF" "LINK : warning LNK4089: all references to.*PSAPI.DLL.*discarded by /OPT:REF" + "LINK : warning LNK4089: all references to.*RPCRT4.dll.*discarded by /OPT:REF" "LINK : warning LNK4089: all references to.*SHELL32.dll.*discarded by /OPT:REF" "LINK : warning LNK4089: all references to.*USER32.dll.*discarded by /OPT:REF" + "LINK : warning LNK4089: all references to.*ole32.dll.*discarded by /OPT:REF" + "Warning.*: .*/Utilities/KWIML/test/test_int_format.h.* # Redundant preprocessing concatenation" "Warning: library was too large for page size.*" "Warning: public.*_archive_.*in module.*archive_*clashes with prior module.*archive_.*" "Warning: public.*BZ2_bz.*in module.*bzlib.*clashes with prior module.*bzlib.*" @@ -53,6 +56,9 @@ "CMakeSetupManifest.xml.*manifest authoring warning.*Unrecognized Element" "cc-3968 CC: WARNING File.*" # "implicit" truncation by static_cast "ld: warning: directory not found for option .-(F|L)" + "ld: warning .*/libgcc.a archive's cputype" + "ld: warning: ignoring file .*/libgcc.a, file was built for archive which is not the architecture being linked" + "ld: warning: in .*/libgcc.a, file is not of required architecture" "warning.*This version of Mac OS X is unsupported" "clang.*: warning: argument unused during compilation: .-g" "note: in expansion of macro" # diagnostic context note @@ -62,25 +68,33 @@ # Ignore clang's summary warning, assuming prior text has matched some # other warning expression: "[0-9,]+ warnings? generated." + +# scanbuild exceptions + "char_traits.h:.*: warning: Null pointer argument in call to string length function" + "stl_construct.h:.*: warning: Forming reference to null pointer" + ".*stl_uninitialized.h:75:19: warning: Forming reference to null pointer.*" + ".*stl_vector.h:.*: warning: Returning null reference.*" + "warning: Value stored to 'yymsg' is never read" + "warning: Value stored to 'yytoken' is never read" + "index_encoder.c.241.2. warning: Value stored to .out_start. is never read" + "index.c.*warning: Access to field.*results in a dereference of a null pointer.*loaded from variable.*" + "cm_sha2.*warning: Value stored to.*is never read" + "testProcess.*warning: Dereference of null pointer .loaded from variable .invalidAddress.." ) if(NOT "@CMAKE_GENERATOR@" MATCHES "Xcode") - set(CTEST_CUSTOM_COVERAGE_EXCLUDE - ${CTEST_CUSTOM_COVERAGE_EXCLUDE} + list(APPEND CTEST_CUSTOM_COVERAGE_EXCLUDE "XCode" ) endif () if(NOT "@CMAKE_GENERATOR@" MATCHES "KDevelop") - set(CTEST_CUSTOM_COVERAGE_EXCLUDE - ${CTEST_CUSTOM_COVERAGE_EXCLUDE} + list(APPEND CTEST_CUSTOM_COVERAGE_EXCLUDE "Kdevelop" ) endif () -set(CTEST_CUSTOM_COVERAGE_EXCLUDE - ${CTEST_CUSTOM_COVERAGE_EXCLUDE} - +list(APPEND CTEST_CUSTOM_COVERAGE_EXCLUDE # Exclude kwsys files from coverage results. They are reported # (with better coverage results) on kwsys dashboards... "/Source/(cm|kw)sys/" @@ -91,3 +105,7 @@ # Exclude Qt source files from coverage results: "[A-Za-z]./[Qq]t/qt-.+-opensource-src" ) + +list(APPEND CTEST_CUSTOM_MEMCHECK_IGNORE + kwsys.testProcess-10 # See Source/kwsys/CTestCustom.cmake.in + ) diff -Nru cmake-3.3.2is3.2.2/debian/changelog cmake-3.5.0/debian/changelog --- cmake-3.3.2is3.2.2/debian/changelog 2016-02-07 09:22:25.000000000 +0000 +++ cmake-3.5.0/debian/changelog 2016-03-29 05:12:01.000000000 +0000 @@ -1,73 +1,96 @@ -cmake (3.3.2is3.2.2-0ubuntu5) xenial; urgency=medium +cmake (3.5.0-1.1~aroth~ppa1~16.04.1) xenial; urgency=medium - * No-change rebuild for libjsoncpp transition. + * No-change build for ubuntu - -- Graham Inggs Sun, 07 Feb 2016 09:25:13 +0200 + -- Andreas Roth Tue, 29 Mar 2016 07:09:17 +0200 -cmake (3.3.2is3.2.2-0ubuntu4) xenial; urgency=high +cmake (3.5.0-1) unstable; urgency=medium - * Cherry-pick upstream commit fe558718b30da989db8b880374012a0e580574e6 - to fix test suite failure with new file. - - -- Dimitri John Ledkov Wed, 09 Dec 2015 12:11:19 +0000 - -cmake (3.3.2is3.2.2-0ubuntu3) xenial; urgency=high - - * Rebuild against qt5.5 on s390x. - - -- Dimitri John Ledkov Wed, 09 Dec 2015 11:09:53 +0000 - -cmake (3.3.2is3.2.2-0ubuntu2) xenial; urgency=medium - - * Cherrypick Features_Extract_strings_from_test_binary_more_reliably.patch - from Debian to fix test-suite errors. + * New upstream release. + - Fixes fltk_wrap_ui segmentation fault. (Closes: #809535) + * Pass correct buildsystem to dh_auto_test, fixes FTBFS. (Closes: #818040) + * Change Vcs-* and Homepage to https URLs. + * Migrate to dbgsym debug package. - -- Dimitri John Ledkov Fri, 20 Nov 2015 11:55:30 +0000 + -- Felix Geyer Sun, 13 Mar 2016 15:16:37 +0100 -cmake (3.3.2is3.2.2-0ubuntu1) xenial; urgency=medium +cmake (3.4.1-2) unstable; urgency=medium - * Revert back to 3.2.2, build issues on armhf, arm64 and powerpc. + * Upload to unstable. - -- Matthias Klose Mon, 26 Oct 2015 02:19:58 +0200 + -- Felix Geyer Mon, 14 Dec 2015 21:41:03 +0100 -cmake (3.2.2-2ubuntu4) xenial; urgency=medium +cmake (3.4.1-1) experimental; urgency=medium - * Search for Python 3.5 as well. + * New upstream release. - -- Matthias Klose Fri, 23 Oct 2015 22:04:14 +0200 + -- Felix Geyer Thu, 03 Dec 2015 18:45:35 +0100 -cmake (3.2.2-2ubuntu3) wily; urgency=medium +cmake (3.4.0-1) experimental; urgency=medium - * Add upstream_findpkgconfig.diff to fix FindPkgConfig.cmake + * New upstream release. + * Drop patches that have been applied upstream: + - FindJNI.cmake.mips.patch + - fix-hdf5-hl.patch + - FindJNI-Add-support-for-x32-architecture-on-Linux.patch + - Features_Extract_strings_from_test_binary_more_reliably.patch + - FindPkgConfig_remove_variable_dereference.patch + - FindPython_Add_versions_3.5_and_3.6.patch + * Point watch file to the https URL. + * Stop hardcoding the major version in cmake-data.install. + * Remove upgrade maintainer scripts from before wheezy. - -- Jonathan Riddell Mon, 24 Aug 2015 09:47:09 +0100 + -- Felix Geyer Tue, 17 Nov 2015 18:27:32 +0100 -cmake (3.2.2-2ubuntu3~gcc5.1) wily; urgency=medium +cmake (3.3.2-2) unstable; urgency=medium - * Build using GCC 5. + * Search for Python 3.5 and 3.6. (Closes: #802826) + - Add FindPython_Add_versions_3.5_and_3.6.patch + * Add tighter build-depends on dpkg-dev and debhelper for Build-Profiles + support. - -- Matthias Klose Sun, 19 Jul 2015 15:06:52 +0200 + -- Felix Geyer Sat, 07 Nov 2015 19:13:27 +0100 -cmake (3.2.2-2ubuntu2) wily; urgency=medium +cmake (3.3.2-1) unstable; urgency=medium - * Install MultiArchCross.cmake into the right directory. + * Upload to unstable. + * New upstream release. + * Drop Debian menu entries. + * Make compiler feature testing more reliable. + - Fixes testsuite failure on alpha. (Closes: #789807) + - Features_Extract_strings_from_test_binary_more_reliably.patch + * Fix FindPkgConfig when no minimum version has been set. + - FindPkgConfig_remove_variable_dereference.patch + * Remove inactive uploaders from the list. + + -- Felix Geyer Sun, 20 Sep 2015 21:36:39 +0200 + +cmake (3.3.1-2) experimental; urgency=medium + + * Set the team mailing list as maintainer. + * Add a stage1 build profile that disables building cmake-qt-gui. + (Closes: #738161) + * Add autopkgtests which run the upstream testsuite against the system cmake. + * Add support for x32 in FindJNI. (Closes: #792262) + - FindJNI-Add-support-for-x32-architecture-on-Linux.patch - -- Iain Lane Mon, 22 Jun 2015 14:50:09 +0100 + -- Felix Geyer Fri, 28 Aug 2015 18:41:24 +0200 -cmake (3.2.2-2ubuntu1) wily; urgency=low +cmake (3.3.1-1) experimental; urgency=medium - * Merge from Debian unstable (LP: #1459727). Remaining changes: - - debian/cmake-data.install - debian/MultiArchCross.cmake - debian/patches/ubuntu_cmake-crosscompile.patch - Add MultiArchCross.cmake to installed files. - (help cmake to find libraries in multiarch path) - xnox says this is not yet ready to go upstream but he will work on it - - debian/patches/ubuntu_boost-multiarch.patch - find boost and python in multiarch path - this is a candidate for removal but needs rdepend testing + * New upstream release. + - Fixes bashism in Modules/Squish4RunTestCase.sh. (Closes: #772218) + * Drop patches that have been applied upstream: + - cpack-doc-typo.patch + - protect-tests-from-makeflags.patch + - custom-sphinx-flags.patch + - fix-mips-endian.patch + - openjdk-8-detection.patch + * Move bash_completion from /etc to /usr/share. + - Stop using dh_bash-completion. It still installs files to /etc and + dh_install works just fine. - -- Gianfranco Costamagna Thu, 28 May 2015 17:35:43 +0200 + -- Felix Geyer Fri, 21 Aug 2015 11:57:13 +0200 cmake (3.2.2-2) unstable; urgency=medium @@ -115,29 +138,6 @@ -- Felix Geyer Wed, 13 May 2015 19:02:05 +0200 -cmake (3.0.2-1ubuntu2) vivid; urgency=medium - - * Fix install path of MultiArchCross.cmake to be cmake-3.0. - - -- Loïc Minier Fri, 31 Oct 2014 21:59:23 +0100 - -cmake (3.0.2-1ubuntu1) vivid; urgency=medium - - * Merge from Debian unstable (LP: #1357270). Remaining changes: - - debian/cmake-data.install - debian/MultiArchCross.cmake - debian/patches/ubuntu_cmake-crosscompile.patch - Add MultiArchCross.cmake to installed files. - (help cmake to find libraries in multiarch path) - xnox says this is not yet ready to go upstream but he will work on it - - debian/patches/ubuntu_boost-multiarch.patch - find boost and python in multiarch path - this is a candidate for removal but needs rdepend testing - * Drop multiarch-python-include-dirs.diff no longer required according - to bug report - - -- Jonathan Riddell Wed, 29 Oct 2014 16:40:41 +0000 - cmake (3.0.2-1) unstable; urgency=medium * New upstream release. @@ -274,51 +274,6 @@ -- Bas Couwenberg Sun, 30 Mar 2014 21:57:27 +0200 -cmake (2.8.12.2-0ubuntu6) utopic; urgency=medium - - * Add find_python3.4.patch to find Python 3.4 as that is what - Ubuntu ships by default (LP: #132355) - - -- Rohan Garg Tue, 14 Oct 2014 17:46:53 +0200 - -cmake (2.8.12.2-0ubuntu5) utopic; urgency=medium - - * ppc64el-jvm-config.diff: Allow "ppc64" as well as (for - backward-compatibility) "ppc64le" as the Java arch-specific library - subdirectory name on ppc64el, matching current OpenJDK. - - -- Colin Watson Thu, 24 Jul 2014 14:50:40 +0100 - -cmake (2.8.12.2-0ubuntu4) utopic; urgency=medium - - * Add changes from the 2.8.12.1-1.2 upload: - - Backport patch to support Ruby 2.0 and 2.1 in FindRuby.cmake. - (closes: #739826, #730095). - - -- Matthias Klose Tue, 29 Apr 2014 14:37:07 +0200 - -cmake (2.8.12.2-0ubuntu3) trusty; urgency=medium - - [ Iain Lane ] - * MultiArchCross.cmake: Look for uic and qdbus{cpp2xml,xml2cpp} in - /usr/lib/$DEB_BUILD_MULTIARCH/qt5/bin/. (LP: #1294186) - - -- Dimitri John Ledkov Wed, 19 Mar 2014 11:33:40 +0000 - -cmake (2.8.12.2-0ubuntu2) trusty; urgency=medium - - * Fix JNI detection on ppc64el. - - -- Matthias Klose Mon, 24 Feb 2014 15:46:34 +0100 - -cmake (2.8.12.2-0ubuntu1) trusty; urgency=medium - - * New upstream release - * Keep Ubuntu's fix_freetype_detection.diff over Debian's - fix-FindFreetype.diff - - -- Jonathan Riddell Mon, 10 Feb 2014 16:41:02 +0000 - cmake (2.8.12.1-1.1) unstable; urgency=high * Non-maintainer upload. @@ -327,52 +282,6 @@ -- Cyril Brulebois Sun, 15 Dec 2013 10:30:54 +0000 -cmake (2.8.12.1-1ubuntu5) trusty; urgency=medium - - * Honor environment variables for compilers, in Multiarched - toolchain. (LP: #1274430) - - -- Dimitri John Ledkov Thu, 30 Jan 2014 09:24:23 +0000 - -cmake (2.8.12.1-1ubuntu4) trusty; urgency=medium - - * Use find_program, instead of COMMAND conditional to fix correctly - setting a Debian cross-compiler. - - -- Dimitri John Ledkov Thu, 23 Jan 2014 13:30:53 +0000 - -cmake (2.8.12.1-1ubuntu3) trusty; urgency=low - - * Improve backwards compatibility of the previous upload: - - only set arch qualified compiler names, when those are present - - further restrict changing Qt5::* utils paths, when in the - debian-multiarch-cross-compilation branch. Ideally qtchooser should be - used, which should be able to pick between 3rdparty, system, or cross - utilities. - - -- Dimitri John Ledkov Thu, 19 Dec 2013 11:01:56 +0000 - -cmake (2.8.12.1-1ubuntu2) trusty; urgency=low - - * Make MultiArchCross file safe to include unconditionally multiple times. - * Tweak DetermineSystem, DetermineCompiler and FindPkgConfig to include - MultiArchCross and thus enable out of the box cross-compilation of - debian packages. - - -- Dimitri John Ledkov Fri, 13 Dec 2013 02:00:13 +0000 - -cmake (2.8.12.1-1ubuntu1) trusty; urgency=low - - * Merge from Debian, remaining changes: - - Add fix_freetype_detection.diff to fix the freetype detection so - kde-workspace builds again. (LP: #1256710) - - Make FindBoost look in Multi-Arch locations as well. - - Add a MultiArchCross.cmake toolchain file. - - Relax the cmake dependency on cmake-data to require the - matching upstream version (>= ${source:Upstream-Version}). - - -- Dmitrijs Ledkovs Mon, 09 Dec 2013 11:51:01 +0000 - cmake (2.8.12.1-1) unstable; urgency=low * New upstream release: @@ -383,20 +292,6 @@ -- Modestas Vainius Thu, 07 Nov 2013 00:56:52 +0200 -cmake (2.8.12.1-0ubuntu2) trusty; urgency=low - - * Add fix_freetype_detection.diff to fix the freetype detection so - kde-workspace builds again. (LP: #1256710) - - -- Philip Muškovac Sun, 01 Dec 2013 22:34:45 +0100 - -cmake (2.8.12.1-0ubuntu1) trusty; urgency=low - - * New upstream release LP: #1252259 - * Drop valid-interface-link-libraries.patch, applied upstream - - -- Harald Sitter Mon, 18 Nov 2013 13:49:08 +0100 - cmake (2.8.12-2) unstable; urgency=low * Fix FTBFS on kFreeBSD (fix-ftbfs-on-kfreebsd.patch). @@ -429,45 +324,6 @@ -- Modestas Vainius Sun, 03 Nov 2013 20:42:54 +0200 -cmake (2.8.12-0ubuntu2) trusty; urgency=low - - * Imported upstream fix to resolve FTBFS in projects using linker flags - (lp: #1247787). - - -- Stephen M. Webb Tue, 05 Nov 2013 10:13:10 -0500 - -cmake (2.8.12-0ubuntu1) trusty; urgency=low - - * New upstream release LP: #1246701 - - -- Harald Sitter Thu, 10 Oct 2013 12:54:39 +0200 - -cmake (2.8.11.2-1ubuntu5) saucy; urgency=low - - * Build the Qt gui on AArch64 now that Qt4 actually works. - - -- William Grant Mon, 14 Oct 2013 10:47:28 +1100 - -cmake (2.8.11.2-1ubuntu4) saucy; urgency=low - - * Do not build the Qt gui on AArch64. - - -- Matthias Klose Sat, 12 Oct 2013 14:24:20 +0200 - -cmake (2.8.11.2-1ubuntu2) saucy; urgency=low - - * Make FindBoost look in Multi-Arch locations as well. - - -- Dmitrijs Ledkovs Fri, 09 Aug 2013 12:59:00 +0100 - -cmake (2.8.11.2-1ubuntu1) saucy; urgency=low - - * Add a MultiArchCross.cmake toolchain file. - * Relax the cmake dependency on cmake-data to require the - matching upstream version (>= ${source:Upstream-Version}). - - -- Matthias Klose Wed, 07 Aug 2013 12:37:42 +0200 - cmake (2.8.11.2-1) unstable; urgency=low * New upstream release. diff -Nru cmake-3.3.2is3.2.2/debian/cmake.bash-completion cmake-3.5.0/debian/cmake.bash-completion --- cmake-3.3.2is3.2.2/debian/cmake.bash-completion 2015-05-14 01:37:36.000000000 +0000 +++ cmake-3.5.0/debian/cmake.bash-completion 1970-01-01 00:00:00.000000000 +0000 @@ -1,3 +0,0 @@ -debian/tmp/usr/share/cmake-3.*/completions/cmake -debian/tmp/usr/share/cmake-3.*/completions/cpack -debian/tmp/usr/share/cmake-3.*/completions/ctest diff -Nru cmake-3.3.2is3.2.2/debian/cmake-curses-gui.menu cmake-3.5.0/debian/cmake-curses-gui.menu --- cmake-3.3.2is3.2.2/debian/cmake-curses-gui.menu 2014-08-05 18:33:37.000000000 +0000 +++ cmake-3.5.0/debian/cmake-curses-gui.menu 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -?package(cmake-curses-gui):needs="text" \ - section="Applications/Programming"\ - title="CMake curses GUI (ccmake)"\ - command="/usr/bin/ccmake"\ - icon="/usr/share/pixmaps/cmake.xpm" diff -Nru cmake-3.3.2is3.2.2/debian/cmake-data.install cmake-3.5.0/debian/cmake-data.install --- cmake-3.3.2is3.2.2/debian/cmake-data.install 2015-06-22 13:49:53.000000000 +0000 +++ cmake-3.5.0/debian/cmake-data.install 2015-12-14 20:41:00.000000000 +0000 @@ -1,9 +1,6 @@ -debian/cmake.xpm usr/share/pixmaps usr/share/aclocal/cmake.m4 -# DON'T FORGET TO CHANGE debian/MultiArchCross.cmake too! -usr/share/cmake-3.2/* -usr/share/cmake-3.2/editors/emacs/cmake-mode.el usr/share/emacs/site-lisp -debian/MultiArchCross.cmake usr/share/cmake-3.2/Modules +usr/share/cmake-*/ +usr/share/cmake-*/editors/emacs/cmake-mode.el usr/share/emacs/site-lisp usr/share/man/man7/cmake-buildsystem.7 usr/share/man/man7/cmake-commands.7 usr/share/man/man7/cmake-compile-features.7 diff -Nru cmake-3.3.2is3.2.2/debian/cmake-doc.postinst cmake-3.5.0/debian/cmake-doc.postinst --- cmake-3.3.2is3.2.2/debian/cmake-doc.postinst 2014-08-05 18:33:37.000000000 +0000 +++ cmake-3.5.0/debian/cmake-doc.postinst 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ -#!/bin/sh - -set -e - -pkgname=`basename "$0" .postinst` -docdir="/usr/share/doc/$pkgname" - -# Manually create /usr/share/doc/$pkgname symlink on upgrades (see #404850) -if [ "$1" = "configure" ] && [ -n "$2" ] && \ - [ ! -L "$docdir" ] && [ -d "$docdir" ] && \ - dpkg --compare-versions "$2" lt "2.8.3-3"; -then - rmdir "$docdir" - ln -s "cmake-data" "$docdir" -fi - -#DEBHELPER# diff -Nru cmake-3.3.2is3.2.2/debian/cmake.install cmake-3.5.0/debian/cmake.install --- cmake-3.3.2is3.2.2/debian/cmake.install 2014-08-05 18:33:37.000000000 +0000 +++ cmake-3.5.0/debian/cmake.install 2015-09-20 18:52:58.000000000 +0000 @@ -4,3 +4,6 @@ usr/share/man/man1/cmake.1 usr/share/man/man1/cpack.1 usr/share/man/man1/ctest.1 +usr/share/cmake-*/completions/cmake usr/share/bash-completion/completions/ +usr/share/cmake-*/completions/cpack usr/share/bash-completion/completions/ +usr/share/cmake-*/completions/ctest usr/share/bash-completion/completions/ diff -Nru cmake-3.3.2is3.2.2/debian/cmake.maintscript cmake-3.5.0/debian/cmake.maintscript --- cmake-3.3.2is3.2.2/debian/cmake.maintscript 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/cmake.maintscript 2015-12-14 20:41:00.000000000 +0000 @@ -1,2 +1,4 @@ symlink_to_dir /usr/share/doc/cmake /usr/share/doc/cmake-data 2.8.12.2-2~ -rm_conffile /etc/emacs/site-start.d/50cmake.el 2.8.9~rc3-1~ +rm_conffile /etc/bash_completion.d/cmake 3.2.2-3~ +rm_conffile /etc/bash_completion.d/cpack 3.2.2-3~ +rm_conffile /etc/bash_completion.d/ctest 3.2.2-3~ diff -Nru cmake-3.3.2is3.2.2/debian/cmake.prerm cmake-3.5.0/debian/cmake.prerm --- cmake-3.3.2is3.2.2/debian/cmake.prerm 2014-08-05 18:33:37.000000000 +0000 +++ cmake-3.5.0/debian/cmake.prerm 1970-01-01 00:00:00.000000000 +0000 @@ -1,23 +0,0 @@ -#!/bin/sh - -set -e - -if [ "$1" = "failed-upgrade" ] && dpkg --compare-versions "$2" le 2.6.2-1; then - # It is very likely that old-prerm failed due to emacsen-common being - # unconfigured at this stage. The error is harmless and cannot be avoided - # in a sane way. - # ERROR: emacsen-common being used before being configured. - # ERROR: This is likely a bug in the cmake package, which needs to - # ERROR: add one of the appropriate dependencies. - # ERROR: See /usr/share/doc/emacsen-common/debian-emacs-policy.gz - # ERROR: for details - # - # Therefore tell the user to ignore the error and exit gracefully. - cat >&2 < -XSBC-Original-Maintainer: Modestas Vainius -Uploaders: A. Maitland Bottoms , - Kai Wasserbäch , - Lisandro Damián Nicanor Pérez Meyer , +Maintainer: Debian CMake Team +Uploaders: Lisandro Damián Nicanor Pérez Meyer , Felix Geyer , Mario Lang -Build-Depends: bash-completion, - debhelper (>= 9.20131104), +Build-Depends: debhelper (>= 9.20160114~), + dpkg-dev (>= 1.17.14~), libarchive-dev (>= 2.8.0), libbz2-dev, libcurl4-openssl-dev | libcurl-ssl-dev, @@ -19,12 +16,12 @@ libncurses5-dev, procps [!hurd-any], python-sphinx, - qtbase5-dev, + qtbase5-dev , zlib1g-dev Standards-Version: 3.9.6 -Vcs-Git: git://anonscm.debian.org/collab-maint/cmake.git -Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/cmake.git;a=summary -Homepage: http://cmake.org/ +Vcs-Git: https://anonscm.debian.org/git/pkg-cmake/cmake.git +Vcs-Browser: https://anonscm.debian.org/cgit/pkg-cmake/cmake.git/ +Homepage: https://cmake.org/ Package: cmake Architecture: any @@ -77,6 +74,7 @@ Package: cmake-qt-gui Architecture: any +Build-Profiles: Pre-Depends: dpkg (>= 1.17.5~) Depends: cmake (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends} Provides: cmake-gui @@ -113,17 +111,3 @@ . This package provides additional documentation in various formats like HTML or plain text. - -Package: cmake-dbg -Architecture: any -Section: debug -Priority: extra -Pre-Depends: dpkg (>= 1.17.5~) -Depends: cmake (= ${binary:Version}), ${misc:Depends} -Description: debugging symbols for CMake - CMake is used to control the software compilation process using simple - platform and compiler independent configuration files. CMake generates native - makefiles and workspaces that can be used in the compiler environment of your - choice. - . - This package provides CMake debugging symbols. diff -Nru cmake-3.3.2is3.2.2/debian/MultiArchCross.cmake cmake-3.5.0/debian/MultiArchCross.cmake --- cmake-3.3.2is3.2.2/debian/MultiArchCross.cmake 2015-05-29 09:22:23.000000000 +0000 +++ cmake-3.5.0/debian/MultiArchCross.cmake 1970-01-01 00:00:00.000000000 +0000 @@ -1,85 +0,0 @@ -#NB! the meaning of DEB_BUILD and DEB_HOST is same as in dpkg-architecture & autoconf, i.e.: -# BUILD - the system type where compilation is executed -# HOST - the system type where results of the compilation will be executed -# -# We can reliably determine all variables with dpkg-architecture (take into account env overrides) -# however it will not be the indication that this was actually explicitely requested -#execute_process(dpkg-architecture -qDEB_BUILD_GNU_TYPE OUTPUT_VARIABLE CMAKE_DEB_BUILD_GNU_TYPE) -#execute_process(dpkg-architecture -qDEB_HOST_GNU_TYPE OUTPUT_VARIABLE CMAKE_DEB_HOST_GNU_TYPE) -#execute_process(dpkg-architecture -qDEB_HOST_MULTIARCH OUTPUT_VARIABLE CMAKE_DEB_HOST_MULTIARCH) -#execute_process(dpkg-architecture -qDEB_HOST_ARCH_OS OUTPUT_VARIABLE CMAKE_DEB_HOST_ARCH_OS) - -if(DEFINED ENV{DEB_BUILD_GNU_TYPE} AND DEFINED ENV{DEB_HOST_GNU_TYPE} AND DEFINED ENV{DEB_HOST_MULTIARCH} AND DEFINED ENV{DEB_BUILD_MULTIARCH} AND DEFINED ENV{DEB_HOST_ARCH_OS}) - set(CMAKE_DEB_BUILD_MULTIARCH $ENV{DEB_BUILD_MULTIARCH}) - set(CMAKE_DEB_HOST_MULTIARCH $ENV{DEB_HOST_MULTIARCH}) - set(CMAKE_DEB_BUILD_GNU_TYPE $ENV{DEB_BUILD_GNU_TYPE}) - set(CMAKE_DEB_HOST_GNU_TYPE $ENV{DEB_HOST_GNU_TYPE}) - set(CMAKE_DEB_HOST_ARCH_OS $ENV{DEB_HOST_ARCH_OS}) - - # NB! ${CMAKE_DEB_HOST_MULTIARCH}-gcc exists on the native system to - # do native compilation (just a symlink to gcc) - - # TODO probably also needs to honor e.g. $ENV{CC}=gcc-4.6 and prefix - # that with ${CMAKE_DEB_HOST_MULTIARCH} - if(NOT DEFINED CMAKE_C_COMPILER AND NOT DEFINED ENV{CC}) - find_program(CMAKE_C_COMPILER ${CMAKE_DEB_HOST_GNU_TYPE}-gcc) - endif() - if(NOT DEFINED CMAKE_CXX_COMPILER AND NOT DEFINED ENV{CXX}) - find_program(CMAKE_CXX_COMPILER ${CMAKE_DEB_HOST_GNU_TYPE}-g++) - endif() - if(NOT DEFINED CMAKE_Fortran_COMPILER AND NOT DEFINED ENV{FC}) - find_program(CMAKE_Fortran_COMPILER ${CMAKE_DEB_HOST_GNU_TYPE}-gfortran) - endif() - - if(NOT DEFINED CMAKE_LIBRARY_ARCHITECTURE) - SET(CMAKE_LIBRARY_ARCHITECTURE ${CMAKE_DEB_HOST_MULTIARCH}) - endif() - - if(NOT DEFINED CMAKE_INSTALL_LIBDIR) - SET(CMAKE_INSTALL_LIBDIR "lib/${CMAKE_LIBRARY_ARCHITECTURE}") - endif() - - if(NOT DEFINED CMAKE_SYSTEM_NAME) - if(CMAKE_DEB_HOST_ARCH_OS STREQUAL "linux-gnu") - SET(CMAKE_SYSTEM_NAME Linux) - endif() - - if(CMAKE_DEB_HOST_ARCH_OS STREQUAL "kfreebsd") - SET(CMAKE_SYSTEM_NAME GNU/kFreeBSD) - endif() - endif() - - if(CMAKE_DEB_HOST_GNU_TYPE AND CMAKE_DEB_BUILD_GNU_TYPE) - if(NOT ${CMAKE_DEB_HOST_GNU_TYPE} STREQUAL ${CMAKE_DEB_BUILD_GNU_TYPE}) - SET(CMAKE_CROSSCOMPILING TRUE) - SET(PKG_CONFIG_EXECUTABLE ${CMAKE_DEB_HOST_GNU_TYPE}-pkg-config) - if(NOT CMAKE_SCRIPT_MODE_FILE) - # These really do not belong here, qtchooser should be able to pick the right qt (3rdparty, system, or cross) - if (NOT TARGET Qt5::qmake) - add_executable(Qt5::qmake IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qmake") - set_target_properties(Qt5::qmake PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qmake") - endif() - if (NOT TARGET Qt5::moc) - add_executable(Qt5::moc IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/moc") - set_target_properties(Qt5::moc PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/moc") - endif() - if (NOT TARGET Qt5::rcc) - add_executable(Qt5::rcc IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/rcc") - set_target_properties(Qt5::rcc PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/rcc") - endif() - if (NOT TARGET Qt5::uic) - add_executable(Qt5::uic IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/uic") - set_target_properties(Qt5::uic PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/uic") - endif() - if (NOT TARGET Qt5::qdbuscpp2xml) - add_executable(Qt5::qdbuscpp2xml IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qdbuscpp2xml") - set_target_properties(Qt5::qdbuscpp2xml PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qdbuscpp2xml") - endif() - if (NOT TARGET Qt5::qdbusxml2cpp) - add_executable(Qt5::qdbusxml2cpp IMPORTED AND COMMAND "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qdbusxml2cpp") - set_target_properties(Qt5::qdbusxml2cpp PROPERTIES IMPORTED_LOCATION "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/qdbusxml2cpp") - endif() - endif() - endif() - endif() -endif() diff -Nru cmake-3.3.2is3.2.2/debian/patches/cpack-doc-typo.patch cmake-3.5.0/debian/patches/cpack-doc-typo.patch --- cmake-3.3.2is3.2.2/debian/patches/cpack-doc-typo.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/cpack-doc-typo.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ -diff --git a/Modules/CPack.cmake b/Modules/CPack.cmake -index 35259c4..4b66964 100644 ---- a/Modules/CPack.cmake -+++ b/Modules/CPack.cmake -@@ -228,7 +228,7 @@ - # - # List of four values that specify what project to install. The four values - # are: Build directory, Project Name, Project Component, Directory. If --# omitted, CPack will build an installer that installers everything. -+# omitted, CPack will build an installer that installs everything. - # - # .. variable:: CPACK_SYSTEM_NAME - # diff -Nru cmake-3.3.2is3.2.2/debian/patches/custom-sphinx-flags.patch cmake-3.5.0/debian/patches/custom-sphinx-flags.patch --- cmake-3.3.2is3.2.2/debian/patches/custom-sphinx-flags.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/custom-sphinx-flags.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,79 +0,0 @@ -From dd107b30d26b2cdaa5b1766f733428f3c4c7cd42 Mon Sep 17 00:00:00 2001 -From: Brad King -Date: Thu, 30 Apr 2015 09:30:14 -0400 -Subject: [PATCH] Add option to pass custom flags to sphinx-build (#15545) - -Create a SPHINX_FLAGS cache entry that users can populate with -command-line flags for sphinx-build. Add an option to the -bootstrap script to populate it up front. - -Suggested-by: Felix Geyer ---- - Utilities/Sphinx/CMakeLists.txt | 4 ++++ - bootstrap | 8 ++++++++ - 2 files changed, 12 insertions(+) - -diff --git a/Utilities/Sphinx/CMakeLists.txt b/Utilities/Sphinx/CMakeLists.txt -index da81752..a755ca1 100644 ---- a/Utilities/Sphinx/CMakeLists.txt -+++ b/Utilities/Sphinx/CMakeLists.txt -@@ -31,8 +31,11 @@ find_program(SPHINX_EXECUTABLE - NAMES sphinx-build - DOC "Sphinx Documentation Builder (sphinx-doc.org)" - ) -+set(SPHINX_FLAGS "" CACHE STRING "Flags to pass to sphinx-build") -+separate_arguments(sphinx_flags UNIX_COMMAND "${SPHINX_FLAGS}") - - mark_as_advanced(SPHINX_TEXT) -+mark_as_advanced(SPHINX_FLAGS) - - if(NOT SPHINX_MAN AND NOT SPHINX_HTML AND NOT SPHINX_SINGLEHTML AND NOT SPHINX_QTHELP AND NOT SPHINX_TEXT) - return() -@@ -114,6 +117,7 @@ foreach(format ${doc_formats}) - -c ${CMAKE_CURRENT_BINARY_DIR} - -d ${CMAKE_CURRENT_BINARY_DIR}/doctrees - -b ${format} -+ ${sphinx_flags} - ${CMake_SOURCE_DIR}/Help - ${CMAKE_CURRENT_BINARY_DIR}/${format} - > ${doc_format_log} # log stdout, pass stderr -diff --git a/bootstrap b/bootstrap -index 00b51b5..14046ee 100755 ---- a/bootstrap -+++ b/bootstrap -@@ -74,6 +74,7 @@ cmake_sphinx_man="" - cmake_sphinx_html="" - cmake_sphinx_qthelp="" - cmake_sphinx_build="" -+cmake_sphinx_flags="" - - # Determine whether this is a Cygwin environment. - if echo "${cmake_system}" | grep CYGWIN >/dev/null 2>&1; then -@@ -423,6 +424,7 @@ Configuration: - --sphinx-html build html help with Sphinx - --sphinx-qthelp build qch help with Sphinx - --sphinx-build= use as the sphinx-build executable -+ --sphinx-flags= pass to sphinx-build executable - - Directory and file names: - --prefix=PREFIX install files in tree rooted at PREFIX -@@ -660,6 +662,7 @@ while test $# != 0; do - --sphinx-html) cmake_sphinx_html="1" ;; - --sphinx-qthelp) cmake_sphinx_qthelp="1" ;; - --sphinx-build=*) cmake_sphinx_build=`cmake_arg "$1"` ;; -+ --sphinx-flags=*) cmake_sphinx_flags=`cmake_arg "$1"` ;; - --help) cmake_usage ;; - --version) cmake_version_display ; exit 2 ;; - --verbose) cmake_verbose=TRUE ;; -@@ -1684,6 +1687,11 @@ if [ "x${cmake_sphinx_build}" != "x" ]; then - set (SPHINX_EXECUTABLE "'"${cmake_sphinx_build}"'" CACHE FILEPATH "Location of Qt sphinx-build" FORCE) - ' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" - fi -+if [ "x${cmake_sphinx_flags}" != "x" ]; then -+ echo ' -+set (SPHINX_FLAGS [==['"${cmake_sphinx_flags}"']==] CACHE STRING "Flags to pass to sphinx-build" FORCE) -+' >> "${cmake_bootstrap_dir}/InitialCacheFlags.cmake" -+fi - - # Add user-specified settings. Handle relative-path case for - # specification of cmake_init_file. diff -Nru cmake-3.3.2is3.2.2/debian/patches/fe558718b30da989db8b880374012a0e580574e6.patch cmake-3.5.0/debian/patches/fe558718b30da989db8b880374012a0e580574e6.patch --- cmake-3.3.2is3.2.2/debian/patches/fe558718b30da989db8b880374012a0e580574e6.patch 2015-12-09 12:11:05.000000000 +0000 +++ cmake-3.5.0/debian/patches/fe558718b30da989db8b880374012a0e580574e6.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,41 +0,0 @@ -From fe558718b30da989db8b880374012a0e580574e6 Mon Sep 17 00:00:00 2001 -From: Marcus Meissner -Date: Mon, 23 Feb 2015 10:51:42 +0100 -Subject: [PATCH] GetPrerequisites: Update output matching for newer 'file' - versions - -Detect PIE binaries with newer 'file' (5.22). It no longer prints -"(uses shared libraries)" but does print "interpreter": - - # file 5.19 - $ file /usr/bin/su - /usr/bin/su: ... shared object, ..., dynamically linked (uses shared libs), ... - - # file 5.22 - $ file /usr/bin/su - /usr/bin/su: ... shared object, ..., dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, ... ---- - Modules/GetPrerequisites.cmake | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake -index 712a41c..9fb85fe 100644 ---- a/Modules/GetPrerequisites.cmake -+++ b/Modules/GetPrerequisites.cmake -@@ -260,6 +260,13 @@ function(is_file_executable file result_var) - return() - endif() - -+ # "file" version 5.22 does not print "(used shared libraries)" -+ # but uses "interpreter" -+ if("${file_ov}" MATCHES "shared object.*interpreter") -+ set(${result_var} 1 PARENT_SCOPE) -+ return() -+ endif() -+ - else() - message(STATUS "warning: No 'file' command, skipping execute_process...") - endif() --- -1.7.10.4 - diff -Nru cmake-3.3.2is3.2.2/debian/patches/Features_Extract_strings_from_test_binary_more_reliably.patch cmake-3.5.0/debian/patches/Features_Extract_strings_from_test_binary_more_reliably.patch --- cmake-3.3.2is3.2.2/debian/patches/Features_Extract_strings_from_test_binary_more_reliably.patch 2015-11-20 11:55:11.000000000 +0000 +++ cmake-3.5.0/debian/patches/Features_Extract_strings_from_test_binary_more_reliably.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,32 +0,0 @@ -From 150e1b27c54cf4e19e19ad7836e6bbfb9fbb5266 Mon Sep 17 00:00:00 2001 -From: Brad King -Date: Thu, 10 Sep 2015 14:37:20 -0400 -Subject: [PATCH] Features: Extract strings from test binary more reliably - (#15736) - -Since commit v3.1.0-rc1~635^2~7 (project: Add infrastructure for -recording CXX compiler features, 2013-10-17) we compile a test source to -a binary and then extract "_FEATURES:..." strings from the binary -with the file(STRINGS) command. Add a newline at the beginning of the -string literal to be sure file(STRINGS) can extract the first entry as a -string independent of whatever else the compiler may put before the -storage it allocates for the literal within the binary. ---- - Modules/Internal/FeatureTesting.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Modules/Internal/FeatureTesting.cmake b/Modules/Internal/FeatureTesting.cmake -index abd9a26..86b89b2 100644 ---- a/Modules/Internal/FeatureTesting.cmake -+++ b/Modules/Internal/FeatureTesting.cmake -@@ -5,7 +5,7 @@ macro(record_compiler_features lang compile_flags feature_list) - string(TOLOWER ${lang} lang_lc) - file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.bin") - file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/feature_tests.${lang_lc}" " -- const char features[] = {\"\"\n") -+ const char features[] = {\"\\n\"\n") - - get_property(known_features GLOBAL PROPERTY CMAKE_${lang}_KNOWN_FEATURES) - --- -1.7.10.4 diff -Nru cmake-3.3.2is3.2.2/debian/patches/FindBoost_add_-lpthread_#563479.diff cmake-3.5.0/debian/patches/FindBoost_add_-lpthread_#563479.diff --- cmake-3.3.2is3.2.2/debian/patches/FindBoost_add_-lpthread_#563479.diff 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/FindBoost_add_-lpthread_#563479.diff 2016-03-13 12:48:42.000000000 +0000 @@ -12,7 +12,7 @@ --- cmake.orig/Modules/FindBoost.cmake +++ cmake/Modules/FindBoost.cmake @@ -447,6 +447,22 @@ function(_Boost_GUESS_COMPILER_PREFIX _r - set(${_ret} ${_boost_COMPILER} PARENT_SCOPE) + set(${componentvar} ${_boost_processed_components} PARENT_SCOPE) endfunction() +function(_Boost_consider_adding_pthreads _outvar) diff -Nru cmake-3.3.2is3.2.2/debian/patches/FindJNI.cmake.mips.patch cmake-3.5.0/debian/patches/FindJNI.cmake.mips.patch --- cmake-3.3.2is3.2.2/debian/patches/FindJNI.cmake.mips.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/FindJNI.cmake.mips.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -From: Yunqiang Su -Subject: cmake - FindJNI add mips64(el) mipsn32(el) support -Date: Tue, 6 May 2014 16:06:45 +0800 - -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747174 - -Add support for mips64 mips64el mipsn32 mipsn32el in -Modules/FindJNI.cmake. - -Index: cmake/Modules/FindJNI.cmake -=================================================================== ---- cmake.orig/Modules/FindJNI.cmake -+++ cmake/Modules/FindJNI.cmake -@@ -53,7 +53,7 @@ macro(java_append_library_directories _v - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^mips") - # mips* machines are bi-endian mostly so processor does not tell - # endianess of the underlying system. -- set(_java_libarch "${CMAKE_SYSTEM_PROCESSOR}" "mips" "mipsel" "mipseb") -+ set(_java_libarch "${CMAKE_SYSTEM_PROCESSOR}" "mips" "mipsel" "mipseb" "mips64" "mips64el" "mipsn32" "mipsn32el") - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(powerpc|ppc)64le") - set(_java_libarch "ppc64" "ppc64le") - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(powerpc|ppc)64") diff -Nru cmake-3.3.2is3.2.2/debian/patches/fix-hdf5-hl.patch cmake-3.5.0/debian/patches/fix-hdf5-hl.patch --- cmake-3.3.2is3.2.2/debian/patches/fix-hdf5-hl.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/fix-hdf5-hl.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ -Description: Define HDF5_{Fortran_,}HL_COMPILE_LINE - so that HDF5_{Fortran_,}HL_INCLUDE_DIR and HDF5_{Fortran_,}HL_LIBRARIES - are found when the macro is invoked for HL and Fortran_HL components. -Author: Gilles Filippini -Index: cmake/Modules/FindHDF5.cmake -=================================================================== ---- cmake.orig/Modules/FindHDF5.cmake -+++ cmake/Modules/FindHDF5.cmake -@@ -223,6 +223,8 @@ if( NOT HDF5_FOUND ) - _HDF5_invoke_compiler( C HDF5_C_COMPILE_LINE HDF5_C_RETURN_VALUE ) - _HDF5_invoke_compiler( CXX HDF5_CXX_COMPILE_LINE HDF5_CXX_RETURN_VALUE ) - _HDF5_invoke_compiler( Fortran HDF5_Fortran_COMPILE_LINE HDF5_Fortran_RETURN_VALUE ) -+ set(HDF5_HL_COMPILE_LINE ${HDF5_C_COMPILE_LINE}) -+ set(HDF5_Fortran_HL_COMPILE_LINE ${HDF5_Fortran_COMPILE_LINE}) - - # seed the initial lists of libraries to find with items we know we need - set( HDF5_C_LIBRARY_NAMES_INIT hdf5 ) diff -Nru cmake-3.3.2is3.2.2/debian/patches/fix-mips-endian.patch cmake-3.5.0/debian/patches/fix-mips-endian.patch --- cmake-3.3.2is3.2.2/debian/patches/fix-mips-endian.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/fix-mips-endian.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,40 +0,0 @@ -From b1d560a0b9e6c545f65c170bdbbcf5da35123b58 Mon Sep 17 00:00:00 2001 -From: Brad King -Date: Tue, 12 May 2015 11:38:02 -0400 -Subject: [PATCH] CPU: MIPS is biendian - -MIPS machines are biendian hence they can run both big endian kernels -e.g. Debian mips architecture, and little endian kernels e.g. Debian -mipsel architecture. Use predefined macros to distinguish them. - -Change-Id: I75fccd3cb1ef7915c8754ebbb64cb52a948b4ad8 -Reported-by: Mathieu Malaterre -Inspired-by: Modestas Vainius ---- - CPU.h.in | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/Source/kwsys/CPU.h.in b/Source/kwsys/CPU.h.in -index 626914b..884d71a 100644 ---- a/Source/kwsys/CPU.h.in -+++ b/Source/kwsys/CPU.h.in -@@ -76,7 +76,15 @@ - #elif defined(__m68k__) || defined(M68000) - # define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_BIG - --/* MIPS */ -+/* MIPSel (MIPS little endian) */ -+#elif defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) -+# define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_LITTLE -+ -+/* MIPSeb (MIPS big endian) */ -+#elif defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) -+# define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_BIG -+ -+/* MIPS (fallback, big endian) */ - #elif defined(__mips) || defined(__mips__) || defined(__MIPS__) - # define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_BIG - --- -1.9.1 - diff -Nru cmake-3.3.2is3.2.2/debian/patches/openjdk-8-detection.patch cmake-3.5.0/debian/patches/openjdk-8-detection.patch --- cmake-3.3.2is3.2.2/debian/patches/openjdk-8-detection.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/openjdk-8-detection.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,28 +0,0 @@ -From 7953867ba46223dfab373ce58cff0a4bc20c3864 Mon Sep 17 00:00:00 2001 -From: Felix Geyer -Date: Tue, 12 May 2015 13:45:43 -0400 -Subject: [PATCH] FindJava: Fix OpenJDK 8 version detection (#15565) - -The openjdk-8 (8u45-b14-2) package on Debian unstable has extra -text after the version number components. Match this and add it -to the reported version string. ---- - Modules/FindJava.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Modules/FindJava.cmake b/Modules/FindJava.cmake -index bb73853..9e43174 100644 ---- a/Modules/FindJava.cmake -+++ b/Modules/FindJava.cmake -@@ -137,7 +137,7 @@ if(Java_JAVA_EXECUTABLE) - elseif(var MATCHES "java full version \"kaffe-([0-9]+\\.[0-9]+\\.[0-9_]+)\"") - # Kaffe style - set(Java_VERSION_STRING "${CMAKE_MATCH_1}") -- elseif(var MATCHES "openjdk version \"([0-9]+\\.[0-9]+\\.[0-9_]+)\"") -+ elseif(var MATCHES "openjdk version \"([0-9]+\\.[0-9]+\\.[0-9_]+.*)\"") - # OpenJDK ver 1.7.x on OpenBSD - set(Java_VERSION_STRING "${CMAKE_MATCH_1}") - else() --- -1.7.10.4 - diff -Nru cmake-3.3.2is3.2.2/debian/patches/protect-tests-from-makeflags.patch cmake-3.5.0/debian/patches/protect-tests-from-makeflags.patch --- cmake-3.3.2is3.2.2/debian/patches/protect-tests-from-makeflags.patch 2015-05-14 00:22:47.000000000 +0000 +++ cmake-3.5.0/debian/patches/protect-tests-from-makeflags.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,21 +0,0 @@ -From 703e76252930429ac39d3ebf456e3e1e688d1982 Mon Sep 17 00:00:00 2001 -From: Brad King -Date: Wed, 29 Apr 2015 16:13:50 -0400 -Subject: [PATCH] Tests: Protect RunCMake tests from MAKEFLAGS in environment - (#15542) - ---- - Tests/RunCMake/RunCMake.cmake | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake -index b24ae0b..70c0d6c 100644 ---- a/Tests/RunCMake/RunCMake.cmake -+++ b/Tests/RunCMake/RunCMake.cmake -@@ -135,3 +135,6 @@ function(run_cmake_command test) - set(RunCMake_TEST_COMMAND "${ARGN}") - run_cmake(${test}) - endfunction() -+ -+# Protect RunCMake tests from calling environment. -+unset(ENV{MAKEFLAGS}) diff -Nru cmake-3.3.2is3.2.2/debian/patches/python3.5.diff cmake-3.5.0/debian/patches/python3.5.diff --- cmake-3.3.2is3.2.2/debian/patches/python3.5.diff 2015-10-23 20:04:08.000000000 +0000 +++ cmake-3.5.0/debian/patches/python3.5.diff 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ -Index: b/Modules/FindPythonLibs.cmake -=================================================================== ---- a/Modules/FindPythonLibs.cmake -+++ b/Modules/FindPythonLibs.cmake -@@ -55,7 +55,7 @@ CMAKE_FIND_FRAMEWORKS(Python) - - set(_PYTHON1_VERSIONS 1.6 1.5) - set(_PYTHON2_VERSIONS 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0) --set(_PYTHON3_VERSIONS 3.4 3.3 3.2 3.1 3.0) -+set(_PYTHON3_VERSIONS 3.5 3.4 3.3 3.2 3.1 3.0) - - if(PythonLibs_FIND_VERSION) - if(PythonLibs_FIND_VERSION_COUNT GREATER 1) diff -Nru cmake-3.3.2is3.2.2/debian/patches/series cmake-3.5.0/debian/patches/series --- cmake-3.3.2is3.2.2/debian/patches/series 2015-12-09 12:10:41.000000000 +0000 +++ cmake-3.5.0/debian/patches/series 2015-12-14 20:41:00.000000000 +0000 @@ -1,16 +1,3 @@ FindBoost_add_-lpthread_#563479.diff qt_import_dir_variable.diff fix-ftbfs-on-kfreebsd.patch -FindJNI.cmake.mips.patch -fix-hdf5-hl.patch -cpack-doc-typo.patch -protect-tests-from-makeflags.patch -custom-sphinx-flags.patch -fix-mips-endian.patch -openjdk-8-detection.patch -ubuntu_cmake-crosscompile.patch -ubuntu_boost-multiarch.patch -upstream_findpkgconfig.diff -python3.5.diff -Features_Extract_strings_from_test_binary_more_reliably.patch -fe558718b30da989db8b880374012a0e580574e6.patch diff -Nru cmake-3.3.2is3.2.2/debian/patches/ubuntu_boost-multiarch.patch cmake-3.5.0/debian/patches/ubuntu_boost-multiarch.patch --- cmake-3.3.2is3.2.2/debian/patches/ubuntu_boost-multiarch.patch 2015-05-29 09:22:23.000000000 +0000 +++ cmake-3.5.0/debian/patches/ubuntu_boost-multiarch.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -Description: make boost look into multiarch locations as well -Author: Dmitrijs Ledkovs - -Index: cmake-3.0.2/Modules/FindBoost.cmake -=================================================================== ---- cmake-3.0.2.orig/Modules/FindBoost.cmake -+++ cmake-3.0.2/Modules/FindBoost.cmake -@@ -889,6 +889,7 @@ else() - list(APPEND _boost_LIBRARY_SEARCH_DIRS - ${Boost_INCLUDE_DIR}/lib - ${Boost_INCLUDE_DIR}/../lib -+ ${Boost_INCLUDE_DIR}/../lib/${CMAKE_LIBRARY_ARCHITECTURE} - ${Boost_INCLUDE_DIR}/stage/lib - ) - if( Boost_NO_SYSTEM_PATHS ) diff -Nru cmake-3.3.2is3.2.2/debian/patches/ubuntu_cmake-crosscompile.patch cmake-3.5.0/debian/patches/ubuntu_cmake-crosscompile.patch --- cmake-3.3.2is3.2.2/debian/patches/ubuntu_cmake-crosscompile.patch 2015-05-29 09:22:23.000000000 +0000 +++ cmake-3.5.0/debian/patches/ubuntu_cmake-crosscompile.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,80 +0,0 @@ -Description: support cross-compilation on multi-arch systems -Author: Dimitri John Ledkov - -Index: cmake-3.0.2/Modules/CMakeDetermineSystem.cmake -=================================================================== ---- cmake-3.0.2.orig/Modules/CMakeDetermineSystem.cmake -+++ cmake-3.0.2/Modules/CMakeDetermineSystem.cmake -@@ -104,6 +104,13 @@ if(CMAKE_TOOLCHAIN_FILE) - message(FATAL_ERROR "Could not find toolchain file: ${CMAKE_TOOLCHAIN_FILE}") - set(CMAKE_TOOLCHAIN_FILE "NOTFOUND" CACHE FILEPATH "The CMake toolchain file" FORCE) - endif() -+else() -+ # on multiarch debian systems cross-compilation has standard names & -+ # paths thus we can auto-detect all settings required to enable -+ # cross-compilation on debian systems out of the box -+ if(EXISTS "/etc/debian_version") -+ include(${CMAKE_ROOT}/Modules/MultiArchCross.cmake OPTIONAL RESULT_VARIABLE _INCLUDED_MULTIARCH_TOOLCHAIN_FILE) -+ endif() - endif() - - -Index: cmake-3.0.2/Modules/CMakeDetermineCompiler.cmake -=================================================================== ---- cmake-3.0.2.orig/Modules/CMakeDetermineCompiler.cmake -+++ cmake-3.0.2/Modules/CMakeDetermineCompiler.cmake -@@ -12,6 +12,10 @@ - # (To distribute this file outside of CMake, substitute the full - # License text for the above reference.) - -+if(EXISTS "/etc/debian_version") -+ include(${CMAKE_ROOT}/Modules/MultiArchCross.cmake OPTIONAL RESULT_VARIABLE _INCLUDED_MULTIARCH_TOOLCHAIN_FILE) -+endif() -+ - macro(_cmake_find_compiler lang) - # Use already-enabled languages for reference. - get_property(_languages GLOBAL PROPERTY ENABLED_LANGUAGES) -Index: cmake-3.0.2/Modules/FindPkgConfig.cmake -=================================================================== ---- cmake-3.0.2.orig/Modules/FindPkgConfig.cmake -+++ cmake-3.0.2/Modules/FindPkgConfig.cmake -@@ -30,6 +30,10 @@ - ### Common stuff #### - set(PKG_CONFIG_VERSION 1) - -+if(EXISTS "/etc/debian_version") -+ include(${CMAKE_ROOT}/Modules/MultiArchCross.cmake OPTIONAL RESULT_VARIABLE _INCLUDED_MULTIARCH_TOOLCHAIN_FILE) -+endif() -+ - # find pkg-config, use PKG_CONFIG if set - if((NOT PKG_CONFIG_EXECUTABLE) AND (NOT "$ENV{PKG_CONFIG}" STREQUAL "")) - set(PKG_CONFIG_EXECUTABLE "$ENV{PKG_CONFIG}" CACHE FILEPATH "pkg-config executable") -Index: cmake-3.0.2/Modules/GNUInstallDirs.cmake -=================================================================== ---- cmake-3.0.2.orig/Modules/GNUInstallDirs.cmake -+++ cmake-3.0.2/Modules/GNUInstallDirs.cmake -@@ -72,6 +72,10 @@ - - # Installation directories - # -+if(EXISTS "/etc/debian_version") -+ include(${CMAKE_ROOT}/Modules/MultiArchCross.cmake OPTIONAL RESULT_VARIABLE _INCLUDED_MULTIARCH_TOOLCHAIN_FILE) -+endif() -+ - if(NOT DEFINED CMAKE_INSTALL_BINDIR) - set(CMAKE_INSTALL_BINDIR "bin" CACHE PATH "user executables (bin)") - endif() -Index: cmake-3.0.2/Modules/AutogenInfo.cmake.in -=================================================================== ---- cmake-3.0.2.orig/Modules/AutogenInfo.cmake.in -+++ cmake-3.0.2/Modules/AutogenInfo.cmake.in -@@ -13,6 +13,9 @@ set(AM_CMAKE_SOURCE_DIR "@CMAKE_SOURCE_D - set(AM_QT_MOC_EXECUTABLE "@_qt_moc_executable@") - set(AM_QT_UIC_EXECUTABLE "@_qt_uic_executable@") - set(AM_QT_RCC_EXECUTABLE "@_qt_rcc_executable@") -+if(DEFINED ENV{DEB_BUILD_MULTIARCH} AND DEFINED ENV{DEB_HOST_MULTIARCH} AND "@_qt_moc_executable@" MATCHES "/usr/lib/$ENV{DEB_HOST_MULTIARCH}/qt5/bin/moc") -+ set(AM_QT_MOC_EXECUTABLE "/usr/lib/$ENV{DEB_BUILD_MULTIARCH}/qt5/bin/moc") -+endif() - set(AM_CMAKE_CURRENT_SOURCE_DIR "@CMAKE_CURRENT_SOURCE_DIR@/") - set(AM_CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@/") - set(AM_QT_VERSION_MAJOR "@_target_qt_version@") diff -Nru cmake-3.3.2is3.2.2/debian/patches/upstream_findpkgconfig.diff cmake-3.5.0/debian/patches/upstream_findpkgconfig.diff --- cmake-3.3.2is3.2.2/debian/patches/upstream_findpkgconfig.diff 2015-08-24 08:46:50.000000000 +0000 +++ cmake-3.5.0/debian/patches/upstream_findpkgconfig.diff 1970-01-01 00:00:00.000000000 +0000 @@ -1,37 +0,0 @@ -From: Rolf Eike Beer -Date: Tue, 18 Aug 2015 10:14:43 +0000 (+0200) -Subject: FindPkgConfig: remove variable dereference -X-Git-Url: http://www.cmake.org/gitweb?p=cmake.git;a=commitdiff_plain;h=b9ec9392da21a3421e48c6961976060d872faffb - -FindPkgConfig: remove variable dereference - -If CMAKE_MINIMUM_REQUIRED_VERSION is not set because no -cmake_minimum_required() call is present this line can lead to an error as that -string is empty so too few arguments are passed to if(): - -See also "/var/tmp/paludis/build/kde-krdc-15.08.0/work/build/CMakeFiles/CMakeOutput.log". -See also "/var/tmp/paludis/build/kde-krdc-15.08.0/work/build/CMakeFiles/CMakeError.log". -CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:112 (elseif): - given arguments: - - "VERSION_LESS" "3.1" - - Unknown arguments specified -Call Stack (most recent call first): - /usr/share/cmake/Modules/FindPkgConfig.cmake:501 (_pkgconfig_parse_options) - /usr/share/cmake/Modules/FindOpenSSL.cmake:43 (pkg_check_modules) ---- - -Index: cmake-3.2.2/Modules/FindPkgConfig.cmake -=================================================================== ---- cmake-3.2.2.orig/Modules/FindPkgConfig.cmake -+++ cmake-3.2.2/Modules/FindPkgConfig.cmake -@@ -113,7 +113,7 @@ macro(_pkgconfig_parse_options _result _ - set(${_no_cmake_path} 1) - set(${_no_cmake_environment_path} 1) - endif() -- elseif(${CMAKE_MINIMUM_REQUIRED_VERSION} VERSION_LESS 3.1) -+ elseif(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 3.1) - set(${_no_cmake_path} 1) - set(${_no_cmake_environment_path} 1) - endif() diff -Nru cmake-3.3.2is3.2.2/debian/rules cmake-3.5.0/debian/rules --- cmake-3.3.2is3.2.2/debian/rules 2015-05-14 01:31:31.000000000 +0000 +++ cmake-3.5.0/debian/rules 2016-03-13 14:13:07.000000000 +0000 @@ -29,7 +29,9 @@ $(call $(flag_action),CMAKE_CXX_FLAGS,"$(CXXFLAGS)","C++ flags") $(call $(flag_action),CMAKE_SKIP_BOOTSTRAP_TEST,ON,"Skip BootstrapTest") $(call $(flag_action),BUILD_CursesDialog,ON,"Build curses GUI") - $(call $(flag_action),BUILD_QtDialog,ON,"Build Qt4 GUI") +ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),) + $(call $(flag_action),BUILD_QtDialog,ON,"Build Qt GUI") +endif # $(call $(flag_action),BUILD_DOCUMENTATION,ON) $(BUILD_FLAGS_FILE): flag_action := set_build_flag @@ -44,7 +46,7 @@ $(BOOTSTRAP_PARALLEL) --verbose override_dh_auto_test: - HOME="`pwd`/Build" dh_auto_test -- ARGS="-E CTestTestUpload" + HOME="`pwd`/Build" dh_auto_test --buildsystem=cmake -- ARGS="-E CTestTestUpload" override_dh_auto_clean: dh_auto_clean @@ -63,7 +65,10 @@ override_dh_sphinxdoc: dh_sphinxdoc -pcmake-doc +override_dh_strip: + dh_strip --dbgsym-migration='cmake-dbg (<< 3.5.0-1~)' + %: - dh $@ --with=bash-completion,sphinxdoc --parallel --builddirectory=Build --dbg-package=cmake-dbg + dh $@ --with=sphinxdoc --parallel --builddirectory=Build .PHONY: override_dh_auto_configure override_dh_auto_clean diff -Nru cmake-3.3.2is3.2.2/debian/tests/control cmake-3.5.0/debian/tests/control --- cmake-3.3.2is3.2.2/debian/tests/control 1970-01-01 00:00:00.000000000 +0000 +++ cmake-3.5.0/debian/tests/control 2015-09-20 18:53:06.000000000 +0000 @@ -0,0 +1,7 @@ +Tests: testsuite +Restrictions: allow-stderr +Depends: cmake, @builddeps@ + +Tests: testsuite-ninja +Restrictions: allow-stderr +Depends: cmake, ninja-build, @builddeps@ diff -Nru cmake-3.3.2is3.2.2/debian/tests/testsuite cmake-3.5.0/debian/tests/testsuite --- cmake-3.3.2is3.2.2/debian/tests/testsuite 1970-01-01 00:00:00.000000000 +0000 +++ cmake-3.5.0/debian/tests/testsuite 2015-12-14 20:41:00.000000000 +0000 @@ -0,0 +1,11 @@ +#!/bin/sh + +set -ev + +SRCDIR="$(pwd)" + +cd $ADTTMP + +cmake -DCMake_TEST_EXTERNAL_CMAKE=/usr/bin $SRCDIR +make VERBOSE=1 +CTEST_OUTPUT_ON_FAILURE=1 make test ARGS="-E CTestTestUpload -E BootstrapTest" diff -Nru cmake-3.3.2is3.2.2/debian/tests/testsuite-ninja cmake-3.5.0/debian/tests/testsuite-ninja --- cmake-3.3.2is3.2.2/debian/tests/testsuite-ninja 1970-01-01 00:00:00.000000000 +0000 +++ cmake-3.5.0/debian/tests/testsuite-ninja 2015-12-14 20:41:00.000000000 +0000 @@ -0,0 +1,11 @@ +#!/bin/sh + +set -ev + +SRCDIR="$(pwd)" + +cd $ADTTMP + +cmake -DCMake_TEST_EXTERNAL_CMAKE=/usr/bin -GNinja $SRCDIR +ninja -v +CTEST_OUTPUT_ON_FAILURE=1 ctest -E CTestTestUpload -E BootstrapTest diff -Nru cmake-3.3.2is3.2.2/debian/watch cmake-3.5.0/debian/watch --- cmake-3.3.2is3.2.2/debian/watch 2014-08-05 18:33:37.000000000 +0000 +++ cmake-3.5.0/debian/watch 2015-12-14 20:41:00.000000000 +0000 @@ -2,5 +2,5 @@ # Track CMake 2.6.x releases including RCs opts="uversionmangle=s/-[Rr][Cc]-?(\d+)/~rc$1/i" \ - http://www.cmake.org/files/v([\d.]+)/ \ + https://cmake.org/files/v([\d.]+)/ \ cmake-([\d.]+(?i:-RC-?\d+)?).tar.gz diff -Nru cmake-3.3.2is3.2.2/Help/command/add_custom_command.rst cmake-3.5.0/Help/command/add_custom_command.rst --- cmake-3.3.2is3.2.2/Help/command/add_custom_command.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_custom_command.rst 2016-03-08 14:36:21.000000000 +0000 @@ -79,6 +79,9 @@ If ``COMMAND`` specifies an executable target (created by the :command:`add_executable` command) it will automatically be replaced by the location of the executable created at build time. + (Use the ``TARGET_FILE`` + :manual:`generator expression ` to + reference an executable later in the command line.) Additionally a target-level dependency will be added so that the executable target will be built before any target using this custom command. However this does NOT add a file-level dependency that @@ -175,7 +178,7 @@ :: - add_custom_command(TARGET target + add_custom_command(TARGET PRE_BUILD | PRE_LINK | POST_BUILD COMMAND command1 [ARGS] [args1...] [COMMAND command2 [ARGS] [args2...] ...] @@ -185,7 +188,10 @@ [VERBATIM] [USES_TERMINAL]) This defines a new command that will be associated with building the -specified target. When the command will happen is determined by which +specified ````. The ```` must be defined in the current +directory; targets defined in other directories may not be specified. + +When the command will happen is determined by which of the following is specified: ``PRE_BUILD`` diff -Nru cmake-3.3.2is3.2.2/Help/command/add_dependencies.rst cmake-3.5.0/Help/command/add_dependencies.rst --- cmake-3.3.2is3.2.2/Help/command/add_dependencies.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_dependencies.rst 2016-03-08 14:36:21.000000000 +0000 @@ -7,13 +7,17 @@ add_dependencies( []...) -Make a top-level depend on other top-level targets to ensure -that they build before does. A top-level target is one -created by ADD_EXECUTABLE, ADD_LIBRARY, or ADD_CUSTOM_TARGET. -Dependencies added to an IMPORTED target are followed transitively in -its place since the target itself does not build. +Make a top-level ```` depend on other top-level targets to +ensure that they build before ```` does. A top-level target +is one created by one of the :command:`add_executable`, +:command:`add_library`, or :command:`add_custom_target` commands +(but not targets generated by CMake like ``install``). -See the DEPENDS option of ADD_CUSTOM_TARGET and ADD_CUSTOM_COMMAND for -adding file-level dependencies in custom rules. See the -OBJECT_DEPENDS option in SET_SOURCE_FILES_PROPERTIES to add file-level -dependencies to object files. +Dependencies added to an :ref:`imported target ` +or an :ref:`interface library ` are followed +transitively in its place since the target itself does not build. + +See the ``DEPENDS`` option of :command:`add_custom_target` and +:command:`add_custom_command` commands for adding file-level +dependencies in custom rules. See the :prop_sf:`OBJECT_DEPENDS` +source file property to add file-level dependencies to object files. diff -Nru cmake-3.3.2is3.2.2/Help/command/add_executable.rst cmake-3.5.0/Help/command/add_executable.rst --- cmake-3.3.2is3.2.2/Help/command/add_executable.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_executable.rst 2016-03-08 14:36:21.000000000 +0000 @@ -14,7 +14,7 @@ logical target name and must be globally unique within a project. The actual file name of the executable built is constructed based on conventions of the native platform (such as ``.exe`` or just -````. +````). By default the executable file will be created in the build tree directory corresponding to the source tree directory in which the diff -Nru cmake-3.3.2is3.2.2/Help/command/add_library.rst cmake-3.5.0/Help/command/add_library.rst --- cmake-3.3.2is3.2.2/Help/command/add_library.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_library.rst 2016-03-08 14:36:21.000000000 +0000 @@ -33,6 +33,14 @@ variable :variable:`BUILD_SHARED_LIBS` is ``ON``. For ``SHARED`` and ``MODULE`` libraries the :prop_tgt:`POSITION_INDEPENDENT_CODE` target property is set to ``ON`` automatically. +A ``SHARED`` library may be marked with the :prop_tgt:`FRAMEWORK` +target property to create an OS X Framework. + +If a library does not export any symbols, it must not be declared as a +``SHARED`` library. For example, a Windows resource DLL or a managed C++/CLI +DLL that exports no unmanaged symbols would need to be a ``MODULE`` library. +This is because CMake expects a ``SHARED`` library to always have an +associated import library on Windows. By default the library file will be created in the build tree directory corresponding to the source tree directory in which the command was diff -Nru cmake-3.3.2is3.2.2/Help/command/add_subdirectory.rst cmake-3.5.0/Help/command/add_subdirectory.rst --- cmake-3.3.2is3.2.2/Help/command/add_subdirectory.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_subdirectory.rst 2016-03-08 14:36:21.000000000 +0000 @@ -12,23 +12,23 @@ directory in which the source CMakeLists.txt and code files are located. If it is a relative path it will be evaluated with respect to the current directory (the typical usage), but it may also be an -absolute path. The binary_dir specifies the directory in which to +absolute path. The ``binary_dir`` specifies the directory in which to place the output files. If it is a relative path it will be evaluated with respect to the current output directory, but it may also be an -absolute path. If binary_dir is not specified, the value of -source_dir, before expanding any relative path, will be used (the +absolute path. If ``binary_dir`` is not specified, the value of +``source_dir``, before expanding any relative path, will be used (the typical usage). The CMakeLists.txt file in the specified source directory will be processed immediately by CMake before processing in the current input file continues beyond this command. -If the EXCLUDE_FROM_ALL argument is provided then targets in the -subdirectory will not be included in the ALL target of the parent +If the ``EXCLUDE_FROM_ALL`` argument is provided then targets in the +subdirectory will not be included in the ``ALL`` target of the parent directory by default, and will be excluded from IDE project files. Users must explicitly build targets in the subdirectory. This is meant for use when the subdirectory contains a separate part of the project that is useful but not necessary, such as a set of examples. -Typically the subdirectory should contain its own project() command -invocation so that a full build system will be generated in the +Typically the subdirectory should contain its own :command:`project` +command invocation so that a full build system will be generated in the subdirectory (such as a VS IDE solution file). Note that inter-target dependencies supercede this exclusion. If a target built by the parent project depends on a target in the subdirectory, the dependee diff -Nru cmake-3.3.2is3.2.2/Help/command/add_test.rst cmake-3.5.0/Help/command/add_test.rst --- cmake-3.3.2is3.2.2/Help/command/add_test.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/add_test.rst 2016-03-08 14:36:21.000000000 +0000 @@ -28,6 +28,13 @@ directory set to the build directory corresponding to the current source directory. +The given test command is expected to exit with code ``0`` to pass and +non-zero to fail, or vice-versa if the :prop_test:`WILL_FAIL` test +property is set. Any output written to stdout or stderr will be +captured by :manual:`ctest(1)` but does not affect the pass/fail status +unless the :prop_test:`PASS_REGULAR_EXPRESSION` or +:prop_test:`FAIL_REGULAR_EXPRESSION` test property is used. + The ``COMMAND`` and ``WORKING_DIRECTORY`` options may use "generator expressions" with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` manual for available expressions. diff -Nru cmake-3.3.2is3.2.2/Help/command/aux_source_directory.rst cmake-3.5.0/Help/command/aux_source_directory.rst --- cmake-3.3.2is3.2.2/Help/command/aux_source_directory.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/aux_source_directory.rst 2016-03-08 14:36:21.000000000 +0000 @@ -8,7 +8,7 @@ aux_source_directory( ) Collects the names of all the source files in the specified directory -and stores the list in the provided. This command is +and stores the list in the ```` provided. This command is intended to be used by projects that use explicit template instantiation. Template instantiation files can be stored in a "Templates" subdirectory and collected automatically using this diff -Nru cmake-3.3.2is3.2.2/Help/command/build_command.rst cmake-3.5.0/Help/command/build_command.rst --- cmake-3.3.2is3.2.2/Help/command/build_command.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/build_command.rst 2016-03-08 14:36:21.000000000 +0000 @@ -19,7 +19,8 @@ where ```` is the location of the :manual:`cmake(1)` command-line tool, and ```` and ```` are the values provided to the ``CONFIGURATION`` and ``TARGET`` options, if any. The trailing ``-- -i`` -option is added for Makefile generators. +option is added for :ref:`Makefile Generators` if policy :policy:`CMP0061` +is not set to ``NEW``. When invoked, this ``cmake --build`` command line will launch the underlying build system tool. @@ -32,7 +33,7 @@ compatibility. Use the first signature instead. It sets the given ```` to a command-line string as -above but without the ``--config`` or ``--target`` options. +above but without the ``--target`` option. The ```` is ignored but should be the full path to msdev, devenv, nmake, make or one of the end user build tools for legacy invocations. diff -Nru cmake-3.3.2is3.2.2/Help/command/build_name.rst cmake-3.5.0/Help/command/build_name.rst --- cmake-3.3.2is3.2.2/Help/command/build_name.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/build_name.rst 2016-03-08 14:36:21.000000000 +0000 @@ -3,7 +3,7 @@ Disallowed. See CMake Policy :policy:`CMP0036`. -Use ${CMAKE_SYSTEM} and ${CMAKE_CXX_COMPILER} instead. +Use ``${CMAKE_SYSTEM}`` and ``${CMAKE_CXX_COMPILER}`` instead. :: @@ -11,4 +11,5 @@ Sets the specified variable to a string representing the platform and compiler settings. These values are now available through the -CMAKE_SYSTEM and CMAKE_CXX_COMPILER variables. +:variable:`CMAKE_SYSTEM` and +:variable:`CMAKE_CXX_COMPILER _COMPILER>` variables. diff -Nru cmake-3.3.2is3.2.2/Help/command/cmake_host_system_information.rst cmake-3.5.0/Help/command/cmake_host_system_information.rst --- cmake-3.3.2is3.2.2/Help/command/cmake_host_system_information.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/cmake_host_system_information.rst 2016-03-08 14:36:21.000000000 +0000 @@ -8,10 +8,10 @@ cmake_host_system_information(RESULT QUERY ...) Queries system information of the host system on which cmake runs. -One or more can be provided to select the information to be -queried. The list of queried values is stored in . +One or more ```` can be provided to select the information to be +queried. The list of queried values is stored in ````. - can be one of the following values: +```` can be one of the following values: :: diff -Nru cmake-3.3.2is3.2.2/Help/command/cmake_minimum_required.rst cmake-3.5.0/Help/command/cmake_minimum_required.rst --- cmake-3.3.2is3.2.2/Help/command/cmake_minimum_required.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/cmake_minimum_required.rst 2016-03-08 14:36:21.000000000 +0000 @@ -5,7 +5,7 @@ :: - cmake_minimum_required(VERSION major[.minor[.patch[.tweak]]] + cmake_minimum_required(VERSION major.minor[.patch[.tweak]] [FATAL_ERROR]) If the current version of CMake is lower than that required it will @@ -25,6 +25,17 @@ which enables compatibility features for CMake 2.4 and lower. -The FATAL_ERROR option is accepted but ignored by CMake 2.6 and +The ``FATAL_ERROR`` option is accepted but ignored by CMake 2.6 and higher. It should be specified so CMake versions 2.4 and lower fail with an error instead of just a warning. + +.. note:: + Call the ``cmake_minimum_required()`` command at the beginning of + the top-level ``CMakeLists.txt`` file even before calling the + :command:`project` command. It is important to establish version + and policy settings before invoking other commands whose behavior + they may affect. See also policy :policy:`CMP0000`. + + Calling ``cmake_minimum_required()`` inside a :command:`function` + limits some effects to the function scope when invoked. Such calls + should not be made with the intention of having global effects. diff -Nru cmake-3.3.2is3.2.2/Help/command/cmake_parse_arguments.rst cmake-3.5.0/Help/command/cmake_parse_arguments.rst --- cmake-3.3.2is3.2.2/Help/command/cmake_parse_arguments.rst 1970-01-01 00:00:00.000000000 +0000 +++ cmake-3.5.0/Help/command/cmake_parse_arguments.rst 2016-03-08 14:36:21.000000000 +0000 @@ -0,0 +1,85 @@ +cmake_parse_arguments +--------------------- + +``cmake_parse_arguments`` is intended to be used in macros or functions for +parsing the arguments given to that macro or function. It processes the +arguments and defines a set of variables which hold the values of the +respective options. + +:: + + cmake_parse_arguments( + args...) + + +The ```` argument contains all options for the respective macro, +i.e. keywords which can be used when calling the macro without any value +following, like e.g. the ``OPTIONAL`` keyword of the :command:`install` +command. + +The ```` argument contains all keywords for this macro +which are followed by one value, like e.g. ``DESTINATION`` keyword of the +:command:`install` command. + +The ```` argument contains all keywords for this +macro which can be followed by more than one value, like e.g. the +``TARGETS`` or ``FILES`` keywords of the :command:`install` command. + +.. note:: + + All keywords shall be unique. I.e. every keyword shall only be specified + once in either ````, ```` or + ````. A warning will be emitted if uniqueness is + violated. + +When done, ``cmake_parse_arguments`` will have defined for each of the +keywords listed in ````, ```` and +```` a variable composed of the given ```` +followed by ``"_"`` and the name of the respective keyword. These +variables will then hold the respective value from the argument list. +For the ```` keywords this will be ``TRUE`` or ``FALSE``. + +All remaining arguments are collected in a variable +``_UNPARSED_ARGUMENTS``, this can be checked afterwards to see +whether your macro was called with unrecognized parameters. + +As an example here a ``my_install()`` macro, which takes similar arguments +as the real :command:`install` command: + +.. code-block:: cmake + + function(MY_INSTALL) + set(options OPTIONAL FAST) + set(oneValueArgs DESTINATION RENAME) + set(multiValueArgs TARGETS CONFIGURATIONS) + cmake_parse_arguments(MY_INSTALL "${options}" "${oneValueArgs}" + "${multiValueArgs}" ${ARGN} ) + + # ... + +Assume ``my_install()`` has been called like this: + +.. code-block:: cmake + + my_install(TARGETS foo bar DESTINATION bin OPTIONAL blub) + +After the ``cmake_parse_arguments`` call the macro will have set the +following variables:: + + MY_INSTALL_OPTIONAL = TRUE + MY_INSTALL_FAST = FALSE (was not used in call to my_install) + MY_INSTALL_DESTINATION = "bin" + MY_INSTALL_RENAME = "" (was not used) + MY_INSTALL_TARGETS = "foo;bar" + MY_INSTALL_CONFIGURATIONS = "" (was not used) + MY_INSTALL_UNPARSED_ARGUMENTS = "blub" (nothing expected after "OPTIONAL") + +You can then continue and process these variables. + +Keywords terminate lists of values, e.g. if directly after a +one_value_keyword another recognized keyword follows, this is +interpreted as the beginning of the new option. E.g. +``my_install(TARGETS foo DESTINATION OPTIONAL)`` would result in +``MY_INSTALL_DESTINATION`` set to ``"OPTIONAL"``, but as ``OPTIONAL`` +is a keyword itself ``MY_INSTALL_DESTINATION`` will be empty and +``MY_INSTALL_OPTIONAL`` will therefore be set to ``TRUE``. diff -Nru cmake-3.3.2is3.2.2/Help/command/cmake_policy.rst cmake-3.5.0/Help/command/cmake_policy.rst --- cmake-3.3.2is3.2.2/Help/command/cmake_policy.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/cmake_policy.rst 2016-03-08 14:36:21.000000000 +0000 @@ -53,6 +53,8 @@ one may fix the project to work with the new behavior and set the policy state to ``NEW``. +.. include:: ../policy/DEPRECATED.txt + Checking Policy Settings ^^^^^^^^^^^^^^^^^^^^^^^^ diff -Nru cmake-3.3.2is3.2.2/Help/command/create_test_sourcelist.rst cmake-3.5.0/Help/command/create_test_sourcelist.rst --- cmake-3.3.2is3.2.2/Help/command/create_test_sourcelist.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/create_test_sourcelist.rst 2016-03-08 14:36:21.000000000 +0000 @@ -14,17 +14,17 @@ single executable. This is useful when building static executables with large libraries to shrink the total required size. The list of source files needed to build the test driver will be in -sourceListName. DriverName is the name of the test driver program. +``sourceListName``. ``driverName`` is the name of the test driver program. The rest of the arguments consist of a list of test source files, can be semicolon separated. Each test source file should have a function in it that is the same name as the file with no extension (foo.cxx -should have int foo(int, char*[]);) DriverName will be able to call -each of the tests by name on the command line. If EXTRA_INCLUDE is +should have int foo(int, char*[]);) ``driverName`` will be able to call +each of the tests by name on the command line. If ``EXTRA_INCLUDE`` is specified, then the next argument is included into the generated file. -If FUNCTION is specified, then the next argument is taken as a +If ``FUNCTION`` is specified, then the next argument is taken as a function name that is passed a pointer to ac and av. This can be used -to add extra command line processing to each test. The cmake variable -CMAKE_TESTDRIVER_BEFORE_TESTMAIN can be set to have code that will be -placed directly before calling the test main function. -CMAKE_TESTDRIVER_AFTER_TESTMAIN can be set to have code that will be -placed directly after the call to the test main function. +to add extra command line processing to each test. The +``CMAKE_TESTDRIVER_BEFORE_TESTMAIN`` cmake variable can be set to +have code that will be placed directly before calling the test main function. +``CMAKE_TESTDRIVER_AFTER_TESTMAIN`` can be set to have code that +will be placed directly after the call to the test main function. diff -Nru cmake-3.3.2is3.2.2/Help/command/ctest_build.rst cmake-3.5.0/Help/command/ctest_build.rst --- cmake-3.3.2is3.2.2/Help/command/ctest_build.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/ctest_build.rst 2016-03-08 14:36:21.000000000 +0000 @@ -1,29 +1,73 @@ ctest_build ----------- -Build the project. +Perform the :ref:`CTest Build Step` as a :ref:`Dashboard Client`. :: - ctest_build([BUILD build_dir] [TARGET target] [RETURN_VALUE res] - [APPEND][NUMBER_ERRORS val] [NUMBER_WARNINGS val]) - -Builds the given build directory and stores results in Build.xml. If -no BUILD is given, the CTEST_BINARY_DIRECTORY variable is used. - -The TARGET variable can be used to specify a build target. If none is -specified, the "all" target will be built. - -The RETURN_VALUE option specifies a variable in which to store the -return value of the native build tool. The NUMBER_ERRORS and -NUMBER_WARNINGS options specify variables in which to store the number -of build errors and warnings detected. - -The APPEND option marks results for append to those previously -submitted to a dashboard server since the last ctest_start. Append -semantics are defined by the dashboard server in use. - -If set, the contents of the variable CTEST_BUILD_FLAGS are passed as -additional arguments to the underlying build command. This can e.g. be -used to trigger a parallel build using the -j option of make. See -:module:`ProcessorCount` for an example. + ctest_build([BUILD ] [APPEND] + [CONFIGURATION ] + [FLAGS ] + [PROJECT_NAME ] + [TARGET ] + [NUMBER_ERRORS ] + [NUMBER_WARNINGS ] + [RETURN_VALUE ] + ) + +Build the project and store results in ``Build.xml`` +for submission with the :command:`ctest_submit` command. + +The :variable:`CTEST_BUILD_COMMAND` variable may be set to explicitly +specify the build command line. Otherwise the build command line is +computed automatically based on the options given. + +The options are: + +``BUILD `` + Specify the top-level build directory. If not given, the + :variable:`CTEST_BINARY_DIRECTORY` variable is used. + +``APPEND`` + Mark results for append to those previously submitted to a + dashboard server since the last :command:`ctest_start` call. + Append semantics are defined by the dashboard server in use. + +``CONFIGURATION `` + Specify the build configuration (e.g. ``Debug``). If not + specified the ``CTEST_BUILD_CONFIGURATION`` variable will be checked. + Otherwise the ``-C `` option given to the :manual:`ctest(1)` + command will be used, if any. + +``FLAGS `` + Pass additional arguments to the underlying build command. + If not specified the ``CTEST_BUILD_FLAGS`` variable will be checked. + This can, e.g., be used to trigger a parallel build using the + ``-j`` option of make. See the :module:`ProcessorCount` module + for an example. + +``PROJECT_NAME `` + Set the name of the project to build. This should correspond + to the top-level call to the :command:`project` command. + If not specified the ``CTEST_PROJECT_NAME`` variable will be checked. + +``TARGET `` + Specify the name of a target to build. If not specified the + ``CTEST_BUILD_TARGET`` variable will be checked. Otherwise the + default target will be built. This is the "all" target + (called ``ALL_BUILD`` in :ref:`Visual Studio Generators`). + +``NUMBER_ERRORS `` + Store the number of build errors detected in the given variable. + +``NUMBER_WARNINGS `` + Store the number of build warnings detected in the given variable. + +``RETURN_VALUE `` + Store the return value of the native build tool in the given variable. + +``QUIET`` + Suppress any CTest-specific non-error output that would have been + printed to the console otherwise. The summary of warnings / errors, + as well as the output from the native build tool is unaffected by + this option. diff -Nru cmake-3.3.2is3.2.2/Help/command/ctest_configure.rst cmake-3.5.0/Help/command/ctest_configure.rst --- cmake-3.3.2is3.2.2/Help/command/ctest_configure.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/ctest_configure.rst 2016-03-08 14:36:21.000000000 +0000 @@ -1,21 +1,39 @@ ctest_configure --------------- -Configure the project build tree. +Perform the :ref:`CTest Configure Step` as a :ref:`Dashboard Client`. :: - ctest_configure([BUILD build_dir] [SOURCE source_dir] [APPEND] - [OPTIONS options] [RETURN_VALUE res]) + ctest_configure([BUILD ] [SOURCE ] [APPEND] + [OPTIONS ] [RETURN_VALUE ] [QUIET]) -Configures the given build directory and stores results in -Configure.xml. If no BUILD is given, the CTEST_BINARY_DIRECTORY -variable is used. If no SOURCE is given, the CTEST_SOURCE_DIRECTORY -variable is used. The OPTIONS argument specifies command line -arguments to pass to the configuration tool. The RETURN_VALUE option -specifies a variable in which to store the return value of the native -build tool. - -The APPEND option marks results for append to those previously -submitted to a dashboard server since the last ctest_start. Append -semantics are defined by the dashboard server in use. +Configure the project build tree and record results in ``Configure.xml`` +for submission with the :command:`ctest_submit` command. + +The options are: + +``BUILD `` + Specify the top-level build directory. If not given, the + :variable:`CTEST_BINARY_DIRECTORY` variable is used. + +``SOURCE `` + Specify the source directory. If not given, the + :variable:`CTEST_SOURCE_DIRECTORY` variable is used. + +``APPEND`` + Mark results for append to those previously submitted to a + dashboard server since the last :command:`ctest_start` call. + Append semantics are defined by the dashboard server in use. + +``OPTIONS `` + Specify command-line arguments to pass to the configuration tool. + +``RETURN_VALUE `` + Store in the ```` variable the return value of the native + configuration tool. + +``QUIET`` + Suppress any CTest-specific non-error messages that would have + otherwise been printed to the console. Output from the underlying + configure command is not affected. diff -Nru cmake-3.3.2is3.2.2/Help/command/ctest_coverage.rst cmake-3.5.0/Help/command/ctest_coverage.rst --- cmake-3.3.2is3.2.2/Help/command/ctest_coverage.rst 2015-04-13 17:09:00.000000000 +0000 +++ cmake-3.5.0/Help/command/ctest_coverage.rst 2016-03-08 14:36:21.000000000 +0000 @@ -1,20 +1,39 @@ ctest_coverage -------------- -Collect coverage tool results. +Perform the :ref:`CTest Coverage Step` as a :ref:`Dashboard Client`. :: - ctest_coverage([BUILD build_dir] [RETURN_VALUE res] [APPEND] - [LABELS label1 [label2 [...]]]) - -Perform the coverage of the given build directory and stores results -in Coverage.xml. The second argument is a variable that will hold -value. - -The LABELS option filters the coverage report to include only source -files labeled with at least one of the labels specified. - -The APPEND option marks results for append to those previously -submitted to a dashboard server since the last ctest_start. Append -semantics are defined by the dashboard server in use. + ctest_coverage([BUILD ] [APPEND] + [LABELS