[Cmake-commits] CMake branch, next, updated. v3.4.0-1603-g064ad91

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

The branch, next has been updated
   via  064ad91d29944c70567eedfa995e6375690c08e2 (commit)
   via  60032277ce39e4708664bb16d74a7c20c8661b19 (commit)
  from  e5ecb1269f6f27aec1af3127bcecdfafc66a63b0 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=064ad91d29944c70567eedfa995e6375690c08e2
commit 064ad91d29944c70567eedfa995e6375690c08e2
Merge: e5ecb12 6003227
Author: Chuck Atkins 
AuthorDate: Wed Dec 2 11:08:39 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 11:08:39 2015 -0500

Merge topic 'detect-compiler-wrappers' into next

60032277 Compiler: Add infrastructure for detecting compiler wrappers


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=60032277ce39e4708664bb16d74a7c20c8661b19
commit 60032277ce39e4708664bb16d74a7c20c8661b19
Author: Chuck Atkins 
AuthorDate: Wed Dec 2 08:47:43 2015 -0600
Commit: Chuck Atkins 
CommitDate: Wed Dec 2 11:05:29 2015 -0500

Compiler: Add infrastructure for detecting compiler wrappers

diff --git a/Modules/CMakeCCompiler.cmake.in b/Modules/CMakeCCompiler.cmake.in
index c72e338..f109a14 100644
--- a/Modules/CMakeCCompiler.cmake.in
+++ b/Modules/CMakeCCompiler.cmake.in
@@ -2,6 +2,7 @@ set(CMAKE_C_COMPILER "@CMAKE_C_COMPILER@")
 set(CMAKE_C_COMPILER_ARG1 "@CMAKE_C_COMPILER_ARG1@")
 set(CMAKE_C_COMPILER_ID "@CMAKE_C_COMPILER_ID@")
 set(CMAKE_C_COMPILER_VERSION "@CMAKE_C_COMPILER_VERSION@")
+set(CMAKE_C_COMPILER_WRAPPER "@CMAKE_C_COMPILER_WRAPPER@")
 set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "@CMAKE_C_STANDARD_COMPUTED_DEFAULT@")
 set(CMAKE_C_COMPILE_FEATURES "@CMAKE_C_COMPILE_FEATURES@")
 set(CMAKE_C90_COMPILE_FEATURES "@CMAKE_C90_COMPILE_FEATURES@")
diff --git a/Modules/CMakeCInformation.cmake b/Modules/CMakeCInformation.cmake
index d2417aa..c204c77 100644
--- a/Modules/CMakeCInformation.cmake
+++ b/Modules/CMakeCInformation.cmake
@@ -60,6 +60,21 @@ if (NOT _INCLUDED_FILE)
   include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME}
 OPTIONAL RESULT_VARIABLE _INCLUDED_FILE)
 endif ()
+
+# load any compiler-wrapper specific information
+if (CMAKE_C_COMPILER_WRAPPER)
+  set(_INCLUDED_WRAPPER_FILE 0)
+  if (CMAKE_C_COMPILER_ID)
+
include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_C_COMPILER_WRAPPER}-${CMAKE_C_COMPILER_ID}-C
 OPTIONAL RESULT_VARIABLE _INCLUDED_WRAPPER_FILE)
+  endif()
+  if (NOT _INCLUDED_WRAPPER_FILE)
+include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_C_COMPILER_WRAPPER}-C 
OPTIONAL RESULT_VARIABLE _INCLUDED_WRAPPER_FILE)
+  endif ()
+  if (NOT _INCLUDED_WRAPPER_FILE)
+include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_C_COMPILER_WRAPPER} OPTIONAL)
+  endif ()
+endif ()
+
 # We specify the compiler information in the system file for some
 # platforms, but this language may not have been enabled when the file
 # was first included.  Include it again to get the language info.
diff --git a/Modules/CMakeCXXCompiler.cmake.in 
b/Modules/CMakeCXXCompiler.cmake.in
index 52e44f6..9e90aea 100644
--- a/Modules/CMakeCXXCompiler.cmake.in
+++ b/Modules/CMakeCXXCompiler.cmake.in
@@ -2,6 +2,7 @@ set(CMAKE_CXX_COMPILER "@CMAKE_CXX_COMPILER@")
 set(CMAKE_CXX_COMPILER_ARG1 "@CMAKE_CXX_COMPILER_ARG1@")
 set(CMAKE_CXX_COMPILER_ID "@CMAKE_CXX_COMPILER_ID@")
 set(CMAKE_CXX_COMPILER_VERSION "@CMAKE_CXX_COMPILER_VERSION@")
+set(CMAKE_CXX_COMPILER_WRAPPER "@CMAKE_CXX_COMPILER_WRAPPER@")
 set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT 
"@CMAKE_CXX_STANDARD_COMPUTED_DEFAULT@")
 set(CMAKE_CXX_COMPILE_FEATURES "@CMAKE_CXX_COMPILE_FEATURES@")
 set(CMAKE_CXX98_COMPILE_FEATURES "@CMAKE_CXX98_COMPILE_FEATURES@")
diff --git a/Modules/CMakeCXXInformation.cmake 
b/Modules/CMakeCXXInformation.cmake
index 091627b..cd706f4 100644
--- a/Modules/CMakeCXXInformation.cmake
+++ b/Modules/CMakeCXXInformation.cmake
@@ -59,6 +59,21 @@ if (NOT _INCLUDED_FILE)
   include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME} OPTIONAL
   RESULT_VARIABLE _INCLUDED_FILE)
 endif ()
+
+# load any compiler-wrapper specific information
+if (CMAKE_CXX_COMPILER_WRAPPER)
+  set(_INCLUDED_WRAPPER_FILE 0)
+  if (CMAKE_CXX_COMPILER_ID)
+
include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_WRAPPER}-${CMAKE_CXX_COMPILER_ID}-CXX
 OPTIONAL RESULT_VARIABLE _INCLUDED_WRAPPER_FILE)
+  endif()
+  if (NOT _INCLUDED_WRAPPER_FILE)
+include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_WRAPPER}-CXX 
OPTIONAL RESULT_VARIABLE _INCLUDED_WRAPPER_FILE)
+  endif ()
+  if (NOT _INCLUDED_WRAPPER_FILE)
+include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_WRAPPER} 

Re: [cmake-developers] Add CXX_STANDARD support for Intel C++ compilers

2015-12-02 Thread Brad King
On 12/02/2015 10:31 AM, Levi Morrison wrote:
> Hmm. What is the purpose of this module? I verified that indeed my
> changeset somehow breaks this test but I don't even understand what it
> is trying to do. At a glance it looks like even *more* duplication of
> feature detection. Please tell me I'm wrong.

It re-uses the Modules/Compiler/--FeatureTests.cmake information
to generate a header file that projects can include to check for the
availability of features.  The header can then be installed and re-used
by clients of such projects even if they do not use CMake.

The test checks that those results are consistent with the features detected
by CMake.

-Brad

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] Add CXX_STANDARD support for Intel C++ compilers

2015-12-02 Thread Levi Morrison
On Tue, Dec 1, 2015 at 11:11 AM, Brad King  wrote:
> On 12/01/2015 12:47 PM, Levi Morrison wrote:
>> I am having trouble reproducing this failure. When I do an
>> unrestricted ctest (test everything) it will fail, but if I do
>> something like `ctest -VV -R WriteCompilerDetectionHeader` it will
>> pass. Any ideas?
>
> Try ensuring that it is a fresh run of the test:
>
>  $ rm -rf Tests/Module/WriteCompilerDetectionHeader
>  $ ctest -R Module.WriteCompilerDetectionHeader -V
>
> The 'RunCMake' tests always run fresh, but many others are
> incremental.
>
> -Brad
>

Hmm. What is the purpose of this module? I verified that indeed my
changeset somehow breaks this test but I don't even understand what it
is trying to do. At a glance it looks like even *more* duplication of
feature detection. Please tell me I'm wrong.
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] [PATCH] FindBoost: Add imported targets

2015-12-02 Thread rleigh
> On 12/01/2015 05:11 PM, Roger Leigh wrote:
>> Attached.  I also attached the BoostScanDeps raw output and after
>> search-and-replace to make into valid cmake conditionals, and then after
>> simplifying where following release dependencies are unchanged, so you
>> can see where the logic in FindBoost comes from.
>
> Thanks.  That is a nice breakdown.
>
> Please revies the "FindBoost: Embed component dependency table" commit
> message to explain the steps used to run the script and ultimately get
> the content added by the commit.
>
>> + # Note: When adding a new Boost release, also update the dependency
>> + # information in _Boost_COMPONENT_DEPENDENCIES
>
> This is a good note.  Please extend it with a reference to instructions
> somewhere on how to actually perform the update.

I have updated both as requested, please find the updated patch attached.


Regards,
Roger
>From 3db45dbf0f41279dbf1b5288167cb96a84bef3fe Mon Sep 17 00:00:00 2001
From: Roger Leigh 
Date: Tue, 1 Dec 2015 21:53:50 +
Subject: [PATCH 2/5] FindBoost: Embed component dependency table

The function _Boost_COMPONENT_DEPENDENCIES is used to query the
library dependencies for a given component for a given version of
Boost.  This covers Boost releases from 1.33 to 1.59, using the
information generated by Utilities/Scripts/BoostScanDeps.cmake.
---
 Modules/FindBoost.cmake | 221 
 1 file changed, 221 insertions(+)

diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index 33e6a49..41b728d 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -472,6 +472,223 @@ function(_Boost_GUESS_COMPILER_PREFIX _ret)
 endfunction()
 
 #
+# Get component dependencies.  Requires the dependencies to have been
+# defined for the Boost release version.
+#
+# component - the component to check
+# _ret - list of library dependencies
+#
+function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+  # Note: to add a new Boost release, run
+  #
+  #   % cmake -DBOOST_DIR=/path/to/boost/source -P Utilities/Scripts/BoostScanDeps.cmake
+  #
+  # The output may be added in a new block below.  If it's the same as
+  # the previous release, simply update the version range of the block
+  # for the previous release.
+  #
+  # This information was originally generated by running
+  # BoostScanDeps.cmake against every boost release to date supported
+  # by FindBoost:
+  #
+  #   % for version in /path/to/boost/sources/*
+  # do
+  #   cmake -DBOOST_DIR=$version -P Utilities/Scripts/BoostScanDeps.cmake
+  # done
+  #
+  # The output was then updated by search and replace with these regexes:
+  #
+  # - Strip message(STATUS) prefix dashes
+  #   s;^-- ;;
+  # - Indent
+  #   s;^set(;set(;;
+  # - Add conditionals
+  #   s;Scanning /path/to/boost/sources/boost_\(.*\)_\(.*\)_\(.*);  elseif(NOT Boost_VERSION VERSION_LESS \10\20\3 AND Boost_VERSION VERSION_LESS );
+  #
+  # This results in the logic seen below, but will require the 
+  # replacing with the following Boost release version (or the next
+  # minor version to be released, e.g. 1.59 was the latest at the time
+  # of writing, making 1.60 the next, so 106000 is the needed version
+  # number).  Identical consecutive releases were then merged together
+  # by updating the end range of the first block and removing the
+  # following redundant blocks.
+  #
+  # Running the script against all historical releases should be
+  # required only if the BoostScanDeps.cmake script logic is changed.
+  # The addition of a new release should only require it to be run
+  # against the new release.
+  set(_Boost_IMPORTED_TARGETS TRUE)
+  if(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
+set(_Boost_IOSTREAMS_DEPENDENCIES regex thread)
+set(_Boost_REGEX_DEPENDENCIES thread)
+set(_Boost_WAVE_DEPENDENCIES filesystem thread)
+set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+  elseif(NOT Boost_VERSION VERSION_LESS 103500 AND Boost_VERSION VERSION_LESS 103600)
+set(_Boost_FILESYSTEM_DEPENDENCIES system)
+set(_Boost_IOSTREAMS_DEPENDENCIES regex)
+set(_Boost_MPI_DEPENDENCIES serialization)
+set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
+set(_Boost_WAVE_DEPENDENCIES filesystem system thread)
+set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+  elseif(NOT Boost_VERSION VERSION_LESS 103600 AND Boost_VERSION VERSION_LESS 103800)
+set(_Boost_FILESYSTEM_DEPENDENCIES system)
+set(_Boost_IOSTREAMS_DEPENDENCIES regex)
+set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l)
+set(_Boost_MPI_DEPENDENCIES serialization)
+set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
+set(_Boost_WAVE_DEPENDENCIES filesystem system thread)
+set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+  elseif(NOT Boost_VERSION VERSION_LESS 103800 AND Boost_VERSION VERSION_LESS 104300)
+   

[Cmake-commits] CMake branch, next, updated. v3.4.0-1601-ge5ecb12

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

