[Cmake-commits] CMake branch, master, updated. v3.10.2-896-g5189c1e

2018-01-24 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  5189c1e322381c65aa849e3b52d9b1e3b3541979 (commit)
  from  05e9cdb81ecddba496f21d0c9e35e9536261337f (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=5189c1e322381c65aa849e3b52d9b1e3b3541979
commit 5189c1e322381c65aa849e3b52d9b1e3b3541979
Author: Kitware Robot <kwro...@kitware.com>
AuthorDate: Thu Jan 25 00:02:30 2018 -0500
Commit: Kitware Robot <kwro...@kitware.com>
CommitDate: Thu Jan 25 00:02:30 2018 -0500

CMake Nightly Date Stamp

diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index bab642b..27b7cd3 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 10)
-set(CMake_VERSION_PATCH 20180124)
+set(CMake_VERSION_PATCH 20180125)
 #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] compile_pdb_name example

2018-01-24 Thread Scott Bloom
Does anyone have an example of COMPILE_PDB_NAME and how to set it?

Scott
-- 

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] Link Time Code Generation (LTGC) by default, for Release configurations of Visual Studio projects?

2018-01-24 Thread Cristian Adam
Hi,

I had a quick check to see if CMake 3.10 for which compilers it has support
for Interprocedural Optimization

(IPO, or LTCG as known on Visual C++).

Modules/Compiler had only for *GNU*, *Clang* and *PGI* the following:
set(_CMAKE_${lang}_IPO_MAY_BE_SUPPORTED_BY_COMPILER YES)

QNX with QCC didn't have it set to YES even though nowdays QNX comes with
GCC 5.4.0 on QNX 7.0, which should be just fine.

It would be nice if CMake would have support for IPO on Visual C++.

The steps would be to set the right variables into
Modules/Compiler/MSVC-CXX.cmake, change the CheckIPOSupported

module, change some flags in some places,update tests, documentation, and
so on.

Shouldn't be hard to add this feature.

Cheers,
Cristian.



On Wed, Jan 24, 2018 at 9:06 PM, Niels Dekker <
niels_dekker_address_until_2...@xs4all.nl> wrote:

> When a Visual C++ project is created within Visual Studio (by File menu,
> New, Project...), it has Link Time Code Generation (LTGC) by default, for
> its Release configurations: Compiler option /GL and linker option /LTCG.
> However, when the Visual C++ project is generated by CMake, it does not
> have LTGC, by default. LTCG looks like a very useful feature to me. I think
> it's worth enabling the feature by default, for Release configurations.
> What do you think?
>
>
> Some details:
>
> I created a "dummy" Visual C++ project in Visual Studio 2017 (Version
> 15.5.4), by File menu, New, Project..., and I also generated one by CMake
> (version 3.10.2), using a very minimal CMakeLists.txt
>
> The Visual C++ project created by Visual Studio 2017 has the following
> compile options, by default, for Release (x64):
>
> /permissive- /GS /GL /W3 /Gy /Zc:wchar_t /Zi /Gm- /O2 /sdl
> /Fd"x64\Release\vc141.pdb" /Zc:inline /fp:precise /D "_MBCS"
> /errorReport:prompt /WX- /Zc:forScope /Gd /Oi /MD /Fa"x64\Release\" /EHsc
> /nologo /Fo"x64\Release\" /Fp"x64\Release\MyVS2015Project.pch"
> /diagnostics:classic
>
> And the following linker options:
>
> /OUT:"F:\X\Src\MyProject\MyVS2015Project\x64\Release\MyVS2015Project.exe"
> /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"F:\X\Src\MyProject\MyVS2
> 015Project\x64\Release\MyVS2015Project.pdb" /DYNAMICBASE "kernel32.lib"
> "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib"
> "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib"
> "odbccp32.lib" /DEBUG:FULL /MACHINE:X64 /OPT:REF
> /PGD:"F:\X\Src\MyProject\MyVS2015Project\x64\Release\MyVS2015Project.pgd"
> /MANIFESTUAC:"level='asInvoker' uiAccess='false'"
> /ManifestFile:"x64\Release\MyVS2015Project.exe.intermediate.manifest"
> /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
>
> The vcxproj file created by Visual Studio has
> "true" for its
> Release configurations.
>
>
> The Visual C++ project generated by CMake (Generator: Visual Studio 15
> 2017 Win64) has the following compile options, for its Release
> configuration:
>
> /GS /TP /W3 /Zc:wchar_t /Gm- /O2 /Ob2 /Fd"MyExecutable.dir\Release\vc141.pdb"
> /Zc:inline /fp:precise /D "WIN32" /D "_WINDOWS" /D "NDEBUG" /D
> "CMAKE_INTDIR=\"Release\"" /D "_MBCS" /errorReport:prompt /WX- /Zc:forScope
> /GR /Gd /MD /Fa"Release/" /EHsc /nologo /Fo"MyExecutable.dir\Release\"
> /Fp"MyExecutable.dir\Release\MyExecutable.pch" /diagnostics:classic
>
> And the following linker options:
>
> /OUT:"F:\X\Bin\vc141-64\MyProject\Release\MyExecutable.exe" /MANIFEST
> /NXCOMPAT /PDB:"F:/X/Bin/vc141-64/MyProject/Release/MyExecutable.pdb"
> /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib"
> "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib"
> "advapi32.lib" /IMPLIB:"F:/X/Bin/vc141-64/MyProject/Release/MyExecutable.lib"
> /MACHINE:X64 /INCREMENTAL:NO 
> /PGD:"F:\X\Bin\vc141-64\MyProject\Release\MyExecutable.pgd"
> /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'"
> /ManifestFile:"MyExecutable.dir\Release\MyExecutable.exe.intermediate.manifest"
> /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
>
> The vcxproj file generated by CMake does not have a
> "" tag.
>
>
> I hope you can consider adding LTCG to Release configurations of Visual
> C++ projects generated by CMake, by default.
>
>
> Kind regards, Niels
> --
> Niels Dekker
> Scientific programmer
> LKEB, Leiden University Medical Center
> --
>
> 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/opensou
> 

Re: [cmake-developers] Server handshake with only build directory

2018-01-24 Thread Isaiah Norton
Thanks! Apologies for missing that; I only tested on 3.9, and apparently
missed/overlooked docs-latest.

Best,
Isaiah

On Wed, Jan 24, 2018 at 11:29 AM, Tobias Hunger 
wrote:

> Hello,
>
> Daniel has beaten me to the punch:
> 187332b2fa169056a2c3682d9a7628d872b2d49b makes everything but the
> build directory optional. Looks like we need to increase the protocol
> version again:-)
>
> I just pushed a couple of patches to polish that patch a bit.
>
> Best Regards,
> Tobias
>
> On Tue, Jan 23, 2018 at 5:40 PM, Rich Chiodo 
> wrote:
> > Tobias, can you make sure it still supports passing the source directory
> > too?
> >
> >
> >
> > Otherwise we’ll have to have version dependent arguments that we pass to
> > CMake server.
> >
> >
> >
> > From: Isaiah Norton [mailto:isaiah.nor...@gmail.com]
> > Sent: Tuesday, January 23, 2018 7:16 AM
> > To: Brad King 
> > Cc: Tobias Hunger ; Rich Chiodo
> > ; CMake Developers 
> > Subject: Re: [cmake-developers] Server handshake with only build
> directory
> >
> >
> >
> >> Any objections from the core team about enabling server-mode with a
> >
> >
> >> build directory only? I can send in a patch, it is simple to add this.
> >
> > Fine with me.
> >
> >
> >
> > Awesome, thanks. Please cc me (@ihnorton).
> >
> >
> >
> > Isaiah
> >
> >
> >
> > On Tue, Jan 23, 2018 at 6:40 AM, Brad King 
> wrote:
> >
> > On 01/23/2018 04:55 AM, Tobias Hunger wrote:
> >> Any objections from the core team about enabling server-mode with a
> >> build directory only? I can send in a patch, it is simple to add this.
> >
> > Fine with me.
> >
> > This should be allowed only when the build tree already exists.
> >
> > Thanks,
> > -Brad
> >
> > --
> >
> > Powered by www.kitware.com
> >
> > Please keep messages on-topic and check the CMake FAQ at:
> > http://www.cmake.org/Wiki/CMake_FAQ
> >
> > Kitware offers various services to support the CMake community. For more
> > information on each offering, please visit:
> >
> > CMake Support: http://cmake.org/cmake/help/support.html
> > CMake Consulting: http://cmake.org/cmake/help/consulting.html
> > CMake Training Courses: http://cmake.org/cmake/help/training.html
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Follow this link to subscribe/unsubscribe:
> > 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


[CMake] Link Time Code Generation (LTGC) by default, for Release configurations of Visual Studio projects?

2018-01-24 Thread Niels Dekker
When a Visual C++ project is created within Visual Studio (by File menu, 
New, Project...), it has Link Time Code Generation (LTGC) by default, 
for its Release configurations: Compiler option /GL and linker option 
/LTCG. However, when the Visual C++ project is generated by CMake, it 
does not have LTGC, by default. LTCG looks like a very useful feature to 
me. I think it's worth enabling the feature by default, for Release 
configurations. What do you think?



Some details:

I created a "dummy" Visual C++ project in Visual Studio 2017 (Version 
15.5.4), by File menu, New, Project..., and I also generated one by 
CMake (version 3.10.2), using a very minimal CMakeLists.txt


The Visual C++ project created by Visual Studio 2017 has the following 
compile options, by default, for Release (x64):


/permissive- /GS /GL /W3 /Gy /Zc:wchar_t /Zi /Gm- /O2 /sdl 
/Fd"x64\Release\vc141.pdb" /Zc:inline /fp:precise /D "_MBCS" 
/errorReport:prompt /WX- /Zc:forScope /Gd /Oi /MD /Fa"x64\Release\" 
/EHsc /nologo /Fo"x64\Release\" /Fp"x64\Release\MyVS2015Project.pch" 
/diagnostics:classic


And the following linker options:

/OUT:"F:\X\Src\MyProject\MyVS2015Project\x64\Release\MyVS2015Project.exe" 
/MANIFEST /LTCG:incremental /NXCOMPAT 
/PDB:"F:\X\Src\MyProject\MyVS2015Project\x64\Release\MyVS2015Project.pdb" 
/DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" 
"comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" 
"uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X64 /OPT:REF 
/PGD:"F:\X\Src\MyProject\MyVS2015Project\x64\Release\MyVS2015Project.pgd" 
/MANIFESTUAC:"level='asInvoker' uiAccess='false'" 
/ManifestFile:"x64\Release\MyVS2015Project.exe.intermediate.manifest" 
/OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1


The vcxproj file created by Visual Studio has 
"true" for its 
Release configurations.



The Visual C++ project generated by CMake (Generator: Visual Studio 15 
2017 Win64) has the following compile options, for its Release 
configuration:


/GS /TP /W3 /Zc:wchar_t /Gm- /O2 /Ob2 
/Fd"MyExecutable.dir\Release\vc141.pdb" /Zc:inline /fp:precise /D 
"WIN32" /D "_WINDOWS" /D "NDEBUG" /D "CMAKE_INTDIR=\"Release\"" /D 
"_MBCS" /errorReport:prompt /WX- /Zc:forScope /GR /Gd /MD /Fa"Release/" 
/EHsc /nologo /Fo"MyExecutable.dir\Release\" 
/Fp"MyExecutable.dir\Release\MyExecutable.pch" /diagnostics:classic


And the following linker options:

/OUT:"F:\X\Bin\vc141-64\MyProject\Release\MyExecutable.exe" /MANIFEST 
/NXCOMPAT /PDB:"F:/X/Bin/vc141-64/MyProject/Release/MyExecutable.pdb" 
/DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" 
"shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "comdlg32.lib" 
"advapi32.lib" 
/IMPLIB:"F:/X/Bin/vc141-64/MyProject/Release/MyExecutable.lib" 
/MACHINE:X64 /INCREMENTAL:NO 
/PGD:"F:\X\Bin\vc141-64\MyProject\Release\MyExecutable.pgd" 
/SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" 
/ManifestFile:"MyExecutable.dir\Release\MyExecutable.exe.intermediate.manifest" 
/ERRORREPORT:PROMPT /NOLOGO /TLBID:1


The vcxproj file generated by CMake does not have a 
"" tag.



I hope you can consider adding LTCG to Release configurations of Visual 
C++ projects generated by CMake, by default.



Kind regards, Niels
--
Niels Dekker
Scientific programmer
LKEB, Leiden University Medical Center
--

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


[cmake-developers] Adding support for C# shared projects

2018-01-24 Thread Alan Rushforth
Hello,

I am currently working on adding support for C# shared projects to CMake,
as I have a project which uses them heavily which I would like to migrate
to CMake.

Shared projects are are effectively a bag of source files, which can be
used in other projects but which have no direct compilation output. The
best workaround for the lack of support I have found so far is to use
"VS_CSHARP_Link" to include all the source files that would have been in
the shared project in each project that referenced it. This works but the
result in VS is pretty ugly and unintuitive, particularly if you are using
the shared project concept heavily and end up with hundreds of identical
source files linked into every project, hence my desire add proper support.

Instead of a .csproj file, shared projects have both a .shproj and
.projitems file. The content of both is effectively a stripped down .csproj
file so I have been able to reuse a lot of the .csproj generation code to
create these.

What I would like people's suggestions on is the best way of a user
specifying they want a shared project rather than a normal class library.

I have implemented a "working" patch based on a new boolean target property
"VS_DOTNET_SHARED_PROJECT" but having read other issues I'm aware Michael
Stürmer likes to minimise these properties. Therefore I am interested in
people's opinions as to whether this is an acceptable approach, or what a
better approach might be. The other option I thought of was to use the
STATIC flag of the "add_library" command, as C# doesn't differentiate
between STATIC and SHARED libraries and shared projects are conceptually
similar(ish) to STATIC libraries. Personally I think this second approach
might be muddying concepts and therefore cause confusion but am interested
in any thoughts or other ideas.

Cheers,
Alan.
-- 

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] CMAKE :: mingw make files with response file for includes

2018-01-24 Thread Brad King
On 01/22/2018 07:54 AM, Brad King wrote:
> Yes, that use of `@` should be made configurable.
> 
> I'll take a look when I get a chance.

The IBM XL compiler needs this too to use `-qoptfile=`.
See fix here:

  https://gitlab.kitware.com/cmake/cmake/merge_requests/1691

-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-commits] CMake branch, master, updated. v3.10.2-895-g05e9cdb

2018-01-24 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  05e9cdb81ecddba496f21d0c9e35e9536261337f (commit)
   via  1a9da3c055d84479dc011ff66ecf887d92fadf23 (commit)
   via  56fd8b3c7272e3d57333a86b2214f8673b9d557a (commit)
   via  2de6aa846ffbfb8fe258828fc96121a514a31284 (commit)
   via  52573b32397caed753ac9e5318d77786a1ff801e (commit)
   via  93bc5848e75101477215c3131b7b7ff2b4eb7053 (commit)
   via  b1ae9aaf790757d3fa43cccbb0e935171c191fff (commit)
   via  f4082b0e9b1ce139a29fba5951cec068862fe28b (commit)
   via  cd3e1600224a51cbc56b0d546a6f8486f1cf8d31 (commit)
   via  da1a500ceee74e61c7f1e082618911bb5f98ece6 (commit)
   via  4829ea239aa2b45170ce841e14d8e1ec076240ee (commit)
  from  06d607271ed73c2540647c6d257f8deacd86ecae (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=05e9cdb81ecddba496f21d0c9e35e9536261337f
commit 05e9cdb81ecddba496f21d0c9e35e9536261337f
Merge: 1a9da3c b1ae9aa
Author: Brad King 
AuthorDate: Wed Jan 24 13:52:59 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:53:05 2018 -0500

Merge topic 'GenerateExportHeader-include-guard'

b1ae9aaf GenerateExportHeader: add release notes, tests for include guard 
changes
f4082b0e GenerateExportHeader: add INCLUDE_GUARD_NAME option

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1a9da3c055d84479dc011ff66ecf887d92fadf23
commit 1a9da3c055d84479dc011ff66ecf887d92fadf23
Merge: 56fd8b3 93bc584
Author: Brad King 
AuthorDate: Wed Jan 24 13:51:56 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:52:03 2018 -0500

Merge topic 'cpack_trace'

93bc5848 CPack: accept --trace and --trace-expand

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=56fd8b3c7272e3d57333a86b2214f8673b9d557a
commit 56fd8b3c7272e3d57333a86b2214f8673b9d557a
Merge: 2de6aa8 4829ea2
Author: Brad King 
AuthorDate: Wed Jan 24 13:51:21 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:51:32 2018 -0500

Merge topic 'UseJava-native-headers-generation'

4829ea23 add_jar: add option GENERATE_NATIVE_HEADERS

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2de6aa846ffbfb8fe258828fc96121a514a31284
commit 2de6aa846ffbfb8fe258828fc96121a514a31284
Merge: 52573b3 da1a500
Author: Brad King 
AuthorDate: Wed Jan 24 13:49:56 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:50:01 2018 -0500

Merge topic 'vcxproj-spaces'

da1a500c cmVisualStudio10TargetGenerator: remove redundant space char in 
some tags

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=52573b32397caed753ac9e5318d77786a1ff801e
commit 52573b32397caed753ac9e5318d77786a1ff801e
Merge: 06d6072 cd3e160
Author: Brad King 
AuthorDate: Wed Jan 24 13:49:13 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:49:17 2018 -0500

Merge topic 'generic-inc-sep-typo-remove'

cd3e1600 GenericSystem: Remove misspelled flag default

Acked-by: Kitware Robot 
Acked-by: Brad King 
Merge-request: !1683


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=93bc5848e75101477215c3131b7b7ff2b4eb7053
commit 93bc5848e75101477215c3131b7b7ff2b4eb7053
Author: Isaiah Norton 
AuthorDate: Sat Dec 9 11:46:58 2017 -0500
Commit: Brad King 
CommitDate: Tue Jan 23 13:15:53 2018 -0500

CPack: accept --trace and --trace-expand

diff --git a/Help/manual/cpack.1.rst b/Help/manual/cpack.1.rst
index 4f9f28d..105bb67 100644
--- a/Help/manual/cpack.1.rst
+++ b/Help/manual/cpack.1.rst
@@ -62,6 +62,12 @@ Options
 
  Run cpack with debug output (for CPack developers).
 
+``--trace``
+ Put underlying cmake scripts in trace mode.
+
+``--trace-expand``
+ Put underlying cmake scripts in expanded trace mode.
+
 ``-P ``
  override/define CPACK_PACKAGE_NAME
 
diff --git a/Help/release/dev/cpack_trace.rst b/Help/release/dev/cpack_trace.rst
new file mode 100644
index 000..1152385
--- /dev/null
+++ b/Help/release/dev/cpack_trace.rst
@@ -0,0 +1,4 @@

[Cmake-commits] CMake branch, master, updated. v3.10.2-884-g06d6072

2018-01-24 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  06d607271ed73c2540647c6d257f8deacd86ecae (commit)
   via  98628de812c4724fb2da199abb5fe08eeb5a1a64 (commit)
   via  3b588ac58256540e6dc974cf2d1a122c95f19171 (commit)
  from  1345bdf1b6520a2f0c9891ad3c6fee00a6a5f18d (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=06d607271ed73c2540647c6d257f8deacd86ecae
commit 06d607271ed73c2540647c6d257f8deacd86ecae
Merge: 1345bdf 98628de
Author: Brad King 
AuthorDate: Wed Jan 24 13:36:28 2018 +
Commit: Kitware Robot 
CommitDate: Wed Jan 24 08:36:35 2018 -0500

Merge topic 'libuv-restore-fmode'

98628de8 Extend libuv file translate mode workaround to all executables
3b588ac5 cpack: Enable MSVC debug hook earlier

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


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=98628de812c4724fb2da199abb5fe08eeb5a1a64
commit 98628de812c4724fb2da199abb5fe08eeb5a1a64
Author: Brad King 
AuthorDate: Tue Jan 23 08:55:58 2018 -0500
Commit: Brad King 
CommitDate: Tue Jan 23 09:29:07 2018 -0500

Extend libuv file translate mode workaround to all executables

Since libuv commit v1.14.1~7 (win: add uv__once_init() calls,
2017-08-30) the libuv initialization of the file translate mode may take
place even if we do not use a uv loop.  This change was included in our
libuv update commit f4a26c748b (libuv 2018-01-19).  Therefore use of
libuv even through `cmSystemTools::GetRealPath` in any executable may
trigger its file translate mode setting.

Factor out the logic added to `cmake.exe` by commit v3.9.0-rc4~10^2
(cmake: Fix default file translate mode when using libuv, 2017-06-13)
and re-use to initialize all executables.

Issue: #16962

diff --git a/Source/CPack/cpack.cxx b/Source/CPack/cpack.cxx
index 2505a33..3e9bce9 100644
--- a/Source/CPack/cpack.cxx
+++ b/Source/CPack/cpack.cxx
@@ -99,6 +99,7 @@ int main(int argc, char const* const* argv)
   argv = args.argv();
 
   cmSystemTools::EnableMSVCDebugHook();
+  cmSystemTools::InitializeLibUV();
   cmSystemTools::FindCMakeResources(argv[0]);
   cmCPackLog log;
 
diff --git a/Source/CursesDialog/ccmake.cxx b/Source/CursesDialog/ccmake.cxx
index 97d5579..17cf628 100644
--- a/Source/CursesDialog/ccmake.cxx
+++ b/Source/CursesDialog/ccmake.cxx
@@ -75,6 +75,7 @@ int main(int argc, char const* const* argv)
   argc = encoding_args.argc();
   argv = encoding_args.argv();
 
+  cmSystemTools::InitializeLibUV();
   cmSystemTools::FindCMakeResources(argv[0]);
   cmDocumentation doc;
   doc.addCMakeStandardDocSections();
diff --git a/Source/QtDialog/CMakeSetup.cxx b/Source/QtDialog/CMakeSetup.cxx
index bfd43cf..193f4d3 100644
--- a/Source/QtDialog/CMakeSetup.cxx
+++ b/Source/QtDialog/CMakeSetup.cxx
@@ -55,6 +55,7 @@ int main(int argc, char** argv)
   int argc2 = encoding_args.argc();
   char const* const* argv2 = encoding_args.argv();
 
+  cmSystemTools::InitializeLibUV();
   cmSystemTools::FindCMakeResources(argv2[0]);
   // check docs first so that X is not need to get docs
   // do docs, if args were given
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index c321236..06b0b3c 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -51,6 +51,8 @@
 // include wincrypt.h after windows.h
 #include 
 
+#include  /* _O_TEXT */
+
 #include "cm_uv.h"
 #else
 #include 
@@ -980,6 +982,21 @@ std::string cmSystemTools::GetRealPath(const std::string& 
path,
 }
 #endif
 
+void cmSystemTools::InitializeLibUV()
+{
+#if defined(_WIN32)
+  // Perform libuv one-time initialization now, and then un-do its
+  // global _fmode setting so that using libuv does not change the
+  // default file text/binary mode.  See libuv issue 840.
+  uv_loop_close(uv_default_loop());
+#ifdef _MSC_VER
+  _set_fmode(_O_TEXT);
+#else
+  _fmode = _O_TEXT;
+#endif
+#endif
+}
+
 bool cmSystemTools::RenameFile(const char* oldname, const char* newname)
 {
 #ifdef _WIN32
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index d29ba56..25df1f1 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -503,6 +503,10 @@ public:
   static std::string GetRealPath(const std::string& path,
  std::string* errorMessage = 0);
 #endif
+
+  /** Perform one-time initialization of libuv.  */
+  static void InitializeLibUV();
+
 private:
   static bool s_ForceUnixPaths;
   static bool s_RunCommandHideConsole;
diff