[Cmake-commits] CMake branch, master, updated. v3.9.0-rc5-275-gfadcfd4

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

The branch, master has been updated
   via  fadcfd4b89aa36cfd9842ef2798ca7dffabb0ade (commit)
  from  107a92ea9a784d283b8d6d35a8c9bd93db8cd06d (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=fadcfd4b89aa36cfd9842ef2798ca7dffabb0ade
commit fadcfd4b89aa36cfd9842ef2798ca7dffabb0ade
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Wed Jul 12 00:01:06 2017 -0400
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Wed Jul 12 00:01:06 2017 -0400

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 0a8e870..e6c3a5b 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
 # CMake version number components.
 set(CMake_VERSION_MAJOR 3)
 set(CMake_VERSION_MINOR 9)
-set(CMake_VERSION_PATCH 20170711)
+set(CMake_VERSION_PATCH 20170712)
 #set(CMake_VERSION_RC 1)

---

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


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


[cmake-developers] There's several issues with NDK support in CMake 3.9.0

2017-07-11 Thread Robert Dailey
So I'm working with DanAlbert over on the NDK github project regarding
some issues I've hit with NDK r15b using CMake 3.9.0-rc5. He's already
identified one bug that I can help fix located in
`Modules/Platform/Android/ndk-stl-c++.cmake` related to platform
support. He also mentions something a bit more serious regarding
libandroid_support, which CMake isn't linking to. He recommended using
their pre-packaged toolchain file that comes with the NDK itself.
There's a couple more issues, I recommend heading over to the issue
page and read up on the discussion there:

https://github.com/android-ndk/ndk/issues/452

I'm stuck a bit in the middle here. I'm willing to help make changes
and help with testing on the CMake side, but I'm not very
knowledgeable on these things (compiler behavior, and CMake
integration with NDK). What I'm hoping is that you guys can help pitch
in on the discussion over on the NDK github page via the link above.
I'll try to learn from the discussions there and contribute one or
more merge requests to implement fixes.

All of these issues cropped up from my specific usage of CMake with
the NDK, so I'm in a really good position to be able to contribute
fixes and test solutions. Just let me know how I can help.
-- 

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] Prevent linebreaks in cmake output

2017-07-11 Thread Jason Majors via CMake
Is there a way to have each message from cmake appear on a single line?
Currently my output seems to break like this:
CMake Error: Error in cmake code at
/path/to/CMakeLists.txt:48:
Parse error.  Function missing ending ")".  End of file reached.

I'm trying to parse the error messages in a program that reads cmake's
stderr and stdout. Rather than trying to decide which lines should go
together, and building all the scanning that would be required for that, I
was hoping there might just be a flag I could set to do the work for me.

Thanks.
-- 

Powered by www.kitware.com

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

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

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

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

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

Re: [cmake-developers] 3.9.0-rc3: CMAKE_ANDROID_NDK_DEPRECATED_HEADERS doesn't work outside of toolchain

2017-07-11 Thread Robert Dailey
Just wanted to share my solution to this, based on your suggestions
about code sharing. I still do some introspection but some of this is
based on our usage of environment variables and such. However the
logic to find NDK version is useful in general.

Instead of pasting the CMake code here, I have made it available as a gist:
https://gist.github.com/rcdailey/ae336b48b8681897c747524a5713c6c6

Hope this helps others that have similar questions. Thanks again Brad.

On Tue, Jun 27, 2017 at 11:07 AM, Brad King  wrote:
> On 06/27/2017 11:36 AM, Robert Dailey wrote:
>> Ok maybe I'm misunderstanding the design intent for toolchain files.
>
> Originally they were intended to contain information local to the
> machine, like `set(CMAKE_ANDROID_NDK /path/on/my/machine/to/ndk)`.
> In controlled environments that share many things it makes sense
> to have deployable toolchain files instead.
>
>> Basically, some things I like to determine programmatically. Putting
>> in them in the toolchain file violates the "introspection" rule, but
>> also results in code duplication
>
> Toolchain files can `include()` other files from next to them.  That
> can be used to avoid duplicate code.
>
> The only information you need within your toolchain file logic to
> compute CMAKE_ANDROID_NDK_DEPRECATED_HEADERS is CMAKE_ANDROID_NDK.
> If you add logic to find/require CMAKE_ANDROID_NDK up front then you
> can check its version.
>
> CMake's `Modules/Platform/Android-Determine.cmake` file has very little
> logic to choose `CMAKE_ANDROID_NDK` if it is not set by the user.  You
> can either duplicate this in a toolchain file helper or take advantage
> of knowledge about your controlled environments to have a shorter version.
>
> -Brad
>
-- 

Powered by www.kitware.com

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

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

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

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

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


[CMake] OBJECT libraries and working around lake of target_link_libraries

2017-07-11 Thread David Hunter
We recently converted some software, comprising about 300 projects, to use
OBJECT libraries from SHARED libraries so we could create "conveneince"
libraries that were cominations of some of the 300 projects. Not being
able to use target_link_libraries with thier transitive nature made this
very painful, many days of work. Supporting OBJECT libraries in
target_link_libraries calls was mentioned mentioned right back here
https://cmake.org/pipermail/cmake-developers/2012-March/015422.html but
sadly seems still to be on the back burner.

We are faced with a project hierarchy re-org and wanted to try to automate
generation of the dependencies. So we are thinking of doing the following.

1) Remove all the target_sources stuff from all CMakeLists.txt
2) Add add_dependencies calls to specify the project dependencies
3) run cmake with the --graphviz=graphviz.dot
4) Write a program that reads the resultant graphviz.dot and generate
   a file for each project that contain a target_sources call specifying
   all the dependencies for that project
5) In the CMakeLists.txt  for each project include the relevant generated
   target_sources file
6) Rerun cmake

Note the first time cmake gets run all the generated dependency files
are empty so the only dependencies are those specified by add_dependencies
calls.

Obviously the above is a bit convoluted, although we already have a
program to read and use the data in graphviz.dot file for other reason.
So my question is will the above approach work and is there a better one?
-- 

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] How do I specify VTK minimum version?

2017-07-11 Thread Victor Lamoine
Hi,

I am using CMake to set up a VTK project. Our project requires VTK to be 
version 7.1 or newer.
I'm using Ubuntu 16.04 with CMake 3.5.1.

My CMakeLists.txt looks like this:

cmake_minimum_required(VERSION 2.8)
project(test_vtk_versions)

find_package(VTK 7.1 REQUIRED)
include(${VTK_USE_FILE})

add_executable(test_vtk_1 test_vtk_1)
target_link_libraries(test_vtk_1 ${VTK_LIBRARIES})

I have several versions of VTK installed on my machine:

  * VTK 6.2 from the Ubuntu repositories
  * VTK 7.1 compiled/installed from sources
  * VTK 8.0 compiled/installed from sources

$ ls /usr/local/lib/cmake/vtk* /usr/lib/cmake/vtk*
/usr/lib/cmake/vtk-6.2:
exportheader.cmake.in   UseVTK.cmake   
vtkJavaWrapping.cmake   vtkModuleMacros.cmakeVTKTargets.cmake   
  vtkThirdParty.cmake vtkWrapPython.sip.in
(... list was manually shortened ...)

/usr/local/lib/cmake/vtk-7.1:
FindTCL.cmake  VTKConfigVersion.cmake vtkGroups.cmake   
  vtkModuleHeaders.cmake.invtkObjectFactory.h.in vtkTclWrapping.cmake   
 vtkWrapPython.cmake
(... list was manually shortened ...)

/usr/local/lib/cmake/vtk-8.0:
FindTCL.cmake  VTKConfigVersion.cmake vtkGroups.cmake   
  vtkModuleHeaders.cmake.invtkObjectFactory.h.in  
vtkTclTkMacros.cmakevtkWrapping.cmake
(... list was manually shortened ...)

The project can be configured (Unix Makefile) and compiled, it is compiled 
against VTK 7.1 in this configuration.
However if I remove VTK 7.1 from the system (using sudo xargs rm < 
"install_manifest.txt") then I end with this this error:

CMake Error at CMakeLists.txt:4 (find_package):
  Could not find a configuration file for package "VTK" that is compatible
  with requested version "7.1".

  The following configuration files were considered but not accepted:

/usr/local/lib/cmake/vtk-8.0/VTKConfig.cmake, version: 8.0.0
/usr/lib/cmake/vtk-6.2/VTKConfig.cmake, version: 6.2.0

I have also tried find_package(VTK 7.1*.0* REQUIRED), without success.

Why isn't VTK 8.0.0 accepted? It is a greater version number so I expected it 
to be ok.
How do I specify that I want VTK 7.1 OR newer?

Thank you for your time
Bye

-- 

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 create executable Undefined symbols for architecture x86_64:

2017-07-11 Thread Sean Wayland
Thanks Micha,
The head developer managed to get it to compile under clion on the
weekend, I suspect he may have cleaned up his source code a little
bit. I also suspect listing the source code and targeted libraries in
the correct order may have helped. Thanks for all your help!
Best Sean

On Mon, Jul 10, 2017 at 3:22 PM, Micha Hergarden
 wrote:
> On 07-07-17 05:14, Sean Wayland wrote:
>> Hi Micha,
>> Thanks very much for the email. That seemed to make a small
>> difference! With both those lines commented out these errors are
>> generated ( below my email ) .
>> I still have included
>> project(CATSMAT)
>> at the top line of the cmake file in the catsmat directory
>>
>> I tried commenting out each of those language type definitions
>> separately but it didn't seem to help.
>> The code compiles under xcode. Those language types ( C++14) are
>> specified in Xcode so I was trying to find a way to copy what is in
>> xcode.
>>
>> Is there a maximum number of "errors" before the clion compiler will
>> spit the dummy ?
>>
>> Another executable will compile with lots and lots of warnings but no 
>> "errors"
>>
>> I don't know much about C++ unfortunately. These errors look like
>> simple errors which I could see might be generated if the syntax of
>> the language had changed slightly from one version to the next ..
>>
>> Thanks for you help!
>>
>> Sean
>>
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
>> error: ISO C++ forbids forward references to 'enum' types
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:30:
>> error: expected '(' for function-style cast or type construction
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>  ~~~ ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:24:
>> error: field has incomplete type 'enum direction'
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
>> error: ISO C++ forbids forward references to 'enum' types
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>  ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:30:
>> error: expected '(' for function-style cast or type construction
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>  ~~~ ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:24:
>> error: field has incomplete type 'enum direction'
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
>> note: forward declaration of 'IMUSANT::direction'
>>
>> enum direction : int { descending=-1, repeat=0, ascending = 1,
>> vertical_bottomtotop };
>>
>>  ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:14:
>> error: ISO C++ forbids forward references to 'enum' types
>>
>> enum basic : int { unison = 0, second=1, third, fourth, fifth,
>> sixth, seventh };
>>
>>  ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:26:
>> error: expected '(' for function-style cast or type construction
>>
>> enum basic : int { unison = 0, second=1, third, fourth, fifth,
>> sixth, seventh };
>>
>>  ~~~ ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:20:
>> error: field has incomplete type 'enum basic'
>>
>> enum basic : int { unison = 0, second=1, third, fourth, fifth,
>> sixth, seventh };
>>
>>
>> sers/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:14:
>> error: ISO C++ forbids forward references to 'enum' types
>>
>> enum basic : int { unison = 0, second=1, third, fourth, fifth,
>> sixth, seventh };
>>
>>  ^
>>
>> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:26:
>> error: expected '(' 

[Cmake-commits] CMake branch, master, updated. v3.9.0-rc5-274-g107a92e

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

The branch, master has been updated
   via  107a92ea9a784d283b8d6d35a8c9bd93db8cd06d (commit)
   via  79e72f4b7c18cdb758e945daff0f9d201625c8f6 (commit)
   via  de72d5dda6909093eb3fb6f8c0d53633e5bd9fdf (commit)
   via  970569a941a3259f5303a5090ed7bca7bb6e6d7e (commit)
   via  a49b235db9036d5ec8c8535d2074c136eeb13254 (commit)
   via  59e52b30416b3c1731ec56207baad2ef0295580b (commit)
   via  dd69dea3e7456cf8ea7e5d60362f6f8aa7aafa48 (commit)
   via  2644e4c9fcc747d750d6a522d2b4029b172902c3 (commit)
   via  f7f721d40ae81b7c13afea3aa777b6be66af372c (commit)
   via  ecac50e133c339e4b4611631333f0f07e438c99d (commit)
   via  efaf987ad1569d5329fc60f5e1f47f3e8809bb69 (commit)
   via  c7d81e16cb0f2023098ca64e33a4408b8ba80287 (commit)
   via  6b2bf5756bd01a955606f1963ad44bfde21f173f (commit)
  from  8d5ec219288b05379f19a23a0a0b4c8b76a17712 (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=107a92ea9a784d283b8d6d35a8c9bd93db8cd06d
commit 107a92ea9a784d283b8d6d35a8c9bd93db8cd06d
Merge: 79e72f4 dd69dea
Author: Brad King 
AuthorDate: Tue Jul 11 07:42:09 2017 -0400
Commit: Brad King 
CommitDate: Tue Jul 11 07:42:09 2017 -0400

Merge branch 'release-3.9'


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=79e72f4b7c18cdb758e945daff0f9d201625c8f6
commit 79e72f4b7c18cdb758e945daff0f9d201625c8f6
Merge: de72d5d 6b2bf57
Author: Brad King 
AuthorDate: Tue Jul 11 11:39:11 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:39:15 2017 -0400

Merge topic 'FindMFC-try-static'

6b2bf575 FindMFC: Check for static MFC variant

Acked-by: Kitware Robot 
Merge-request: !1034


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=de72d5dda6909093eb3fb6f8c0d53633e5bd9fdf
commit de72d5dda6909093eb3fb6f8c0d53633e5bd9fdf
Merge: 970569a efaf987
Author: Brad King 
AuthorDate: Tue Jul 11 11:38:50 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:38:54 2017 -0400

Merge topic 'file-LOCK-windows-message'

efaf987a cmFileLockResult: Avoid allocation for Windows error message

Acked-by: Kitware Robot 
Merge-request: !1035


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=970569a941a3259f5303a5090ed7bca7bb6e6d7e
commit 970569a941a3259f5303a5090ed7bca7bb6e6d7e
Merge: a49b235 2644e4c
Author: Brad King 
AuthorDate: Tue Jul 11 11:37:13 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:37:42 2017 -0400

Merge topic 'vs-2017-choose-via-environment'

2644e4c9 VS: Choose VS 2017 instance via environment variable

Acked-by: Kitware Robot 
Merge-request: !1030


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a49b235db9036d5ec8c8535d2074c136eeb13254
commit a49b235db9036d5ec8c8535d2074c136eeb13254
Merge: 59e52b3 ecac50e
Author: Brad King 
AuthorDate: Tue Jul 11 11:35:26 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:35:56 2017 -0400

Merge topic 'autogen_skip_included'

ecac50e1 Autogen: Skip included files on demand

Acked-by: Kitware Robot 
Merge-request: !1039


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=59e52b30416b3c1731ec56207baad2ef0295580b
commit 59e52b30416b3c1731ec56207baad2ef0295580b
Merge: 8d5ec21 c7d81e1
Author: Brad King 
AuthorDate: Tue Jul 11 11:35:08 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:35:27 2017 -0400

Merge topic 'doc_configure_file'

c7d81e16 Help: Explicitly state that some file generations are lazy

Acked-by: Kitware Robot 
Merge-request: !1025


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=efaf987ad1569d5329fc60f5e1f47f3e8809bb69
commit efaf987ad1569d5329fc60f5e1f47f3e8809bb69
Author: Iyyappa Murugandi 
AuthorDate: Thu May 4 15:07:45 2017 -0700
Commit: Brad King 
CommitDate: Fri Jul 7 14:04:20 2017 -0400

cmFileLockResult: Avoid allocation for Windows error message

diff --git a/Source/cmFileLockResult.cxx b/Source/cmFileLockResult.cxx
index a040705..9ca5d8a 100644
--- a/Source/cmFileLockResult.cxx
+++ b/Source/cmFileLockResult.cxx
@@ -5,6 +5,7 @@
 #include 
 #include 
 
+#define WINMSG_BUF_LEN (1024)
 

[Cmake-commits] CMake branch, release, updated. v3.9.0-rc5-27-gdd69dea

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

The branch, release has been updated
   via  dd69dea3e7456cf8ea7e5d60362f6f8aa7aafa48 (commit)
   via  2644e4c9fcc747d750d6a522d2b4029b172902c3 (commit)
   via  f7f721d40ae81b7c13afea3aa777b6be66af372c (commit)
   via  ecac50e133c339e4b4611631333f0f07e438c99d (commit)
  from  9b9a57e16b22769b612d4bbe45e9b7cb936be690 (commit)

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

- Log -
---

Summary of changes:
 Help/generator/Visual Studio 15 2017.rst |   12 ++
 Source/cmQtAutoGenerators.cxx|   61 --
 Source/cmVSSetupHelper.cxx   |   28 ++
 3 files changed, 73 insertions(+), 28 deletions(-)


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


[Cmake-commits] CMake branch, master, updated. v3.9.0-rc5-261-g8d5ec21

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

The branch, master has been updated
   via  8d5ec219288b05379f19a23a0a0b4c8b76a17712 (commit)
   via  8f63f3495d30c38a953ac234f5d34578f7668b70 (commit)
   via  3cf267cfbf740e8c8dc28f132fff5042c7201d3d (commit)
   via  6848ff4ce54bedd5d0ef909f2bc08ab99dc0a513 (commit)
   via  6f131f49eee26dc5c342274f919e0ca1636182e5 (commit)
  from  e1476f96189fd361045d68fca60978106d8ee6e1 (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=8d5ec219288b05379f19a23a0a0b4c8b76a17712
commit 8d5ec219288b05379f19a23a0a0b4c8b76a17712
Merge: 8f63f34 3cf267c
Author: Brad King 
AuthorDate: Tue Jul 11 11:34:54 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:34:58 2017 -0400

Merge topic 'FindPkgConfig-rerun'

3cf267cf FindPkgConfig: do not always rerun pkg_check_modules() with 2 
arguments

Acked-by: Kitware Robot 
Merge-request: !1036


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8f63f3495d30c38a953ac234f5d34578f7668b70
commit 8f63f3495d30c38a953ac234f5d34578f7668b70
Merge: e1476f9 6848ff4
Author: Brad King 
AuthorDate: Tue Jul 11 11:34:17 2017 +
Commit: Kitware Robot 
CommitDate: Tue Jul 11 07:34:23 2017 -0400

Merge topic 'FindHDF5-windows'

6848ff4c FindHDF5: Define H5_BUILT_AS_DYNAMIC_LIB when using Windows DLLs
6f131f49 FindHDF5: Add support for HDF5_USE_STATIC_LIBRARIES on Windows

Acked-by: Kitware Robot 
Merge-request: !1023


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3cf267cfbf740e8c8dc28f132fff5042c7201d3d
commit 3cf267cfbf740e8c8dc28f132fff5042c7201d3d
Author: Rolf Eike Beer 
AuthorDate: Fri Jul 7 22:38:52 2017 +0200
Commit: Brad King 
CommitDate: Mon Jul 10 11:16:51 2017 -0400

FindPkgConfig: do not always rerun pkg_check_modules() with 2 arguments

Since commit v3.8.0-rc1~47^2 (FindPkgConfig: Recheck pkg-config on
parameter change, 2017-01-17) calling `pkg_check_modules` always
re-runs.  The problem is that if there are only 2 arguments passed to
`pkg_check_modules```, then `_module0` will be set and `ARGN` will be
empty.  When this is written to cache it will be stored as just the
value of `_module0` without any semicolon, so on the next run this
doesn't match the expected value and the search is rerun.

Revise the logic to handle the case of empty `ARGN` separately.

Fixes: #17003

diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
index a5357fa..8ac1691 100644
--- a/Modules/FindPkgConfig.cmake
+++ b/Modules/FindPkgConfig.cmake
@@ -584,7 +584,9 @@ endmacro()
 macro(pkg_check_modules _prefix _module0)
   _pkgconfig_parse_options(_pkg_modules _pkg_is_required _pkg_is_silent 
_no_cmake_path _no_cmake_environment_path _imp_target "${_module0}" ${ARGN})
   # check cached value
-  if (NOT DEFINED __pkg_config_checked_${_prefix} OR 
__pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT 
${_prefix}_FOUND OR NOT "${__pkg_config_arguments_${_prefix}}" STREQUAL 
"${_module0};${ARGN}")
+  if (NOT DEFINED __pkg_config_checked_${_prefix} OR 
__pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT 
${_prefix}_FOUND OR
+  (NOT "${ARGN}" STREQUAL "" AND NOT 
"${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0};${ARGN}") OR
+  ("${ARGN}" STREQUAL "" AND NOT 
"${__pkg_config_arguments_${_prefix}}" STREQUAL "${_module0}"))
 _pkg_check_modules_internal("${_pkg_is_required}" "${_pkg_is_silent}" 
${_no_cmake_path} ${_no_cmake_environment_path} ${_imp_target} "${_prefix}" 
${_pkg_modules})
 
 _pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6848ff4ce54bedd5d0ef909f2bc08ab99dc0a513
commit 6848ff4ce54bedd5d0ef909f2bc08ab99dc0a513
Author: Kris Thielemans 
AuthorDate: Mon Jul 3 01:40:41 2017 +0100
Commit: Brad King 
CommitDate: Fri Jul 7 08:58:57 2017 -0400

FindHDF5: Define H5_BUILT_AS_DYNAMIC_LIB when using Windows DLLs

When searching for shared libraries on Windows, add
H5_BUILT_AS_DYNAMIC_LIB to HDF5_DEFINITIONS so that the header file
knows how to dllimport the symbols.

diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake
index acf7cd4..48d5de4 100644
--- a/Modules/FindHDF5.cmake
+++ b/Modules/FindHDF5.cmake
@@ -733,6 +733,9 @@ if( NOT HDF5_FOUND )
 

Re: [CMake] Cannot get a 64-bit build of MySQL on a 64-bit Windows machine

2017-07-11 Thread A.M. Sabuncu
J Decker, thank you.  I honestly didn't even know of its existence.  I ran
it as you suggested, and it's great to be able to see all the flags.
Thanks so much again.

[image: Inline image 1]

On Tue, Jul 11, 2017 at 1:50 PM, J Decker  wrote:

> Alternatively you could use cmake-gui and on first generation in an empty
> directoy, a popup window appears allowing you to select the generator.
>
> mkdir build2
> cd build2
> cmake-gui ..
>
> then set the various flags in the gui.
>
>
> On Tue, Jul 11, 2017 at 3:13 AM, A.M. Sabuncu  wrote:
>
>> Petr,
>>
>> Thank you so much.  The following command you suggested fixed the
>> problem, and I was able to run a successful build:
>>
>> cmake .. -G "Visual Studio 15 2017 Win64"
>>
>> I am grateful for your help.  This may have been a minor item for you,
>> but for me, it was a real stumbling block.
>>
>> By the way, the other alternative you suggested did not work:
>>
>> cmake .. -A Win64   (or "Win64")
>>
>> The result was:
>>
>> -- Building for: Visual Studio 15 2017
>> -- Running cmake version 3.8.2
>> -- Found Git: C:/Program Files/Git/cmd/git.exe (found version
>> "2.10.2.windows.1")
>> -- Configuring with MAX_INDEXES = 64U
>> -- The C compiler identification is unknown
>> -- The CXX compiler identification is unknown
>> CMake Error at CMakeLists.txt:126 (PROJECT):
>>   No CMAKE_C_COMPILER could be found.
>>
>> The funny thing is that the use of the -G flag does not issue a "Building
>> for..." message, but correctly locates the necessary compiler, whereas the
>> -A flag seems to know what target it is building for, but cannot find the
>> compiler!
>>
>> Thank you again,
>>
>> A. M. Sabuncu
>>
>> On Tue, Jul 11, 2017 at 10:12 AM, Petr Kmoch 
>> wrote:
>>
>>> Hi,
>>>
>>> when generating a Visual Studio buildsystem with CMake, you can specify
>>> the target architecture. If you don't, the default is 32-bit.
>>>
>>> To specify the architecture, either put it into the generator name:
>>>
>>>   cmake .. -G "Visual Studio 15 2017 Win64" 
>>>
>>> or specify just the architecture using -A:
>>>
>>>   cmake .. -A Win64 
>>>
>>> See description of -G and -A in CMake docs:
>>> https://cmake.org/cmake/help/latest/manual/cmake.1.html
>>>
>>> Petr
>>>
>>> On 10 July 2017 at 22:06, A.M. Sabuncu  wrote:
>>>
 I am completely new to CMake, and am using to build MySQL 5.7.18 on
 Windows 10 x64, using the following command:

 cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="C:\Boost" -DENABLE_DOWNLOADS=1

 I have VS 2017 installed, and I am on 64 bit machine, but for some
 reason, the above command produces the following output:

 The CXX compiler identification is MSVC 19.10.25019.0
 -- Check for working C compiler: C:/Program Files (x86)/Microsoft
 Visual Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX
 86/x86/cl.exe
 -- Check for working C compiler: C:/Program Files (x86)/Microsoft
 Visual 
 Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
 -- works

 The correct compiler is in the HostX64/x64 folder.

 Thinking that CMake might be looking it up from there, I checked the
 processor architecture environment variable from the same cmd.exe that I
 launched the CMake command from, and here's the result:

 PROCESSOR_ARCHITECTURE=AMD64

 When I follow the above CMake command with the following:

 devenv MySQL.sln /build RelWithDebInfo

 I get 32-bit results generated, which is not what I want.

 How can I get CMake to generate a 64-bit build?

 Thanks so much.


 --

 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

Re: [CMake] Cannot get a 64-bit build of MySQL on a 64-bit Windows machine

2017-07-11 Thread J Decker
Alternatively you could use cmake-gui and on first generation in an empty
directoy, a popup window appears allowing you to select the generator.

mkdir build2
cd build2
cmake-gui ..

then set the various flags in the gui.


On Tue, Jul 11, 2017 at 3:13 AM, A.M. Sabuncu  wrote:

> Petr,
>
> Thank you so much.  The following command you suggested fixed the problem,
> and I was able to run a successful build:
>
> cmake .. -G "Visual Studio 15 2017 Win64"
>
> I am grateful for your help.  This may have been a minor item for you, but
> for me, it was a real stumbling block.
>
> By the way, the other alternative you suggested did not work:
>
> cmake .. -A Win64   (or "Win64")
>
> The result was:
>
> -- Building for: Visual Studio 15 2017
> -- Running cmake version 3.8.2
> -- Found Git: C:/Program Files/Git/cmd/git.exe (found version
> "2.10.2.windows.1")
> -- Configuring with MAX_INDEXES = 64U
> -- The C compiler identification is unknown
> -- The CXX compiler identification is unknown
> CMake Error at CMakeLists.txt:126 (PROJECT):
>   No CMAKE_C_COMPILER could be found.
>
> The funny thing is that the use of the -G flag does not issue a "Building
> for..." message, but correctly locates the necessary compiler, whereas the
> -A flag seems to know what target it is building for, but cannot find the
> compiler!
>
> Thank you again,
>
> A. M. Sabuncu
>
> On Tue, Jul 11, 2017 at 10:12 AM, Petr Kmoch  wrote:
>
>> Hi,
>>
>> when generating a Visual Studio buildsystem with CMake, you can specify
>> the target architecture. If you don't, the default is 32-bit.
>>
>> To specify the architecture, either put it into the generator name:
>>
>>   cmake .. -G "Visual Studio 15 2017 Win64" 
>>
>> or specify just the architecture using -A:
>>
>>   cmake .. -A Win64 
>>
>> See description of -G and -A in CMake docs:
>> https://cmake.org/cmake/help/latest/manual/cmake.1.html
>>
>> Petr
>>
>> On 10 July 2017 at 22:06, A.M. Sabuncu  wrote:
>>
>>> I am completely new to CMake, and am using to build MySQL 5.7.18 on
>>> Windows 10 x64, using the following command:
>>>
>>> cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="C:\Boost" -DENABLE_DOWNLOADS=1
>>>
>>> I have VS 2017 installed, and I am on 64 bit machine, but for some
>>> reason, the above command produces the following output:
>>>
>>> The CXX compiler identification is MSVC 19.10.25019.0
>>> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
>>> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX
>>> 86/x86/cl.exe
>>> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
>>> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
>>> -- works
>>>
>>> The correct compiler is in the HostX64/x64 folder.
>>>
>>> Thinking that CMake might be looking it up from there, I checked the
>>> processor architecture environment variable from the same cmd.exe that I
>>> launched the CMake command from, and here's the result:
>>>
>>> PROCESSOR_ARCHITECTURE=AMD64
>>>
>>> When I follow the above CMake command with the following:
>>>
>>> devenv MySQL.sln /build RelWithDebInfo
>>>
>>> I get 32-bit results generated, which is not what I want.
>>>
>>> How can I get CMake to generate a 64-bit build?
>>>
>>> Thanks so much.
>>>
>>>
>>> --
>>>
>>> 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
>
-- 

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 

Re: [CMake] Cannot get a 64-bit build of MySQL on a 64-bit Windows machine

2017-07-11 Thread A.M. Sabuncu
Petr,

Thank you so much.  The following command you suggested fixed the problem,
and I was able to run a successful build:

cmake .. -G "Visual Studio 15 2017 Win64"

I am grateful for your help.  This may have been a minor item for you, but
for me, it was a real stumbling block.

By the way, the other alternative you suggested did not work:

cmake .. -A Win64   (or "Win64")

The result was:

-- Building for: Visual Studio 15 2017
-- Running cmake version 3.8.2
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version
"2.10.2.windows.1")
-- Configuring with MAX_INDEXES = 64U
-- The C compiler identification is unknown
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:126 (PROJECT):
  No CMAKE_C_COMPILER could be found.

The funny thing is that the use of the -G flag does not issue a "Building
for..." message, but correctly locates the necessary compiler, whereas the
-A flag seems to know what target it is building for, but cannot find the
compiler!

Thank you again,

A. M. Sabuncu

On Tue, Jul 11, 2017 at 10:12 AM, Petr Kmoch  wrote:

> Hi,
>
> when generating a Visual Studio buildsystem with CMake, you can specify
> the target architecture. If you don't, the default is 32-bit.
>
> To specify the architecture, either put it into the generator name:
>
>   cmake .. -G "Visual Studio 15 2017 Win64" 
>
> or specify just the architecture using -A:
>
>   cmake .. -A Win64 
>
> See description of -G and -A in CMake docs: https://cmake.org/cmake/help/
> latest/manual/cmake.1.html
>
> Petr
>
> On 10 July 2017 at 22:06, A.M. Sabuncu  wrote:
>
>> I am completely new to CMake, and am using to build MySQL 5.7.18 on
>> Windows 10 x64, using the following command:
>>
>> cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="C:\Boost" -DENABLE_DOWNLOADS=1
>>
>> I have VS 2017 installed, and I am on 64 bit machine, but for some
>> reason, the above command produces the following output:
>>
>> The CXX compiler identification is MSVC 19.10.25019.0
>> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
>> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
>> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
>> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
>> -- works
>>
>> The correct compiler is in the HostX64/x64 folder.
>>
>> Thinking that CMake might be looking it up from there, I checked the
>> processor architecture environment variable from the same cmd.exe that I
>> launched the CMake command from, and here's the result:
>>
>> PROCESSOR_ARCHITECTURE=AMD64
>>
>> When I follow the above CMake command with the following:
>>
>> devenv MySQL.sln /build RelWithDebInfo
>>
>> I get 32-bit results generated, which is not what I want.
>>
>> How can I get CMake to generate a 64-bit build?
>>
>> Thanks so much.
>>
>>
>> --
>>
>> 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] [DKIM] Re: cmake create executable Undefined symbols for architecture x86_64:

2017-07-11 Thread Zakrzewski, Jakub


From: CMake  on behalf of Micha Hergarden 

Sent: 10 July 2017 21:22
To: seanwayl...@gmail.com
Cc: cmake@cmake.org
Subject: [DKIM] Re: [CMake] cmake create executable Undefined symbols for 
architecture x86_64:

On 07-07-17 05:14, Sean Wayland wrote:
> Hi Micha,
> Thanks very much for the email. That seemed to make a small
> difference! With both those lines commented out these errors are
> generated ( below my email ) .
> I still have included
> project(CATSMAT)
> at the top line of the cmake file in the catsmat directory
>
> I tried commenting out each of those language type definitions
> separately but it didn't seem to help.
> The code compiles under xcode. Those language types ( C++14) are
> specified in Xcode so I was trying to find a way to copy what is in
> xcode.
>
> Is there a maximum number of "errors" before the clion compiler will
> spit the dummy ?
>
> Another executable will compile with lots and lots of warnings but no "errors"
>
> I don't know much about C++ unfortunately. These errors look like
> simple errors which I could see might be generated if the syntax of
> the language had changed slightly from one version to the next ..
>
> Thanks for you help!
>
> Sean
>
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
> error: ISO C++ forbids forward references to 'enum' types
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:30:
> error: expected '(' for function-style cast or type construction
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>  ~~~ ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:24:
> error: field has incomplete type 'enum direction'
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
> error: ISO C++ forbids forward references to 'enum' types
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>  ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:30:
> error: expected '(' for function-style cast or type construction
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>  ~~~ ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:24:
> error: field has incomplete type 'enum direction'
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:78:14:
> note: forward declaration of 'IMUSANT::direction'
>
> enum direction : int { descending=-1, repeat=0, ascending = 1,
> vertical_bottomtotop };
>
>  ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:14:
> error: ISO C++ forbids forward references to 'enum' types
>
> enum basic : int { unison = 0, second=1, third, fourth, fifth,
> sixth, seventh };
>
>  ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:26:
> error: expected '(' for function-style cast or type construction
>
> enum basic : int { unison = 0, second=1, third, fourth, fifth,
> sixth, seventh };
>
>  ~~~ ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:20:
> error: field has incomplete type 'enum basic'
>
> enum basic : int { unison = 0, second=1, third, fourth, fifth,
> sixth, seventh };
>
>
> sers/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:14:
> error: ISO C++ forbids forward references to 'enum' types
>
> enum basic : int { unison = 0, second=1, third, fourth, fifth,
> sixth, seventh };
>
>  ^
>
> /Users/seanwayland/Desktop/CATSMAT-master/catsmat/catsmat/cmake/../../libIMUSANT/DomainObjects/inc/IMUSANT_interval.h:80:26:
> error: expected '(' for function-style cast or type construction
>
> enum basic : int { unison = 0, second=1, third, fourth, fifth,
> sixth, seventh };
>
>  ~~~ ^
>
> 

Re: [CMake] Can not get C++ 11 support enabled

2017-07-11 Thread Petr Kmoch
As others have suggested, moving the add_executable() after the set() calls
is the correct solution.

The reason is that variables like CMAKE_CXX_STANDARD are used to
pre-initialise a target's properties when the target is created. In other
words, at the time add_executable() is called, CMake will inspect variables
like CMAKE_CXX_STANDARD and use them to initialise the target's properties
like CXX_STANDARD. It's the properties which really control the target's
build. See
https://cmake.org/cmake/help/latest/variable/CMAKE_CXX_STANDARD.html and
https://cmake.org/cmake/help/latest/prop_tgt/CXX_STANDARD.html for details.

The same applies to add_compile_options(). From its docs (
https://cmake.org/cmake/help/latest/command/add_compile_options.html ):
"Adds options to the compiler command line for targets in the current
directory and below that are added after this command is invoked"

But Craig is right that you shouldn't add `-std` directly, but use
CXX_STANDARD and CXX_EXTENSIONS instead.

Petr

On 11 July 2017 at 07:21, Craig Scott  wrote:

> As well as moving the add_executable() call after you set the various
> CMAKE_CXX... variables, you should also replace the call to
> add_compile_options(-std=c++11) with the following:
>
> set(CMAKE_CXX_EXTENSIONS OFF)
>
>
> On Tue, Jul 11, 2017 at 3:11 PM, Michael Ellery 
> wrote:
>
>>
>> > On Jul 10, 2017, at 10:07 PM, Florian Lindner 
>> wrote:
>> >
>> > Hello,
>> >
>> > my complete cmake file looks like that:
>> >
>> > cmake_minimum_required (VERSION 3.1)
>> > project(Preallocation)
>> > add_executable(prealloc prealloc_parallel.cpp)
>> >
>> > set(CMAKE_CXX_STANDARD 11)
>> > set(CMAKE_CXX_STANDARD_REQUIRED ON)
>> > add_compile_options(-std=c++11)
>> >
>> > find_library(petsc petsc
>> >  PATHS $ENV{PETSC_DIR}/$ENV{PETSC_ARCH}/lib)
>> > if(NOT petsc)
>> >  message(FATAL_ERROR "petsc was not found")
>> > endif()
>> > target_link_libraries(prealloc ${petsc})
>> >
>> > find_package(Boost 1.60.0
>> >  REQUIRED
>> >  COMPONENTS program_options)
>> > target_link_libraries(prealloc ${Boost_LIBRARIES})
>> >
>> > find_package(MPI
>> >  REQUIRED)
>> > target_link_libraries(prealloc ${MPI_LIBRARIES})
>> >
>> > set(COMPILE_FLAGS  ${COMPILE_FLAGS} ${MPI_COMPILE_FLAGS})
>> > set(LINK_FLAGS ${LINK_FLAGS} ${MPI_LINK_FLAGS})
>> >
>>
>> I would try moving the add_executable() to the end of the CMakeLists file
>> (after the set() and find_library calls…)
>>
>
-- 

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] Cannot get a 64-bit build of MySQL on a 64-bit Windows machine

2017-07-11 Thread Petr Kmoch
Hi,

when generating a Visual Studio buildsystem with CMake, you can specify the
target architecture. If you don't, the default is 32-bit.

To specify the architecture, either put it into the generator name:

  cmake .. -G "Visual Studio 15 2017 Win64" 

or specify just the architecture using -A:

  cmake .. -A Win64 

See description of -G and -A in CMake docs:
https://cmake.org/cmake/help/latest/manual/cmake.1.html

Petr

On 10 July 2017 at 22:06, A.M. Sabuncu  wrote:

> I am completely new to CMake, and am using to build MySQL 5.7.18 on
> Windows 10 x64, using the following command:
>
> cmake .. -DDOWNLOAD_BOOST=1 -DWITH_BOOST="C:\Boost" -DENABLE_DOWNLOADS=1
>
> I have VS 2017 installed, and I am on 64 bit machine, but for some reason,
> the above command produces the following output:
>
> The CXX compiler identification is MSVC 19.10.25019.0
> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual
> Studio/2017/Professional/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe
> -- works
>
> The correct compiler is in the HostX64/x64 folder.
>
> Thinking that CMake might be looking it up from there, I checked the
> processor architecture environment variable from the same cmd.exe that I
> launched the CMake command from, and here's the result:
>
> PROCESSOR_ARCHITECTURE=AMD64
>
> When I follow the above CMake command with the following:
>
> devenv MySQL.sln /build RelWithDebInfo
>
> I get 32-bit results generated, which is not what I want.
>
> How can I get CMake to generate a 64-bit build?
>
> Thanks so much.
>
>
> --
>
> 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