Re: [CMake] Visual Studio 2008 / VS Compiler for Python

2016-07-30 Thread Matt McCormick
Hi,

Following up to the list for posterity with information summarized by
Jc on scikit-build:

   https://github.com/scikit-build/scikit-build/issues/34#issuecomment-230070388

Setting the environment and using NMake generator will work. Visual
Studio generator can not be used with "Microsoft C++ Compiler for
Python 2.7" because neither devenv or msbuild are provided.

HTH,
Matt

On Wed, May 11, 2016 at 10:34 AM, Michael Sarahan  wrote:
> In compiling TBB, a conda-forge contributor ran across issues with CMake not
> finding the VS compiler for VS 2008 Win64.
>
> https://github.com/conda-forge/staged-recipes/pull/533
>
> The exact error is at
> https://ci.appveyor.com/project/conda-forge/staged-recipes/build/1.0.2118/job/t2axdaotmty35j6k#L216
>
> Appveyor is an interesting platform, in that they install VS 2008 Express,
> then the VS compiler for Python (which adds the 64-bit compilation support).
>
> How does CMake find compilers?  Does it need extra instruction of some sort
> here?
>
> This is occurring in the context of a conda build, so we have already run
> the appropriate vcvars*.bat script by the time CMake runs
> (https://ci.appveyor.com/project/conda-forge/staged-recipes/build/1.0.2118/job/t2axdaotmty35j6k#L185)
> - but I'm not sure that really influences CMake's ability to find the
> compiler.
>
> Any guidance much appreciated.
>
> Best,
> Michael
>
> --
>
> 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] Regarding installation of ITK

2016-04-02 Thread Matt McCormick
Hello,

Welcome to ITK!

Please follow the steps described here to get started:


http://itk.org/ITKSoftwareGuide/html/Book1/ITKSoftwareGuide-Book1ch2.html#x27-170002

Please also use the latest version of ITK (4.9.0) and CMake (3.5.1).

Thanks,
Matt

On Fri, Apr 1, 2016 at 8:44 AM, Mavitha Sri 
wrote:

> Hello Sir/Madam,
>
> Great Day,
>
> I am going to use ITK tool kit for my project,So,i tried to install ITK
> tool in my system.But it showing some error when configuring the CMake. And
> i have also attached the error.So,please kindly help me  to solve this
> error.
>
> ITK version-3.20.1
> CMake version-2.8.9
>
> --
>
> 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

[Cmake-commits] CMake branch, next, updated. v3.4.1-1954-g021378e

