[Cmake-commits] CMake branch, master, updated. v3.14.0-474-g94be5f9

2019-03-21 Thread Kitware Robot via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  94be5f9344aa770d38bc5487aa57ba9566512a1e (commit)
  from  fac093802a85cad720efe9e42957014b3b5c5561 (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=94be5f9344aa770d38bc5487aa57ba9566512a1e
commit 94be5f9344aa770d38bc5487aa57ba9566512a1e
Author: Kitware Robot 
AuthorDate: Fri Mar 22 00:01:09 2019 -0400
Commit: Kitware Robot 
CommitDate: Fri Mar 22 00:01:09 2019 -0400

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 243d8fc..672ceae 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 14)
-set(CMake_VERSION_PATCH 20190321)
+set(CMake_VERSION_PATCH 20190322)
 #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
https://cmake.org/mailman/listinfo/cmake-commits


[CMake] CPack/WiX shortcuts with custom arguments

2019-03-21 Thread Cook, Steven (G)
Hi,

I'm attempting to transition from NSIS to WiX for our Windows installer and 
have been unable to find a way to create customised shortcuts with WiX (I would 
like to specify both the working directory and command line parameters).

Some approaches I've tried are:

* Specifying CPACK_PACKAGE_EXECUTABLES, and then using 
CPACK_WIX_PATCH_FILE to modify the shortcut. This approach doesn't work because 
the patching mechanism can only add new XML tags; it is unable to add or modify 
properties on existing tags.

* Creating the shortcut myself via CPACK_WIX_EXTRA_SOURCES. This 
doesn't work because PROGRAM_MENU_FOLDER is not defined in directories.wxs 
unless cpack is creating shortcuts itself. And I can't define this directory 
myself because the patching mechanism doesn't allow modifications to the top 
level TARGETDIR directory.

Ideas of things that might work but which are not ideal:

* Create an unwanted shortcut with cpack and then define my own 
shortcuts with CPACK_WIX_EXTRA_SOURCES. But then there is an unwanted shortcut.

* Create separate .bat files for each start menu item so that working 
directory and command line parameters are not required.

Is there anything else I can try?

Thanks
Steve
-- 

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:
https://cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake Project Generation Speedup

2019-03-21 Thread Robert Maynard via CMake
A round of performance improvements to generate time was done as part
of CMake 3.11 and that significantly helped. What would be helpful is
a performance analysis run of CMake itself to determine if the issue
is that we are IO bound ( and need to do multi-threaded writes ) or
compute bound.

While this information will be project dependent, it would be great to
start getting samples from the community.

On Wed, Mar 20, 2019 at 1:53 PM J. Caleb Wherry  wrote:
>
> Did anything ever come of this?
>
> I am in a similar boat: we have >800 targets on our full build (native C++, 
> Managed C++, C#, Java, CUDA, etc) and the majority of the time for the 
> configure/generate steps takes place in the generate step (>70%).
>
> I understand there is a lot of IO since the generate step has to write the 
> project files and filters for each C++ project (the majority of our projects) 
> for VS generators (what we use). I'm just looking to see if there is anything 
> to look at or potentially speedup up the generate step besides "get a faster 
> drive".
>
> Thanks!
> -Caleb
>
> On Thu, Nov 17, 2016 at 11:15 AM Damian  wrote:
>>
>> Hi all,
>>
>> We are still in the process of switching our large Make-based build to 
>> CMake. One of the issues we're running into is the time it takes to reparse 
>> and regenerate the CMake project (whether ninja, VS, or make) after touching 
>> any CMake file. To give you an idea, we have about 1000 targets and that 
>> takes a good 2 min for CMake to rerun.
>>
>> Are there any plans to speed this up? Maybe parallelize it in some way or do 
>> a better job regenerating only what needs regenerating? Is there anything we 
>> can do on our side to reduce our regeneration times?
>>
>> For example, if using a VS generator, each directory in the source that has 
>> a CMakeLists.txt gets a .vcproj and .sln generated. Ideally, if I touch one 
>> of those CMakeLists.txt, only that .sln/.vcproj would get regenerated.
>>
>> Thanks for any 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
>
>
>
> --
> J. Caleb Wherry
> Scientific Software Engineer
>
> http://www.calebwherry.com
> +1 (615) 708-5651
> calebwhe...@gmail.com
> --
>
> 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:
> https://cmake.org/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:
https://cmake.org/mailman/listinfo/cmake


Re: [cmake-developers] cmake server to cmake file api swicth

2019-03-21 Thread Brad King via cmake-developers
On 3/21/19 2:19 PM, Eric Noulard wrote:
> Can any CMake developer that has been participating in this new
> file api shed some light on the rational of this foreseen switch?
> I'm just curious about it. What was wrong/problematic with server mode?
> Does the new file api solves some IDE integration issue?

The file-api approach does not require a long-running CMake server
process and the associated memory consumption.  It also offers a better
story for format evolution (versioned queries, versioned replies).

The main improvement in the reported codemodel is the availability
of backtraces.

The tracking issue is here:

* https://gitlab.kitware.com/cmake/cmake/issues/18398

Issues that led to it include:

* https://gitlab.kitware.com/cmake/cmake/issues/17753
* https://gitlab.kitware.com/cmake/cmake/issues/17539

-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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread Brad King via cmake-developers
On 3/21/19 2:01 PM, kevin wrote:
> I have not actually seen the file, because windows defender is
> preventing the download from completing.

I just tried using MS Edge on an up-to-date Win 10 Pro with
Windows Defender enabled.  It is able to download and scan
the file, and finds nothing.

-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:
https://cmake.org/mailman/listinfo/cmake-developers


[cmake-developers] cmake server to cmake file api swicth

2019-03-21 Thread Eric Noulard
Hi there,

I saw that CMake was apparently switching from CMake server mode (
https://cmake.org/cmake/help/v3.14/manual/cmake-server.7.html) to file api (
https://cmake.org/cmake/help/v3.14/manual/cmake-file-api.7.html).

I first saw it in CMake 3.14 rc and final announce:
https://cmake.org/pipermail/cmake/2019-March/069155.html

However I didn't see much discussion about that on either developer or user
ML beside recent statement from Brad
https://cmake.org/pipermail/cmake-developers/2019-March/031129.html
telling that server mode will certainly be deprecated in favor of file api.

Can any CMake developer that has been participating in this new file api
shed some light on the rational of this foreseen switch?
I'm just curious about it. What was wrong/problematic with server mode?
Does the new file api solves some IDE integration issue?

-- 
Eric
-- 

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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread kevin
Yes, your correct on the url. Using the link from your email. Gave me the same 
Trojan. I have not actually seen the file, because windows defender is 
preventing the download from completing.

Sent from my iPhone

> On Mar 21, 2019, at 12:45 PM, Brad King  wrote:
> 
>> On 3/21/19 12:31 PM, kevin wrote:
>> Linked from https://camel.org/download
> 
> I'll assume you meant `cmake.org` there.
> 
>> Platform->windows win64-x64 installer: ...
> 
> That would be
> 
>  
> https://github.com/Kitware/CMake/releases/download/v3.14.0/cmake-3.14.0-win64-x64.msi
> 
> I downloaded it and got a SHA-256 sum of
> 
>  4cbc62929f313d9890d377fa022753e9e5509e7afa3e16978127b7b2813633cf
> 
> which matches our published signatures.
> 
> What tool claims the binary contains Skeeyah?
> 
> -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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread Brad King via cmake-developers
On 3/21/19 12:31 PM, kevin wrote:
> Linked from https://camel.org/download

I'll assume you meant `cmake.org` there.

> Platform->windows win64-x64 installer: ...

That would be

  
https://github.com/Kitware/CMake/releases/download/v3.14.0/cmake-3.14.0-win64-x64.msi

I downloaded it and got a SHA-256 sum of

  4cbc62929f313d9890d377fa022753e9e5509e7afa3e16978127b7b2813633cf

which matches our published signatures.

What tool claims the binary contains Skeeyah?

-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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread kevin
Linked from https://camel.org/download

Platform->windows win64-x64 installer: ...

Sent from my iPhone

> On Mar 21, 2019, at 12:20 PM, Brad King  wrote:
> 
>> On 3/21/19 12:05 PM, kevin wrote:
>> I just tried to install the latest release and noticed it contained Skeeyah.l
> 
> What is the URL of the binary you downloaded?
> What is the sha256 sum of the installer file on your local disk?
> 
> -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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] signing Windows binaries

2019-03-21 Thread Brad King via cmake-developers
On 3/21/19 12:21 PM, Cristian Adam wrote:
> I think it would be great if Kitware would buy an authenticode
> certificate to sign the Windows builds. Is there a bug report on this?

I don't recall if there is an open issue but we are aware that the
Windows binaries could be signed and are not.  We do offer gpg-signed
SHA-256 hash files on the download page that can be used to verify
downloads.

-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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread Cristian Adam
Also worth mentioning that Virustotal has nothing on both 32 and 64 bit
files:

https://www.virustotal.com/gui/file/913b231e189824b679b60d9c9d45549bb047866431cd023afbb0b9d10e579279/detection
https://www.virustotal.com/gui/file/4cbc62929f313d9890d377fa022753e9e5509e7afa3e16978127b7b2813633cf/detection

I think it would be great if Kitware would buy an authenticode certificate
to sign the Windows builds. Is there a bug report on this?

Cheers,
Cristian.

On Thu, Mar 21, 2019 at 5:19 PM Brad King via cmake-developers <
cmake-developers@cmake.org> wrote:

> On 3/21/19 12:05 PM, kevin wrote:
> > I just tried to install the latest release and noticed it contained
> Skeeyah.l
>
> What is the URL of the binary you downloaded?
> What is the sha256 sum of the installer file on your local disk?
>
> -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:
> https://cmake.org/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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [cmake-developers] Trojan in latest release

2019-03-21 Thread Brad King via cmake-developers
On 3/21/19 12:05 PM, kevin wrote:
> I just tried to install the latest release and noticed it contained Skeeyah.l

What is the URL of the binary you downloaded?
What is the sha256 sum of the installer file on your local disk?

-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:
https://cmake.org/mailman/listinfo/cmake-developers


[cmake-developers] Trojan in latest release

2019-03-21 Thread kevin
I just tried to install the latest release and noticed it contained Skeeyah.l


-- 

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:
https://cmake.org/mailman/listinfo/cmake-developers


[Cmake-commits] CMake branch, master, updated. v3.14.0-473-gfac0938

2019-03-21 Thread Kitware Robot via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  fac093802a85cad720efe9e42957014b3b5c5561 (commit)
   via  ea9a2c175929f8276ef80ee85f81675fccd9c757 (commit)
  from  e09c606eb47c13bd435892625943e95bb9452996 (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=fac093802a85cad720efe9e42957014b3b5c5561
commit fac093802a85cad720efe9e42957014b3b5c5561
Merge: e09c606 ea9a2c1
Author: Kyle Edwards 
AuthorDate: Thu Mar 21 14:50:07 2019 +
Commit: Kitware Robot 
CommitDate: Thu Mar 21 10:50:38 2019 -0400

Merge topic 'tar-improve-error-handling'

ea9a2c1759 cmake: tar: Parse 'cmake -E tar' arguments

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ea9a2c175929f8276ef80ee85f81675fccd9c757
commit ea9a2c175929f8276ef80ee85f81675fccd9c757
Author: Bartosz Kosiorek 
AuthorDate: Fri Mar 8 23:20:52 2019 +0100
Commit: Kyle Edwards 
CommitDate: Wed Mar 20 09:28:49 2019 -0400

cmake: tar: Parse 'cmake -E tar' arguments

diff --git a/Help/release/dev/cmake-e-tar-error-handling.rst 
b/Help/release/dev/cmake-e-tar-error-handling.rst
new file mode 100644
index 000..d1f2c72
--- /dev/null
+++ b/Help/release/dev/cmake-e-tar-error-handling.rst
@@ -0,0 +1,8 @@
+cmake-e-tar-error-handling
+--
+
+* The :manual:`cmake(1)` ``-E tar`` tool now parses all flags, and if an
+  invalid flag was provided, a warning is issued.
+* The :manual:`cmake(1)` ``-E tar`` tool now displays an error if no action
+  flag was specified, along with a list of possible actions: ``t`` (list),
+  ``c`` (create) or ``x`` (extract).
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index 60e8c18..352762c 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -412,6 +412,14 @@ public:
   /** Setup the environment to enable VS 8 IDE output.  */
   static void EnableVSConsoleOutput();
 
+  enum cmTarAction
+  {
+TarActionCreate,
+TarActionList,
+TarActionExtract,
+TarActionNone
+  };
+
   /** Create tar */
   enum cmTarCompression
   {
@@ -420,6 +428,7 @@ public:
 TarCompressXZ,
 TarCompressNone
   };
+
   static bool ListTar(const char* outFileName, bool verbose);
   static bool CreateTar(const char* outFileName,
 const std::vector& files,
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 0828a16..8d63971 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -1078,21 +1078,47 @@ int 
cmcmd::ExecuteCMakeCommand(std::vector& args)
   files.push_back(arg);
 }
   }
+  cmSystemTools::cmTarAction action = cmSystemTools::TarActionNone;
   cmSystemTools::cmTarCompression compress =
 cmSystemTools::TarCompressNone;
   bool verbose = false;
   int nCompress = 0;
-  if (flags.find_first_of('j') != std::string::npos) {
-compress = cmSystemTools::TarCompressBZip2;
-++nCompress;
-  }
-  if (flags.find_first_of('J') != std::string::npos) {
-compress = cmSystemTools::TarCompressXZ;
-++nCompress;
-  }
-  if (flags.find_first_of('z') != std::string::npos) {
-compress = cmSystemTools::TarCompressGZip;
-++nCompress;
+
+  for (auto flag : flags) {
+switch (flag) {
+  case '-':
+  case 'f': {
+// Keep for backward compatibility. Ignored
+  } break;
+  case 'j': {
+compress = cmSystemTools::TarCompressBZip2;
+++nCompress;
+  } break;
+  case 'J': {
+compress = cmSystemTools::TarCompressXZ;
+++nCompress;
+  } break;
+  case 'z': {
+compress = cmSystemTools::TarCompressGZip;
+++nCompress;
+  } break;
+  case 'v': {
+verbose = true;
+  } break;
+  case 't': {
+action = cmSystemTools::TarActionList;
+  } break;
+  case 'c': {
+action = cmSystemTools::TarActionCreate;
+  } break;
+  case 'x': {
+action = cmSystemTools::TarActionExtract;
+  } break;
+  default: {
+cmSystemTools::Message(
+  std::string("tar: Unknown argument: ") + flag, "Warning");
+  }
+}
   }
   if ((format == "7zip" || format == "zip") && nCompress > 0) {
 cmSystemTools::Error("Can not use compression flags with format: " +
@@ -1104,16 +1130,12 @@ int 
cmcmd::ExecuteCMakeCommand(std::vector& args)
  "at most one flag of z, j, or J may be used");
 

[Cmake-commits] CMake branch, master, updated. v3.14.0-471-ge09c606

2019-03-21 Thread Kitware Robot via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  e09c606eb47c13bd435892625943e95bb9452996 (commit)
   via  85415afbdc65baa5dbe86a61008a3a3373e74e09 (commit)
   via  616282a5ce05d29ddad12c43e64e0764d91e817b (commit)
  from  1e9cb46c8a9c78261d22ad40af5aff1635b919cf (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=e09c606eb47c13bd435892625943e95bb9452996
commit e09c606eb47c13bd435892625943e95bb9452996
Merge: 1e9cb46 85415af
Author: Brad King 
AuthorDate: Thu Mar 21 14:02:59 2019 +
Commit: Kitware Robot 
CommitDate: Thu Mar 21 10:03:10 2019 -0400

Merge topic 'dont_do_compiler_feature_checks_for_version_with_no_features'

85415afbdc CompileFeatures: Don't try_compile for language levels with no 
features
616282a5ce CMake: Provide language level compile features lists

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=85415afbdc65baa5dbe86a61008a3a3373e74e09
commit 85415afbdc65baa5dbe86a61008a3a3373e74e09
Author: Robert Maynard 
AuthorDate: Wed Mar 6 12:24:48 2019 -0500
Commit: Robert Maynard 
CommitDate: Wed Mar 20 09:10:10 2019 -0700

CompileFeatures: Don't try_compile for language levels with no features

Previously Compilers always had to run a try_compile to determine what
language level each feature mapped to. Now we can skip the try_compile
when a language level has no features.

diff --git a/Modules/Internal/FeatureTesting.cmake 
b/Modules/Internal/FeatureTesting.cmake
index de336e7..b9c20ec 100644
--- a/Modules/Internal/FeatureTesting.cmake
+++ b/Modules/Internal/FeatureTesting.cmake
@@ -71,10 +71,20 @@ endmacro()
 
 macro(_record_compiler_features_c std)
   list(APPEND CMAKE_C${std}_COMPILE_FEATURES c_std_${std})
-  _record_compiler_features(C "${CMAKE_C${std}_STANDARD_COMPILE_OPTION}" 
CMAKE_C${std}_COMPILE_FEATURES)
+
+  get_property(lang_level_has_features GLOBAL PROPERTY 
CMAKE_C${std}_KNOWN_FEATURES)
+  if(lang_level_has_features)
+_record_compiler_features(C "${CMAKE_C${std}_STANDARD_COMPILE_OPTION}" 
CMAKE_C${std}_COMPILE_FEATURES)
+  endif()
+  unset(lang_level_has_features)
 endmacro()
 
 macro(_record_compiler_features_cxx std)
   list(APPEND CMAKE_CXX${std}_COMPILE_FEATURES cxx_std_${std})
-  _record_compiler_features(CXX "${CMAKE_CXX${std}_STANDARD_COMPILE_OPTION}" 
CMAKE_CXX${std}_COMPILE_FEATURES)
+
+  get_property(lang_level_has_features GLOBAL PROPERTY 
CMAKE_CXX${std}_KNOWN_FEATURES)
+  if(lang_level_has_features)
+_record_compiler_features(CXX "${CMAKE_CXX${std}_STANDARD_COMPILE_OPTION}" 
CMAKE_CXX${std}_COMPILE_FEATURES)
+  endif()
+  unset(lang_level_has_features)
 endmacro()

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=616282a5ce05d29ddad12c43e64e0764d91e817b
commit 616282a5ce05d29ddad12c43e64e0764d91e817b
Author: Robert Maynard 
AuthorDate: Fri Mar 1 17:12:35 2019 -0500
Commit: Robert Maynard 
CommitDate: Wed Mar 20 09:10:07 2019 -0700

CMake: Provide language level compile features lists

Now CMake stores what compile features are associated with each
language level and exposes them as global properties.

diff --git a/Source/cmState.cxx b/Source/cmState.cxx
index a08e9b8..fa7df0b 100644
--- a/Source/cmState.cxx
+++ b/Source/cmState.cxx
@@ -556,9 +556,28 @@ const char* cmState::GetGlobalProperty(const std::string& 
prop)
   if (prop == "CMAKE_C_KNOWN_FEATURES") {
 return _EACH_C_FEATURE(STRING_LIST_ELEMENT)[1];
   }
+  if (prop == "CMAKE_C90_KNOWN_FEATURES") {
+return _EACH_C90_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
+  if (prop == "CMAKE_C99_KNOWN_FEATURES") {
+return _EACH_C99_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
+  if (prop == "CMAKE_C11_KNOWN_FEATURES") {
+return _EACH_C11_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
   if (prop == "CMAKE_CXX_KNOWN_FEATURES") {
 return _EACH_CXX_FEATURE(STRING_LIST_ELEMENT)[1];
   }
+  if (prop == "CMAKE_CXX98_KNOWN_FEATURES") {
+return _EACH_CXX98_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
+  if (prop == "CMAKE_CXX11_KNOWN_FEATURES") {
+return _EACH_CXX11_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
+  if (prop == "CMAKE_CXX14_KNOWN_FEATURES") {
+return _EACH_CXX14_FEATURE(STRING_LIST_ELEMENT)[1];
+  }
+
 #undef STRING_LIST_ELEMENT
   return this->GlobalProperties.GetPropertyValue(prop);
 }
diff --git a/Source/cmake.h b/Source/cmake.h
index 1ffeabc..778b8a6 100644
--- a/Source/cmake.h
+++ b/Source/cmake.h
@@ -562,40 +562,38 @@ private:
   "not errors."   \
   }
 
+#define FOR_EACH_C90_FEATURE(F) 

[Cmake-commits] CMake branch, master, updated. v3.14.0-451-gb581cd0

2019-03-21 Thread Kitware Robot via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
   via  b581cd01744b5d897ef964176d32ef1c1b7e421f (commit)
   via  12cf0a8e4846e2adcafa6c8527911aad7ed15994 (commit)
   via  c63bd7e06ceb488aeec9447b9faeb4c901b5dff7 (commit)
   via  fbc0f355eac3b1c700da7a6c6cc30e1303282b9b (commit)
   via  b743058003e86b15c8d9a5043266c18744d5eae3 (commit)
   via  ce730e9c22a8c3772ca90cc5bd217f0660daf242 (commit)
   via  8cc16c942013fd640eda76c3cae4be0a82eea277 (commit)
   via  8f8d056051824d0d0d4361f2b94f3afec52ecf0b (commit)
   via  9603e418e52899f865cada55572f623134bc2d99 (commit)
   via  d3dcf8d7745a1f1435797cb3a1451ef4ddb7ce2c (commit)
  from  be9a133cbf6f055179907fabd6efa66d36cd16b5 (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=b581cd01744b5d897ef964176d32ef1c1b7e421f
commit b581cd01744b5d897ef964176d32ef1c1b7e421f
Merge: 12cf0a8 b743058
Author: Brad King 
AuthorDate: Thu Mar 21 09:41:52 2019 -0400
Commit: Brad King 
CommitDate: Thu Mar 21 09:41:52 2019 -0400

Merge branch 'release-3.14'


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=12cf0a8e4846e2adcafa6c8527911aad7ed15994
commit 12cf0a8e4846e2adcafa6c8527911aad7ed15994
Merge: c63bd7e 8f8d056
Author: Brad King 
AuthorDate: Thu Mar 21 13:37:58 2019 +
Commit: Kitware Robot 
CommitDate: Thu Mar 21 09:40:09 2019 -0400

Merge topic 'armcc-compiler-id'

8f8d056051 ARMCC: Fix identification of ARM compiler when it defines GNU 
macros

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c63bd7e06ceb488aeec9447b9faeb4c901b5dff7
commit c63bd7e06ceb488aeec9447b9faeb4c901b5dff7
Merge: fbc0f35 ce730e9
Author: Brad King 
AuthorDate: Thu Mar 21 13:38:05 2019 +
Commit: Kitware Robot 
CommitDate: Thu Mar 21 09:39:07 2019 -0400

Merge topic 'doc-cmp0082'

ce730e9c22 Help: Clarify policy CMP0082 documentation

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fbc0f355eac3b1c700da7a6c6cc30e1303282b9b
commit fbc0f355eac3b1c700da7a6c6cc30e1303282b9b
Merge: be9a133 d3dcf8d
Author: Brad King 
AuthorDate: Thu Mar 21 13:37:51 2019 +
Commit: Kitware Robot 
CommitDate: Thu Mar 21 09:37:59 2019 -0400

Merge topic 'eclipse-interface-lib'

d3dcf8d774 Eclipse: Fix extra generator to not crash on interface libraries

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


---

Summary of changes:
 Help/policy/CMP0082.rst| 8 +---
 Modules/CMakeCompilerIdDetection.cmake | 2 +-
 Source/cmExtraEclipseCDT4Generator.cxx | 5 +
 3 files changed, 11 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
https://cmake.org/mailman/listinfo/cmake-commits


[Cmake-commits] CMake branch, release, updated. v3.14.0-12-gb743058

2019-03-21 Thread Kitware Robot via Cmake-commits
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, release has been updated
   via  b743058003e86b15c8d9a5043266c18744d5eae3 (commit)
   via  ce730e9c22a8c3772ca90cc5bd217f0660daf242 (commit)
   via  8cc16c942013fd640eda76c3cae4be0a82eea277 (commit)
   via  8f8d056051824d0d0d4361f2b94f3afec52ecf0b (commit)
   via  9603e418e52899f865cada55572f623134bc2d99 (commit)
   via  d3dcf8d7745a1f1435797cb3a1451ef4ddb7ce2c (commit)
  from  5b6c6c2d80c6dee20b84dbec64e42ce2d426d33e (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/policy/CMP0082.rst| 8 +---
 Modules/CMakeCompilerIdDetection.cmake | 2 +-
 Source/cmExtraEclipseCDT4Generator.cxx | 5 +
 3 files changed, 11 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
CMake
___
Cmake-commits mailing list
Cmake-commits@cmake.org
https://cmake.org/mailman/listinfo/cmake-commits


Re: [cmake-developers] [CDT] Improving CDT4 generator

2019-03-21 Thread Brad King via cmake-developers
On 3/20/19 5:20 PM, Alexander Neundorf wrote:
> On 2019 M03 20, Wed 13:53:49 CET Brad King wrote:
>> CMake's new file-api:
>>
>>   https://cmake.org/cmake/help/v3.14/manual/cmake-file-api.7.html
>>
>> That is now the intended way for third-party IDEs to display CMake projects.
> 
> so this is now preferred over the server-mode ?

Yes.  There have been a number of problems with server mode and it
will likely be deprecated in favor of the file-api.

-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:
https://cmake.org/mailman/listinfo/cmake-developers


Re: [CMake] CMake Project Generation Speedup

2019-03-21 Thread Cristian Adam
Hi,

CMake has for Visual Studio is a multi configuration generator. (Debug,
Release, RelMinSize, RelWithDbgInformation).

If you specify only one configuration you should cut the generation time to
1/4th.

See
https://cmake.org/cmake/help/latest/variable/CMAKE_CONFIGURATION_TYPES.html#variable:CMAKE_CONFIGURATION_TYPES

Cheers,
Cristian

On Wed, Mar 20, 2019, 21:53 J. Caleb Wherry  wrote:

> Did anything ever come of this?
>
> I am in a similar boat: we have >800 targets on our full build (native
> C++, Managed C++, C#, Java, CUDA, etc) and the majority of the time for the
> configure/generate steps takes place in the generate step (>70%).
>
> I understand there is a lot of IO since the generate step has to write the
> project files and filters for each C++ project (the majority of our
> projects) for VS generators (what we use). I'm just looking to see if there
> is anything to look at or potentially speedup up the generate step besides
> "get a faster drive".
>
> Thanks!
> -Caleb
>
> On Thu, Nov 17, 2016 at 11:15 AM Damian  wrote:
>
>> Hi all,
>>
>> We are still in the process of switching our large Make-based build to
>> CMake. One of the issues we're running into is the time it takes to reparse
>> and regenerate the CMake project (whether ninja, VS, or make) after
>> touching any CMake file. To give you an idea, we have about 1000 targets
>> and that takes a good 2 min for CMake to rerun.
>>
>> Are there any plans to speed this up? Maybe parallelize it in some way or
>> do a better job regenerating only what needs regenerating? Is there
>> anything we can do on our side to reduce our regeneration times?
>>
>> For example, if using a VS generator, each directory in the source that
>> has a CMakeLists.txt gets a .vcproj and .sln generated. Ideally, if I touch
>> one of those CMakeLists.txt, only that .sln/.vcproj would get regenerated.
>>
>> Thanks for any 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
>
>
>
> --
> J. Caleb Wherry
> *Scientific Software Engineer*
>
> 
> http://www.calebwherry.com
> +1 (615) 708-5651
> calebwhe...@gmail.com
> --
>
> 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:
> https://cmake.org/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:
https://cmake.org/mailman/listinfo/cmake


Re: [CMake] CMake Project Generation Speedup

2019-03-21 Thread Gregor Jasny via CMake

Hello,

On 17.11.16 17:15, Damian wrote:
We are still in the process of switching our large Make-based build to 
CMake. One of the issues we're running into is the time it takes to 
reparse and regenerate the CMake project (whether ninja, VS, or make) 
after touching any CMake file. To give you an idea, we have about 1000 
targets and that takes a good 2 min for CMake to rerun.


Are there any plans to speed this up?


CMake VisualStudio and Xcode generator generates one solution / 
xcodeproj per project() commmand. Due to the shared vcxproj files this 
is not too expensive for Visual Studio. But for Xcode it is. You can 
disable that behavior by specifying


  -DCMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY=ON

on the command line.

Thanks,
-Gregor
--

Powered by www.kitware.com

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

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

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

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

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