The branch, next has been updated
   via  e5ecb1269f6f27aec1af3127bcecdfafc66a63b0 (commit)
   via  d60cef773659d69ed2fce9b963d788ab422679b9 (commit)
   via  9fd987507622c585f4e0131678654e0643fd9a50 (commit)
   via  3f9b081f6ee85e0691c36496d989edbe8382589d (commit)
   via  01c80acdbdadf3811bc0a6cab0c28469a4e9f5b7 (commit)
   via  5183c6e5dd6ff2bbb5cce33a6f8b6b1d74dfe217 (commit)
   via  8a60e6961e84fc3177d2439fe6b2b5f972104cd9 (commit)
  from  5fe8cb993882d62d9f54475e2b0bab798d64bd7e (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e5ecb1269f6f27aec1af3127bcecdfafc66a63b0
commit e5ecb1269f6f27aec1af3127bcecdfafc66a63b0
Merge: 5fe8cb9 d60cef7
Author: Brad King 
AuthorDate: Wed Dec 2 09:46:00 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 09:46:00 2015 -0500

Merge topic 'FindBoost-imported-targets' into next

d60cef77 Help: Add notes for topic 'FindBoost-imported-targets.rst'
9fd98750 Tests: Add FindBoost testcase for imported targets
3f9b081f FindBoost: Add imported targets
01c80acd FindBoost: Automatically add missing component dependencies
5183c6e5 FindBoost: Embed component dependency table
8a60e696 Utilities: Add BoostScanDeps script


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d60cef773659d69ed2fce9b963d788ab422679b9
commit d60cef773659d69ed2fce9b963d788ab422679b9
Author: Brad King 
AuthorDate: Wed Dec 2 09:42:34 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 09:42:34 2015 -0500

Help: Add notes for topic 'FindBoost-imported-targets.rst'

diff --git a/Help/release/dev/FindBoost-imported-targets.rst 
b/Help/release/dev/FindBoost-imported-targets.rst
new file mode 100644
index 000..1129ded
--- /dev/null
+++ b/Help/release/dev/FindBoost-imported-targets.rst
@@ -0,0 +1,5 @@
+FindBoost-imported-targets
+--
+
+* The :module:`FindBoost` module now provides imported targets
+  such as ``Boost::boost`` and ``Boost::filesystem``.

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9fd987507622c585f4e0131678654e0643fd9a50
commit 9fd987507622c585f4e0131678654e0643fd9a50
Author: Roger Leigh 
AuthorDate: Tue Dec 1 22:05:35 2015 +
Commit: Brad King 
CommitDate: Wed Dec 2 09:40:17 2015 -0500

Tests: Add FindBoost testcase for imported targets

Enable by setting CMake_TEST_FindBoost to TRUE.

diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 5fd7159..6c4567d 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1356,6 +1356,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P 
${CMake_SOURCE_DIR}/Utilities/Release
 endif()
   endif()
 
+  if(CMake_TEST_FindBoost)
+add_subdirectory(FindBoost)
+  endif()
+
   if(CMake_TEST_FindGSL)
 add_subdirectory(FindGSL)
   endif()
diff --git a/Tests/FindBoost/CMakeLists.txt b/Tests/FindBoost/CMakeLists.txt
new file mode 100644
index 000..259ee26
--- /dev/null
+++ b/Tests/FindBoost/CMakeLists.txt
@@ -0,0 +1,10 @@
+add_test(NAME FindBoost.Test COMMAND
+  ${CMAKE_CTEST_COMMAND} -C $
+  --build-and-test
+  "${CMake_SOURCE_DIR}/Tests/FindBoost/Test"
+  "${CMake_BINARY_DIR}/Tests/FindBoost/Test"
+  ${build_generator_args}
+  --build-project TestFindBoost
+  --build-options ${build_options}
+  --test-command ${CMAKE_CTEST_COMMAND} -V -C $
+  )
diff --git a/Tests/FindBoost/Test/CMakeLists.txt 
b/Tests/FindBoost/Test/CMakeLists.txt
new file mode 100644
index 000..ce50fc7
--- /dev/null
+++ b/Tests/FindBoost/Test/CMakeLists.txt
@@ -0,0 +1,18 @@
+cmake_minimum_required(VERSION 3.1)
+project(TestFindBoost CXX)
+include(CTest)
+
+find_package(Boost REQUIRED COMPONENTS filesystem thread)
+
+add_executable(test_boost_tgt main.cxx)
+target_link_libraries(test_boost_tgt
+  Boost::dynamic_linking
+  Boost::disable_autolinking
+  Boost::filesystem
+  Boost::thread)
+add_test(NAME test_boost_tgt COMMAND test_boost_tgt)
+
+add_executable(test_boost_var main.cxx)
+target_include_directories(test_boost_var PRIVATE ${Boost_INCLUDE_DIRS})
+target_link_libraries(test_boost_var PRIVATE ${Boost_FILESYSTEM_LIBRARIES} 
${Boost_SYSTEM_LIBRARIES} ${Boost_THREAD_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
+add_test(NAME test_boost_var COMMAND test_boost_var)
diff --git a/Tests/FindBoost/Test/main.cxx b/Tests/FindBoost/Test/main.cxx
new file mode 100644
index 000..0f44f30
--- /dev/null
+++ 

[Cmake-commits] CMake branch, master, updated. v3.4.0-656-g6f6897f

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

The branch, master has been updated
   via  6f6897f1aef884963503d8068707cf27fa7d99e7 (commit)
   via  fd7180f0c0c2554c31afda235469df986a109fe4 (commit)
  from  4e29a514ad83c5711e7ee894b825203e8c302269 (commit)

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

- Log -
---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, release, updated. v3.4.0-43-gfd7180f

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

The branch, release has been updated
   via  fd7180f0c0c2554c31afda235469df986a109fe4 (commit)
  from  7cb630809db87dcce4e4d10596a5bb3d878662e2 (commit)

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

- Log -
---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[cmake-developers] [PATCH] FindTIFF: Add imported targets

2015-12-02 Thread rleigh
- Add TIFF::TIFF imported target
- Document imported target
- Add testcase to test the standard variables and the imported
  target

Also:

- Add TIFF_INCLUDE_DIRS to match common practice
- Update documentation generally, including documenting
  TIFF_INCLUDE_DIRS

Patch attached.


Regards,
Roger>From d8f52434e7b86f55bdcdc4b2ca588f6d5f7daafa Mon Sep 17 00:00:00 2001
From: Roger Leigh 
Date: Wed, 2 Dec 2015 17:20:24 +
Subject: [PATCH] FindTIFF: Add imported targets and update documentation

- Add TIFF::TIFF imported target
- Document imported target
- Add testcase to test the standard variables and the imported
  target

Also:

- Add TIFF_INCLUDE_DIRS to match common practice
- Update documentation generally, including documenting
  TIFF_INCLUDE_DIRS
---
 Modules/FindTIFF.cmake | 67 --
 Tests/CMakeLists.txt   |  4 +++
 Tests/FindTIFF/CMakeLists.txt  | 10 ++
 Tests/FindTIFF/Test/CMakeLists.txt | 17 ++
 Tests/FindTIFF/Test/main.c | 12 +++
 5 files changed, 100 insertions(+), 10 deletions(-)
 create mode 100644 Tests/FindTIFF/CMakeLists.txt
 create mode 100644 Tests/FindTIFF/Test/CMakeLists.txt
 create mode 100644 Tests/FindTIFF/Test/main.c

diff --git a/Modules/FindTIFF.cmake b/Modules/FindTIFF.cmake
index ed092ea..e49a00d 100644
--- a/Modules/FindTIFF.cmake
+++ b/Modules/FindTIFF.cmake
@@ -2,24 +2,43 @@
 # FindTIFF
 # 
 #
-# Find TIFF library
+# Find the TIFF library (libtiff).
 #
-# Find the native TIFF includes and library This module defines
+# Imported targets
+# 
 #
-# ::
+# This module defines the following :prop_tgt:`IMPORTED` targets:
 #
-#   TIFF_INCLUDE_DIR, where to find tiff.h, etc.
-#   TIFF_LIBRARIES, libraries to link against to use TIFF.
-#   TIFF_FOUND, If false, do not try to use TIFF.
+# ``TIFF::TIFF``
+#   The TIFF library, if found.
 #
-# also defined, but not for general use are
+# Result variables
+# 
 #
-# ::
+# This module will set the following variables in your project:
 #
-#   TIFF_LIBRARY, where to find the TIFF library.
+# ``TIFF_FOUND``
+#   true if the TIFF headers and libraries were found
+# ``TIFF_INCLUDE_DIR``
+#   the directory containing the TIFF headers
+# ``TIFF_INCLUDE_DIRS``
+#   the directory containing the TIFF headers
+# ``TIFF_LIBRARIES``
+#   TIFF libraries to be linked
+#
+# Cache variables
+# ^^^
+#
+# The following cache variables may also be set:
+#
+# ``TIFF_INCLUDE_DIR``
+#   the directory containing the TIFF headers
+# ``TIFF_LIBRARY``
+# the path to the TIFF library
 
 #=
 # Copyright 2002-2009 Kitware, Inc.
+# Copyright 2015 University of Dundee
 #
 # Distributed under the OSI-approved BSD License (the "License");
 # see accompanying file Copyright.txt for details.
@@ -65,7 +84,35 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF
   VERSION_VAR TIFF_VERSION_STRING)
 
 if(TIFF_FOUND)
-  set( TIFF_LIBRARIES ${TIFF_LIBRARY} )
+  set(TIFF_LIBRARIES ${TIFF_LIBRARY})
+  set(TIFF_INCLUDE_DIRS "${TIFF_INCLUDE_DIR}")
+
+  if(NOT TARGET TIFF::TIFF)
+add_library(TIFF::TIFF UNKNOWN IMPORTED)
+if(TIFF_INCLUDE_DIRS)
+  set_target_properties(TIFF::TIFF PROPERTIES
+INTERFACE_INCLUDE_DIRECTORIES "${TIFF_INCLUDE_DIRS}")
+endif()
+if(EXISTS "${TIFF_LIBRARY}")
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES "C"
+IMPORTED_LOCATION "${TIFF_LIBRARY}")
+endif()
+if(EXISTS "${TIFF_LIBRARY_DEBUG}")
+  set_property(TARGET TIFF::TIFF APPEND PROPERTY
+IMPORTED_CONFIGURATIONS DEBUG)
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C"
+IMPORTED_LOCATION_DEBUG "${TIFF_LIBRARY_DEBUG}")
+endif()
+if(EXISTS "${TIFF_LIBRARY_RELEASE}")
+  set_property(TARGET TIFF::TIFF APPEND PROPERTY
+IMPORTED_CONFIGURATIONS RELEASE)
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C"
+IMPORTED_LOCATION_RELEASE "${TIFF_LIBRARY_RELEASE}")
+endif()
+  endif()
 endif()
 
 mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY)
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 5fd7159..a040ec0 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1367,6 +1367,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
 add_subdirectory(FindOpenSSL)
   endif()
 
+  if(CMake_TEST_FindTIFF)
+add_subdirectory(FindTIFF)
+  endif()
+
   if(CMake_TEST_FindXercesC)
 add_subdirectory(FindXercesC)
   endif()
diff --git a/Tests/FindTIFF/CMakeLists.txt b/Tests/FindTIFF/CMakeLists.txt
new file mode 100644
index 000..c4e0c6a
--- /dev/null
+++ b/Tests/FindTIFF/CMakeLists.txt
@@ -0,0 +1,10 @@
+add_test(NAME FindTIFF.Test COMMAND
+  ${CMAKE_CTEST_COMMAND} -C $
+  

[Cmake-commits] CMake branch, next, updated. v3.4.0-1607-g1c27e7d

2015-12-02 Thread Gregor Jasny via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
   via  1c27e7df4e033f981dde15f7731913ffd6750b03 (commit)
   via  b732f72a3dcda862b16e3b7a775f9d2b34e0d5be (commit)
  from  b2ae6a309c8e5cc729fc5269aa04f38b46311f53 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1c27e7df4e033f981dde15f7731913ffd6750b03
commit 1c27e7df4e033f981dde15f7731913ffd6750b03
Merge: b2ae6a3 b732f72
Author: Gregor Jasny 
AuthorDate: Wed Dec 2 12:10:32 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 12:10:32 2015 -0500

Merge topic 'regex-explorer' into next

b732f72a fixup! cmake-gui: Add regex explorer window


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b732f72a3dcda862b16e3b7a775f9d2b34e0d5be
commit b732f72a3dcda862b16e3b7a775f9d2b34e0d5be
Author: Gregor Jasny 
AuthorDate: Wed Dec 2 18:09:53 2015 +0100
Commit: Gregor Jasny 
CommitDate: Wed Dec 2 18:09:53 2015 +0100

fixup! cmake-gui: Add regex explorer window

diff --git a/Help/release/dev/regex-explorer.rst 
b/Help/release/dev/regex-explorer.rst
index 5c7ae3a..2147816 100644
--- a/Help/release/dev/regex-explorer.rst
+++ b/Help/release/dev/regex-explorer.rst
@@ -3,4 +3,4 @@ regex-explorer
 
 * The Qt base CMake GUI got a Regular Expression Explorer which could be used 
to
   create and evaluate regular expressions in real-time. The explorer window
-  is available via the ``Tools``menu.
+  is available via the ``Tools`` menu.
diff --git a/Source/QtDialog/RegexExplorer.cxx 
b/Source/QtDialog/RegexExplorer.cxx
index b583d70..dfcf048 100644
--- a/Source/QtDialog/RegexExplorer.cxx
+++ b/Source/QtDialog/RegexExplorer.cxx
@@ -12,7 +12,7 @@
 
 #include "RegexExplorer.h"
 
-RegexExplorer::RegexExplorer(QWidget* p) : m_matched(false)
+RegexExplorer::RegexExplorer(QWidget* p) : QDialog(p), m_matched(false)
 {
   this->setupUi(this);
 
@@ -96,8 +96,8 @@ void RegexExplorer::on_matchNumber_currentIndexChanged(int 
index)
 return;
 }
 
-  QVariant data = matchNumber->itemData(index);
-  int idx = data.toInt();
+  QVariant itemData = matchNumber->itemData(index);
+  int idx = itemData.toInt();
 
   if(idx < 1 || idx >= cmsys::RegularExpression::NSUBEXP)
 {

---

Summary of changes:
 Help/release/dev/regex-explorer.rst |2 +-
 Source/QtDialog/RegexExplorer.cxx   |6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1605-gb2ae6a3

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

The branch, next has been updated
   via  b2ae6a309c8e5cc729fc5269aa04f38b46311f53 (commit)
   via  6f6897f1aef884963503d8068707cf27fa7d99e7 (commit)
  from  064ad91d29944c70567eedfa995e6375690c08e2 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b2ae6a309c8e5cc729fc5269aa04f38b46311f53
commit b2ae6a309c8e5cc729fc5269aa04f38b46311f53
Merge: 064ad91 6f6897f
Author: Brad King 
AuthorDate: Wed Dec 2 11:42:12 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 11:42:12 2015 -0500

Merge branch 'master' into next


---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[cmake-developers] [PATCH] FindTIFF: Add imported targets

2015-12-02 Thread rleigh
- Add TIFF::TIFF imported target
- Document imported target
- Add testcase to test the standard variables and the imported
  target

Also:

- Add TIFF_INCLUDE_DIRS to match common practice
- Update documentation generally, including documenting
  TIFF_INCLUDE_DIRS

Patch actually attached this time...


Regards,
Roger>From d8f52434e7b86f55bdcdc4b2ca588f6d5f7daafa Mon Sep 17 00:00:00 2001
From: Roger Leigh 
Date: Wed, 2 Dec 2015 17:20:24 +
Subject: [PATCH] FindTIFF: Add imported targets and update documentation

- Add TIFF::TIFF imported target
- Document imported target
- Add testcase to test the standard variables and the imported
  target

Also:

- Add TIFF_INCLUDE_DIRS to match common practice
- Update documentation generally, including documenting
  TIFF_INCLUDE_DIRS
---
 Modules/FindTIFF.cmake | 67 --
 Tests/CMakeLists.txt   |  4 +++
 Tests/FindTIFF/CMakeLists.txt  | 10 ++
 Tests/FindTIFF/Test/CMakeLists.txt | 17 ++
 Tests/FindTIFF/Test/main.c | 12 +++
 5 files changed, 100 insertions(+), 10 deletions(-)
 create mode 100644 Tests/FindTIFF/CMakeLists.txt
 create mode 100644 Tests/FindTIFF/Test/CMakeLists.txt
 create mode 100644 Tests/FindTIFF/Test/main.c

diff --git a/Modules/FindTIFF.cmake b/Modules/FindTIFF.cmake
index ed092ea..e49a00d 100644
--- a/Modules/FindTIFF.cmake
+++ b/Modules/FindTIFF.cmake
@@ -2,24 +2,43 @@
 # FindTIFF
 # 
 #
-# Find TIFF library
+# Find the TIFF library (libtiff).
 #
-# Find the native TIFF includes and library This module defines
+# Imported targets
+# 
 #
-# ::
+# This module defines the following :prop_tgt:`IMPORTED` targets:
 #
-#   TIFF_INCLUDE_DIR, where to find tiff.h, etc.
-#   TIFF_LIBRARIES, libraries to link against to use TIFF.
-#   TIFF_FOUND, If false, do not try to use TIFF.
+# ``TIFF::TIFF``
+#   The TIFF library, if found.
 #
-# also defined, but not for general use are
+# Result variables
+# 
 #
-# ::
+# This module will set the following variables in your project:
 #
-#   TIFF_LIBRARY, where to find the TIFF library.
+# ``TIFF_FOUND``
+#   true if the TIFF headers and libraries were found
+# ``TIFF_INCLUDE_DIR``
+#   the directory containing the TIFF headers
+# ``TIFF_INCLUDE_DIRS``
+#   the directory containing the TIFF headers
+# ``TIFF_LIBRARIES``
+#   TIFF libraries to be linked
+#
+# Cache variables
+# ^^^
+#
+# The following cache variables may also be set:
+#
+# ``TIFF_INCLUDE_DIR``
+#   the directory containing the TIFF headers
+# ``TIFF_LIBRARY``
+# the path to the TIFF library
 
 #=
 # Copyright 2002-2009 Kitware, Inc.
+# Copyright 2015 University of Dundee
 #
 # Distributed under the OSI-approved BSD License (the "License");
 # see accompanying file Copyright.txt for details.
@@ -65,7 +84,35 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(TIFF
   VERSION_VAR TIFF_VERSION_STRING)
 
 if(TIFF_FOUND)
-  set( TIFF_LIBRARIES ${TIFF_LIBRARY} )
+  set(TIFF_LIBRARIES ${TIFF_LIBRARY})
+  set(TIFF_INCLUDE_DIRS "${TIFF_INCLUDE_DIR}")
+
+  if(NOT TARGET TIFF::TIFF)
+add_library(TIFF::TIFF UNKNOWN IMPORTED)
+if(TIFF_INCLUDE_DIRS)
+  set_target_properties(TIFF::TIFF PROPERTIES
+INTERFACE_INCLUDE_DIRECTORIES "${TIFF_INCLUDE_DIRS}")
+endif()
+if(EXISTS "${TIFF_LIBRARY}")
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES "C"
+IMPORTED_LOCATION "${TIFF_LIBRARY}")
+endif()
+if(EXISTS "${TIFF_LIBRARY_DEBUG}")
+  set_property(TARGET TIFF::TIFF APPEND PROPERTY
+IMPORTED_CONFIGURATIONS DEBUG)
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES_DEBUG "C"
+IMPORTED_LOCATION_DEBUG "${TIFF_LIBRARY_DEBUG}")
+endif()
+if(EXISTS "${TIFF_LIBRARY_RELEASE}")
+  set_property(TARGET TIFF::TIFF APPEND PROPERTY
+IMPORTED_CONFIGURATIONS RELEASE)
+  set_target_properties(TIFF::TIFF PROPERTIES
+IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C"
+IMPORTED_LOCATION_RELEASE "${TIFF_LIBRARY_RELEASE}")
+endif()
+  endif()
 endif()
 
 mark_as_advanced(TIFF_INCLUDE_DIR TIFF_LIBRARY)
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 5fd7159..a040ec0 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1367,6 +1367,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
 add_subdirectory(FindOpenSSL)
   endif()
 
+  if(CMake_TEST_FindTIFF)
+add_subdirectory(FindTIFF)
+  endif()
+
   if(CMake_TEST_FindXercesC)
 add_subdirectory(FindXercesC)
   endif()
diff --git a/Tests/FindTIFF/CMakeLists.txt b/Tests/FindTIFF/CMakeLists.txt
new file mode 100644
index 000..c4e0c6a
--- /dev/null
+++ b/Tests/FindTIFF/CMakeLists.txt
@@ -0,0 +1,10 @@
+add_test(NAME FindTIFF.Test COMMAND
+  

Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Robert Dailey
On Wed, Dec 2, 2015 at 1:29 PM, Nils Gladitz  wrote:
> On 02.12.2015 20:18, Robert Dailey wrote:
>>
>> Is there a way to generate for Ninja using MSVC toolchain? If so, how
>> do I do that? Do I need a toolchain file?
>
>
> You can select the Ninja generator (e.g. cmake -G Ninja) while running cmake
> from the desired Visual Studio command line environment.

This doesn't work unfortunately; it still finds GNU 4.8.3 compiler somehow.
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Nils Gladitz

On 02.12.2015 20:18, Robert Dailey wrote:

Is there a way to generate for Ninja using MSVC toolchain? If so, how
do I do that? Do I need a toolchain file?


You can select the Ninja generator (e.g. cmake -G Ninja) while running 
cmake from the desired Visual Studio command line environment.


Nils
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[Cmake-commits] CMake annotated tag, v3.4.1, created. v3.4.1

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

The annotated tag, v3.4.1 has been created
at  1c011d39bb252d7f314eb837061d8dddc9bd1ce3 (tag)
   tagging  fd7180f0c0c2554c31afda235469df986a109fe4 (commit)
  replaces  v3.4.0
 tagged by  Brad King
on  Wed Dec 2 11:42:40 2015 -0500

- Log -
CMake 3.4.1
-BEGIN PGP SIGNATURE-
Version: GnuPG v1

iQIcBAABAgAGBQJWXx+AAAoJEC0s7xA0khaEwYcP/3erh/Eks00FZauiGP3RiH/c
R+qem3Gjqm01fXZKW2zfzgP//wk8KPVeOp/bgaB+yfq7NG78j00qPnjdYsDisLLb
1ECIMmKHYZ2TX6E0fiCrlTEfIOIxx6gCqZmIDCMF6EFYgH1IcIJfjIdLi3AhnAlY
Slu/6vE5DCBkJr26UnuKFJ4ALCm7eK4eJnpzw1qHhJk7Ighh4diZk9pem4f5IhWr
mE3oINbd8mj/AKAr3Zygp7r6FSSuIQ1FbYqW/I1NfiUeQbzThUZrU25Hf231hhRK
CgUzKkwnmvC8fKsxABaE91WDvJh4rT2SH4PdAZTafUXECUiJeDC2HjEff1q4MRh2
fSN5ok0ziwryh7P4F0jtxlh25ii25L48B2z0y6dnVvqrNkvG0MWzVYYQUmjfYDgT
KU208c/s4Lgr+/tKVpKmslbMD1atZmddY7EEQ65jOwm+8HGODlQJI2qldY79WEOL
t3ri/L16HDFwCI1SvPmavllJh612aH9R59MV5HGeQ2JDIrgkTMKzWycQgjvL1Ydl
Jp6q9Nx86tpU+9HcOMCWRunpyz/WgRes7pIRXmlCXl89VBxhXYjCiT/i4eGt7iXd
WwG8n58EqN/mJZ7tLwgPLVH/wcsUetbJOwxa2+D1XBBFVImLzMAFxXmw1ZjJGG0L
RGT7OkqlRZZiu151tFP0
=nODQ
-END PGP SIGNATURE-

Bill Hoffman (1):
  Fix auto export symbols for Dlls containing /bigobj for 64bit builds.

Brad King (39):
  Cray: Implement Fortran compiler version detection (#15845)
  Merge branch 'cray-fortran-version' into release
  MSVC: Fix linking with /MANIFEST:NO option
  Make C and C++ default dialect detection robust to advanced optimizations
  Merge branch 'fix-compute-default-dialect-lto' into release
  Merge branch 'fix-ms-manifest-no-linker' into release
  FindGTest: Refactor test type checks to avoid cases triggering CMP0064
  Merge branch 'FindGTest-avoid-CMP0064' into release
  Android: Restore generation of non-versioned soname (#15851)
  Merge branch 'backport-android-no-versioned-soname' into release
  Project: Guess default standard dialect if compiler was forced (#15852)
  Merge branch 'fix-forced-toolchain-dialect' into release
  Merge branch 'avoid-divide-by-zero' into release
  Merge branch 'backport-fix-autodef-bigobj-64' into release
  Revert "Disable shared library support when compiler links statically" 
(#15855)
  Merge branch 'revert-compiler-links-statically' into release
  Tests: Add case for add_subdirectory inside a function
  Merge branch 'test-add_subdirectory-in-function' into release
  Tests: Add case for unmatched cmake_policy({PUSH,POP})
  Tests: Add case for package version file unmatched policy scope
  cmState: Skip variable scope snapshots to avoid call stack duplicates
  Merge branch 'test-cmake_policy-unmatched' into 
fix-find_package-version-file-error-stack
  cmMakefile: Clarify purpose of method that pops a scope snapshot
  cmMakefile: Remove unused PolicyPushPop interfaces
  cmLocalGenerator: Use ScopePushPop RAII class to manage local variable 
scopes
  cmState: Enforce policy scope balancing around variable scopes
  Merge branch 'fix-find_package-version-file-error-stack' into release
  cmLinkedTree: Rename 'Extend' method to 'Push'
  cmLinkedTree: Add Pop method
  cmListFileCache: Implement cmListFileBacktrace ctor/dtor out-of-line
  cmState: Avoid accumulating policy stack storage for short-lived scopes
  cmState: Avoid accumulating snapshot storage for short-lived scopes
  Merge branch 'reduce-cmState-accumulation' into release
  cmOrderDirectories: Factor out directory comparison
  cmOrderDirectories: Reduce repeat realpath() calls
  Merge branch 'reduce-realpath-calls' into release
  Merge branch 'include-for-mode_t' into release
  Merge branch 'backport-NIOS2-CPU' into release
  CMake 3.4.1

Kylie McClain (1):
  Include `sys/types.h` header to get `mode_t`

Marek Vasut (1):
  Add NIOS2 CPU support

Ty Smith (1):
  cmELF: Avoid divide by zero if there are no dynamic section entries

---


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Robert Dailey
Is there a way to generate for Ninja using MSVC toolchain? If so, how
do I do that? Do I need a toolchain file?
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[Cmake-commits] CMake branch, maint, updated. v3.4.1

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

The branch, maint has been updated
   via  fd7180f0c0c2554c31afda235469df986a109fe4 (commit)
   via  7cb630809db87dcce4e4d10596a5bb3d878662e2 (commit)
   via  f2ca704cbb0722da8f43b1f99b07e6fac32dc0f6 (commit)
   via  535760ccb954dda78cc5c23c9e75245e7529c481 (commit)
   via  001043ac3078c49651f6af0f1ff1b31ef71a7665 (commit)
   via  7b13759d5f030064fb9715f7a94194fd27aa55b0 (commit)
   via  4e3cf8b012404e4d9602c16d473480cc3d0c7928 (commit)
   via  6b1852874325520a418eb05ec3c2149c2eb194a2 (commit)
   via  f8deadc16d03233ecb92b4d05a9e9f0d6c9f56aa (commit)
   via  5f860ebb67e86e0aa407e26ddf79652f73742211 (commit)
   via  f21dc4a81c05c79b873c9918f6fe8aff4bf02133 (commit)
   via  bc1d3a8a8783848016ef12044a02a28b620c41a0 (commit)
   via  85fe26b5f742b704b51a7e15b4806366feab3a23 (commit)
   via  518d6b22f6705c4747c713031587705641540364 (commit)
   via  9ecf8a14fb4a12178a7bb97a87dee3fada3204d5 (commit)
   via  32edac6fddfbe91e47b34506cda855232d5a9e2c (commit)
   via  0fa7f143a08b62459900bd811c2c0674562bb8be (commit)
   via  d85c9176ae15f4fb203e501d777cfce8304bf256 (commit)
   via  8e1be7bf688dc282408aa0403e9896fa5a142ec4 (commit)
   via  62126b67e0048800a833d3c4ea86d2307f1a4a06 (commit)
   via  2e28c619f8997a2b86c72b53659be371ff10a790 (commit)
   via  b219ff94acf0b6c934c35e2ce42dfbf99580f1e8 (commit)
   via  378185fb7f672113257502ef96cf7106c22dd39f (commit)
   via  c25d642de38730cdb6627a2c2d47f85e8c470974 (commit)
   via  010c5959864a10f4b83907fb058006e118dd740d (commit)
   via  5e3045a749b34fb87c876af9a42ee190d722bada (commit)
   via  9682de566e264c53018cccd05465f2c5d91ccf73 (commit)
   via  e3dfa3506c0589cb4c3e91107e560c2495cdc257 (commit)
   via  c7ddc5f43821039f4c005271912da30ba0f213db (commit)
   via  16ba21f79abbd4729124c8c042b66da482500e9c (commit)
   via  f5cd92a82600067835c05c7e82726161a150a50b (commit)
   via  aa0460b34a8533ee5c0e0893b411f72b5784c842 (commit)
   via  441dba80322ec1579b34dd64e13bcfcf004f7005 (commit)
   via  59b6d8a81bc4f975664a1b04cd349235e5a152b7 (commit)
   via  3aec561aa20847f1e968448f96723d228e520251 (commit)
   via  ce7da2dec4939b56128f7d05d008069d44ec506b (commit)
   via  b5e7b22defa353894ad999df83b90ae45f163d61 (commit)
   via  e32c903057774ba34de7ed2292b6156f9cf58c5e (commit)
   via  daa72b253a5d07b985653c4ce1d2a7a647129e43 (commit)
   via  c3dc8935ee5fe9415d37ec138b6c087f85f15d43 (commit)
   via  ca263d1d71d953630e31daa7771dde3c6835b9a2 (commit)
   via  60859b93db0787f1beb421de7e61a0d79d6dfd80 (commit)
   via  09f754f040f3e817cd69337adea2c73cb61d53da (commit)
  from  b4a2ada297214119647b26df8abe394cd73ca53a (commit)

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

- Log -
---

Summary of changes:
 Modules/CMakeCCompiler.cmake.in|1 -
 Modules/CMakeCCompilerId.c.in  |1 +
 Modules/CMakeCInformation.cmake|4 -
 Modules/CMakeCXXCompiler.cmake.in  |1 -
 Modules/CMakeCXXCompilerId.cpp.in  |1 +
 Modules/CMakeCXXInformation.cmake  |4 -
 Modules/CMakeDetermineCompilerId.cmake |8 --
 Modules/CMakeFortranCompiler.cmake.in  |1 -
 Modules/CMakeFortranCompilerId.F.in|2 +
 Modules/CMakeFortranInformation.cmake  |4 -
 Modules/Compiler/AppleClang-C.cmake|3 +
 Modules/Compiler/AppleClang-CXX.cmake  |3 +
 Modules/Compiler/Clang-C.cmake |7 ++
 Modules/Compiler/Clang-CXX.cmake   |3 +
 Modules/Compiler/GNU-C.cmake   |7 ++
 Modules/Compiler/GNU-CXX.cmake |3 +
 Modules/Compiler/SunPro-CXX.cmake  |3 +
 Modules/FindGTest.cmake|6 +-
 Source/CMakeVersion.cmake  |2 +-
 Source/bindexplib.cxx  |2 +-
 Source/cmELF.cxx   |8 +-
 Source/cmGeneratorTarget.cxx   |1 +
 Source/cmLinkedTree.h  |   33 +--
 Source/cmListFileCache.cxx |   15 +++
 Source/cmListFileCache.h   |6 +-
 Source/cmLocalGenerator.cxx|6 +-
 Source/cmMakefile.cxx  |   28 +++---
 Source/cmMakefile.h|8 +-
 

Re: [cmake-developers] [ANNOUNCE] CMake 3.4.1 available for download

2015-12-02 Thread Konstantin Podsvirov
02.12.2015, 22:55, "Robert Maynard" :
> We are pleased to announce that CMake 3.4.1 is now available for download.
>
> Please use the latest release from our download page:
>   https://cmake.org/download/
>
> Thanks for your support!

Good job! Thank you!

I could not miss this event. This is a good occasion to remind about
the existence of CPack "IFW" generator :-)

https://cmake.org/cmake/help/v3.4/module/CPackIFW.html

Here is a fresh not official offline installers for CMake 3.4.1 on Windows:

http://ifw.podsvirov.pro/cmake/files/v3.4/cmake-3.4.1-win32-x86.exe

and

http://ifw.podsvirov.pro/cmake/files/v3.4/cmake-3.4.1-win64-x64.exe

But I want to assure you that they are honestly built me personally of the 
official code of branch 'release' recently :-)

I'll be glad if somebody test these installers for themselves and to share 
their comments and suggestions.

Good luck to everyone!

--
Regards,
Konstantin Podsvirov
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Robert Dailey
On Wed, Dec 2, 2015 at 1:37 PM, Robert Dailey  wrote:
> On Wed, Dec 2, 2015 at 1:29 PM, Nils Gladitz  wrote:
>> On 02.12.2015 20:18, Robert Dailey wrote:
>>>
>>> Is there a way to generate for Ninja using MSVC toolchain? If so, how
>>> do I do that? Do I need a toolchain file?
>>
>>
>> You can select the Ninja generator (e.g. cmake -G Ninja) while running cmake
>> from the desired Visual Studio command line environment.
>
> This doesn't work unfortunately; it still finds GNU 4.8.3 compiler somehow.

For some reason Strawberry Perl installed gcc/g++ to my PATH. I
removed this and it's finding MSVC 19 now. Thanks.
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[cmake-developers] [ANNOUNCE] CMake 3.4.1 available for download

2015-12-02 Thread Robert Maynard
We are pleased to announce that CMake 3.4.1 is now available for download.

Please use the latest release from our download page:
  https://cmake.org/download/

Thanks for your support!

-
Changes in 3.4.1 since 3.4.0:

Bill Hoffman (1):
Fix auto export symbols for Dlls containing /bigobj for 64bit builds.

Brad King (23):
Cray: Implement Fortran compiler version detection (#15845)
MSVC: Fix linking with /MANIFEST:NO option
Make C and C++ default dialect detection robust to advanced optimizations
FindGTest: Refactor test type checks to avoid cases triggering CMP0064
Android: Restore generation of non-versioned soname (#15851)
Project: Guess default standard dialect if compiler was forced (#15852)
Revert "Disable shared library support when compiler links
statically" (#15855)
Tests: Add case for add_subdirectory inside a function
Tests: Add case for unmatched cmake_policy({PUSH,POP})
Tests: Add case for package version file unmatched policy scope
cmState: Skip variable scope snapshots to avoid call stack duplicates
cmMakefile: Clarify purpose of method that pops a scope snapshot
cmMakefile: Remove unused PolicyPushPop interfaces
cmLocalGenerator: Use ScopePushPop RAII class to manage local
variable scopes
cmState: Enforce policy scope balancing around variable scopes
cmLinkedTree: Rename 'Extend' method to 'Push'
cmLinkedTree: Add Pop method
cmListFileCache: Implement cmListFileBacktrace ctor/dtor out-of-line
cmState: Avoid accumulating policy stack storage for short-lived scopes
cmState: Avoid accumulating snapshot storage for short-lived scopes
cmOrderDirectories: Factor out directory comparison
cmOrderDirectories: Reduce repeat realpath() calls
CMake 3.4.1

Kylie McClain (1):
Include `sys/types.h` header to get `mode_t`

Marek Vasut (1):
Add NIOS2 CPU support

Ty Smith (1):
cmELF: Avoid divide by zero if there are no dynamic section entries
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[cmake-developers] [ANNOUNCE] CMake 3.4.1 available for download

2015-12-02 Thread Robert Maynard
We are pleased to announce that CMake 3.4.1 is now available for download.

Please use the latest release from our download page:
  https://cmake.org/download/

Thanks for your support!

-
Changes in 3.4.1 since 3.4.0:

Bill Hoffman (1):
Fix auto export symbols for Dlls containing /bigobj for 64bit builds.

Brad King (23):
Cray: Implement Fortran compiler version detection (#15845)
MSVC: Fix linking with /MANIFEST:NO option
Make C and C++ default dialect detection robust to advanced optimizations
FindGTest: Refactor test type checks to avoid cases triggering CMP0064
Android: Restore generation of non-versioned soname (#15851)
Project: Guess default standard dialect if compiler was forced (#15852)
Revert "Disable shared library support when compiler links
statically" (#15855)
Tests: Add case for add_subdirectory inside a function
Tests: Add case for unmatched cmake_policy({PUSH,POP})
Tests: Add case for package version file unmatched policy scope
cmState: Skip variable scope snapshots to avoid call stack duplicates
cmMakefile: Clarify purpose of method that pops a scope snapshot
cmMakefile: Remove unused PolicyPushPop interfaces
cmLocalGenerator: Use ScopePushPop RAII class to manage local variable
scopes
cmState: Enforce policy scope balancing around variable scopes
cmLinkedTree: Rename 'Extend' method to 'Push'
cmLinkedTree: Add Pop method
cmListFileCache: Implement cmListFileBacktrace ctor/dtor out-of-line
cmState: Avoid accumulating policy stack storage for short-lived scopes
cmState: Avoid accumulating snapshot storage for short-lived scopes
cmOrderDirectories: Factor out directory comparison
cmOrderDirectories: Reduce repeat realpath() calls
CMake 3.4.1

Kylie McClain (1):
Include `sys/types.h` header to get `mode_t`

Marek Vasut (1):
Add NIOS2 CPU support

Ty Smith (1):
cmELF: Avoid divide by zero if there are no dynamic section entries
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[CMake] [ANNOUNCE] CMake 3.4.1 available for download

2015-12-02 Thread Robert Maynard
We are pleased to announce that CMake 3.4.1 is now available for download.

Please use the latest release from our download page:
  https://cmake.org/download/

Thanks for your support!

-
Changes in 3.4.1 since 3.4.0:

Bill Hoffman (1):
Fix auto export symbols for Dlls containing /bigobj for 64bit builds.

Brad King (23):
Cray: Implement Fortran compiler version detection (#15845)
MSVC: Fix linking with /MANIFEST:NO option
Make C and C++ default dialect detection robust to advanced optimizations
FindGTest: Refactor test type checks to avoid cases triggering CMP0064
Android: Restore generation of non-versioned soname (#15851)
Project: Guess default standard dialect if compiler was forced (#15852)
Revert "Disable shared library support when compiler links
statically" (#15855)
Tests: Add case for add_subdirectory inside a function
Tests: Add case for unmatched cmake_policy({PUSH,POP})
Tests: Add case for package version file unmatched policy scope
cmState: Skip variable scope snapshots to avoid call stack duplicates
cmMakefile: Clarify purpose of method that pops a scope snapshot
cmMakefile: Remove unused PolicyPushPop interfaces
cmLocalGenerator: Use ScopePushPop RAII class to manage local variable
scopes
cmState: Enforce policy scope balancing around variable scopes
cmLinkedTree: Rename 'Extend' method to 'Push'
cmLinkedTree: Add Pop method
cmListFileCache: Implement cmListFileBacktrace ctor/dtor out-of-line
cmState: Avoid accumulating policy stack storage for short-lived scopes
cmState: Avoid accumulating snapshot storage for short-lived scopes
cmOrderDirectories: Factor out directory comparison
cmOrderDirectories: Reduce repeat realpath() calls
CMake 3.4.1

Kylie McClain (1):
Include `sys/types.h` header to get `mode_t`

Marek Vasut (1):
Add NIOS2 CPU support

Ty Smith (1):
cmELF: Avoid divide by zero if there are no dynamic section entries
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Bill Hoffman

On 12/2/2015 2:39 PM, Robert Dailey wrote:

For some reason Strawberry Perl installed gcc/g++ to my PATH. I
removed this and it's finding MSVC 19 now. Thanks.


Could also set CC and CXX to cl before running CMake.


--
Bill Hoffman
Kitware, Inc.
28 Corporate Drive
Clifton Park, NY 12065
bill.hoff...@kitware.com
http://www.kitware.com
518 881-4905 (Direct)
518 371-3971 x105
Fax (518) 371-4573
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[cmake-developers] [CMake 0015870]: "cmake -E copy" command do not display error if source is directory

2015-12-02 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
https://public.kitware.com/Bug/view.php?id=15870 
== 
Reported By:gang65
Assigned To:
== 
Project:CMake
Issue ID:   15870
Category:   CMake
Reproducibility:always
Severity:   minor
Priority:   normal
Status: new
== 
Date Submitted: 2015-12-02 17:20 EST
Last Modified:  2015-12-02 17:20 EST
== 
Summary:"cmake -E copy" command do not display error if
source is directory
Description: 
In current cmake implementation, by command:
 "cmake -E copy directory1 directory2"

Do not copy anything and do not displays errors.

Expected:
cmake should display error message that directory "directory1" was not copied.
It could be guarded by new Cmake policy

Steps to Reproduce: 
mkdir directory1 
mkdir directory2
cmake -E copy directory1 directory2
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2015-12-02 17:20 gang65 New Issue
==

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [CMake] Best way to handle application data path for local run vs. installation

2015-12-02 Thread Alexander Neundorf
On Wednesday, December 02, 2015 12:27:42 Ruslan Baratov wrote:
> On 02-Dec-15 05:13, Alexander Neundorf wrote:
...
> > well, the RPATH entry was not designed to be patched,
> 
> RPATH designed to be patched. And since it's a third time I'm making
> this statement please provide any arguments if you don't agree.
> 
> Here is mine (comes from wikipedia, 
https://en.wikipedia.org/wiki/Rpath):
> 
>  The rpath of an executable or shared library is an optional entry
> in the
>  .dynamic section of the ELF executable or shared libraries, with
> the type
>  DT_RPATH, called the DT_RPATH attribute. It can be stored there at
> link time by
>  the linker. Tools such as chrpath and patchelf can create or MODIFY
> the entry
>  later.
> 
> Man chrpath (http://linux.die.net/man/1/chrpath):
> 
>  -r  | --replace 
>  Replace current rpath or runpath setting with the path given


It doesn't matter and it is nitpicking: the RPATH entry has some size, and 
its content cannot simply be changed. I.e. it could be replaced with a 
string of the same length or a shorter one, but not a longer one.
CMake works around this by extending the build RPATH artificially with 
":" at the end I think, patchelf works around this by making the whole 
executable one page bigger if the new entry is longer.
If RPATH was _designed_ to be patchable, tools could just do it, instead 
of having to implement workarounds for longer strings. E.g. the linker 
would support a command line argument how much space it should 
reserve for the RPATH entry, or something like that.

> > any other string in an executable could be patched too:
> RPATH and C++ string literals have not the same nature. E.g. on my 
Linux
> machine RPATH string goes to ".dynstr" section and C++ literal to
> ".rodata" section.
> The difference is quite huge. By parsing ELF headers you can figure 
out
> RPATH offset and be 100% sure that patching is totally correct and
> doesn't affect other binary or general executable logic. RPATH is just a
> hint for linker.
> Changing bytes in .rodata is much trickier. E.g. how do you distinguish
> two strings:
> 
> void print_some_info() {
>const char* path = "/usr/local"; // must not be changed
>std::cout << "General note: user specific packages usually installed
> to " << path << std::endl;
> }
> 
> void parse_resources() {
>const char* resources_path = "/usr/local"; // want to change it in 
future
> std::string myresource = resources_path + "/foo/some.file";
> }
> 
> What if compiler merge them?


By using a very special string which is very unlikely to be used by 
something else, like e.g. "$$$_CMAKE_I_AM_NOT_INSTALLED_$$$".
Maybe it could even be put into a custom ELF section, and then tools 
could just look at that section (... but then it's ELF-only).

I would actually (despite it being hacky) trust the uniqueness of a string 
like the one above.
Probably the string could be made even more unique by embedding the 
target name or something using cmake functionality.

> (Just a general note, not related to how you want to implement 
resources
> trick)
> 
> > const char* my_builddir_flag = "_I_M_NOT_INSTALLED_";
> > 
> > ...
> > 
> > if (*my_builddir_flag)
> > 
> > {
> > 
> > ... code when not installed
> > 
> > }
> > 
> > else
> > 
> > {
> > 
> > ... code for the installed version
> > 
> > }
> > 
> > Just search for that string in the executable and replace the first
> > byte with a '\0'.
> 
> Still can violates logic. What if I want to print string to resources in
> next format:
> 1. "-" x size of path to resources (compiler can figure out it at
> compile time!)
> 2. path to resources
> 3. "-" x size of path to resources
> 
> If you pass "/usr/local" output will be (nice):
> 
> --
> /usr/local
> --
> 
> If you pass "/home/username", output will be (nice):
> 
> 
> /home/username
> 
> 
> If you pass "_I_M_NOT_INSTALLED_" then change string to
> "/usr/local" after install (ugly, not what I expect!):
> 
> ---
> /usr/local
> ---

Sorry, I don't understand.
The idea above was only for solving the question "am I installed ?" 
yes/no, not "where am I installed ?".

 
> > Not sure there is a simple tool to do that, but writing one shouldn't
> > be hard.
> 
> sed? :)

I have never used sed on binary files. Does that work ?

Alex
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to 

Re: [CMake] generator expression for set_target_properties

2015-12-02 Thread Attila Krasznahorkay
Hi Lloyd,

You mean like:

if( ${CMAKE_BUILD_TYPE} STREQUAL "Release" )
   set_target_properties( myexec PROPERTIES WIN32_EXECUTABLE TRUE )
endif()

?

Or would you like the build configuration to change in this respect when you 
change the build type in the IDE? This latter may not be possible to do. But 
others may very well correct me.

Cheers,
Attila

> On 03 Dec 2015, at 07:32, Lloyd  wrote:
> 
> Hi,
> 
> We have a cmake file for Qt project. We want to hide the console from release 
> build. For that we are using
> 
> ADD_EXECUTABLE(myexec ${MYEXEC_SRC} )
> SET_TARGET_PROPERTIES(myexec PROPERTIES WIN32_EXECUTABLE true) 
> 
> Is it possible for me to set this property only for the release build?
> 
> I am using cmake 2.8, Windows 7, VS 2013
> 
> Thanks,
>   Lloyd
> -- 
> 
> Powered by www.kitware.com
> 
> Please keep messages on-topic and check the CMake FAQ at: 
> http://www.cmake.org/Wiki/CMake_FAQ
> 
> Kitware offers various services to support the CMake community. For more 
> information on each offering, please visit:
> 
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
> 
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
> 
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread Bill Hoffman

On 12/2/2015 8:22 PM, iosif neitzke wrote:

Isn't this what Generator Toolset selection is for?

ex. cmake -G Ninja -T v140

http://cmake.blogspot.com/2013/05/cmake-2811-available-for-download.html
No, that is for telling the VS IDE which tool set to use.  It has no 
effect on the Ninja generator.  Like makefiles the ninja generator 
assumes it is running in an environment that is setup to run a compiler 
from the command line.  If there is more than one compiler it picks one. 
 If you have more than one compiler you can force it to pick one over 
the other with CC and CXX variables.   The IDE has its own environment 
for the compiler and some IDEs support more than one tool chain and the 
-T is how you tell it to use something other than its default.


-Bill

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [cmake-developers] Fw: Please comment on ios-universal topic

2015-12-02 Thread Ruslan Baratov via cmake-developers

On 02-Dec-15 19:44, Bartosz Kosiorek wrote:

Hi.

Currently we already support similar target properties:
- INSTALL_NAME_DIR
- INSTALL_RPATH
- INSTALL_RPATH_USE_LINK_PATH

It will be great to follow the same name convention.

Because this new property is only applicable for INSTALL step, I would like to 
propose to rename property name to INSTALL_IOS_UNIVERSAL_LIBS.

What do you think about that idea?
It's hard for me to decide what is better because 
IOS_INSTALL_UNIVERSAL_LIBS just came from my mind and I've used it for a 
while already. So now it looks solid for no reason :)


However first note:
  INSTALL_RPATH can be read as when we do INSTALL change RPATH to ... 
(any platform)

  ANDROID_API -//- when we are on ANDROID use next API ...
  WIN32_EXECUTABLE -//- when we are on WIN32 use bla-bla for EXECUTABLE
  OSX_ARCHITECTURES -//- when we are on OSX use ARCHITECTURES
  MACOSX_BUNDLE -//- when we are on MACOSX create BUNDLE

So new property can be read as:
  IOS_INSTALL_UNIVERSAL_LIBS when we are on IOS do INSTALL_UNIVERSAL_LIBS
  INSTALL_IOS_UNIVERSAL_LIBS when we do INSTALL make IOS_UNIVERSAL_LIBS 
(does it mean that when we are on Linux we can install iOS libs? does it 
mean that when we are on OSX without iOS toolchain we can do iOS libs?)


Second note is about future improvements of this feature, installing 
universal libs on OSX or installing universal frameworks, pattern 
_INSTALL_UNIVERSAL_:


   IOS_INSTALL_UNIVERSAL_LIBS
   IOS_INSTALL_UNIVERSAL_FRAMEWORKS

  OSX_INSTALL_UNIVERSAL_LIBS
  OSX_INSTALL_UNIVERSAL_FRAMEWORKS

  INSTALL_UNIVERSAL_LIBS # on both OSX and iOS
  INSTALL_UNIVERSAL_FRAMEWORKS # on both OSX and iOS

  IOS_INSTALL_UNIVERSAL # both libs and frameworks
  OSX_INSTALL_UNIVERSAL # both libs and frameworks

  INSTALL_UNIVERSAL # both libs and frameworks, both OSX and iOS

?

Ruslo



From: cmake-developers  on behalf of Gregor Jasny 
via cmake-developers 
Sent: Tuesday, December 1, 2015 3:22 PM
To: CMake Developers; Ruslan Baratov
Subject: [cmake-developers] Please comment on ios-universal topic

Hello,

During the last days I worked on the iOS Universal Install topic which
now would benefit from a review. Especially the core changes could need
a third pair of eyes:

https://cmake.org/gitweb?p=stage/cmake.git;a=commit;h=8fb23b42cfc2fb7490e8645fff328add9c231713

I will now concentrate on adding more tests during the next days.

Thank you,
Gregor

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread CHEVRIER, Marc
Alternate solution is to define following environment variables:
* CC=cl.exe
* CXX=cl.exe

In this case, CMake will search these compilers rather than the standard 
choices (starting with c++ and g++ for C++ language).

And you don’t have any longer constraints about your environment.
 
Marc




On 02/12/15 20:39, "CMake on behalf of Robert Dailey"  wrote:

>On Wed, Dec 2, 2015 at 1:37 PM, Robert Dailey  wrote:
>> On Wed, Dec 2, 2015 at 1:29 PM, Nils Gladitz  wrote:
>>> On 02.12.2015 20:18, Robert Dailey wrote:

 Is there a way to generate for Ninja using MSVC toolchain? If so, how
 do I do that? Do I need a toolchain file?
>>>
>>>
>>> You can select the Ninja generator (e.g. cmake -G Ninja) while running cmake
>>> from the desired Visual Studio command line environment.
>>
>> This doesn't work unfortunately; it still finds GNU 4.8.3 compiler somehow.
>
>For some reason Strawberry Perl installed gcc/g++ to my PATH. I
>removed this and it's finding MSVC 19 now. Thanks.
>-- 
>
>Powered by www.kitware.com
>
>Please keep messages on-topic and check the CMake FAQ at: 
>http://www.cmake.org/Wiki/CMake_FAQ
>
>Kitware offers various services to support the CMake community. For more 
>information on each offering, please visit:
>
>CMake Support: http://cmake.org/cmake/help/support.html
>CMake Consulting: http://cmake.org/cmake/help/consulting.html
>CMake Training Courses: http://cmake.org/cmake/help/training.html
>
>Visit other Kitware open-source projects at 
>http://www.kitware.com/opensource/opensource.html
>
>Follow this link to subscribe/unsubscribe:
>http://public.kitware.com/mailman/listinfo/cmake
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

Re: [cmake-developers] Fw: Please comment on ios-universal topic

2015-12-02 Thread Bartosz Kosiorek
Thanks Ruslan for feedback.

I think that this new property should work also for FRAMEWORK and should 
support both OSX and iOS
In that way it is already done for:
 -  for SHARED library adding FRAMEWORK property produce correct Framework for 
iOS or OSX (for Cmake 3.5 the documentation was already updated), and standard 
library for other platforms
 - for MACOSX_BUNDLE (the name of property is very confusing). It will produce 
BUNDLE for OSX or iOS.
 - even standard SHARED library produce different results according to platform 
(.so file on Linux, .dll on Windows, .dylib on OSX)

I strongly believe that this new CMake's property should follow this convention.

Currently I'm working in project which must support multiple platforms (Linux, 
Windows, OSX, iOS, Android, QNX etc.).
And I very like CMake for automagicaly adopting to platform/architecture/OS.

Because "Universal Library" is generic name, which is applicable for all 
platforms (Fat library is used on Apple machines), 
I would like to propose following  property name:
INSTALL_UNIVERSAL_LIBRARY

For now it will be applicable only on iOS (OS X?), but it could be extended to 
other platforms (Android).
Of course all supported platforms should be noticed in documentation.

What do you think about that idea:
Adding one property which will adopt to platform on which is build?


Best Regards
Bartosz


From: Ruslan Baratov 
Sent: Thursday, December 3, 2015 4:09 AM
To: Bartosz Kosiorek
Cc: Gregor Jasny; cmake-developers@cmake.org
Subject: Re: Fw: [cmake-developers] Please comment on ios-universal topic

On 02-Dec-15 19:44, Bartosz Kosiorek wrote:
> Hi.
>
> Currently we already support similar target properties:
> - INSTALL_NAME_DIR
> - INSTALL_RPATH
> - INSTALL_RPATH_USE_LINK_PATH
>
> It will be great to follow the same name convention.
>
> Because this new property is only applicable for INSTALL step, I would like 
> to propose to rename property name to INSTALL_IOS_UNIVERSAL_LIBS.
>
> What do you think about that idea?
It's hard for me to decide what is better because
IOS_INSTALL_UNIVERSAL_LIBS just came from my mind and I've used it for a
while already. So now it looks solid for no reason :)

However first note:
   INSTALL_RPATH can be read as when we do INSTALL change RPATH to ...
(any platform)
   ANDROID_API -//- when we are on ANDROID use next API ...
   WIN32_EXECUTABLE -//- when we are on WIN32 use bla-bla for EXECUTABLE
   OSX_ARCHITECTURES -//- when we are on OSX use ARCHITECTURES
   MACOSX_BUNDLE -//- when we are on MACOSX create BUNDLE

So new property can be read as:
   IOS_INSTALL_UNIVERSAL_LIBS when we are on IOS do INSTALL_UNIVERSAL_LIBS
   INSTALL_IOS_UNIVERSAL_LIBS when we do INSTALL make IOS_UNIVERSAL_LIBS
(does it mean that when we are on Linux we can install iOS libs? does it
mean that when we are on OSX without iOS toolchain we can do iOS libs?)

Second note is about future improvements of this feature, installing
universal libs on OSX or installing universal frameworks, pattern
_INSTALL_UNIVERSAL_:

IOS_INSTALL_UNIVERSAL_LIBS
IOS_INSTALL_UNIVERSAL_FRAMEWORKS

   OSX_INSTALL_UNIVERSAL_LIBS
   OSX_INSTALL_UNIVERSAL_FRAMEWORKS

   INSTALL_UNIVERSAL_LIBS # on both OSX and iOS
   INSTALL_UNIVERSAL_FRAMEWORKS # on both OSX and iOS

   IOS_INSTALL_UNIVERSAL # both libs and frameworks
   OSX_INSTALL_UNIVERSAL # both libs and frameworks

   INSTALL_UNIVERSAL # both libs and frameworks, both OSX and iOS

?

Ruslo
>
> 
> From: cmake-developers  on behalf of 
> Gregor Jasny via cmake-developers 
> Sent: Tuesday, December 1, 2015 3:22 PM
> To: CMake Developers; Ruslan Baratov
> Subject: [cmake-developers] Please comment on ios-universal topic
>
> Hello,
>
> During the last days I worked on the iOS Universal Install topic which
> now would benefit from a review. Especially the core changes could need
> a third pair of eyes:
>
> https://cmake.org/gitweb?p=stage/cmake.git;a=commit;h=8fb23b42cfc2fb7490e8645fff328add9c231713
>
> I will now concentrate on adding more tests during the next days.
>
> Thank you,
> Gregor
>
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at: 
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community. For more 
> information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake-developers
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 

Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread iosif neitzke
Ah, okay, thanks.  From cmake-gui the solution equivalent would be
selecting the Ninja generator but specifying native compilers (cl.exe
for this example) instead of using the default native compilers?
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


[Cmake-commits] CMake branch, master, updated. v3.4.1-614-g4ffeab0

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

The branch, master has been updated
   via  4ffeab0e3c451854a4a9d424b47b2179c6cf6c6b (commit)
  from  6f6897f1aef884963503d8068707cf27fa7d99e7 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4ffeab0e3c451854a4a9d424b47b2179c6cf6c6b
commit 4ffeab0e3c451854a4a9d424b47b2179c6cf6c6b
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Thu Dec 3 00:01:09 2015 -0500
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Thu Dec 3 00:01:09 2015 -0500

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 15782b6..141015d 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
 # CMake version number components.
 set(CMake_VERSION_MAJOR 3)
 set(CMake_VERSION_MINOR 4)
-set(CMake_VERSION_PATCH 20151202)
+set(CMake_VERSION_PATCH 20151203)
 #set(CMake_VERSION_RC 1)

---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[CMake] generator expression for set_target_properties

2015-12-02 Thread Lloyd
Hi,

We have a cmake file for Qt project. We want to hide the console from
release build. For that we are using

ADD_EXECUTABLE(myexec ${MYEXEC_SRC} )
SET_TARGET_PROPERTIES(myexec PROPERTIES WIN32_EXECUTABLE true)

Is it possible for me to set this property only for the release build?

I am using cmake 2.8, Windows 7, VS 2013

Thanks,
  Lloyd
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

Re: [cmake-developers] [ANNOUNCE] CMake 3.4.1 available for download

2015-12-02 Thread Konstantin Podsvirov
Meet the fresh update online installers (CMake3.4.20151203):

http://ifw.podsvirov.pro/cmake/cmake-master-win32-online.exe

and

http://ifw.podsvirov.pro/cmake/cmake-master-win64-online.exe

If you have used them previously, then just update via "CMake Maintenance Tool".

02.12.2015, 23:55, "Konstantin Podsvirov" :
> 02.12.2015, 22:55, "Robert Maynard" :
>>  We are pleased to announce that CMake 3.4.1 is now available for download.
>>
>>  Please use the latest release from our download page:
>>    https://cmake.org/download/
>>
>>  Thanks for your support!
>
> Good job! Thank you!
>
> I could not miss this event. This is a good occasion to remind about
> the existence of CPack "IFW" generator :-)
>
> https://cmake.org/cmake/help/v3.4/module/CPackIFW.html
>
> Here is a fresh not official offline installers for CMake 3.4.1 on Windows:
>
> http://ifw.podsvirov.pro/cmake/files/v3.4/cmake-3.4.1-win32-x86.exe
>
> and
>
> http://ifw.podsvirov.pro/cmake/files/v3.4/cmake-3.4.1-win64-x64.exe
>
> But I want to assure you that they are honestly built me personally of the 
> official code of branch 'release' recently :-)
>
> I'll be glad if somebody test these installers for themselves and to share 
> their comments and suggestions.
>
> Good luck to everyone!
>
> --
> Regards,
> Konstantin Podsvirov
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at: 
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community. For more 
> information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake-developers

Regards,
Konstantin Podsvirov
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

[cmake-developers] [PATCH] Extend copy and copy_if_different commands with support multiple files

2015-12-02 Thread Bartosz Kosiorek
Hi.


This patch allows to use multiple files in commands "copy" and 
"copy_if_different".
Input files could be merged with wildcards. For example:
 ./bin/cmake -E copy bin/* CMakeFiles/* file.tar dupajasia

If wrong file path were provided as input then the error will be displayed, but 
rest of the files will be copied. For example:
./bin/cmake -E copy bin/* CMakeFiles/* wrong_file file.tar dupajasia/
Error copying file "wrong_file" to "dupajasia/".

If multipile input files were provided, then destination must be directory. 
Example:
./bin/cmake -E copy bin/* CMakeFiles/* wrong_file file.tar dupajasia/ctest
 Error: Target (copy) "dupajasia/ctest" is not a directory.

./bin/cmake -E copy bin/* dupajasia/ctest?
 Error: Target (copy) "dupajasia/ctest?" is not a directory.

If only one input file was provided, then destination could be either
file or directory:
 ./bin/cmake -E copy file.tar dupajasia/ctest

This path is starting point for fixing bug 15703:
?https://public.kitware.com/Bug/view.php?id=15703

Best Regards
Bartosz

From 8225688074386ac8633bad5e6f9fdb4a7caf9775 Mon Sep 17 00:00:00 2001
From: "Bartosz Kosiorek bartosz.kosio...@tomtom.com"
 
Date: Thu, 3 Dec 2015 00:43:37 +0100
Subject: [PATCH] Extend copy and copy_if_different command with support
 multiple files

This patch allows to use multiple files in command copy and copy_if_different.
Input files could be merged with wildcards.
If multipile input files were provided, then destination must be directory.
If only one input file was provided, then destination could be either
file or directory. This path is starting point for fixing bug 15703
---
 Help/manual/cmake.1.rst | 12 
 Source/cmcmd.cxx| 73 +++--
 2 files changed, 58 insertions(+), 27 deletions(-)

diff --git a/Help/manual/cmake.1.rst b/Help/manual/cmake.1.rst
index dac16bf..086f259 100644
--- a/Help/manual/cmake.1.rst
+++ b/Help/manual/cmake.1.rst
@@ -169,14 +169,14 @@ Available commands are:
 ``compare_files  ``
   Check if file1 is same as file2.
 
-``copy  ``
-  Copy file to destination (either file or directory).
+``copy ... ``
+  Copy files to 'destination' (either file or directory).
 
 ``copy_directory  ``
   Copy directory 'source' content to directory 'destination'.
 
-``copy_if_different  ``
-  Copy file if input has changed.
+``copy_if_different ... ``
+  Copy files if input has changed. Destination could be file or directory.
 
 ``echo [...]``
   Displays arguments as text.
@@ -193,10 +193,10 @@ Available commands are:
 ``make_directory ``
   Create a directory.
 
-``md5sum [...]``
+``md5sum ...``
   Compute md5sum of files.
 
-``remove [-f] [...]``
+``remove [-f] ...``
   Remove the file(s), use ``-f`` to force it.
 
 ``remove_directory ``
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 21b126b..0dc5a9a 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -52,25 +52,25 @@ void CMakeCommandUsage(const char* program)
   // If you add new commands, change here,
   // and in cmakemain.cxx in the options table
   errorStream
-<< "Usage: " << program << " -E [command] [arguments ...]\n"
+<< "Usage: " << program << " -E  [arguments...]\n"
 << "Available commands: \n"
 << "  chdir dir cmd [args]...   - run command in a given directory\n"
 << "  compare_files file1 file2 - check if file1 is same as file2\n"
-<< "  copy file destination - copy file to destination (either file "
-   "or directory)\n"
+<< "  copy ... destination  - copy files to destination "
+   "(either file or directory)\n"
 << "  copy_directory source destination   - copy directory 'source' "
"content to directory 'destination'\n"
-<< "  copy_if_different in-file out-file  - copy file if input has "
+<< "  copy_if_different ... destination  - copy files if it has "
"changed\n"
-<< "  echo [string]...  - displays arguments as text\n"
-<< "  echo_append [string]...   - displays arguments as text but no new "
+<< "  echo [...]- displays arguments as text\n"
+<< "  echo_append [...] - displays arguments as text but no new "
"line\n"
 << "  env [--unset=NAME]... [NAME=VALUE]... COMMAND [ARG]...\n"
 << "- run command in a modified environment\n"
 << "  environment   - display the current environment\n"
 << "  make_directory dir- create a directory\n"
-<< "  md5sum file1 [...]- compute md5sum of files\n"
-<< "  remove [-f] file1 file2 ... - remove the file(s), use -f to force "
+<< "  md5sum ...  - compute md5sum of files\n"
+<< "  remove [-f] ... - remove the file(s), use -f to force "
"it\n"
 << "  remove_directory dir  - remove a directory and its contents\n"
 << "  rename oldname newname- rename a file or directory "
@@ -78,7 +78,7 @@ void 

[cmake-developers] Fw: Please comment on ios-universal topic

2015-12-02 Thread Bartosz Kosiorek
Hi.

Currently we already support similar target properties:
- INSTALL_NAME_DIR
- INSTALL_RPATH
- INSTALL_RPATH_USE_LINK_PATH

It will be great to follow the same name convention.

Because this new property is only applicable for INSTALL step, I would like to 
propose to rename property name to INSTALL_IOS_UNIVERSAL_LIBS.

What do you think about that idea?


From: cmake-developers  on behalf of Gregor 
Jasny via cmake-developers 
Sent: Tuesday, December 1, 2015 3:22 PM
To: CMake Developers; Ruslan Baratov
Subject: [cmake-developers] Please comment on ios-universal topic

Hello,

During the last days I worked on the iOS Universal Install topic which
now would benefit from a review. Especially the core changes could need
a third pair of eyes:

https://cmake.org/gitweb?p=stage/cmake.git;a=commit;h=8fb23b42cfc2fb7490e8645fff328add9c231713

I will now concentrate on adding more tests during the next days.

Thank you,
Gregor

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[Cmake-commits] CMake branch, next, updated. v3.4.0-1572-ge76cbcc

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

The branch, next has been updated
   via  e76cbccd6e645a7b098d602d6f2f460d0688f009 (commit)
   via  ae434ee2dd1a91cd8ec53a631d8db9949d5f46b0 (commit)
  from  c95156f85d7fa9a1cf1737d801a31b1bb74bae5b (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e76cbccd6e645a7b098d602d6f2f460d0688f009
commit e76cbccd6e645a7b098d602d6f2f460d0688f009
Merge: c95156f ae434ee
Author: Brad King 
AuthorDate: Wed Dec 2 08:26:28 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:26:28 2015 -0500

Merge topic 'cpack-dmg-multilanguage-sla' into next

ae434ee2 CPack/DragNDrop: Allow single license for multiple languages


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae434ee2dd1a91cd8ec53a631d8db9949d5f46b0
commit ae434ee2dd1a91cd8ec53a631d8db9949d5f46b0
Author: Simon Levermann 
AuthorDate: Tue Nov 24 16:17:53 2015 +0100
Commit: Brad King 
CommitDate: Wed Dec 2 08:26:01 2015 -0500

CPack/DragNDrop: Allow single license for multiple languages

When both CPACK_DMG_SLA_DIR and CPACK_RESOURCE_FILE_LICENSE are defined,
use the license file for all languages instead of looking for a license
file for each language.  Also expand the documentation on the SLA
variables.

diff --git a/Modules/CPackDMG.cmake b/Modules/CPackDMG.cmake
index 6b5af7e..e34f8cd 100644
--- a/Modules/CPackDMG.cmake
+++ b/Modules/CPackDMG.cmake
@@ -49,11 +49,29 @@
 # .. variable:: CPACK_DMG_SLA_DIR
 #
 #   Directory where license and menu files for different languages are stored.
+#   Setting this causes CPack to look for a ``.menu.txt`` and
+#   ``.license.txt`` file for every language defined in
+#   ``CPACK_DMG_SLA_LANGUAGES``. If both this variable and
+#   ``CPACK_RESOURCE_FILE_LICENSE`` are set, CPack will only look for the menu
+#   files and use the same license file for all languages.
 #
 # .. variable:: CPACK_DMG_SLA_LANGUAGES
 #
 #   Languages for which a license agreement is provided when mounting the
-#   generated DMG.
+#   generated DMG. A menu file consists of 9 lines of text. The first line is
+#   is the name of the language itself, uppercase, in English (e.g. German).
+#   The other lines are translations of the following strings:
+#
+#   - Agree
+#   - Disagree
+#   - Print
+#   - Save...
+#   - You agree to the terms of the License Agreement when you click the
+# "Agree" button.
+#   - Software License Agreement
+#   - This text cannot be saved. The disk may be full or locked, or the file
+# may be locked.
+#   - Unable to print. Make sure you have selected a printer.
 #
 #   For every language in this list, CPack will try to find files
 #   ``.menu.txt`` and ``.license.txt`` in the directory
diff --git a/Source/CPack/cmCPackDragNDropGenerator.cxx 
b/Source/CPack/cmCPackDragNDropGenerator.cxx
index b5df2d0..1a694ea 100644
--- a/Source/CPack/cmCPackDragNDropGenerator.cxx
+++ b/Source/CPack/cmCPackDragNDropGenerator.cxx
@@ -69,6 +69,7 @@ static const char* SLASTREnglish =
 
 //--
 cmCPackDragNDropGenerator::cmCPackDragNDropGenerator()
+  : singleLicense(false)
 {
   // default to one package file for components
   this->componentPackageMethod = ONE_PACKAGE;
@@ -131,10 +132,11 @@ int cmCPackDragNDropGenerator::InitializeInternal()
   if(!license_file.empty() &&
  (license_file.find("CPack.GenericLicense.txt") == std::string::npos))
 {
-cmCPackLogger(cmCPackLog::LOG_WARNING,
+cmCPackLogger(cmCPackLog::LOG_OUTPUT,
   "Both CPACK_DMG_SLA_DIR and CPACK_RESOURCE_FILE_LICENSE specified, "
-  "defaulting to CPACK_DMG_SLA_DIR"
+  "using CPACK_RESOURCE_FILE_LICENSE as a license for all languages."
   << std::endl);
+singleLicense = true;
 }
   }
 if(!this->IsSet("CPACK_DMG_SLA_LANGUAGES"))
@@ -166,7 +168,7 @@ int cmCPackDragNDropGenerator::InitializeInternal()
 for(size_t i = 0; i < languages.size(); ++i)
   {
   std::string license = slaDirectory + "/" + languages[i] + ".license.txt";
-  if (!cmSystemTools::FileExists(license))
+  if (!singleLicense && !cmSystemTools::FileExists(license))
 {
 cmCPackLogger(cmCPackLog::LOG_ERROR,
   "Missing license file " << languages[i] << ".license.txt"
@@ -366,7 +368,7 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& 
src_dir,
 
   // use sla_dir if both sla_dir and license_file are set
   if(!cpack_license_file.empty() &&

[Cmake-commits] CMake branch, next, updated. v3.4.0-1574-g4f5acd5

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

The branch, next has been updated
   via  4f5acd54c99b0b0ada5b7180cd1cf865d9b7a2ca (commit)
   via  001043ac3078c49651f6af0f1ff1b31ef71a7665 (commit)
  from  e76cbccd6e645a7b098d602d6f2f460d0688f009 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4f5acd54c99b0b0ada5b7180cd1cf865d9b7a2ca
commit 4f5acd54c99b0b0ada5b7180cd1cf865d9b7a2ca
Merge: e76cbcc 001043a
Author: Brad King 
AuthorDate: Wed Dec 2 08:31:44 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:31:44 2015 -0500

Merge topic 'include-for-mode_t' into next

001043ac Include `sys/types.h` header to get `mode_t`


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=001043ac3078c49651f6af0f1ff1b31ef71a7665
commit 001043ac3078c49651f6af0f1ff1b31ef71a7665
Author: Kylie McClain 
AuthorDate: Wed Nov 25 18:12:06 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:31:08 2015 -0500

Include `sys/types.h` header to get `mode_t`

Do not depend on it being included by other system headers.
It is not included by others on musl-libc, for example.

diff --git a/Source/cmStandardIncludes.h b/Source/cmStandardIncludes.h
index 468a589..e212616 100644
--- a/Source/cmStandardIncludes.h
+++ b/Source/cmStandardIncludes.h
@@ -54,6 +54,8 @@
 
 #if defined( _MSC_VER )
 typedef unsigned short mode_t;
+#else
+# include 
 #endif
 
 // use this class to shrink the size of symbols in .o files

---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-637-gd956816

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

The branch, master has been updated
   via  d956816d70e7400b1d70f46f4f6adb87cee8c1ce (commit)
   via  001043ac3078c49651f6af0f1ff1b31ef71a7665 (commit)
  from  5257a3b931e3a2edc3fbe262c8215af6e7f5bfd7 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d956816d70e7400b1d70f46f4f6adb87cee8c1ce
commit d956816d70e7400b1d70f46f4f6adb87cee8c1ce
Merge: 5257a3b 001043a
Author: Brad King 
AuthorDate: Wed Dec 2 08:35:47 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:35:47 2015 -0500

Merge topic 'include-for-mode_t'

001043ac Include `sys/types.h` header to get `mode_t`


---

Summary of changes:
 Source/cmStandardIncludes.h |2 ++
 1 file changed, 2 insertions(+)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-632-g36e6ee9

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

The branch, master has been updated
   via  36e6ee913d7ea22060cc45b6a6a7b7e573402b28 (commit)
   via  fe05ad975292a2ff57a66746f1aa3870217f1ddd (commit)
   via  e25f294a0e0aa03da4516d0baa488ad02cece089 (commit)
  from  88c2d4b446c8b23b9694c6f00e76e02cf5e3d8f8 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=36e6ee913d7ea22060cc45b6a6a7b7e573402b28
commit 36e6ee913d7ea22060cc45b6a6a7b7e573402b28
Merge: 88c2d4b fe05ad9
Author: Brad King 
AuthorDate: Wed Dec 2 08:35:40 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:35:40 2015 -0500

Merge topic 'update-kwsys'

fe05ad97 Merge branch 'upstream-kwsys' into update-kwsys
e25f294a KWSys 2015-12-01 (9596e98d)


---

Summary of changes:
 Source/kwsys/CPU.h.in|4 
 Source/kwsys/ProcessUNIX.c   |2 +-
 Source/kwsys/SystemTools.cxx |   53 ++
 3 files changed, 28 insertions(+), 31 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-635-g5257a3b

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

The branch, master has been updated
   via  5257a3b931e3a2edc3fbe262c8215af6e7f5bfd7 (commit)
   via  4e3cf8b012404e4d9602c16d473480cc3d0c7928 (commit)
   via  6b1852874325520a418eb05ec3c2149c2eb194a2 (commit)
  from  36e6ee913d7ea22060cc45b6a6a7b7e573402b28 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5257a3b931e3a2edc3fbe262c8215af6e7f5bfd7
commit 5257a3b931e3a2edc3fbe262c8215af6e7f5bfd7
Merge: 36e6ee9 4e3cf8b
Author: Brad King 
AuthorDate: Wed Dec 2 08:35:44 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:35:44 2015 -0500

Merge topic 'reduce-realpath-calls'

4e3cf8b0 cmOrderDirectories: Reduce repeat realpath() calls
6b185287 cmOrderDirectories: Factor out directory comparison

diff --cc Source/cmOrderDirectories.cxx
index e3eedc7,e3406a8..61efd01
--- a/Source/cmOrderDirectories.cxx
+++ b/Source/cmOrderDirectories.cxx
@@@ -637,5 -635,25 +635,25 @@@ void cmOrderDirectories::DiagnoseCycle(
e << "Some of these libraries may not be found correctly.";
this->GlobalGenerator->GetCMakeInstance()
  ->IssueMessage(cmake::WARNING, e.str(),
 -   this->Target->Target->GetBacktrace());
 +   this->Target->GetBacktrace());
  }
+ 
+ bool cmOrderDirectories::IsSameDirectory(std::string const& l,
+  std::string const& r)
+ {
+   return this->GetRealPath(l) == this->GetRealPath(r);
+ }
+ 
+ std::string const& cmOrderDirectories::GetRealPath(std::string const& dir)
+ {
+   std::map::iterator i =
+ this->RealPaths.lower_bound(dir);
+   if (i == this->RealPaths.end() ||
+   this->RealPaths.key_comp()(dir, i->first))
+ {
+ typedef std::map::value_type value_type;
+ i = this->RealPaths.insert(
+   i, value_type(dir, cmSystemTools::GetRealPath(dir)));
+ }
+   return i->second;
+ }

---

Summary of changes:
 Source/cmOrderDirectories.cxx |   26 ++
 Source/cmOrderDirectories.h   |6 ++
 2 files changed, 28 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1581-g723ae59

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

The branch, next has been updated
   via  723ae591165ac8f1124f5015b6e76ddba8003887 (commit)
   via  dec15fc32cdcd2604dc58eb7275f444b01002117 (commit)
   via  d956816d70e7400b1d70f46f4f6adb87cee8c1ce (commit)
   via  5257a3b931e3a2edc3fbe262c8215af6e7f5bfd7 (commit)
   via  36e6ee913d7ea22060cc45b6a6a7b7e573402b28 (commit)
   via  88c2d4b446c8b23b9694c6f00e76e02cf5e3d8f8 (commit)
   via  bb5fccd0a77956b02f9f2c6f1c4c7acdea472178 (commit)
  from  4f5acd54c99b0b0ada5b7180cd1cf865d9b7a2ca (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=723ae591165ac8f1124f5015b6e76ddba8003887
commit 723ae591165ac8f1124f5015b6e76ddba8003887
Merge: 4f5acd5 dec15fc
Author: Brad King 
AuthorDate: Wed Dec 2 08:36:00 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:36:00 2015 -0500

Merge branch 'master' into next


---

Summary of changes:
 Source/CMakeVersion.cmake |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1583-g7fe51ef

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

The branch, next has been updated
   via  7fe51ef21ecd8c7d1ef18dde26ebe3aef688c55e (commit)
   via  f2ca704cbb0722da8f43b1f99b07e6fac32dc0f6 (commit)
  from  723ae591165ac8f1124f5015b6e76ddba8003887 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7fe51ef21ecd8c7d1ef18dde26ebe3aef688c55e
commit 7fe51ef21ecd8c7d1ef18dde26ebe3aef688c55e
Merge: 723ae59 f2ca704
Author: Brad King 
AuthorDate: Wed Dec 2 08:41:38 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:41:38 2015 -0500

Merge topic 'backport-NIOS2-CPU' into next

f2ca704c Add NIOS2 CPU support


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f2ca704cbb0722da8f43b1f99b07e6fac32dc0f6
commit f2ca704cbb0722da8f43b1f99b07e6fac32dc0f6
Author: Marek Vasut 
AuthorDate: Thu Nov 26 21:48:00 2015 +0100
Commit: Brad King 
CommitDate: Wed Dec 2 08:40:36 2015 -0500

Add NIOS2 CPU support

Add necessary bits to support the NIOS2 little-endian CPU.

Signed-off-by: Marek Vasut 
Cc: Ley Foon Tan 
Cc: Thomas Chou 
Cc: Walter Goossens 

diff --git a/Source/kwsys/CPU.h.in b/Source/kwsys/CPU.h.in
index 884d71a..66ffbb1 100644
--- a/Source/kwsys/CPU.h.in
+++ b/Source/kwsys/CPU.h.in
@@ -88,6 +88,10 @@
 #elif defined(__mips) || defined(__mips__) || defined(__MIPS__)
 # define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_BIG
 
+/* NIOS2 */
+#elif defined(__NIOS2__) || defined(__NIOS2) || defined(__nios2__)
+# define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_LITTLE
+
 /* OpenRISC 1000 */
 #elif defined(__or1k__)
 # define @KWSYS_NAMESPACE@_CPU_ENDIAN_ID @KWSYS_NAMESPACE@_CPU_ENDIAN_ID_BIG
diff --git a/Utilities/KWIML/ABI.h.in b/Utilities/KWIML/ABI.h.in
index 6300ada..87b6e96 100644
--- a/Utilities/KWIML/ABI.h.in
+++ b/Utilities/KWIML/ABI.h.in
@@ -398,6 +398,10 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined.
 #elif defined(__mips) || defined(__mips__) || defined(__MIPS__)
 # define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_BIG
 
+/* NIOS2 */
+#elif defined(__NIOS2__) || defined(__NIOS2) || defined(__nios2__)
+# define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_LITTLE
+
 /* OpenRISC 1000 */
 #elif defined(__or1k__)
 # define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_BIG

---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-641-gda78a16

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

The branch, master has been updated
   via  da78a1648fd5d4452a98c46eb9af486d16c43c9a (commit)
   via  f2ca704cbb0722da8f43b1f99b07e6fac32dc0f6 (commit)
  from  dec15fc32cdcd2604dc58eb7275f444b01002117 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da78a1648fd5d4452a98c46eb9af486d16c43c9a
commit da78a1648fd5d4452a98c46eb9af486d16c43c9a
Merge: dec15fc f2ca704
Author: Brad King 
AuthorDate: Wed Dec 2 08:41:43 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:41:43 2015 -0500

Merge topic 'backport-NIOS2-CPU'

f2ca704c Add NIOS2 CPU support


---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1586-gf0acaa7

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

The branch, next has been updated
   via  f0acaa7671009517d1947cabec18668054c42164 (commit)
   via  3fa2fc71b119751bc915f0068d2046667fdefd32 (commit)
   via  da78a1648fd5d4452a98c46eb9af486d16c43c9a (commit)
  from  7fe51ef21ecd8c7d1ef18dde26ebe3aef688c55e (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0acaa7671009517d1947cabec18668054c42164
commit f0acaa7671009517d1947cabec18668054c42164
Merge: 7fe51ef 3fa2fc7
Author: Brad King 
AuthorDate: Wed Dec 2 08:42:14 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:42:14 2015 -0500

Merge branch 'master' into next


---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1594-g5fe8cb9

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

The branch, next has been updated
   via  5fe8cb993882d62d9f54475e2b0bab798d64bd7e (commit)
   via  9b3f50a7a2be85f86900590d7df9d3b3c89b3cd9 (commit)
   via  fd7180f0c0c2554c31afda235469df986a109fe4 (commit)
  from  811442428dbf577b2fbc8400330904f13339aad9 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5fe8cb993882d62d9f54475e2b0bab798d64bd7e
commit 5fe8cb993882d62d9f54475e2b0bab798d64bd7e
Merge: 8114424 9b3f50a
Author: Brad King 
AuthorDate: Wed Dec 2 08:53:36 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:53:36 2015 -0500

Merge topic 'test-release' into next

9b3f50a7 Merge branch 'release' into test-release
fd7180f0 CMake 3.4.1


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9b3f50a7a2be85f86900590d7df9d3b3c89b3cd9
commit 9b3f50a7a2be85f86900590d7df9d3b3c89b3cd9
Merge: 4e29a51 fd7180f
Author: Brad King 
AuthorDate: Wed Dec 2 08:53:18 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:53:18 2015 -0500

Merge branch 'release' into test-release


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fd7180f0c0c2554c31afda235469df986a109fe4
commit fd7180f0c0c2554c31afda235469df986a109fe4
Author: Brad King 
AuthorDate: Wed Dec 2 08:46:12 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:46:12 2015 -0500

CMake 3.4.1

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 0ce1696..5717d37 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
 # CMake version number components.
 set(CMake_VERSION_MAJOR 3)
 set(CMake_VERSION_MINOR 4)
-set(CMake_VERSION_PATCH 0)
+set(CMake_VERSION_PATCH 1)
 #set(CMake_VERSION_RC 0)

---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[CMake] CPack-NSIS Start menu item not created

2015-12-02 Thread Lloyd
Hi,

Hi I am using CMake for building and packing on Windows. I have a root
cmake file and the subfolders contains executable and other modules. I am
writing the packing code in the root cmake file and executable contained in
a subfolder.

My executable name is myexec, and I want to create start menu item and
desktop icon for this exe.

For this I have used

set(CPACK_PACKAGE_EXECUTABLES myexec;"My Exec" ${CPACK_PACKAGE_EXECUTABLES})

set(CPACK_CREATE_DESKTOP_LINKS "My Exec" ${CPACK_CREATE_DESKTOP_LINKS})

But it is not creating start menu item or the desktop shortcut. What could
be the reason?
I am using NSIS. I have a custom NSIS template. Is this the reason for it
not to work?

Thanks,
  Lloyd
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

[Cmake-commits] CMake branch, master, updated. v3.4.0-629-g88c2d4b

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

The branch, master has been updated
   via  88c2d4b446c8b23b9694c6f00e76e02cf5e3d8f8 (commit)
   via  58c1840a193d8cc5e0fca3e8300b6f9d93c3aeb1 (commit)
   via  eec87ec8a77550af5b39b95bead1d4be6a802637 (commit)
  from  bb5fccd0a77956b02f9f2c6f1c4c7acdea472178 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=88c2d4b446c8b23b9694c6f00e76e02cf5e3d8f8
commit 88c2d4b446c8b23b9694c6f00e76e02cf5e3d8f8
Merge: bb5fccd 58c1840
Author: Brad King 
AuthorDate: Wed Dec 2 08:35:31 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:35:31 2015 -0500

Merge topic 'update-kwiml'

58c1840a Merge branch 'upstream-kwiml' into update-kwiml
eec87ec8 KWIML: Teach ABI.h that NIOS2 CPU is little-endian


---

Summary of changes:
 Utilities/KWIML/ABI.h.in |4 
 1 file changed, 4 insertions(+)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-650-g3fa2fc7

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

The branch, master has been updated
   via  3fa2fc71b119751bc915f0068d2046667fdefd32 (commit)
   via  aac633d5e5765bb6b51e31364325ae7d916f021c (commit)
   via  e8974b62d7883adf100d4c6ad90a0fbf682aaa91 (commit)
   via  b146747ed7f3cee8d8ef9c3ea6899ec3135aa527 (commit)
   via  da688bcb3b7edc1da19fc8b89e2425f40d3fa7f1 (commit)
   via  07388f83b69739116c8364e9443f10158fcdc912 (commit)
   via  246b0bfbfda9a8f3091fc34fc92816aebaf60ae9 (commit)
   via  deec3a3f06d341cfe0bef4e856b263eff347cc72 (commit)
   via  aa427a4239eb691d4129ebc383ab7b0d61b5b94e (commit)
  from  da78a1648fd5d4452a98c46eb9af486d16c43c9a (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3fa2fc71b119751bc915f0068d2046667fdefd32
commit 3fa2fc71b119751bc915f0068d2046667fdefd32
Merge: da78a16 aac633d
Author: Brad King 
AuthorDate: Wed Dec 2 08:42:06 2015 -0500
Commit: CMake Topic Stage 
CommitDate: Wed Dec 2 08:42:06 2015 -0500

Merge topic 'cmake-W-options'

aac633d5 Explicitly enable deprecated warnings by default.
e8974b62 Modify dev warning options to affect deprecated warnings.
b146747e Consistent documentation for deprecation message variables.
da688bcb Add -W options to control deprecated warning messages.
07388f83 Refactor the -W options parser to be generic.
246b0bfb Explicitly enable author (dev) warnings by default.
deec3a3f Make message suppression more consistent.
aa427a42 Tests: Revise message in RunCMake.CommandLine -Wdev case


---

Summary of changes:
 Help/manual/OPTIONS_BUILD.txt  |   17 +-
 Help/release/dev/cmake-W-options.rst   |   12 +
 Help/variable/CMAKE_ERROR_DEPRECATED.rst   |7 +-
 Help/variable/CMAKE_WARN_DEPRECATED.rst|9 +-
 Source/cmMakefile.cxx  |8 +-
 Source/cmMakefile.h|3 +-
 Source/cmMessageCommand.cxx|   27 ++-
 Source/cmake.cxx   |  251 
 Source/cmake.h |   43 +++-
 Tests/RunCMake/CommandLine/RunCMakeTest.cmake  |   38 +++
 .../W_bad-arg1-result.txt} |0
 Tests/RunCMake/CommandLine/W_bad-arg1-stderr.txt   |2 +
 .../W_bad-arg2-result.txt} |0
 Tests/RunCMake/CommandLine/W_bad-arg2-stderr.txt   |2 +
 Tests/RunCMake/CommandLine/Wdeprecated-stderr.txt  |4 +
 Tests/RunCMake/CommandLine/Wdeprecated.cmake   |1 +
 Tests/RunCMake/CommandLine/Wdev-stderr.txt |2 +-
 Tests/RunCMake/CommandLine/Wdev.cmake  |2 +-
 Tests/RunCMake/CommandLine/Wno-deprecated.cmake|1 +
 Tests/RunCMake/CommandLine/Wno-dev.cmake   |2 +-
 Tests/RunCMake/message/RunCMakeTest.cmake  |1 +
 .../defaultmessage-result.txt} |0
 Tests/RunCMake/message/defaultmessage-stderr.txt   |   11 +
 Tests/RunCMake/message/defaultmessage.cmake|4 +
 Tests/RunCMake/message/nomessage.cmake |6 +
 Tests/RunCMake/message/warnmessage-stderr.txt  |   11 +-
 Tests/RunCMake/message/warnmessage.cmake   |6 +-
 27 files changed, 393 insertions(+), 77 deletions(-)
 create mode 100644 Help/release/dev/cmake-W-options.rst
 copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => 
CommandLine/W_bad-arg1-result.txt} (100%)
 create mode 100644 Tests/RunCMake/CommandLine/W_bad-arg1-stderr.txt
 copy Tests/RunCMake/{CMP0004/CMP0004-NEW-result.txt => 
CommandLine/W_bad-arg2-result.txt} (100%)
 create mode 100644 Tests/RunCMake/CommandLine/W_bad-arg2-stderr.txt
 create mode 100644 Tests/RunCMake/CommandLine/Wdeprecated-stderr.txt
 create mode 100644 Tests/RunCMake/CommandLine/Wdeprecated.cmake
 create mode 100644 Tests/RunCMake/CommandLine/Wno-deprecated.cmake
 copy Tests/RunCMake/{CMP0022/CMP0022-WARN-empty-old-result.txt => 
message/defaultmessage-result.txt} (100%)
 create mode 100644 Tests/RunCMake/message/defaultmessage-stderr.txt
 create mode 100644 Tests/RunCMake/message/defaultmessage.cmake


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, master, updated. v3.4.0-654-g4e29a51

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

The branch, master has been updated
   via  4e29a514ad83c5711e7ee894b825203e8c302269 (commit)
   via  7cb630809db87dcce4e4d10596a5bb3d878662e2 (commit)
   via  535760ccb954dda78cc5c23c9e75245e7529c481 (commit)
   via  7b13759d5f030064fb9715f7a94194fd27aa55b0 (commit)
  from  3fa2fc71b119751bc915f0068d2046667fdefd32 (commit)

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

- Log -
---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, next, updated. v3.4.0-1591-g8114424

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

The branch, next has been updated
   via  811442428dbf577b2fbc8400330904f13339aad9 (commit)
   via  4e29a514ad83c5711e7ee894b825203e8c302269 (commit)
   via  7cb630809db87dcce4e4d10596a5bb3d878662e2 (commit)
   via  535760ccb954dda78cc5c23c9e75245e7529c481 (commit)
   via  7b13759d5f030064fb9715f7a94194fd27aa55b0 (commit)
  from  f0acaa7671009517d1947cabec18668054c42164 (commit)

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

- Log -
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=811442428dbf577b2fbc8400330904f13339aad9
commit 811442428dbf577b2fbc8400330904f13339aad9
Merge: f0acaa7 4e29a51
Author: Brad King 
AuthorDate: Wed Dec 2 08:45:12 2015 -0500
Commit: Brad King 
CommitDate: Wed Dec 2 08:45:12 2015 -0500

Merge branch 'master' into next


---

Summary of changes:


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits


[cmake-developers] [PATCH] Fix Resource directory structure for iOS Bundles (Framework and Application), update Tests and Help

2015-12-02 Thread Bartosz Kosiorek
Hello.


Patch in attachment allows to place resources in main Bundle directory (iOS 
specification), instead to always place in Resource directory (OSX 
specification.

See more:

https://public.kitware.com/Bug/view.php?id=15848

?

I tested it intensively with different generators (Makefile, Ninja), and it 
works perfectly.


I also extended existing Framework tests, to check Resource directory structure 
and Headers directory structure.

All tests on my machine passed.


Is it possible to apply this patch?

We need this fix in CMake 3.5.


Thanks in advance

Bartosz


0001-Fix-iOS-resource-directory-update-help-and-test-bug-.patch
Description: 0001-Fix-iOS-resource-directory-update-help-and-test-bug-.patch
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Re: [CMake] Best way to handle application data path for local run vs. installation

2015-12-02 Thread Roger Leigh

On 30/11/2015 02:10, Dmitry Marakasov wrote:

Hi!

This question bugs me for a long time so I though maybe someone has
a solution. I have a project which includes an application and some
data for it. An application needs to know path to its data files, so
I pass it via compiler definition: ADD_DEFINITIONS(-DDATADIR="...")

The problem is that this path is different based on whether I want to
run the application from build directory:

ADD_DEFINITIONS(-DDATADIR="${PROJECT_SOURCE_DIR}/data")

or want to install it systemwide:

ADD_DEFINITIONS(-DDATADIR="${CMAKE_INSTALL_PREFIX}/share/myapp")

I want my project to both run from build directory and to be
installable systemwide, without the need to rebuild or specify extra
options.

Any ideas?


I don't claim this is a universal solution, but it works for me.  It's 
also likely to be further improved--this is the first functional 
implementation.



https://github.com/openmicroscopy/bioformats/blob/dev_5_1/cpp/lib/ome/common/module.cpp

While you can configure and use hardcoded install paths, it will also 
optionally introspect itself at runtime and compute the install paths 
dynamically.  This means you can have a relocatable installation and it 
will discover this on the fly.  Lastly, you can overrride each path 
component with an environment variable.  This is used to run inside the 
install tree where the path layout doesn't match the installed layout. 
It's also useful for testing or overriding things after installation, if 
needed, or overriding the autodetection on platforms where autodetection 
doesn't work.


This approach requires this source file to be in a shared library 
(Linux/FreeBSD/MacOS X - using dlopen(3)/dladdr(3)) or in a DLL (Windows 
- uses GetModuleHandleExW()/GetModuleFileNameW()).  It would also work 
in an executable compiled with -rdynamic with suitable adjustment for 
the install path computation.  Other platforms could be added, but this 
covers all my needs at the present.  Basically we get the path to the 
.so/.dylib/.dll, then remove the library runtime path to get the 
installation root, then add on any relative path we need, e.g. the 
datadir or anything else.  This works for system installations or 
relocatable installs anywhere.


This uses the CMake GNUInstallDirs module variables via a generated 
header to store all the paths.



Regards,
Roger
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [cmake-developers] [PATCH] FindBoost: Add imported targets

2015-12-02 Thread Brad King
On 12/01/2015 05:11 PM, Roger Leigh wrote:
> Attached.  I also attached the BoostScanDeps raw output and after 
> search-and-replace to make into valid cmake conditionals, and then after 
> simplifying where following release dependencies are unchanged, so you 
> can see where the logic in FindBoost comes from.

Thanks.  That is a nice breakdown.

Please revies the "FindBoost: Embed component dependency table" commit
message to explain the steps used to run the script and ultimately get
the content added by the commit.

> + # Note: When adding a new Boost release, also update the dependency
> + # information in _Boost_COMPONENT_DEPENDENCIES

This is a good note.  Please extend it with a reference to instructions
somewhere on how to actually perform the update.

Thanks,
-Brad

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [CMake] How to generate for Ninja + MSVC?

2015-12-02 Thread iosif neitzke
Isn't this what Generator Toolset selection is for?

ex. cmake -G Ninja -T v140

http://cmake.blogspot.com/2013/05/cmake-2811-available-for-download.html
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake


Re: [CMake] Best way to handle application data path for local run vs. installation

2015-12-02 Thread Ruslan Baratov via CMake

On 03-Dec-15 04:34, Alexander Neundorf wrote:


On Wednesday, December 02, 2015 12:27:42 Ruslan Baratov wrote:

> On 02-Dec-15 05:13, Alexander Neundorf wrote:

...

> > well, the RPATH entry was not designed to be patched,

>

> RPATH designed to be patched. And since it's a third time I'm making

> this statement please provide any arguments if you don't agree.

>

> Here is mine (comes from wikipedia, 
https://en.wikipedia.org/wiki/Rpath):


>

> The rpath of an executable or shared library is an optional entry

> in the

> .dynamic section of the ELF executable or shared libraries, with

> the type

> DT_RPATH, called the DT_RPATH attribute. It can be stored there at

> link time by

> the linker. Tools such as chrpath and patchelf can create or MODIFY

> the entry

> later.

>

> Man chrpath (http://linux.die.net/man/1/chrpath):

>

> -r  | --replace 

> Replace current rpath or runpath setting with the path given

It doesn't matter and it is nitpicking: the RPATH entry has some size, 
and its content cannot simply be changed.



Still see no arguments, it's just your personal opinion.

I.e. it could be replaced with a string of the same length or a 
shorter one, but not a longer one.


CMake works around this by extending the build RPATH artificially with 
":" at the end I think, patchelf works around this by making the whole 
executable one page bigger if the new entry is longer.


Just an implementation notes, doesn't change the fact that it can be 
done and it's designed to be modifiable.


If RPATH was _designed_ to be patchable, tools could just do it, 
instead of having to implement workarounds for longer strings. E.g. 
the linker would support a command line argument how much space it 
should reserve for the RPATH entry, or something like that.


I think it's not possible. As far as I know there is no limitation for 
path size on Linux for example. Hence it's not possible to predict what 
size for path to library user want to use by setting RPATH.



> > any other string in an executable could be patched too:

> RPATH and C++ string literals have not the same nature. E.g. on my Linux

> machine RPATH string goes to ".dynstr" section and C++ literal to

> ".rodata" section.

> The difference is quite huge. By parsing ELF headers you can figure out

> RPATH offset and be 100% sure that patching is totally correct and

> doesn't affect other binary or general executable logic. RPATH is just a

> hint for linker.

> Changing bytes in .rodata is much trickier. E.g. how do you distinguish

> two strings:

>

> void print_some_info() {

> const char* path = "/usr/local"; // must not be changed

> std::cout << "General note: user specific packages usually installed

> to " << path << std::endl;

> }

>

> void parse_resources() {

> const char* resources_path = "/usr/local"; // want to change it in 
future


> std::string myresource = resources_path + "/foo/some.file";

> }

>

> What if compiler merge them?

By using a very special string which is very unlikely to be used by 
something else, like e.g. "$$$_CMAKE_I_AM_NOT_INSTALLED_$$$".


Just like I said it was a general note to show that C++ literal strings 
is not the same as RPATH entry and can't be changed correctly/easily 
after code already compiled.


Maybe it could even be put into a custom ELF section, and then tools 
could just look at that section (... but then it's ELF-only).


I would actually (despite it being hacky) trust the uniqueness of a 
string like the one above.


Probably the string could be made even more unique by embedding the 
target name or something using cmake functionality.


> (Just a general note, not related to how you want to implement resources

> trick)


...


>

> > const char* my_builddir_flag = "_I_M_NOT_INSTALLED_";

> >

> > ...

> >

> > if (*my_builddir_flag)

> >

> > {

> >

> > ... code when not installed

> >

> > }

> >

> > else

> >

> > {

> >

> > ... code for the installed version

> >

> > }

> >

> > Just search for that string in the executable and replace the first

> > byte with a '\0'.

>

> Still can violates logic. What if I want to print string to resources in

> next format:

> 1. "-" x size of path to resources (compiler can figure out it at

> compile time!)

> 2. path to resources

> 3. "-" x size of path to resources

>

> If you pass "/usr/local" output will be (nice):

>

> --

> /usr/local

> --

>

> If you pass "/home/username", output will be (nice):

>

> 

> /home/username

> 

>

> If you pass "_I_M_NOT_INSTALLED_" then change string to

> "/usr/local" after install (ugly, not what I expect!):

>

> ---

> /usr/local

> ---

Sorry, I don't understand.

The idea above was only for solving the question "am I installed ?" 
yes/no, not "where am I installed ?".


Then I don't understand how it's planned to be used. I thought that in 
build