2016-01-13 Thread Matt McCormick
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  021378efed47f005d8b20c3d56487d68982919fe (commit)
   via  ae32b5c91d660c30c80c29ab5b548b364e94c89b (commit)
  from  916741017fce97137df31effb795e93a43c4a54d (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=021378efed47f005d8b20c3d56487d68982919fe
commit 021378efed47f005d8b20c3d56487d68982919fe
Merge: 9167410 ae32b5c
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Wed Jan 13 14:15:07 2016 -0500
Commit: CMake Topic Stage <kwro...@kitware.com>
CommitDate: Wed Jan 13 14:15:07 2016 -0500

Merge topic 'FindDCMTK-update' into next

ae32b5c9 FindDCMTK: Add compatibility table to documentation.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ae32b5c91d660c30c80c29ab5b548b364e94c89b
commit ae32b5c91d660c30c80c29ab5b548b364e94c89b
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Wed Jan 13 14:13:44 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Wed Jan 13 14:13:44 2016 -0500

FindDCMTK: Add compatibility table to documentation.

Re: Bug #15909.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index dd0c9ff..dc663b5 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -10,11 +10,69 @@
 #  DCMTK_FOUND - If false, don't try to use DCMTK
 #  DCMTK_DIR   - (optional) Source directory for DCMTK
 #
-# .. note::
-#   Recent DCMTK provides a *DCMTKConfig.cmake* :manual:`package configuration 
file
-#   <cmake-packages(7)>`. To exclusively use the package configuration file
-#   (recommended when possible), pass the `NO_MODULE` option to
-#   :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`.
+# Compatibility
+# ^
+#
+# This module is able to find a version of DCMTK that does or does not export
+# a *DCMTKConfig.cmake* file. It applies a two step process:
+#
+# * Step 1:  Attempt to find DCMTK version providing a *DCMTKConfig.cmake* 
file.
+# * Step 2:  If step 1 failed, rely on *FindDCMTK.cmake* to set `DCMTK_*` 
variables details below.
+#
+#
+# `Recent DCMTK
+# 
<http://git.dcmtk.org/web?p=dcmtk.git;a=commit;h=662ae187c493c6b9a73dd5e3875372cebd0c11fe>`_
+# provides a *DCMTKConfig.cmake* :manual:`package configuration file
+# <cmake-packages(7)>`. To exclusively use the package configuration file
+# (recommended when possible), pass the `NO_MODULE` option to
+# :command:`find_package`. For example, `find_package(DCMTK NO_MODULE)`.
+# This requires official DCMTK snapshot *3.6.1_20140617* or newer.
+#
+#
+# Until all clients update to the more recent DCMTK, build systems will need
+# to support different versions of DCMTK.
+#
+# On any given system, the following combinations of DCMTK versions could be
+# considered:
+#
+# ++-+---+---+
+# ||   SYSTEM DCMTK  |  LOCAL DCMTK  | Supported ?   |
+# ++-+---+---+
+# | Case A |   NA|  [ ] DCMTKConfig  | YES   |
+# ++-+---+---+
+# | Case B |   NA|  [X] DCMTKConfig  | YES   |
+# ++-+---+---+
+# | Case C |   [ ] DCMTKConfig   |  NA   | YES   |
+# ++-+---+---+
+# | Case D |   [X] DCMTKConfig   |  NA   | YES   |
+# ++-+---+---+
+# | Case E |   [ ] DCMTKConfig   |  [ ] DCMTKConfig  | YES (*)   |
+# ++-+---+---+
+# | Case F |   [X] DCMTKConfig   |  [ ] DCMTKConfig  | NO|
+# ++-+---+---+
+# | Case G |   [ ] DCMTKConfig   |  [X] DCMTKConfig  | YES   |
+# ++-+---+---+
+# | Case H |   [X] DCMTKConfig   |  [X] DCMTKConfig  | YES   |
+# ++-+---+---+
+#
+#  (*) See Troubleshooting section.
+#
+# Legend:
+#
+#   NA ...: Means that no System or Local DCMTK is available
+#
+#   [ ] DCMTKConfig ..: Means that the version of DCMTK does NOT export a 
DCMTKConfig.cmake file

[Cmake-commits] CMake branch, next, updated. v3.4.1-1952-g9167410

2016-01-13 Thread Matt McCormick
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  916741017fce97137df31effb795e93a43c4a54d (commit)
   via  ed54acf383ef7c46a2746c4423f395d399f0e525 (commit)
  from  1e6e2d6c5bc43ad9ff65f2e4e554fb15c70437b4 (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=916741017fce97137df31effb795e93a43c4a54d
commit 916741017fce97137df31effb795e93a43c4a54d
Merge: 1e6e2d6 ed54acf
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Wed Jan 13 10:53:25 2016 -0500
Commit: CMake Topic Stage <kwro...@kitware.com>
CommitDate: Wed Jan 13 10:53:25 2016 -0500

Merge topic 'FindDCMTK-update' into next

ed54acf3 FindDCMTK: Simplify documentation.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ed54acf383ef7c46a2746c4423f395d399f0e525
commit ed54acf383ef7c46a2746c4423f395d399f0e525
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Wed Jan 13 10:53:03 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Wed Jan 13 10:53:03 2016 -0500

FindDCMTK: Simplify documentation.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index 1238616..dd0c9ff 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -10,92 +10,11 @@
 #  DCMTK_FOUND - If false, don't try to use DCMTK
 #  DCMTK_DIR   - (optional) Source directory for DCMTK
 #
-# `DCMTK_DIR` can be used to make it simpler to find the various include
-# directories and compiled libraries if you've just compiled it in the
-# source tree. Just set it to the root of the tree where you extracted
-# the source (default to `/usr`)
-#
-#
-# This file is able to find version of DCMTK that does or does not export
-# a *DCMTKConfig.cmake* file.
-#
-# .. important::
-#   A set of patches has been contributed to DCMTK
-#   maintainers and merged upstream. As soon as:
-#
-#   1) it has been integrated upstream so that it is available in
-#   an official release (for example X.Y.Z),
-#   2) code bases have been updated to build against X.Y.Z
-#
-#   This file could be removed.
-#
-#   The set of patches is listed here: 
https://github.com/commontk/DCMTK/compare/79030ba...f461865
-#
-#
-# Waiting for this to happen, build systems will have to be able
-# to support different versions of DCMTK.
-#
-# On any given system, the following combination of DCMTK version could be
-# considered:
-#
-# ++-+---+---+
-# ||   SYSTEM DCMTK  |  LOCAL DCMTK  | Supported ?   |
-# ++-+---+---+
-# | Case A |   NA|  [ ] DCMTKConfig  | YES   |
-# ++-+---+---+
-# | Case B |   NA|  [X] DCMTKConfig  | YES   |
-# ++-+---+---+
-# | Case C |   [ ] DCMTKConfig   |  NA   | YES   |
-# ++-+---+---+
-# | Case D |   [X] DCMTKConfig   |  NA   | YES   |
-# ++-+---+---+
-# | Case E |   [ ] DCMTKConfig   |  [ ] DCMTKConfig  | YES (*)   |
-# ++-+---+---+
-# | Case F |   [X] DCMTKConfig   |  [ ] DCMTKConfig  | NO|
-# ++-+---+---+
-# | Case G |   [ ] DCMTKConfig   |  [X] DCMTKConfig  | YES   |
-# ++-+---+---+
-# | Case H |   [X] DCMTKConfig   |  [X] DCMTKConfig  | YES   |
-# ++-+---+---+
-#
-#  (*) See Troubleshooting section.
-#
-# Legend:
-#
-#   NA ...: Means that no System or Local DCMTK is available
-#
-#   [ ] DCMTKConfig ..: Means that the version of DCMTK does NOT export a 
DCMTKConfig.cmake file.
-#
-#   [X] DCMTKConfig ..: Means that the version of DCMTK exports a 
DCMTKConfig.cmake file.
-#
-#
-# It is a two step process:
-#
-# * Step 1:  Attempt to find DCMTK version providing a DCMTKConfig.cmake file. 
This is done with the help of `''`
-# * Step 2:  If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* 
variables details below.
-#
-# Troubleshooting
-# ^^^
-#
-# What to do if my project finds a different ve

[Cmake-commits] CMake branch, next, updated. v3.4.1-1936-ge174bc9

2016-01-12 Thread Matt McCormick
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  e174bc906b2f65bbc17995f6722ea2e41a78b472 (commit)
   via  d790f4feeadc863d47ffec9d901d4bf5519001df (commit)
  from  21bc95c2ff3b44500bc0bb2d777f1e4acb729676 (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=e174bc906b2f65bbc17995f6722ea2e41a78b472
commit e174bc906b2f65bbc17995f6722ea2e41a78b472
Merge: 21bc95c d790f4f
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 14:46:14 2016 -0500
Commit: CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Jan 12 14:46:14 2016 -0500

Merge topic 'FindDCMTK-update' into next

d790f4fe FindDCMTK: Keep original copyright notice.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d790f4feeadc863d47ffec9d901d4bf5519001df
commit d790f4feeadc863d47ffec9d901d4bf5519001df
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 14:44:21 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Tue Jan 12 14:45:11 2016 -0500

FindDCMTK: Keep original copyright notice.

This is a follow-up to 31b4700ed640bee962f9db9ce25fa84261a944d2.
Remove the extra character that was added to ensure the CMake.ModuleNotices
test passes.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index 115c26b..e79c2cd 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -105,7 +105,7 @@
 # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # See the License for more information.
 #=
-# (To distributed this file outside of CMake, substitute the full
+# (To distribute this file outside of CMake, substitute the full
 #  License text for the above reference.)
 
 #

---

Summary of changes:
 Modules/FindDCMTK.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.1-1938-g3f3e6dd

2016-01-12 Thread Matt McCormick
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  3f3e6ddf46580649e726293f64c6808256927167 (commit)
   via  361c199ff602d492d4261f0387d84913a0989473 (commit)
  from  e174bc906b2f65bbc17995f6722ea2e41a78b472 (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=3f3e6ddf46580649e726293f64c6808256927167
commit 3f3e6ddf46580649e726293f64c6808256927167
Merge: e174bc9 361c199
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 15:44:40 2016 -0500
Commit: CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Jan 12 15:44:40 2016 -0500

Merge topic 'FindDCMTK-update' into next

361c199f FindDCMTK: Add reStructuredText formatting.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=361c199ff602d492d4261f0387d84913a0989473
commit 361c199ff602d492d4261f0387d84913a0989473
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 15:44:10 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Tue Jan 12 15:44:10 2016 -0500

FindDCMTK: Add reStructuredText formatting.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index e79c2cd..1238616 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -1,32 +1,35 @@
 #.rst:
 # FindDCMTK
 # -
+# Find DCMTK libraries and applications
 #
-# - find DCMTK libraries and applications
-# The module defines the following variables:
+# The module defines the following variables::
 #
 #  DCMTK_INCLUDE_DIRS  - Directories to include to use DCMTK
 #  DCMTK_LIBRARIES - Files to link against to use DCMTK
 #  DCMTK_FOUND - If false, don't try to use DCMTK
 #  DCMTK_DIR   - (optional) Source directory for DCMTK
 #
-# DCMTK_DIR can be used to make it simpler to find the various include
+# `DCMTK_DIR` can be used to make it simpler to find the various include
 # directories and compiled libraries if you've just compiled it in the
 # source tree. Just set it to the root of the tree where you extracted
-# the source (default to /usr)
+# the source (default to `/usr`)
 #
 #
 # This file is able to find version of DCMTK that does or does not export
-# a DCMTKConfig.cmake file.
+# a *DCMTKConfig.cmake* file.
 #
-# IMPORTANT: A set of patches has been contributed to DCMTK
-# maintainers and merged upstream. As soon as:
-#   (1) it has been integrated upstream so that it is available in
+# .. important::
+#   A set of patches has been contributed to DCMTK
+#   maintainers and merged upstream. As soon as:
+#
+#   1) it has been integrated upstream so that it is available in
 #   an official release (for example X.Y.Z),
-#   (2) code bases have been updated to build against X.Y.Z
-# This file could be removed.
+#   2) code bases have been updated to build against X.Y.Z
+#
+#   This file could be removed.
 #
-# The set of patches is listed here: 
https://github.com/commontk/DCMTK/compare/79030ba...f461865
+#   The set of patches is listed here: 
https://github.com/commontk/DCMTK/compare/79030ba...f461865
 #
 #
 # Waiting for this to happen, build systems will have to be able
@@ -35,24 +38,25 @@
 # On any given system, the following combination of DCMTK version could be
 # considered:
 #
-# |   SYSTEM DCMTK  +  LOCAL DCMTK  | Supported ?   |
-# ---
-# Case A  |   NA+  [ ] DCMTKConfig  | YES   |
-# --|
-# Case B  |   NA+  [X] DCMTKConfig  | YES   |
-# --|
-# Case C  |   [ ] DCMTKConfig   +  NA   | YES   |
-# --|
-# Case D  |   [X] DCMTKConfig   +  NA   | YES   |
-# --|
-# Case E  |   [ ] DCMTKConfig   +  [ ] DCMTKConfig  | YES (*)   |
-# --|
-# Case F  |   [X] DCMTKConfig   +  [ ] DCMTKConfig  | NO|
-# --|
-# Case G  |   [ ] DCMTKConfig   +  [X] DCMTKConfig  | YES   |
-# --|
-# Case H  |   [X] DCMTKConfig   +  

[Cmake-commits] CMake branch, next, updated. v3.4.1-1924-g3e1fca7

2016-01-12 Thread Matt McCormick
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  3e1fca746416fb82ed79e02e2248c8c26f3549a2 (commit)
   via  8c8e53d06011ef476780d10601adac78baf8aead (commit)
   via  d50cbbb03d53da6b990402a482a56b3163807dcb (commit)
   via  31b4700ed640bee962f9db9ce25fa84261a944d2 (commit)
  from  3a128a8198be563ea3be57b93c8c8100b515efff (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=3e1fca746416fb82ed79e02e2248c8c26f3549a2
commit 3e1fca746416fb82ed79e02e2248c8c26f3549a2
Merge: 3a128a8 8c8e53d
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 12:27:23 2016 -0500
Commit: CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Jan 12 12:27:23 2016 -0500

Merge topic 'FindDCMTK-update' into next

8c8e53d0 FindDCMTK: Minor documentation grammatical issues.
d50cbbb0 FindDCMTK: Obey QUIET option for find_package.
31b4700e FindDCMTK: Improve compatibility with DCMTKConfig.cmake.


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c8e53d06011ef476780d10601adac78baf8aead
commit 8c8e53d06011ef476780d10601adac78baf8aead
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Tue Jan 12 12:25:15 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Tue Jan 12 12:25:15 2016 -0500

FindDCMTK: Minor documentation grammatical issues.

Also remove CTK integration reference to avoid confusion.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index 89e9c4f..115c26b 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -16,11 +16,11 @@
 # the source (default to /usr)
 #
 #
-# This file is able to find version of DCMTK that do or do not export
+# This file is able to find version of DCMTK that does or does not export
 # a DCMTKConfig.cmake file.
 #
 # IMPORTANT: A set of patches has been contributed to DCMTK
-# maintainers, as soon as:
+# maintainers and merged upstream. As soon as:
 #   (1) it has been integrated upstream so that it is available in
 #   an official release (for example X.Y.Z),
 #   (2) code bases have been updated to build against X.Y.Z
@@ -65,22 +65,17 @@
 #   [X] DCMTKConfig ..: Means that the version of DCMTK exports a 
DCMTKConfig.cmake file.
 #
 #
-#
-# In CTK commits 52d953 and 74b4b07, the FindDCMTK.cmake module has been 
updated to be able
-# to find both version of DCMTK ([ ] DCMTKConfig and [X] DCMTKConfig).
-#
-# It is a two steps process:
+# It is a two step process:
 #
 #   * Step 1:  Attempt to find DCMTK version providing a DCMTKConfig.cmake 
file. This is done
 #  with the help of ''
-#
 #   * Step 2:  If step 1 failed, rely on FindDCMTK.cmake to set DCMTK_* 
variables details below.
 #
 #
 #
 # Troubleshooting:
 #
-#What to do if my project find a different version of DCMTK ?
+#What to do if my project finds a different version of DCMTK?
 #
 #Remove DCMTK entry from the CMake registry.
 #Search for "CMake user package registry" on 
http://www.cmake.org/cmake/help/v2.8.9/cmake.html#command:find_package

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d50cbbb03d53da6b990402a482a56b3163807dcb
commit d50cbbb03d53da6b990402a482a56b3163807dcb
Author: Matt McCormick <matt.mccorm...@kitware.com>
AuthorDate: Mon Jan 11 16:46:12 2016 -0500
Commit: Matt McCormick <matt.mccorm...@kitware.com>
CommitDate: Mon Jan 11 16:51:36 2016 -0500

FindDCMTK: Obey QUIET option for find_package.

diff --git a/Modules/FindDCMTK.cmake b/Modules/FindDCMTK.cmake
index 5693972..89e9c4f 100644
--- a/Modules/FindDCMTK.cmake
+++ b/Modules/FindDCMTK.cmake
@@ -135,18 +135,27 @@ set(_SAVED_DCMTK_DIR ${DCMTK_DIR})
 #
 # Step1: Attempt to find a version of DCMTK providing a DCMTKConfig.cmake file.
 #
-message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake")
+if(NOT DCMTK_FIND_QUIETLY)
+  message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake")
+endif()
 find_package(DCMTK QUIET NO_MODULE)
 if(DCMTK_FOUND
 AND NOT "x" STREQUAL "x${DCMTK_LIBRARIES}"
 AND NOT "x" STREQUAL "x${DCMTK_INCLUDE_DIRS}")
-  message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok")
+
+  if(NOT DCMTK_FIND_QUIETLY)
+message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - ok")
+  endif()
   return()
 else()
-  message(STATUS "Trying to find DCMTK expecting DCMTKConfig.cmake - failed")
+  if(NOT DCMTK_FIND_QUIETLY)
+message(STATUS "Trying to find DCMTK expecting DCMTKConfig.

Re: [CMake] Benchmarking with CMake

2015-11-10 Thread Matt McCormick
Hi Mate,

This blog post has an example of parsing and visualizing
CTestCostData.txt.  Although, that file was not created for that
purpose:

  http://www.kitware.com/blog/home/post/556

Cheers,
Matt

On Mon, Nov 9, 2015 at 5:21 PM, Nagy-Egri Máté Ferenc  wrote:
> Hi!
>
>
>
> Can anyone tell me if CMake (or CTest) can be customized in a way to produce
> decent benchmark output? An .xlsx perhaps, or something GnuPlot friendly? I
> have not found any examples of CTest being (ab)used in this way.
>
>
>
> Is my feeling correct, that this should be something like CBench?
>
>
>
> Cheers,
>
> Máté
>
>
>
>
> --
>
> 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

[Cmake-commits] CMake branch, next, updated. v3.3.1-2269-g80267fb

2015-08-19 Thread Matt McCormick
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  80267fb9587aec657286305580fee4fc390c3cb9 (commit)
   via  306c9361ce1fffc85b2ffe88132885cf5955f1ba (commit)
  from  a3443d29fec62f29990eda358e1d8dd16cff811c (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=80267fb9587aec657286305580fee4fc390c3cb9
commit 80267fb9587aec657286305580fee4fc390c3cb9
Merge: a3443d2 306c936
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Aug 19 08:42:12 2015 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Aug 19 08:42:12 2015 -0400

Merge topic 'MSVC-quote-for-release' into next

306c9361 CMake: Silence CMP0054 warning with separate project, 
enable_language calls.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=306c9361ce1fffc85b2ffe88132885cf5955f1ba
commit 306c9361ce1fffc85b2ffe88132885cf5955f1ba
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Sun Aug 16 15:42:23 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Sun Aug 16 15:42:23 2015 -0400

CMake: Silence CMP0054 warning with separate project, enable_language calls.

This addresses the warning:

  -- The CXX compiler identification is MSVC 18.0.31101.0
  CMake Warning (dev) at C:/Program Files 
(x86)/CMake/share/cmake-3.3/Modules/CMakeDetermineCXXCompiler.cmake:106 (if):
Policy CMP0054 is not set: Only interpret if() arguments as variables or
keywords when unquoted.  Run cmake --help-policy CMP0054 for policy
details.  Use the cmake_policy command to set the policy and suppress 
this
warning.

Quoted variables like MSVC will no longer be dereferenced when the 
policy
is set to NEW.  Since the policy is not set the OLD behavior will be 
used.
  Call Stack (most recent call first):
CMakeLists.txt:23 (enable_language)

That occurs with MSVC / Ninja with the following CMakeLists.txt:

  cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR)
  project(MyProj NONE)
  enable_language(C)
  enable_language(CXX)

diff --git a/Modules/CMakeDetermineCXXCompiler.cmake 
b/Modules/CMakeDetermineCXXCompiler.cmake
index 893c454..7e6d8dc 100644
--- a/Modules/CMakeDetermineCXXCompiler.cmake
+++ b/Modules/CMakeDetermineCXXCompiler.cmake
@@ -103,14 +103,17 @@ if(NOT CMAKE_CXX_COMPILER_ID_RUN)
   CMAKE_DETERMINE_COMPILER_ID(CXX CXXFLAGS CMakeCXXCompilerId.cpp)
 
   # Set old compiler and platform id variables.
-  if(${CMAKE_CXX_COMPILER_ID} MATCHES GNU)
-set(CMAKE_COMPILER_IS_GNUCXX 1)
-  endif()
-  if(${CMAKE_CXX_PLATFORM_ID} MATCHES MinGW)
-set(CMAKE_COMPILER_IS_MINGW 1)
-  elseif(${CMAKE_CXX_PLATFORM_ID} MATCHES Cygwin)
-set(CMAKE_COMPILER_IS_CYGWIN 1)
-  endif()
+  cmake_policy(PUSH)
+cmake_policy(SET CMP0054 NEW)
+if(${CMAKE_CXX_COMPILER_ID} MATCHES GNU)
+  set(CMAKE_COMPILER_IS_GNUCXX 1)
+endif()
+if(${CMAKE_CXX_PLATFORM_ID} MATCHES MinGW)
+  set(CMAKE_COMPILER_IS_MINGW 1)
+elseif(${CMAKE_CXX_PLATFORM_ID} MATCHES Cygwin)
+  set(CMAKE_COMPILER_IS_CYGWIN 1)
+endif()
+  cmake_policy(POP)
 endif()
 
 if (NOT _CMAKE_TOOLCHAIN_LOCATION)

---

Summary of changes:
 Modules/CMakeDetermineCXXCompiler.cmake |   19 +++
 1 file changed, 11 insertions(+), 8 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.3.0-1581-g22d1597

2015-07-31 Thread Matt McCormick
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  22d1597f20869110edca4411236e8f5263cd5ece (commit)
   via  6166a4a2536ec0142a12ee0ae04eee6591863e06 (commit)
   via  dbae465c288e3240837213570b3e1e992482c180 (commit)
   via  7d2db56ef9735e47ccdaf8dba994ac10bc1d7ef1 (commit)
  from  45a48d7e23bae2590516118643d592f02f69ff4e (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=22d1597f20869110edca4411236e8f5263cd5ece
commit 22d1597f20869110edca4411236e8f5263cd5ece
Merge: 45a48d7 6166a4a
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Fri Jul 31 08:37:28 2015 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Fri Jul 31 08:37:28 2015 -0400

Merge topic 'if-test' into next

6166a4a2 ExternalProject: Silence warnings related to TEST use in if().
dbae465c CMake: Add CMP0064 for TEST operator in if() command.
7d2db56e CMake: if command understands if(TEST TestName)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6166a4a2536ec0142a12ee0ae04eee6591863e06
commit 6166a4a2536ec0142a12ee0ae04eee6591863e06
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jul 29 14:46:40 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jul 29 14:46:40 2015 -0400

ExternalProject: Silence warnings related to TEST use in if().

diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index f6844be..fdb146a 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -1211,7 +1211,7 @@ function(_ep_get_build_command name step cmd_var)
 if(step STREQUAL INSTALL)
   set(args install)
 endif()
-if(step STREQUAL TEST)
+if(x${step}x STREQUAL xTESTx)
   set(args test)
 endif()
   else()
@@ -1230,7 +1230,7 @@ function(_ep_get_build_command name step cmd_var)
   list(APPEND args --target install)
 endif()
 # But for TEST drive the project with corresponding ctest.
-if(step STREQUAL TEST)
+if(x${step}x STREQUAL xTESTx)
   string(REGEX REPLACE ^(.*/)cmake([^/]*)$ \\1ctest\\2 cmd 
${cmd})
   set(args )
 endif()
@@ -1246,7 +1246,7 @@ function(_ep_get_build_command name step cmd_var)
   if(step STREQUAL INSTALL)
 set(args install)
   endif()
-  if(step STREQUAL TEST)
+  if(x${step}x STREQUAL xTESTx)
 set(args test)
   endif()
 endif()

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dbae465c288e3240837213570b3e1e992482c180
commit dbae465c288e3240837213570b3e1e992482c180
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Tue Jul 28 22:43:59 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jul 29 14:13:32 2015 -0400

CMake: Add CMP0064 for TEST operator in if() command.

The new TEST operator for the if() command is not recognized until
CMP0064 is set to NEW.

diff --git a/Help/manual/cmake-policies.7.rst b/Help/manual/cmake-policies.7.rst
index 0a313cd..590f10d 100644
--- a/Help/manual/cmake-policies.7.rst
+++ b/Help/manual/cmake-policies.7.rst
@@ -121,3 +121,4 @@ All Policies
/policy/CMP0061
/policy/CMP0062
/policy/CMP0063
+   /policy/CMP0064
diff --git a/Help/policy/CMP0064.rst b/Help/policy/CMP0064.rst
new file mode 100644
index 000..e9a061b
--- /dev/null
+++ b/Help/policy/CMP0064.rst
@@ -0,0 +1,17 @@
+CMP0064
+---
+
+Recognize ``TEST`` as a operator for the :command:`if` command.
+
+The ``TEST`` operator was added to the :command:`if` command to determine if a
+given test name was created by the :command:`add_test` command.
+
+The ``OLD`` behavior for this policy is to ignore the ``TEST`` operator.
+The ``NEW`` behavior is to interpret the ``TEST`` operator.
+
+This policy was introduced in CMake version 3.4.  CMake version
+|release| warns when the policy is not set and uses ``OLD`` behavior.  Use
+the :command:`cmake_policy()` command to set it to ``OLD`` or ``NEW``
+explicitly.
+
+.. include:: DEPRECATED.txt
diff --git a/Source/cmConditionEvaluator.cxx b/Source/cmConditionEvaluator.cxx
index bcbc3b6..7874803 100644
--- a/Source/cmConditionEvaluator.cxx
+++ b/Source/cmConditionEvaluator.cxx
@@ -16,7 +16,8 @@ cmConditionEvaluator::cmConditionEvaluator(cmMakefile 
makefile):
   Makefile(makefile),
   Policy12Status(makefile.GetPolicyStatus(cmPolicies::CMP0012)),
   Policy54Status(makefile.GetPolicyStatus(cmPolicies::CMP0054)),
-  Policy57Status(makefile.GetPolicyStatus(cmPolicies::CMP0057))
+  Policy57Status(makefile.GetPolicyStatus(cmPolicies

Re: [CMake] CMake IR

2015-07-29 Thread Matt McCormick
Hi Máté,

There is some on-going work along the lines of separating out state.
See this thread for more information:

  http://thread.gmane.org/gmane.comp.programming.tools.cmake.devel/12658

You may want to have further discussions on the cmake-developers list.

Cheers,
Matt

On Wed, Jul 29, 2015 at 3:49 AM, Nagy-Egri Máté Ferenc cmake@cmake.org wrote:
 Dear CMake devs/users,

 I wanted to ask your opinion on something that has been troubling me since…
 well, ever since I started using CMake. I have not found a single person
 alive who would have said:

 “The script language of CMake is nice, intuitive and productive. Authoring
 scripts is easy, and writing custom macros is not difficult either.”

 There are gazillions of scripting languages one could have chosen for CMake
 (Python, Perl, Ruby, Powershell, Bash, etc.) that would allow developers to
 reuse existing skills, or learn one that is useful elsewhere, not just in
 terms of CMake. These languages have a lot of thought put into them. They
 are superior to CMake’s own in just about every regard.

 I came up with an idea presented here: http://1drv.ms/1MsufbF

 Enhancements such a change could bring about:

 The big selling point would be the ability to introduce arbitrary front-ends
 to CMake, not just CMakelists.txt. Every developer could choose an input
 language that suits their project/needs/skills.
 (It would also ease the custom implementations of cmake.exe itself in any
 language, but that is just a side-effect.)
 It would modularize the internals of CMake in a cleaner fashion
 Facilitate the introduction of new languages understood by CMake (such as
 work put into C# and Swift currently)
 Would allow for configure-time validating of compiler-specific options
 Use deferred makefile generation by default (making the implementation of
 tools like Cotire for precompiled headers trivial to implement, as well
 NMake batch mode, or detecting multiple/cyclic linkage, by making use of
 global information about the build process)
 Many features could automatically be reused by all generators. (Imagine
 Swift, and Fortran libraries being compiled as NuGet packages and publishing
 them without any hassle on user side, or having to implement anything in the
 XCode generator.)
 SIGNIFICANTLY increase interoperability with other tools. Implementing GUI
 front-ends (such as in CLion, or Visual Studio (work in progress)) are
 orders of magnitude simpler by generating a stateless IR, as opposed to
 generating a stateful script.


 While it is a refactor of the entire toolchain, it is something that could
 be done incrementally, with the existing parts functioning normally.

 I believe CMake is an invaluable tool, but it could do far better. 0/10
 CMake users I’ve met say they are “happy” CMake users. The learning curve is
 steep, and the skills gained are not reusable. CMake could gain even greater
 momentum (not by ditching, but) by offering alternate input languages with
 entities (classes, functions, macros, etc.) that feel natural in the given
 context.

 Initial feedback in my vicinity was favorable, even those with zealous CMake
 opposition aggreed this were something awesome to pull off (though they
 expressed their disbelief in Kitware and the community approving such a
 radical change). This mail along with the document only intends to get the
 ball rolling and hopefully manifest in something similar, starting with
 CMake 4.0 perhaps.

 Eagerly await the rolling ball.

 With all due respect,
 Máté

 --

 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] CMake inconsistent with python libraries

2015-07-28 Thread Matt McCormick
Nils Guillermin nils.guillermin@... writes:

 
 Hello everyone,
 My first time posting to this mailing list so forgive me if I'm off base. 
I first wanted to make sure this was a new problem before I posted a bug 
report, as the cmake website asks. 

Welcome to the lists!


I was trying to install gr-air-modes (https://github.com/bistromath/gr-air-
modes/) and I ran into an issue where CMake straight up says two things at 
once and the eventual result is a fatal Python error due to mismatched 
libraries.
 
 First, the cmake command I use is a plain `cmake ../`.
 
 The relevant part of the build output is-- Found PythonLibs: 
/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/l
ib/libpython2.7.dylib (found version 2.7.6) -- Found PythonLibs: 
/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/l
ib/libpython2.7.dylib (found suitable version 2.7.6, minimum required is 
2)
 
 As far as I understand, it found python 2.7.10 files, but for some reason 
is calling them version 2.7.6. I'd expect it to say found suitable version 
'2.7.10' but perhaps I'm wrong.
 After this it builds fine, but when run immediately crashes with a Fatal 
Python Error, and the Error Reporter that comes up makes it clear that its a 
problem of mismatched libraries. I can post that if anyone needs.

There are some known issues with Homebrew:

  http://www.cmake.org/Bug/view.php?id=14809

But it would be worthwhile trying CMake Git master:

  http://www.cmake.org/Wiki/CMake/Git

Hope this helps,
Matt




-- 

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, next, updated. v3.3.0-rc3-807-ga1c8ac3

2015-07-03 Thread Matt McCormick
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  a1c8ac3911b6af3f34a634ff9c7cb3657abdc228 (commit)
   via  0925f5f17364ed7e98349aebdb616e68efc392c6 (commit)
  from  5d3276f7d3a1b99fc985d0fa587987c1271fc407 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a1c8ac3911b6af3f34a634ff9c7cb3657abdc228
commit a1c8ac3911b6af3f34a634ff9c7cb3657abdc228
Merge: 5d3276f 0925f5f
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Fri Jul 3 05:34:46 2015 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Fri Jul 3 05:34:46 2015 -0400

Merge topic 'osx-pythondotorg-libs' into next

0925f5f1 FindPythonLibs: Find the python.org libraries.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0925f5f17364ed7e98349aebdb616e68efc392c6
commit 0925f5f17364ed7e98349aebdb616e68efc392c6
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Jul 2 11:21:08 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Thu Jul 2 13:09:34 2015 -0400

FindPythonLibs: Find the python.org libraries.

Per issue #0014809, this addresses the test case

  cmake_minimum_required(VERSION 2.8)
  set(Python_ADDITIONAL_VERSIONS 3.4 3.5 3.6)
  find_package(PythonLibs 3 REQUIRED)

with a Python 3.4.x .pkg installed from python.org on OSX.

Temporarily set CMAKE_PREFIX_PATH to LAST to avoid finding the system 
Python.h
prematurely.

Add directories inside the frameworks to the search list for the library
as is done for the header.

diff --git a/Modules/FindPythonLibs.cmake b/Modules/FindPythonLibs.cmake
index cc875ad..b80d3ce 100644
--- a/Modules/FindPythonLibs.cmake
+++ b/Modules/FindPythonLibs.cmake
@@ -53,6 +53,15 @@ include(${CMAKE_CURRENT_LIST_DIR}/CMakeFindFrameworks.cmake)
 # Search for the python framework on Apple.
 CMAKE_FIND_FRAMEWORKS(Python)
 
+# Save CMAKE_FIND_FRAMEWORK
+if(DEFINED CMAKE_FIND_FRAMEWORK)
+  set(_PythonLibs_CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK})
+else()
+  unset(_PythonLibs_CMAKE_FIND_FRAMEWORK)
+endif()
+# To avoid picking up the system Python.h pre-maturely.
+set(CMAKE_FIND_FRAMEWORK LAST)
+
 set(_PYTHON1_VERSIONS 1.6 1.5)
 set(_PYTHON2_VERSIONS 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0)
 set(_PYTHON3_VERSIONS 3.4 3.3 3.2 3.1 3.0)
@@ -111,14 +120,22 @@ foreach(_CURRENT_VERSION ${_Python_VERSIONS})
   )
   endif()
 
+  set(PYTHON_FRAMEWORK_LIBRARIES)
+  if(Python_FRAMEWORKS AND NOT PYTHON_LIBRARY)
+foreach(dir ${Python_FRAMEWORKS})
+  list(APPEND PYTHON_FRAMEWORK_LIBRARIES
+   ${dir}/Versions/${_CURRENT_VERSION}/lib)
+endforeach()
+  endif()
   find_library(PYTHON_LIBRARY
 NAMES
-python${_CURRENT_VERSION_NO_DOTS}
-python${_CURRENT_VERSION}mu
-python${_CURRENT_VERSION}m
-python${_CURRENT_VERSION}u
-python${_CURRENT_VERSION}
+  python${_CURRENT_VERSION_NO_DOTS}
+  python${_CURRENT_VERSION}mu
+  python${_CURRENT_VERSION}m
+  python${_CURRENT_VERSION}u
+  python${_CURRENT_VERSION}
 PATHS
+  ${PYTHON_FRAMEWORK_LIBRARIES}
   
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
   
[HKEY_CURRENT_USER\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
 # Avoid finding the .dll in the PATH.  We want the .lib.
@@ -143,8 +160,8 @@ foreach(_CURRENT_VERSION ${_Python_VERSIONS})
   set(PYTHON_FRAMEWORK_INCLUDES)
   if(Python_FRAMEWORKS AND NOT PYTHON_INCLUDE_DIR)
 foreach(dir ${Python_FRAMEWORKS})
-  set(PYTHON_FRAMEWORK_INCLUDES ${PYTHON_FRAMEWORK_INCLUDES}
-${dir}/Versions/${_CURRENT_VERSION}/include/python${_CURRENT_VERSION})
+  list(APPEND PYTHON_FRAMEWORK_INCLUDES
+   
${dir}/Versions/${_CURRENT_VERSION}/include/python${_CURRENT_VERSION})
 endforeach()
   endif()
 
@@ -201,6 +218,14 @@ SELECT_LIBRARY_CONFIGURATIONS(PYTHON)
 # for historical reasons.
 unset(PYTHON_FOUND)
 
+# Restore CMAKE_FIND_FRAMEWORK
+if(DEFINED _PythonLibs_CMAKE_FIND_FRAMEWORK)
+  set(CMAKE_FIND_FRAMEWORK ${_PythonLibs_CMAKE_FIND_FRAMEWORK})
+  unset(_PythonLibs_CMAKE_FIND_FRAMEWORK)
+else()
+  unset(CMAKE_FIND_FRAMEWORK)
+endif()
+
 include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibs
   REQUIRED_VARS PYTHON_LIBRARIES 
PYTHON_INCLUDE_DIRS

---

Summary of changes:
 Modules/FindPythonLibs.cmake |   39 ---
 1 file changed, 32 insertions(+), 7 deletions

[Cmake-commits] CMake branch, next, updated. v3.2.1-1544-g8c53953

2015-04-07 Thread Matt McCormick
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  8c5395350cd986450525b06ca9983325d5e19158 (commit)
   via  e89194cfbbad6bd67355764aeb465cbc2ffd7970 (commit)
   via  95a6495f689e74993311533f877632071e4ab97a (commit)
   via  0fac937bc25f6b6f0860e714ae9175f62e5fd30d (commit)
  from  aa9c5b862759f694dff2afb3e45cfe74e8c6d034 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c5395350cd986450525b06ca9983325d5e19158
commit 8c5395350cd986450525b06ca9983325d5e19158
Merge: aa9c5b8 e89194c
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Tue Apr 7 08:56:29 2015 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Apr 7 08:56:29 2015 -0400

Merge topic 'emulator-property' into next

e89194cf TestGenerator: Add CROSSCOMPILING_EMULATOR support.
95a6495f try_run: Use CMAKE_CROSSCOMPILING_EMULATOR.
0fac937b Properties: Add CROSSCOMPILING_EMULATOR target property.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e89194cfbbad6bd67355764aeb465cbc2ffd7970
commit e89194cfbbad6bd67355764aeb465cbc2ffd7970
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Sat Mar 28 22:05:35 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Tue Apr 7 00:53:07 2015 -0400

TestGenerator: Add CROSSCOMPILING_EMULATOR support.

Prefix test commands with the CROSSCOMPILING_EMULATOR property
for target executables. This allows test suites to be run on the host
when crosscompiling.

diff --git a/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst 
b/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
index 2b5fd4d..3ef8e03 100644
--- a/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
+++ b/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
@@ -1,4 +1,6 @@
 CROSSCOMPILING_EMULATOR
 ---
 
-Use the given emulator to run executables created when crosscompiling.
+Use the given emulator to run executables created when crosscompiling.  This
+command will be added as a prefix to :command:`add_test` test commands for
+built target system executables.
diff --git a/Source/cmTestGenerator.cxx b/Source/cmTestGenerator.cxx
index f87a535..add80fa 100644
--- a/Source/cmTestGenerator.cxx
+++ b/Source/cmTestGenerator.cxx
@@ -82,11 +82,31 @@ void cmTestGenerator::GenerateScriptForConfig(std::ostream 
os,
   // be translated.
   std::string exe = command[0];
   cmMakefile* mf = this-Test-GetMakefile();
+  cmLocalGenerator* lg = mf-GetLocalGenerator();
   cmTarget* target = mf-FindTargetToUse(exe);
   if(target  target-GetType() == cmTarget::EXECUTABLE)
 {
 // Use the target file on disk.
 exe = target-GetFullPath(config);
+
+// Prepend with the emulator when cross compiling if required.
+const char * emulator =
+  target-GetProperty(CROSSCOMPILING_EMULATOR);
+if (emulator != 0)
+  {
+  std::vectorstd::string emulatorWithArgs;
+  cmSystemTools::ExpandListArgument(emulator, emulatorWithArgs);
+  std::string emulatorExe(emulatorWithArgs[0]);
+  cmSystemTools::ConvertToUnixSlashes(emulatorExe);
+  os  lg-EscapeForCMake(emulatorExe)   ;
+  for(std::vectorstd::string::const_iterator ei =
+  emulatorWithArgs.begin()+1;
+  ei != emulatorWithArgs.end();
+  ++ei)
+{
+os  lg-EscapeForCMake(*ei)   ;
+}
+  }
 }
   else
 {
@@ -96,7 +116,6 @@ void cmTestGenerator::GenerateScriptForConfig(std::ostream 
os,
 }
 
   // Generate the command line with full escapes.
-  cmLocalGenerator* lg = mf-GetLocalGenerator();
   os  lg-EscapeForCMake(exe);
   for(std::vectorstd::string::const_iterator ci = command.begin()+1;
   ci != command.end(); ++ci)
diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake 
b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake
new file mode 100644
index 000..1ed8dd9
--- /dev/null
+++ b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake
@@ -0,0 +1,12 @@
+set(testfile ${RunCMake_TEST_BINARY_DIR}/CTestTestfile.cmake)
+if(EXISTS ${testfile})
+  file(READ ${testfile} testfile_contents)
+else()
+  message(FATAL_ERROR Could not find expected CTestTestfile.cmake.)
+endif()
+if(testfile_contents MATCHES add_test[(]DoesNotUseEmulator [^ 
]+pseudo_emulator.+$)
+  message(SEND_ERROR Used emulator when it should not be used.)
+endif()
+if(NOT testfile_contents MATCHES add_test[(]UsesEmulator [^ 
]+pseudo_emulator.+$)
+  message(SEND_ERROR Did not use emulator when it should be used.)
+endif()
diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake 
b/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake
new

Re: [cmake-developers] A CMAKE_EMULATOR variable

2015-04-07 Thread Matt McCormick
On Mon, Apr 6, 2015 at 10:24 AM, Brad King brad.k...@kitware.com wrote:
 On 04/05/2015 11:07 PM, Matt McCormick wrote:
 In each place that you ExpandListArgument to get the emulator
 command and arguments and write them out before an executable
 name, you need to be sure to make the proper call to escape
 each argument.  In each case the code just below your hunk
 does this for the test arguments.

 Good catch.  Fixed.

 Thanks.  In try_run:

 +finalCommand +=  ;
 +for (std::vectorstd::string::const_iterator ei =
 + emulatorWithArgs.begin()+1;
 + ei != emulatorWithArgs.end(); ++ei)
 +  {
 +  finalCommand += *ei;
 +  finalCommand +=  ;
 +  }

 This still doesn't quote the arguments to the emulator.
 It needs to be quoted enough to get through the command line
 parsing that try_run does later.  Or, things need to be
 refactored to avoid extra quoting/parsing steps.

Missed that one. Quotes have been added.

 The Tests/RunCMake/pseudo_emulator.cxx tool must be able to
 compile with any of the compilers we test, not just those that
 host the build of CMake.  It will be more portable to use a
 .c file with stdio.h and printf.

 The pseudo_emulator still needs to be converted to C, please.

Done.

Thanks for the reviews. Merged to next.

Thanks,
Matt
-- 

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.2.1-1566-g72847dd

2015-04-07 Thread Matt McCormick
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  72847dde8e43bb6417d802bf4c5dbff62390b574 (commit)
   via  9688d98c90d1c496891e8e51caa7e741d5901cb7 (commit)
   via  0d9099a42bde7ba464d0001d6c0b33c3c3d35bec (commit)
   via  579c4bec6e2352448f78d9333f7382ff34a08e5a (commit)
  from  0fd9668fc749941a67e3aadd1cf2444f764e5742 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=72847dde8e43bb6417d802bf4c5dbff62390b574
commit 72847dde8e43bb6417d802bf4c5dbff62390b574
Merge: 0fd9668 9688d98
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Tue Apr 7 13:51:00 2015 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Apr 7 13:51:00 2015 -0400

Merge topic 'emulator-property' into next

9688d98c TestGenerator: Add CROSSCOMPILING_EMULATOR support.
0d9099a4 try_run: Use CMAKE_CROSSCOMPILING_EMULATOR.
579c4bec Properties: Add CROSSCOMPILING_EMULATOR target property.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9688d98c90d1c496891e8e51caa7e741d5901cb7
commit 9688d98c90d1c496891e8e51caa7e741d5901cb7
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Sat Mar 28 22:05:35 2015 -0400
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Tue Apr 7 13:33:34 2015 -0400

TestGenerator: Add CROSSCOMPILING_EMULATOR support.

Prefix test commands with the CROSSCOMPILING_EMULATOR property
for target executables. This allows test suites to be run on the host
when crosscompiling.

diff --git a/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst 
b/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
index 2b5fd4d..3ef8e03 100644
--- a/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
+++ b/Help/prop_tgt/CROSSCOMPILING_EMULATOR.rst
@@ -1,4 +1,6 @@
 CROSSCOMPILING_EMULATOR
 ---
 
-Use the given emulator to run executables created when crosscompiling.
+Use the given emulator to run executables created when crosscompiling.  This
+command will be added as a prefix to :command:`add_test` test commands for
+built target system executables.
diff --git a/Source/cmTestGenerator.cxx b/Source/cmTestGenerator.cxx
index f87a535..add80fa 100644
--- a/Source/cmTestGenerator.cxx
+++ b/Source/cmTestGenerator.cxx
@@ -82,11 +82,31 @@ void cmTestGenerator::GenerateScriptForConfig(std::ostream 
os,
   // be translated.
   std::string exe = command[0];
   cmMakefile* mf = this-Test-GetMakefile();
+  cmLocalGenerator* lg = mf-GetLocalGenerator();
   cmTarget* target = mf-FindTargetToUse(exe);
   if(target  target-GetType() == cmTarget::EXECUTABLE)
 {
 // Use the target file on disk.
 exe = target-GetFullPath(config);
+
+// Prepend with the emulator when cross compiling if required.
+const char * emulator =
+  target-GetProperty(CROSSCOMPILING_EMULATOR);
+if (emulator != 0)
+  {
+  std::vectorstd::string emulatorWithArgs;
+  cmSystemTools::ExpandListArgument(emulator, emulatorWithArgs);
+  std::string emulatorExe(emulatorWithArgs[0]);
+  cmSystemTools::ConvertToUnixSlashes(emulatorExe);
+  os  lg-EscapeForCMake(emulatorExe)   ;
+  for(std::vectorstd::string::const_iterator ei =
+  emulatorWithArgs.begin()+1;
+  ei != emulatorWithArgs.end();
+  ++ei)
+{
+os  lg-EscapeForCMake(*ei)   ;
+}
+  }
 }
   else
 {
@@ -96,7 +116,6 @@ void cmTestGenerator::GenerateScriptForConfig(std::ostream 
os,
 }
 
   // Generate the command line with full escapes.
-  cmLocalGenerator* lg = mf-GetLocalGenerator();
   os  lg-EscapeForCMake(exe);
   for(std::vectorstd::string::const_iterator ci = command.begin()+1;
   ci != command.end(); ++ci)
diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake 
b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake
new file mode 100644
index 000..0aae06c
--- /dev/null
+++ b/Tests/RunCMake/CrosscompilingEmulator/AddTest-check.cmake
@@ -0,0 +1,12 @@
+set(testfile ${RunCMake_TEST_BINARY_DIR}/CTestTestfile.cmake)
+if(EXISTS ${testfile})
+  file(READ ${testfile} testfile_contents)
+else()
+  message(FATAL_ERROR Could not find expected CTestTestfile.cmake.)
+endif()
+if(testfile_contents MATCHES add_test[(]DoesNotUseEmulator 
^(pseudo_emulator)+$)
+  message(SEND_ERROR Used emulator when it should not be used.)
+endif()
+if(NOT testfile_contents MATCHES add_test[(]UsesEmulator 
.+pseudo_emulator.+$)
+  message(SEND_ERROR Did not use emulator when it should be used.)
+endif()
diff --git a/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake 
b/Tests/RunCMake/CrosscompilingEmulator/AddTest.cmake
new file

Re: [cmake-developers] A CMAKE_EMULATOR variable

2015-04-05 Thread Matt McCormick
 In each place that you ExpandListArgument to get the emulator
 command and arguments and write them out before an executable
 name, you need to be sure to make the proper call to escape
 each argument.  In each case the code just below your hunk
 does this for the test arguments.

Good catch.  Fixed.


 The Tests/RunCMake/pseudo_emulator.cxx tool must be able to
 compile with any of the compilers we test, not just those that
 host the build of CMake.  It will be more portable to use a
 .c file with stdio.h and printf.  Also, please make it print
 out each argument in quotes so one could match expected output
 in the future.

Done. If I recall correctly, there are not other tests that try to
verify try_run output, so I did not open that can of worms.


 +RunCMake_TEST:STRING=AddTest

 Why is this needed in InitialCache.cmake?

Seems like leftover cruft.  Removed.


Thanks for the review. The new branch has been force pushed to the
stage as emulator-property.

Thanks,
Matt
-- 

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] A CMAKE_EMULATOR variable

2015-03-29 Thread Matt McCormick
Hi Brad,

On Thu, Mar 5, 2015 at 9:51 AM, Brad King brad.k...@kitware.com wrote:
 On 03/04/2015 08:15 PM, Matt McCormick wrote:
 On Wed, Mar 4, 2015 at 12:00 PM, Brad King wrote:
 I do not think a global setting like this makes sense.  We cannot
 unconditionally add the cross-compiling target launcher in front of
 all tests.  Some tests may be running host tools.  See below.

 This set of patches does not globally and unconditionally add a
 launcher in front of all tests. It uses build system knowledge to add
 the emulator commands in front of target executables only.

 Good, but it may take more work.  I see the key logic here:

cmTarget* target = mf-FindTargetToUse(exe);
if(target  target-GetType() == cmTarget::EXECUTABLE)
  {
  // Use the target file on disk.
  exe = target-GetFullPath(config);
 +
 +// Prepend with the emulator when cross compiling if required.

 This if() condition is not sufficient to know that the executable
 is for the target architecture.  The cmTarget could be IMPORTED, in
 which case we don't know whether it references a host tool or one
 built for the target architecture.  Some kind of target property
 may be needed to say use the emulator to run me more explicitly.
 Once we have such a property, then it might as well refer to the
 tool to be used, e.g.

   add_executable(myexe ...)
   set_property(TARGET myexe PROPERTY CROSSCOMPILING_EMULATOR ${emulator})

 The point about the overloaded meaning of targets is a good one.  I
 think the best name is then CMAKE_CROSSCOMPILING_EMULATOR.

 Sounds good.  This variable could be used to initialize the above
 property on target creation (see SetPropertyDefault calls).  In
 try_run we simply need to pass the value into the inner project
 and its executable will pick it up too.

That sounds cool. I have implemented it in the emulator-property branch [1].

The variable name that defines the default for the
CROSSCOMPILING_EMULATOR property
is CMAKE_CROSSCOMPILING_EMULATOR.

Thanks,
Matt

[1] 
http://www.cmake.org/gitweb?p=stage/cmake.git;a=shortlog;h=refs/heads/emulator-property
-- 

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] A CMAKE_EMULATOR variable

2015-03-04 Thread Matt McCormick
Yes:

 it emulates the target system when cross-compiling, and
 executables built for the target system can be run when passed to the
 emulator.

is exactly correct.

Perhaps the name CMAKE_TARGET_SYSTEM_EMULATOR is necessary to resolve
the ambiguity.  Or...

Thanks,
Matt

On Wed, Mar 4, 2015 at 6:49 AM, David Cole dlrd...@aol.com wrote:
 What does CMAKE_EMULATOR emulate?

 From its name, it sounds like it emulates CMake. But from your description,
 I'm thinking that doesn't make sense... Because you actually run CMake and
 pass it CMAKE_EMULATOR. So it must be emulating something else while running
 CMake?

 I'm guessing it emulates the target system when cross-compiling, and
 executables built for the target system can be run when passed to the
 emulator? Is that right?


 D



 On Wednesday, March 4, 2015, Matt McCormick matt.mccorm...@kitware.com
 wrote:

 Hi,

 I have pushed to stage [1] support for a CMAKE_EMULATOR variable to
 help when cross-compiling.  The goal is to improve cross compiling
 with CMake by making it easier to build and run tests.  In principle,
 the commands

   cmake -DCMAKE_TOOLCHAIN_FILE=/path/to/toolchain.cmake
 -DCMAKE_EMULATOR=/path/to/emulator ~/src/project
   cmake -D Experimental

 are all that is needed generate a dashboard report, complete with test
 results.  This should inch C/C++ closer to being the write once, run
 anywhere languages :-).

 The emulator is used to run try_run results, which avoids manual
 population of TryRunResults.cmake.  This can be a painful,
 time-consuming process otherwise.

 It is also used to run tests on executables that are built for the
 target system.  Without this approach, it is difficult to know which
 tests should be executed on the target system.  Tests are often passed
 absolute paths to input on the host system.  The use of an emulator is
 a way to avoid complexities and transfer overhead related to
 reproducing the host filesystem on the target filesystem to run the
 tests.


 With some fixes to ITK [2], this was used to build and test for four
 cases of interest.

 The emulator approach works best with MinGW and WINE to build and test
 on Linux for Windows [3].

 The qemu-arm emulator provided by QEMU User Mode can be used with the
 Android NDK toolchain [4]. A gotcha is that Android tries to be fancy
 and uses its own dynamic loader.  To get around this, I tested with
 completely static executables.  Also, QEMU User Mode does not
 currently support multi-threading well, so tests were run
 single-threaded. An alternative approach may be to use an emulator
 script that is a wrapper around adb.

 The qemu-arm emulator was used again with the Raspberry Pi toolchain
 [5].  A symbolic link was created in the expected location for
 ld-linux-armhf.so.3, and dynamic loading works.  To run the tests,
 LD_LIBRARY_PATH was populated with the path to libc and libstdcxx.

 One of the most interesting combinations is the Emscripten toolchain
 with NodeJS as the emulator [6]. There are some WIP workarounds to get
 Emscripten to configure cleanly for scientific libraries [7], and code
 had to be injected into the test driver to mount local filesystems for
 node, but this works surprisingly well.


 Testing and feedback are appreciated.

 Thanks,
 Matt


 [1]
 http://www.cmake.org/gitweb?p=stage/cmake.git;a=shortlog;h=refs/heads/emulator

 [2] https://github.com/thewtex/ITK/tree/cmake-emulator

 [3] https://open.cdash.org/buildSummary.php?buildid=3694578

 [4] https://open.cdash.org/buildSummary.php?buildid=3694810

 [5] https://open.cdash.org/buildSummary.php?buildid=3694810

 [6] https://open.cdash.org/buildSummary.php?buildid=3705525

 [7] https://github.com/thewtex/emscripten/tree/test-big-endian
 --

 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

Re: [cmake-developers] A CMAKE_EMULATOR variable

2015-03-04 Thread Matt McCormick
On Wed, Mar 4, 2015 at 12:00 PM, Brad King brad.k...@kitware.com wrote:

 However,
 I do not think a global setting like this makes sense.  We cannot
 unconditionally add the cross-compiling target launcher in front of
 all tests.  Some tests may be running host tools.  See below.

This set of patches does not globally and unconditionally add a
launcher in front of all tests. It uses build system knowledge to add
the emulator commands in front of target executables only. Test with
host executables run with the host command. This is why it is
advantageous to use the emulator in this way.


 On 03/04/2015 11:40 AM, Florent Castelli wrote:
 not just about an emulator but a wrapper

 Wrapping or launching almost always has to be configurable on a
 per-test basis.  Any kind of global setting will always need a local
 setting to override it.  That raises the question of which one should
 take precedence.  There are too many possible semantics here for
 standard wrapper interfaces to be defined cleanly IMO.

Wrappers are difficult and take tweaking, but wrappers are a diversion
here -- this is intended to be used with emulators or programs that
act very close to emulators.  It has been shown to work with ITK, a
very large and complex project, and with a number of diverse
cross-compiling toolchains and targets.  No per-test tweaks were made
in ITK's over 2500 tests.


The point about the overloaded meaning of targets is a good one.  I
think the best name is then CMAKE_CROSSCOMPILING_EMULATOR.


Thanks,
Matt
-- 

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] A CMAKE_EMULATOR variable

2015-03-03 Thread Matt McCormick
Hi,

I have pushed to stage [1] support for a CMAKE_EMULATOR variable to
help when cross-compiling.  The goal is to improve cross compiling
with CMake by making it easier to build and run tests.  In principle,
the commands

  cmake -DCMAKE_TOOLCHAIN_FILE=/path/to/toolchain.cmake
-DCMAKE_EMULATOR=/path/to/emulator ~/src/project
  cmake -D Experimental

are all that is needed generate a dashboard report, complete with test
results.  This should inch C/C++ closer to being the write once, run
anywhere languages :-).

The emulator is used to run try_run results, which avoids manual
population of TryRunResults.cmake.  This can be a painful,
time-consuming process otherwise.

It is also used to run tests on executables that are built for the
target system.  Without this approach, it is difficult to know which
tests should be executed on the target system.  Tests are often passed
absolute paths to input on the host system.  The use of an emulator is
a way to avoid complexities and transfer overhead related to
reproducing the host filesystem on the target filesystem to run the
tests.


With some fixes to ITK [2], this was used to build and test for four
cases of interest.

The emulator approach works best with MinGW and WINE to build and test
on Linux for Windows [3].

The qemu-arm emulator provided by QEMU User Mode can be used with the
Android NDK toolchain [4]. A gotcha is that Android tries to be fancy
and uses its own dynamic loader.  To get around this, I tested with
completely static executables.  Also, QEMU User Mode does not
currently support multi-threading well, so tests were run
single-threaded. An alternative approach may be to use an emulator
script that is a wrapper around adb.

The qemu-arm emulator was used again with the Raspberry Pi toolchain
[5].  A symbolic link was created in the expected location for
ld-linux-armhf.so.3, and dynamic loading works.  To run the tests,
LD_LIBRARY_PATH was populated with the path to libc and libstdcxx.

One of the most interesting combinations is the Emscripten toolchain
with NodeJS as the emulator [6]. There are some WIP workarounds to get
Emscripten to configure cleanly for scientific libraries [7], and code
had to be injected into the test driver to mount local filesystems for
node, but this works surprisingly well.


Testing and feedback are appreciated.

Thanks,
Matt


[1] 
http://www.cmake.org/gitweb?p=stage/cmake.git;a=shortlog;h=refs/heads/emulator

[2] https://github.com/thewtex/ITK/tree/cmake-emulator

[3] https://open.cdash.org/buildSummary.php?buildid=3694578

[4] https://open.cdash.org/buildSummary.php?buildid=3694810

[5] https://open.cdash.org/buildSummary.php?buildid=3694810

[6] https://open.cdash.org/buildSummary.php?buildid=3705525

[7] https://github.com/thewtex/emscripten/tree/test-big-endian
-- 

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.1.1-2278-ga80a6fc

2015-01-23 Thread Matt McCormick
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  a80a6fc857c5f77840c27caa89b499e22518f68d (commit)
   via  fe6b4fad790428480b0b7f69b77da12ec795af8d (commit)
  from  e00d75e25aaa93c38b59df54163ba468adac1c8a (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a80a6fc857c5f77840c27caa89b499e22518f68d
commit a80a6fc857c5f77840c27caa89b499e22518f68d
Merge: e00d75e fe6b4fa
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Fri Jan 23 10:40:18 2015 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Fri Jan 23 10:40:18 2015 -0500

Merge topic 'try-run-link-libraries' into next

fe6b4fad try_run: Do not expect ImportExport runs to succeed.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fe6b4fad790428480b0b7f69b77da12ec795af8d
commit fe6b4fad790428480b0b7f69b77da12ec795af8d
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Fri Jan 23 10:39:27 2015 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Fri Jan 23 10:39:27 2015 -0500

try_run: Do not expect ImportExport runs to succeed.

Some exotic systems have trouble finding the mock system library at execute
time.

diff --git a/Tests/ExportImport/Import/A/CMakeLists.txt 
b/Tests/ExportImport/Import/A/CMakeLists.txt
index d64e917..358776b 100644
--- a/Tests/ExportImport/Import/A/CMakeLists.txt
+++ b/Tests/ExportImport/Import/A/CMakeLists.txt
@@ -321,8 +321,8 @@ if (((CMAKE_C_COMPILER_ID STREQUAL GNU AND 
CMAKE_C_COMPILER_VERSION VERSION_GREA
 LINK_LIBRARIES exp_systemlib
 OUTPUT_VARIABLE OUTPUT
 )
-  if(NOT EXP_COMPILE_VAR OR NOT EXP_RUN_VAR EQUAL 0)
-message(SEND_ERROR try_run failed, but it was expected to succeed 
${OUTPUT}.)
+  if(NOT EXP_COMPILE_VAR)
+message(SEND_ERROR try_run compile failed, but it was expected to 
succeed ${OUTPUT}.)
   endif()
 endif()
 
@@ -352,8 +352,8 @@ if (((CMAKE_C_COMPILER_ID STREQUAL GNU AND 
CMAKE_C_COMPILER_VERSION VERSION_GREA
 LINK_LIBRARIES bld_systemlib
 OUTPUT_VARIABLE OUTPUT
 )
-  if(NOT BLD_COMPILE_VAR OR NOT BLD_RUN_VAR EQUAL 0)
-message(SEND_ERROR try_run failed, but it was expected to succeed 
${OUTPUT}.)
+  if(NOT BLD_COMPILE_VAR)
+message(SEND_ERROR try_run compile failed, but it was expected to 
succeed ${OUTPUT}.)
   endif()
 endif()
   endif()

---

Summary of changes:
 Tests/ExportImport/Import/A/CMakeLists.txt |8 
 1 file 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.1.1-2244-gda9ed6b

2015-01-22 Thread Matt McCormick
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  da9ed6be3896a3bdaed9cddfbf2fccc944992451 (commit)
   via  52a4fe75063d77f2b79ffd9bb93b1e48cd7af3dd (commit)
  from  2d65931be441528733687bb62f2d111eee659e27 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=da9ed6be3896a3bdaed9cddfbf2fccc944992451
commit da9ed6be3896a3bdaed9cddfbf2fccc944992451
Merge: 2d65931 52a4fe7
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Jan 22 14:00:16 2015 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Jan 22 14:00:16 2015 -0500

Merge topic 'if-test' into next

52a4fe75 Tests: Move if command TestName test to RunCMake group.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=52a4fe75063d77f2b79ffd9bb93b1e48cd7af3dd
commit 52a4fe75063d77f2b79ffd9bb93b1e48cd7af3dd
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Jan 22 13:58:53 2015 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Thu Jan 22 13:58:53 2015 -0500

Tests: Move if command TestName test to RunCMake group.

The RunCMake group is preferred over the Complex test.

diff --git a/Tests/Complex/Executable/CMakeLists.txt 
b/Tests/Complex/Executable/CMakeLists.txt
index 102da6b..bbd5878 100644
--- a/Tests/Complex/Executable/CMakeLists.txt
+++ b/Tests/Complex/Executable/CMakeLists.txt
@@ -21,19 +21,6 @@ if(TARGET NotATarget)
   message(FATAL_ERROR if(TARGET NotATarget) returned true!)
 endif()
 
-# Test if(TEST...
-add_test(NAME TestThatExists COMMAND ${CMAKE_COMMAND} -E echo A CMake Test)
-if(TEST TestThatExists)
-  message(STATUS if(TestThatExists) is true)
-else()
-  message(FATAL_ERROR if(TestThatExists is false)
-endif()
-if(TEST TestThatDoesNotExist)
-  message(FATAL_ERROR if(TestThatDoesNotExist is true)
-else()
-  message(STATUS if(TestThatDoesNotExist) is false)
-endif()
-
 # Use LINK_LIBRARIES instead of TARGET_LINK_LIBRARIES to
 set(COMPLEX_LIBS 
CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
 link_libraries(${COMPLEX_LIBS})
diff --git a/Tests/RunCMake/if/RunCMakeTest.cmake 
b/Tests/RunCMake/if/RunCMakeTest.cmake
index 6b6b74b..9db79e9 100644
--- a/Tests/RunCMake/if/RunCMakeTest.cmake
+++ b/Tests/RunCMake/if/RunCMakeTest.cmake
@@ -2,3 +2,6 @@ include(RunCMake)
 
 run_cmake(IsDirectory)
 run_cmake(IsDirectoryLong)
+
+run_cmake(TestNameThatExists)
+run_cmake(TestNameThatDoesNotExist)
diff --git a/Tests/RunCMake/if/TestNameThatDoesNotExist-stdout.txt 
b/Tests/RunCMake/if/TestNameThatDoesNotExist-stdout.txt
new file mode 100644
index 000..8874ca8
--- /dev/null
+++ b/Tests/RunCMake/if/TestNameThatDoesNotExist-stdout.txt
@@ -0,0 +1 @@
+TestThatDoesNotExist is false
diff --git a/Tests/RunCMake/if/TestNameThatDoesNotExist.cmake 
b/Tests/RunCMake/if/TestNameThatDoesNotExist.cmake
new file mode 100644
index 000..68ad6e3
--- /dev/null
+++ b/Tests/RunCMake/if/TestNameThatDoesNotExist.cmake
@@ -0,0 +1,5 @@
+if(TEST TestThatDoesNotExist)
+  message(FATAL_ERROR if TestThatDoesNotExist is true)
+else()
+  message(STATUS if TestThatDoesNotExist is false)
+endif()
diff --git a/Tests/RunCMake/if/TestNameThatExists-stdout.txt 
b/Tests/RunCMake/if/TestNameThatExists-stdout.txt
new file mode 100644
index 000..54911bc
--- /dev/null
+++ b/Tests/RunCMake/if/TestNameThatExists-stdout.txt
@@ -0,0 +1 @@
+TestThatExists is true
diff --git a/Tests/RunCMake/if/TestNameThatExists.cmake 
b/Tests/RunCMake/if/TestNameThatExists.cmake
new file mode 100644
index 000..e03e148
--- /dev/null
+++ b/Tests/RunCMake/if/TestNameThatExists.cmake
@@ -0,0 +1,6 @@
+add_test(NAME TestThatExists COMMAND ${CMAKE_COMMAND} -E echo A CMake Test)
+if(TEST TestThatExists)
+  message(STATUS if TestThatExists is true)
+else()
+  message(FATAL_ERROR if TestThatExists is false)
+endif()

---

Summary of changes:
 Tests/Complex/Executable/CMakeLists.txt   |   13 -
 Tests/RunCMake/if/RunCMakeTest.cmake  |3 +++
 Tests/RunCMake/if/TestNameThatDoesNotExist-stdout.txt |1 +
 Tests/RunCMake/if/TestNameThatDoesNotExist.cmake  |5 +
 Tests/RunCMake/if/TestNameThatExists-stdout.txt   |1 +
 Tests/RunCMake/if/TestNameThatExists.cmake|6 ++
 6 files changed, 16 insertions(+), 13 deletions(-)
 create mode 100644 Tests/RunCMake/if/TestNameThatDoesNotExist-stdout.txt
 create mode 100644 Tests/RunCMake/if/TestNameThatDoesNotExist.cmake
 create mode 100644 Tests/RunCMake/if/TestNameThatExists-stdout.txt
 create mode 100644 Tests/RunCMake

[Cmake-commits] CMake branch, next, updated. v3.1.0-2304-g1c17514

2015-01-21 Thread Matt McCormick
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  1c175147e32341d5a9bf4c54fc8ea7cd9831c31c (commit)
   via  c33cbbd852f384883a56a027c6e7b96642559db0 (commit)
  from  b6aa7393f5501c658afc1c83001fcecec7a86e7a (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1c175147e32341d5a9bf4c54fc8ea7cd9831c31c
commit 1c175147e32341d5a9bf4c54fc8ea7cd9831c31c
Merge: b6aa739 c33cbbd
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 21 22:50:29 2015 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Jan 21 22:50:29 2015 -0500

Merge topic 'try-run-link-libraries' into next

c33cbbd8 try_run: Add support for LINK_LIBRARIES option.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c33cbbd852f384883a56a027c6e7b96642559db0
commit c33cbbd852f384883a56a027c6e7b96642559db0
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Jan 1 22:30:08 2015 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Mon Jan 5 12:41:56 2015 -0500

try_run: Add support for LINK_LIBRARIES option.

Most functionality is already implemented in 
Source/cmCoreTryCompile.{h,cxx}.
Document and improve argument parsing.

This functionality is already being used by a number of modules, like
CheckCSourceCompiles.cmake, but it is not documented.

diff --git a/Help/command/try_run.rst b/Help/command/try_run.rst
index 9a17ad9..66245f6 100644
--- a/Help/command/try_run.rst
+++ b/Help/command/try_run.rst
@@ -6,8 +6,9 @@ Try compiling and then running some code.
 ::
 
   try_run(RUN_RESULT_VAR COMPILE_RESULT_VAR
-  bindir srcfile [CMAKE_FLAGS Flags]
+  bindir srcfile [CMAKE_FLAGS flags]
   [COMPILE_DEFINITIONS flags]
+  [LINK_LIBRARIES libs]
   [COMPILE_OUTPUT_VARIABLE comp]
   [RUN_OUTPUT_VARIABLE run]
   [OUTPUT_VARIABLE var]
diff --git a/Source/cmTryRunCommand.cxx b/Source/cmTryRunCommand.cxx
index 8f2deeb..8bd33d0 100644
--- a/Source/cmTryRunCommand.cxx
+++ b/Source/cmTryRunCommand.cxx
@@ -48,7 +48,8 @@ bool cmTryRunCommand
   {
   ++i;
   while (i  argv.size()  argv[i] != COMPILE_DEFINITIONS 
- argv[i] != CMAKE_FLAGS)
+ argv[i] != CMAKE_FLAGS 
+ argv[i] != LINK_LIBRARIES)
 {
 runArgs +=  ;
 runArgs += argv[i];

---

Summary of changes:
 Help/command/try_run.rst   |3 ++-
 Source/cmTryRunCommand.cxx |3 ++-
 2 files changed, 4 insertions(+), 2 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.1.0-2306-g65ebdf1

2015-01-21 Thread Matt McCormick
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  65ebdf17ae3f463dd10862a4f1bec017f2c15cb5 (commit)
   via  ab1f20025d42a781e4d9d0a446089892f121bde2 (commit)
  from  1c175147e32341d5a9bf4c54fc8ea7cd9831c31c (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=65ebdf17ae3f463dd10862a4f1bec017f2c15cb5
commit 65ebdf17ae3f463dd10862a4f1bec017f2c15cb5
Merge: 1c17514 ab1f200
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 21 23:00:15 2015 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Jan 21 23:00:15 2015 -0500

Merge topic 'if-test' into next

ab1f2002 Help: if(TEST) consistent argument name.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ab1f20025d42a781e4d9d0a446089892f121bde2
commit ab1f20025d42a781e4d9d0a446089892f121bde2
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 21 22:58:38 2015 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jan 21 22:58:38 2015 -0500

Help: if(TEST) consistent argument name.

Consistent with other if expression argument names.

diff --git a/Help/command/if.rst b/Help/command/if.rst
index 2caf8d3..93ff6d3 100644
--- a/Help/command/if.rst
+++ b/Help/command/if.rst
@@ -70,7 +70,7 @@ Possible expressions are:
  created by the :command:`add_executable`, :command:`add_library`, or
  :command:`add_custom_target` commands.
 
-``if(TEST test)``
+``if(TEST test-name)``
  True if the given name is an existing test name created by the
  :command:`add_test` command.
 

---

Summary of changes:
 Help/command/if.rst |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.1.0-2302-gb6aa739

2015-01-21 Thread Matt McCormick
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  b6aa7393f5501c658afc1c83001fcecec7a86e7a (commit)
   via  52685ecbafd9f5a59eb88830dbb6121602ea7dc7 (commit)
  from  45049eca97e8931721f4a371e136a012c0473e8d (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b6aa7393f5501c658afc1c83001fcecec7a86e7a
commit b6aa7393f5501c658afc1c83001fcecec7a86e7a
Merge: 45049ec 52685ec
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 21 22:45:21 2015 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Jan 21 22:45:21 2015 -0500

Merge topic 'if-test' into next

52685ecb CMake: if command understands if(TEST TestName)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=52685ecbafd9f5a59eb88830dbb6121602ea7dc7
commit 52685ecbafd9f5a59eb88830dbb6121602ea7dc7
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Mon Dec 29 20:47:48 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Mon Dec 29 21:08:46 2014 -0500

CMake: if command understands if(TEST TestName)

if(TEST TestNameThatExists) will return true if a test with the name
TestNameThatExists has been added with add_test.

The syntax is similar to if(TARGET TargetName).

diff --git a/Help/command/if.rst b/Help/command/if.rst
index 79e5d21..2caf8d3 100644
--- a/Help/command/if.rst
+++ b/Help/command/if.rst
@@ -70,6 +70,10 @@ Possible expressions are:
  created by the :command:`add_executable`, :command:`add_library`, or
  :command:`add_custom_target` commands.
 
+``if(TEST test)``
+ True if the given name is an existing test name created by the
+ :command:`add_test` command.
+
 ``if(EXISTS path-to-file-or-directory)``
  True if the named file or directory exists.  Behavior is well-defined
  only for full paths.
diff --git a/Source/cmConditionEvaluator.cxx b/Source/cmConditionEvaluator.cxx
index aba26de..29a71c7 100644
--- a/Source/cmConditionEvaluator.cxx
+++ b/Source/cmConditionEvaluator.cxx
@@ -507,6 +507,14 @@ bool cmConditionEvaluator::HandleLevel1(cmArgumentList 
newArgs,
   this-Makefile.FindTargetToUse(argP1-GetValue())?true:false,
   reducible, arg, newArgs, argP1, argP2);
 }
+  // does a test exist
+  if (this-IsKeyword(TEST, *arg)  argP1 != newArgs.end())
+{
+const cmTest* haveTest = this-Makefile.GetTest(argP1-c_str());
+this-HandlePredicate(
+  haveTest?true:false,
+  reducible, arg, newArgs, argP1, argP2);
+}
   // is a variable defined
   if (this-IsKeyword(DEFINED, *arg)  argP1  != newArgs.end())
 {
diff --git a/Tests/Complex/Executable/CMakeLists.txt 
b/Tests/Complex/Executable/CMakeLists.txt
index bf23d4a..102da6b 100644
--- a/Tests/Complex/Executable/CMakeLists.txt
+++ b/Tests/Complex/Executable/CMakeLists.txt
@@ -21,7 +21,20 @@ if(TARGET NotATarget)
   message(FATAL_ERROR if(TARGET NotATarget) returned true!)
 endif()
 
-  # Use LINK_LIBRARIES instead of TARGET_LINK_LIBRARIES to
+# Test if(TEST...
+add_test(NAME TestThatExists COMMAND ${CMAKE_COMMAND} -E echo A CMake Test)
+if(TEST TestThatExists)
+  message(STATUS if(TestThatExists) is true)
+else()
+  message(FATAL_ERROR if(TestThatExists is false)
+endif()
+if(TEST TestThatDoesNotExist)
+  message(FATAL_ERROR if(TestThatDoesNotExist is true)
+else()
+  message(STATUS if(TestThatDoesNotExist) is false)
+endif()
+
+# Use LINK_LIBRARIES instead of TARGET_LINK_LIBRARIES to
 set(COMPLEX_LIBS 
CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
 link_libraries(${COMPLEX_LIBS})
 

---

Summary of changes:
 Help/command/if.rst |4 
 Source/cmConditionEvaluator.cxx |8 
 Tests/Complex/Executable/CMakeLists.txt |   15 ++-
 3 files changed, 26 insertions(+), 1 deletion(-)


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


Re: [cmake-developers] [ITK-dev] find_package issues with ITK and VTK (and SlicerExecution Model)

2014-09-30 Thread Matt McCormick
Hi Kent,

On Tue, Sep 30, 2014 at 10:14 AM, Williams, Norman K
norman-k-willi...@uiowa.edu wrote:
 This is a problem that has been cropping up in our projects that use ITK,
 VTK and SlicerExecutionModel.

 You won’t see it UNLESS you turn on the ITKVTK/ITKVtkGlue modules.

 The problem is this: if you find packages in this order:

 find_package(VTK REQUIRED)
 find_package(ITK REQUIRED)

 You can’t real compile anything that needs VTK, because down in the ITK
 deployment stuff, it calls find_package(VTK) like this:
 find_package(VTK COMPONENTS
   vtkCommonCore
   vtkRenderingCore
   vtkRenderingOpenGL
   vtkRenderingFreeType
   vtkInteractionStyle
   vtkIOImage
   vtkImagingSources
   REQUIRED)

 Which blows away the larger list of include directories and libraries that
 the first find_package(VTK REQUIRED) built.

 Even better — or worse —
 Modules/Segmentation/LevelSetsv4Visualization/CMakeLists.txt also include
 find_package(VTK) — so ITK tries to import VTK twice, with different module
 lists.

 It doesn’t even help to reverse the order:
 find_package(ITK REQUIRED)
 find_package(VTK REQUIRED)

 because apparently there’s some hangover from the find_package(VTK) inside
 the ITK CMake deployment files.  The only thing that works is to use
 COMPONENTS, i.e.

 find_package(ITK REQUIRED)
 find_package(VTK COMPONENTS vtkCommonCore vtkRenderingAnnotation … REQUIRED)

 Which seems to trigger a proper re-scan and build of the library/include
 lists.

This was discussed in this thread [1].  There does not seem to be
interest at this time to have mixed COMPONENTS / non-COMPONENTS calls
to find_package.  It is also recommended to use the MODULE option to
find_package.  A newer version of VTK 6 is also required.

 It gets even worse if you use find_package(SlicerExecutionModel) after
 find_package(ITK), for the same reason — SlicerExecutionModel depends on
 ITK, so it clobbers the include/library lists from the first
 find_package(ITK).


A patch was merged a few days ago that might address this issue [2].
Is this behavior still see with current ITK?

Thanks,
Matt


[1] 
http://public.kitware.com/pipermail/vtk-developers/2014-September/015376.html

[2] http://review.source.kitware.com/#/c/16963/
-- 

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.0.0-rc1-525-gdca36fa

2014-03-05 Thread Matt McCormick
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  dca36fada79b68ecc0eb9cb7d8b9fa269e92ff38 (commit)
   via  3b579421ce1709c2599f801e8e8a4e54fc0ad24d (commit)
  from  1405ef800f1f07673b647c0fa46320076ce95fde (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dca36fada79b68ecc0eb9cb7d8b9fa269e92ff38
commit dca36fada79b68ecc0eb9cb7d8b9fa269e92ff38
Merge: 1405ef8 3b57942
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Mar 5 17:44:26 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Mar 5 17:44:26 2014 -0500

Merge topic 'python-3.4' into next

3b579421 FindPython{Interp,Libs}: Search for Python 3.4.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3b579421ce1709c2599f801e8e8a4e54fc0ad24d
commit 3b579421ce1709c2599f801e8e8a4e54fc0ad24d
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Mar 5 17:41:47 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Mar 5 17:41:47 2014 -0500

FindPython{Interp,Libs}: Search for Python 3.4.

Python 3.4.0rnc1 was released on 2014-02-20.

diff --git a/Modules/FindPythonInterp.cmake b/Modules/FindPythonInterp.cmake
index 8da848c..e23a58b 100644
--- a/Modules/FindPythonInterp.cmake
+++ b/Modules/FindPythonInterp.cmake
@@ -47,7 +47,7 @@ unset(_Python_NAMES)
 
 set(_PYTHON1_VERSIONS 1.6 1.5)
 set(_PYTHON2_VERSIONS 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0)
-set(_PYTHON3_VERSIONS 3.3 3.2 3.1 3.0)
+set(_PYTHON3_VERSIONS 3.4 3.3 3.2 3.1 3.0)
 
 if(PythonInterp_FIND_VERSION)
 if(PythonInterp_FIND_VERSION_COUNT GREATER 1)
diff --git a/Modules/FindPythonLibs.cmake b/Modules/FindPythonLibs.cmake
index 27d9e45..a366372 100644
--- a/Modules/FindPythonLibs.cmake
+++ b/Modules/FindPythonLibs.cmake
@@ -51,7 +51,7 @@ CMAKE_FIND_FRAMEWORKS(Python)
 
 set(_PYTHON1_VERSIONS 1.6 1.5)
 set(_PYTHON2_VERSIONS 2.7 2.6 2.5 2.4 2.3 2.2 2.1 2.0)
-set(_PYTHON3_VERSIONS 3.3 3.2 3.1 3.0)
+set(_PYTHON3_VERSIONS 3.4 3.3 3.2 3.1 3.0)
 
 if(PythonLibs_FIND_VERSION)
 if(PythonLibs_FIND_VERSION_COUNT GREATER 1)

---

Summary of changes:
 Modules/FindPythonInterp.cmake |2 +-
 Modules/FindPythonLibs.cmake   |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)


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


[Cmake-commits] CMake branch, next, updated. v2.8.12.2-1818-gb18cb5a

2014-02-27 Thread Matt McCormick
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  b18cb5acb5b1a094e46457514f7bf02cb3b9b735 (commit)
   via  6b47af939d49c22178f7e841bbaaea73aae1ed25 (commit)
  from  8c2a1f91d3625a3afdf667a9d7507c357059a0e1 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b18cb5acb5b1a094e46457514f7bf02cb3b9b735
commit b18cb5acb5b1a094e46457514f7bf02cb3b9b735
Merge: 8c2a1f9 6b47af9
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Feb 27 13:04:15 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Feb 27 13:04:15 2014 -0500

Merge topic 'different-python-header-libs-exe-0013794' into next

6b47af93 BUG: Find consistent Python interp, headers, libs #0013794


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6b47af939d49c22178f7e841bbaaea73aae1ed25
commit 6b47af939d49c22178f7e841bbaaea73aae1ed25
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Feb 26 21:47:20 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Thu Feb 27 11:36:46 2014 -0500

BUG: Find consistent Python interp, headers, libs #0013794

When possible, get consistent version of the Python interpreter, headers 
path,
and library.

find_package(PythonLibs) internally calls find_package(PythonInterp QUIET) 
and
uses the resulting PYTHON_VERSION_MAJOR and PYTHON_VERSION_MINOR to prefer
these versions when looking for the header path and library.
The Python_ADDITIONAL_VERSIONS variable has priority over the interpreter
version.

Co-authored-by: Adam Wolf
Co-authored-by: Gert Wollny gw.foss...@gmail.com

diff --git a/Modules/FindPythonLibs.cmake b/Modules/FindPythonLibs.cmake
index 0749efc..27d9e45 100644
--- a/Modules/FindPythonLibs.cmake
+++ b/Modules/FindPythonLibs.cmake
@@ -80,10 +80,15 @@ endif()
 
 # Set up the versions we know about, in the order we will search. Always add
 # the user supplied additional versions to the front.
-set(_Python_VERSIONS
-  ${Python_ADDITIONAL_VERSIONS}
-  ${_PYTHON_FIND_OTHER_VERSIONS}
-  )
+# If FindPythonInterp has already found the major and minor version,
+# insert that version between the user supplied versions and the stock
+# version list.
+find_package(PythonInterp QUIET)
+set(_Python_VERSIONS ${Python_ADDITIONAL_VERSIONS})
+if(DEFINED PYTHON_VERSION_MAJOR AND DEFINED PYTHON_VERSION_MINOR)
+  list(APPEND _Python_VERSIONS ${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
+endif()
+list(APPEND _Python_VERSIONS ${_PYTHON_FIND_OTHER_VERSIONS})
 
 unset(_PYTHON_FIND_OTHER_VERSIONS)
 unset(_PYTHON1_VERSIONS)

---

Summary of changes:
 Modules/FindPythonLibs.cmake |   13 +
 1 file changed, 9 insertions(+), 4 deletions(-)


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


[Cmake-commits] CMake branch, next, updated. v2.8.12.1-7253-g7699c35

2014-01-23 Thread Matt McCormick
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  7699c35215babd00f1b41af868592a4ae0046e78 (commit)
   via  a432b93b7919d34e37e202b0c992775a029928d3 (commit)
   via  1cb9ef817334235fa9ebb57060b6df78d1a0b058 (commit)
   via  f73f0fb357eee40f794abc55a0091e77f50cc62d (commit)
   via  b5e2265fc3a1e8505c6a230b79a2bbb768e5efc5 (commit)
  from  ce5523022767b284f4189f277373f793d3f2ad22 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7699c35215babd00f1b41af868592a4ae0046e78
commit 7699c35215babd00f1b41af868592a4ae0046e78
Merge: ce55230 a432b93
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Thu Jan 23 17:39:47 2014 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Thu Jan 23 17:39:47 2014 -0500

Merge topic 'robust-ep-download-verify' into next

a432b93b file DOWNLOAD: Display the curl result status when a hash mismatch 
occurs.
1cb9ef81 file DOWNLOAD: Test non-zero return status.
f73f0fb3 file DOWNLOAD: Add test for bad hash.
b5e2265f ExternalProject: Reattempt download when verification fails.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a432b93b7919d34e37e202b0c992775a029928d3
commit a432b93b7919d34e37e202b0c992775a029928d3
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 15 20:08:44 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jan 15 20:08:44 2014 -0500

file DOWNLOAD: Display the curl result status when a hash mismatch occurs.

diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx
index 311763b..e79bc6c 100644
--- a/Source/cmFileCommand.cxx
+++ b/Source/cmFileCommand.cxx
@@ -2983,6 +2983,8 @@ 
cmFileCommand::HandleDownloadCommand(std::vectorstd::string const args)
for file: [  file  ]  std::endl
  expected hash: [  expectedHash  ]  std::endl
actual hash: [  actualHash  ]  std::endl
+status: [  (int)res  ;\
+   ::curl_easy_strerror(res)  \]  std::endl
 ;
   this-SetError(oss.str().c_str());
   return false;

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1cb9ef817334235fa9ebb57060b6df78d1a0b058
commit 1cb9ef817334235fa9ebb57060b6df78d1a0b058
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 15 19:40:28 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jan 15 19:43:25 2014 -0500

file DOWNLOAD: Test non-zero return status.

diff --git a/Tests/CMakeTests/FileDownloadTest.cmake.in 
b/Tests/CMakeTests/FileDownloadTest.cmake.in
index 91086c6..83ade2b 100644
--- a/Tests/CMakeTests/FileDownloadTest.cmake.in
+++ b/Tests/CMakeTests/FileDownloadTest.cmake.in
@@ -94,3 +94,16 @@ file(DOWNLOAD
   EXPECTED_MD5 d16778650db435bda3a8c3435c3ff5d1
   )
 message(STATUS ${status})
+
+message(STATUS FileDownload:11)
+file(DOWNLOAD
+  badhostname.png
+  ${dir}/file11.png
+  TIMEOUT 2
+  STATUS status
+  )
+message(STATUS ${status})
+list(GET status 0 status_code)
+if(NOT ${status_code} EQUAL 6)
+  message(SEND_ERROR error: expected status code 6 for bad host name, got: 
${status_code})
+endif()

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f73f0fb357eee40f794abc55a0091e77f50cc62d
commit f73f0fb357eee40f794abc55a0091e77f50cc62d
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Jan 15 19:27:26 2014 -0500
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Jan 15 19:43:23 2014 -0500

file DOWNLOAD: Add test for bad hash.

diff --git a/Tests/CMakeTests/CMakeLists.txt b/Tests/CMakeTests/CMakeLists.txt
index 41714f6..ce36830 100644
--- a/Tests/CMakeTests/CMakeLists.txt
+++ b/Tests/CMakeTests/CMakeLists.txt
@@ -38,6 +38,10 @@ AddCMakeTest(FileDownload )
 set_property(TEST CMake.FileDownload PROPERTY
   PASS_REGULAR_EXPRESSION file already exists with expected MD5 sum
   )
+AddCMakeTest(FileDownloadBadHash )
+set_property(TEST CMake.FileDownloadBadHash PROPERTY
+  WILL_FAIL TRUE
+  )
 
 AddCMakeTest(FileUpload )
 
diff --git a/Tests/CMakeTests/FileDownloadBadHashTest.cmake.in 
b/Tests/CMakeTests/FileDownloadBadHashTest.cmake.in
new file mode 100644
index 000..4a47c06
--- /dev/null
+++ b/Tests/CMakeTests/FileDownloadBadHashTest.cmake.in
@@ -0,0 +1,10 @@
+set(url file://@CMAKE_CURRENT_SOURCE_DIR@/FileDownloadInput.png)
+set(dir @CMAKE_CURRENT_BINARY_DIR@/downloads)
+
+file(DOWNLOAD
+  ${url}
+  ${dir}/file3.png
+  TIMEOUT 2
+  STATUS status
+  EXPECTED_HASH SHA1=
+  )

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h

Re: [cmake-developers] Review Request: Topic ExternalProject_GitUpdate

2013-11-30 Thread Matt McCormick
Hi Daniele, Brad,


On Tue, Nov 26, 2013 at 3:57 AM, Daniele E. Domenichelli 
daniele.domeniche...@gmail.com wrote:

 On 25/11/13 18:04, Jean-Christophe Fillion-Robin wrote:
  After copying the ExternalProject.cmake in the Module directory of the
  CMake installation I used for daily work, I didn't see any issue /  side
  effect.
 
  Considering the external projects I am dealing with always specify the
  SHA1, I didn't have a chance to explicitly test the case
  if(is_remote_ref) ... 


 Thanks for testing! Did anyone try it with a remote branch?


Testing locally, it worked great for me!

Thanks,
Matt
--

Powered by www.kitware.com

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

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

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

[Cmake-commits] CMake branch, next, updated. v2.8.12.1-5362-g5ec4796

2013-11-19 Thread Matt McCormick
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  5ec479646713160d72463e3e8cdf32624b4b6824 (commit)
   via  07674740704c59d587c977d37bd0b9e517a58dd4 (commit)
  from  0072ba93394deb607ed645ad54754528884bd337 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5ec479646713160d72463e3e8cdf32624b4b6824
commit 5ec479646713160d72463e3e8cdf32624b4b6824
Merge: 0072ba9 0767474
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Tue Nov 19 11:44:02 2013 -0500
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Tue Nov 19 11:44:02 2013 -0500

Merge topic 'FindLATEX-ps2pdf' into next

0767474 FindLATEX: Find ps2pdf with MikTeX.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=07674740704c59d587c977d37bd0b9e517a58dd4
commit 07674740704c59d587c977d37bd0b9e517a58dd4
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Sep 25 15:51:29 2013 +
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Thu Oct 24 12:06:31 2013 +

FindLATEX: Find ps2pdf with MikTeX.

diff --git a/Modules/FindLATEX.cmake b/Modules/FindLATEX.cmake
index e78d5bf..62eedd6 100644
--- a/Modules/FindLATEX.cmake
+++ b/Modules/FindLATEX.cmake
@@ -104,8 +104,9 @@ find_program(DVIPDF_CONVERTER
 
 if (WIN32)
   find_program(PS2PDF_CONVERTER
-NAMES ps2pdf14.bat
+NAMES ps2pdf14.bat ps2pdf
 PATHS ${GHOSTSCRIPT_LIBRARY_PATH}
+  ${MIKTEX_BINARY_PATH}
   )
 else ()
   find_program(PS2PDF_CONVERTER

---

Summary of changes:
 Modules/FindLATEX.cmake |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)


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


Re: [cmake-developers] Review Request: Topic ExternalProject_GitUpdate

2013-11-18 Thread Matt McCormick
Hi Daniele,

Thanks for the contribution!

Code review looks good -- I like how there is a reset --hard to the
previous head_sha and message if the stash pop does not work as
expected.

I have checkout out the branch, will test it locally, and make any
notes of unexpected behavior.

Thanks,
Matt

On Mon, Nov 18, 2013 at 10:39 AM, Robert Maynard
robert.mayn...@kitware.com wrote:
 I am understanding properly that the last paragraph properly, this will fix
 the problem that setting GIT_TAG to a named branch doesn't keep the branch
 up to date with the remotes version of the branch?

 Overall I really like this change to ExternalProject, and I see it being
 more in line with how I would guess GIT_TAG to behave like.


 On Mon, Nov 18, 2013 at 6:19 AM, Daniele E. Domenichelli
 daniele.domeniche...@gmail.com wrote:

 Hello,

 Please review the topic ExternalProject_GitUpdate

 ExternalProject handles git remote branches by commit hash. Due to this,
 the git repository ends in detached states, and local commits are
 discarded.

 This patch uses git pull --rebase for remote branches instead of git
 checkout. If there are local changes, git stash is used to save the
 changes and restore them after the pull. If any of these operation
 fails, it tries to restore the original status and exits with a fatal
 error, asking the user to resolve the conflicts manually.

 This also makes the behaviour of ExternalProject using git more similar
 to the svn version, and probably more likely to what the user expects by
 setting GIT_TAG to a branch.


 Cheers,
  Daniele
 --

 Powered by www.kitware.com

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

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

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



 --

 Powered by www.kitware.com

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

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

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

Powered by www.kitware.com

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

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

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


[Cmake-commits] CMake branch, next, updated. v2.8.12-4087-g819d956

2013-10-16 Thread Matt McCormick
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  819d956ed877f010b7bb39678484f864f3eda22e (commit)
   via  7eddefd8f1375c5c6f2fbe6e0e51f14bdc1f8886 (commit)
  from  c241975a8215694ed022a4746d4f955add519811 (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 -
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=819d956ed877f010b7bb39678484f864f3eda22e
commit 819d956ed877f010b7bb39678484f864f3eda22e
Merge: c241975 7eddefd
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Wed Oct 16 22:55:08 2013 -0400
Commit: CMake Topic Stage kwro...@kitware.com
CommitDate: Wed Oct 16 22:55:08 2013 -0400

Merge topic 'coverity-generated-tests' into next

7eddefd TestDriver.cxx.in: Untrusted array index read.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7eddefd8f1375c5c6f2fbe6e0e51f14bdc1f8886
commit 7eddefd8f1375c5c6f2fbe6e0e51f14bdc1f8886
Author: Matt McCormick matt.mccorm...@kitware.com
AuthorDate: Mon Oct 7 17:10:06 2013 +
Commit: Matt McCormick matt.mccorm...@kitware.com
CommitDate: Wed Oct 16 10:11:20 2013 +

TestDriver.cxx.in: Untrusted array index read.

As reported by Coverity Scan, if the configured file contains a #include,

  Untrusted array index read
  The array index could be controlled by an attacker, leading to reads 
outside
  the bounds of the array.
  In main: Read from array at index computed using an unscrutinized value 
from
  an untrusted source (CWE-129)

  CID 1081283 (#1 of 1): Untrusted array index read (TAINTED_SCALAR)
  25. tainted_data: Using tainted variable testToRun as an index into an 
array
  cmakeGeneratedFunctionMapEntries.

diff --git a/Templates/TestDriver.cxx.in b/Templates/TestDriver.cxx.in
index f4510bb..03916bf 100644
--- a/Templates/TestDriver.cxx.in
+++ b/Templates/TestDriver.cxx.in
@@ -137,6 +137,13 @@ int main(int ac, char *av[])
 {
 int result;
 @CMAKE_TESTDRIVER_BEFORE_TESTMAIN@
+if (testToRun  0 || testToRun = NumTests)
+  {
+  printf(
+testToRun was modified by TestDriver code to an invalid value: 
%3d.\n,
+testNum);
+  return -1;
+  }
 result = (*cmakeGeneratedFunctionMapEntries[testToRun].func)(ac, av);
 @CMAKE_TESTDRIVER_AFTER_TESTMAIN@
 return result;

---

Summary of changes:
 Templates/TestDriver.cxx.in |7 +++
 1 files changed, 7 insertions(+), 0 deletions(-)


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


[cmake-developers] FindLATEX ps2pdf with MikTeX

2013-09-25 Thread Matt McCormick
Hi Miguel,

As the LATEX CMake module maintainer according to [1], I'm passing
along the attached patch for FindLATEX so that it detects ps2pdf with
MikTeX.

Thank you for your efforts,
Matt

[1] http://www.cmake.org/Wiki/CMake:Module_Maintainers#List


0001-FindLATEX-Find-ps2pdf-with-MikTeX.patch
Description: Binary data
--

Powered by www.kitware.com

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

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

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

Re: [cmake-developers] Request for Comments: Will implementing an interactive CMake debugger be welcome?

2013-01-07 Thread Matt McCormick
Hi Shlomi,

I also think this would be a great feature.  I started on an
implementation here:

  https://github.com/thewtex/cmakedbg

but I have not had time to follow it through.  The user interface is
written in Python/Cython for fast prototyping purposes, but it could
be written all C/C++ if you would like.  I believe I got to the point
where it was possible to set a breakpoint.  I was building against
this branch:

  https://github.com/thewtex/CMake/tree/cmakedbg

Overall, I think the approach is fairly solid.  When CMake processes a
line, it asks a debugger if it is interested.  For there, the debugger
can pause if a breakpoint is set at that point, let the user print the
content of current variables that are defined, ...  Since it uses
CMake for processing all the code, the debugger will behave exactly
the same as a cmake executable.

Feel free to take the project and run with it.

Matt



On Thu, Jan 3, 2013 at 3:46 PM, Stephen Kelly steve...@gmail.com wrote:
 Shlomi Fish wrote:

 Hi all,

 following a discussion we had on ##llvm on irc.oftc.net (the main LLVM
 channel, because LLVM+clang can be built using CMake), I've been wondering
 if you would like someone (like me) to implement an interactive debugger
 (or debugging mode) for cmake invocations, similar to gdb, perl -d,
 pdb.py, etc.? I saw this thread:

 http://www.cmake.org/pipermail/cmake/2009-July/030728.html

 Where it was recommended to use cmake --trace, and I've been using MESSAGE
 ( ... ) and MESSAGE (FATAL_ERROR ...) for most of my debugging, but I'm
 interested in something better.

 I can try working on it given the time and motivation (in a separate git
 branch on a GitHub/Bitbucket repository), but I want to get a green light
 for it, because once introduced, it naturally should be supported in the
 future (and if I'm going to write it, I am willing to help support it).


 Hi there,

 I'm sure such an addition would be welcome, but it would be a lot of work.

 Before writing such a feature, do you have enough familiarity with the cmake
 codebase already to describe how much work it would be?

 Thanks,

 Steve.


 --

 Powered by www.kitware.com

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

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

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

Powered by www.kitware.com

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

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

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


Re: [CMake] bash completion for cmake

2010-08-06 Thread Matt McCormick
 
 2010/7/27 Eric Noulard eric.noul...@...:
  Here comes a proposal for a bash completion for cmake.

Awesome.  Thanks a lot for submitting this.

Works great here on gentoo.

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] FIND modules for Xerces-C++ and Xalan-C++

2010-05-24 Thread Matt McCormick
Andreas Heck andreash...@... writes:

 
 I've found this module via google too and it's not a problem to use my 
 own FIND modules.
 The reason is that i was just wondering why a feature request since 2003 
 exists and til now cmake doesn't include a Xerces module.

I use the module found here:
http://public.kitware.com/mantis/view.php?id=9074

 
 What is the way to introduce a module or am i the only one who need this 
 module?
 

There is documentation for becoming a module maintainer here:
http://www.itk.org/Wiki/CMake:Module_Maintainers

Now that CMake has moved to git, being a module maintainer should be much 
easier.

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] ctest amp;amp; peak memory usage

2010-04-22 Thread Matt McCormick
Clinton Stimpson clin...@... writes:


  
 
 Is there some way to put that result into the ctest output file, Test.xml,
 as a 
measurement?
 
 Clint
 

I'm not a CTest expert, so I am not sure.  You can output it to stdout or to 
another file, and if there is a way those into Test.xml...


As a side note, I know CTest has integrated support for valgrind's memory leak 
checking.

Regards,
Matt


___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] ctest amp; peak memory usage

2010-04-21 Thread Matt McCormick
Clinton Stimpson clin...@... writes:

 
 Hi,
 
 Can ctest report peak memory usage like it reports time and other 
 measurements?
 
 Thanks,
 Clint
 ___

You could have ctest run valgind's massif tool.  An example can be found here:
http://insight-journal.org/browse/publication/722
The source is downloadable.
The output of massif is processed with ms_print, which is parsed by a python 
script for the peak.




___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake amp;amp;amp; Matlab

2010-04-16 Thread Matt McCormick
Bill Hoffman bill.hoff...@... writes:

  
  Either way, it is necessary to 
  build cmake from patched source.
  
 
 All the changes in that patch are in the Modules directory.  So, no need 
 to patch cmake.  Just create the changed files and use CMAKE_MODULE_PATH 
 to point to the patched versions of the files. 

I believe I had tried that, but it does not work.  I believe the culprit is (in 
CMake-2.8.1 source:

CMakeDetermineCXXCompiler.cmake
141   CMAKE_DETERMINE_COMPILER_ID(CXX CXXFLAGS CMakeCXXCompilerId.cpp)

CMakeDetermineCompilerId.cmake
72   FILE(READ ${CMAKE_ROOT}/Modules/${src}.in ID_CONTENT_IN)

The use of CMAKE_ROOT in those files prevent them from being overridden.

 I would be willing to 
 move this into cmake if it had a maintainer, and that maintainer figured 
 out how to do nightly tests that verify that this stuff works.

Unfortunately, I don't use Matlab much at all anymore, so I am hesitant to take 
that responsibility.  Writing a test would not be that hard.  The Hello World 
could be could.  The pain comes about keeping a Matlab license current and the 
executable talking to their scheme.

Regards,
Matt

 
 -Bill
 ___
 Powered by www.kitware.com
 
 Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html
 
 Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ
 
 Follow this link to subscribe/unsubscribe:
 http://www.cmake.org/mailman/listinfo/cmake
 
 




___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake amp; Matlab

2010-04-15 Thread Matt McCormick
James C. Sutherland james.sutherl...@... writes:

 
 I have been trying to get CMake to build Matlab MEX files without any success.
 

 1. It seems that FindMatlab.cmake is not very functional.  I am on a Mac with 

If I recall correctly, it is rather out of date.

 
 2. The instructions on http://www.cmake.org/Wiki/CMake:MatlabMex don't seem 
 to 
work either.
 I tried following the approach of setting MEX as the CC and CXX compiler, but 
even on the trivial hello
 world example posted on the wiki page, CMake fails during the configure 
 phase:
   The C compiler /Applications/MATLAB_R2010a.app/bin/mex is not able to 
compile a simple test program.
 

Did you apply to the patch linked on the wiki page and build your out custom 
CMake?


___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake amp;amp; Matlab

2010-04-15 Thread Matt McCormick
James C. Sutherland james.sutherl...@... writes:


  
 I didn't apply the patch because I assumed that it had been fixed in 2.8.0 
(which is what I am using).  Is that
 not the case?
 ___

No, it has not been applied yet.  I haven't tried the patch with 2.8, but it 
may 
work.  If not, you can still grab the 2.6 source.  

Either way, it is necessary to 
build cmake from patched source.




___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] 2 questions :)

2010-03-11 Thread Matt McCormick

 
 add_subdirectory (/mylib/src /mylib/bin)

I'm surprised this works, but for good practice, I would leave out the first 
slash since it usually used to indicate an absolute path, i.e. mylib/src 
instead 
of /mylib/src.

 
 Everything works like a charm, but when I add a dependency
 
 add_dependencies (myproject mylib)
 
 It doesn't work, saying mylib is an unknown target. However, the same 
 things works for other projects which libraries are not imported. Am I 
 doing something wrong ? Or dependency on imported target is not 
 supported ? I know I could simplify my life with target_link_libraries, 
 but I'm trying to build a solid framework which would scale correctly if 
 mylib is converted to a full cmake project one day.

CMake automagically defines the usual dependencies for you, so in most cases 
you 
don't have to worry about using add_dependencies.  Just use 
target_link_libraries.
 
 Also, if I'm trying to make a project with both executable in it, with 
 something like:
 
 add_subdirectory (/myexe1/src /myexe1/bin)
 add_subdirectory (/myexe2/srr /myexe2/bin)
 
 since both project try to add the same lib, I get an error saying the 
 binary directory is already used (when doing exe2). Is there any way 
 around this problem or do I have to handle this situation manually ?
 

Not sure what you mean here.  add_library should be called once.






___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


[CMake] create ctest dependency for ctest -jN

2010-03-10 Thread Matt McCormick
Hi,

Is there a way to add a dependency for a test created with add_test() on 
another 
test created with add_test() so 'ctest -jN' will work properly?

Thanks.

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] create ctest dependency for ctest -jN

2010-03-10 Thread Matt McCormick

 On Wednesday 10 March 2010 01:25:38 pm Matt McCormick wrote:
  Hi,
  
  Is there a way to add a dependency for a test created with add_test() on
   another test created with add_test() so 'ctest -jN' will work properly?
  
 
 set_tests_properties(test1 PROPERTIES DEPENDS test2)
 

Thanks, Clint.  Works great.

I filed a documentation request here:

http://public.kitware.com/Bug/view.php?id=10402

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake Python support

2009-08-26 Thread Matt McCormick
Andreas Pakulat ap...@... writes:

 
 On 19.08.09 08:34:26, Philip Lowman wrote:
  Speaking of the existing FindPython* scripts they do not support v3.0 yet.
  Is there a need to maintain support for picking 2.x if two versions of
  python are installed?
 
 As Py2 and Py3 are basically incompatible IMHO A separate FindPython3 would
 be better than letting the module try to guess py2 vs. py3 if both are
 installed. The project using Python should have decide on wether it works
 with Py3 or not.
 
 Andreas
 


Python 2.X are also incompatible with each other sometimes, and a user can have
multiple 2.X and 3.X installed.  IMHO, having different modules for every
version is not the write way to go.  Just make it a configuration variable in
FindPythonLibs.cmake

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] Modules standardization...

2009-08-05 Thread Matt McCormick
Asmodehn Shade asmod...@... writes:

 
 Hi,First sorry if this has been addressed in the past but I could find any
reference to it...I am using a Module FindFoo.cmake.I know I am expecting it to
set FOO_FOUND and other variables such as FOO_INCLUDE_DIR, FOO_LIBRARIES, etc.My
question is : what is the exact operation that I should use to transform Foo in
FOO...I am having a problem now because I am writing a simple macro that takes
the name of the package, and then check the different variables after the
find_package() call.


That seems like something that should be documented here...
http://www.cmake.org/cgi-bin/viewcvs.cgi/Modules/readme.txt?root=CMakeview=markup

looking at /usr/share/cmake/Modules, the convention seems to be CamelCase with
ALL CAPS for abbreviations, though not all seem to follow to unified trend.

___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


Re: [CMake] Cmake + Matlab mex

2009-07-09 Thread Matt McCormick
 ..., but what I want to do is compile a file 
 for use in Matlab using the mex compiler. I can do this by hand by 
 executing the following in a shell:
 
 $ mex foo.cpp
 
 This would produce a foo.mexglx binary which matlab would be able to use.
 
 This is great if your foo.cpp is self-contained, however my foo.cpp 
 depends on libraries and include files which I generate in my CMake 
 build. Manually what I would do to handle this is:
 
 $ mex -I/my/include/path -L/my/library/path -lmylib ... foo.cpp
 
 I would like to make a CMake target which does the command above, taking 
 into account any library or include dependencies I specify in my 
 CMakeLists.txt. Is this possible?
 

I have implemented this behavior.  Please see 

http://www.cmake.org/Wiki/CMake:MatlabMex

Kick the tires.
I have tried this on Linux and WindowsXP, and it seems works in these cases, at
least on my system.




___
Powered by www.kitware.com

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

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

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake


[CMake] website looking tight

2008-03-09 Thread Matt McCormick
Just wanted to call peoples' attention to the new website design.  I thought 
the old design was pretty good, but the facelift looks great.  Well done 
cmake/kitware.
___
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake


[CMake] Re: Migration to subversion

2008-01-05 Thread Matt McCormick
Jesper Eskilson [EMAIL PROTECTED] writes:

 
 Mike Jackson wrote:
  http://www.youtube.com/watch?v=4XpnKHJAok8
  
  Git - straight from Linus.. Kinda long but interesting.. as long as
  you can get past Linus' personality.
 

Check out this presentation by Randal Schwartz on git.  He describes it, how it 
works, and its advantages quite well.  

He also mentions that it contains a CVS server, so people can continue to use 
CVS to interact with the repository if they want. 

http://video.google.com/videoplay?docid=-352944619245780



___
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake