[Cmake-commits] CMake branch, master, updated. v3.11.0-rc1-85-g020be37

Kitware Robot kwrobot at kitware.com
Thu Feb 22 11:45:02 EST 2018


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  020be379f4993cad5f2ca2066286f6f449b21f52 (commit)
       via  5c0223886e68a305d0f8f6d60a010dd8c5ae0290 (commit)
       via  b0e2b256c8e96188f3888cdeb1b7c9c881e47aa8 (commit)
       via  46436581c668365ff8df25dcfca5b13a0fd50200 (commit)
       via  965f977c7c90512f80776781dfeb52bc7e73bcff (commit)
       via  83f8e764676fca5f99fb66abfdc2fa3febea36e9 (commit)
      from  8ac6c7e7f3234f4a2e5e4108114f173f16d4d388 (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=020be379f4993cad5f2ca2066286f6f449b21f52
commit 020be379f4993cad5f2ca2066286f6f449b21f52
Merge: 5c02238 965f977
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Feb 22 16:37:05 2018 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Feb 22 11:37:10 2018 -0500

    Merge topic 'fortran-compiler'
    
    965f977c Fortran: Adjust compiler candidates based on host platform
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1780


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5c0223886e68a305d0f8f6d60a010dd8c5ae0290
commit 5c0223886e68a305d0f8f6d60a010dd8c5ae0290
Merge: b0e2b25 4643658
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Feb 22 16:36:22 2018 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Feb 22 11:36:34 2018 -0500

    Merge topic 'setidentifier_move'
    
    46436581 cmGeneratorExpression: Use std::move to avoid vector copies
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1779


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b0e2b256c8e96188f3888cdeb1b7c9c881e47aa8
commit b0e2b256c8e96188f3888cdeb1b7c9c881e47aa8
Merge: 8ac6c7e 83f8e76
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Thu Feb 22 16:34:41 2018 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Thu Feb 22 11:34:50 2018 -0500

    Merge topic 'cmake-build-global-gen'
    
    83f8e764 cmake: Fix global generator path style in --build mode
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1784


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=46436581c668365ff8df25dcfca5b13a0fd50200
commit 46436581c668365ff8df25dcfca5b13a0fd50200
Author:     Frank Winklmeier <frank.winklmeier at cern.ch>
AuthorDate: Tue Feb 20 15:38:08 2018 +0100
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Feb 21 11:11:50 2018 -0500

    cmGeneratorExpression: Use std::move to avoid vector copies
    
    Use move semantics in GeneratorExpressionContent::SetIdentifier and
    ::SetParameters to avoid vector copies.

diff --git a/Source/cmGeneratorExpressionEvaluator.h b/Source/cmGeneratorExpressionEvaluator.h
index 92dac79..0561799 100644
--- a/Source/cmGeneratorExpressionEvaluator.h
+++ b/Source/cmGeneratorExpressionEvaluator.h
@@ -7,6 +7,7 @@
 
 #include <stddef.h>
 #include <string>
+#include <utility>
 #include <vector>
 
 struct cmGeneratorExpressionContext;
@@ -64,17 +65,16 @@ private:
 struct GeneratorExpressionContent : public cmGeneratorExpressionEvaluator
 {
   GeneratorExpressionContent(const char* startContent, size_t length);
-  void SetIdentifier(
-    std::vector<cmGeneratorExpressionEvaluator*> const& identifier)
+
+  void SetIdentifier(std::vector<cmGeneratorExpressionEvaluator*> identifier)
   {
-    this->IdentifierChildren = identifier;
+    this->IdentifierChildren = std::move(identifier);
   }
 
   void SetParameters(
-    std::vector<std::vector<cmGeneratorExpressionEvaluator*>> const&
-      parameters)
+    std::vector<std::vector<cmGeneratorExpressionEvaluator*>> parameters)
   {
-    this->ParamChildren = parameters;
+    this->ParamChildren = std::move(parameters);
   }
 
   Type GetType() const override
diff --git a/Source/cmGeneratorExpressionParser.cxx b/Source/cmGeneratorExpressionParser.cxx
index 278de04..7b4dc7b 100644
--- a/Source/cmGeneratorExpressionParser.cxx
+++ b/Source/cmGeneratorExpressionParser.cxx
@@ -6,6 +6,7 @@
 
 #include <assert.h>
 #include <stddef.h>
+#include <utility>
 
 cmGeneratorExpressionParser::cmGeneratorExpressionParser(
   const std::vector<cmGeneratorExpressionToken>& tokens)
@@ -92,7 +93,7 @@ void cmGeneratorExpressionParser::ParseGeneratorExpression(
     assert(this->it != this->Tokens.end());
     ++this->it;
     --this->NestingLevel;
-    content->SetIdentifier(identifier);
+    content->SetIdentifier(std::move(identifier));
     result.push_back(content);
     return;
   }
@@ -198,8 +199,8 @@ void cmGeneratorExpressionParser::ParseGeneratorExpression(
     ((this->it - 1)->Content - startToken->Content) + (this->it - 1)->Length;
   GeneratorExpressionContent* content =
     new GeneratorExpressionContent(startToken->Content, contentLength);
-  content->SetIdentifier(identifier);
-  content->SetParameters(parameters);
+  content->SetIdentifier(std::move(identifier));
+  content->SetParameters(std::move(parameters));
   result.push_back(content);
 }
 

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=965f977c7c90512f80776781dfeb52bc7e73bcff
commit 965f977c7c90512f80776781dfeb52bc7e73bcff
Author:     xoviat <xoviat at users.noreply.github.com>
AuthorDate: Tue Feb 20 13:56:32 2018 -0600
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Feb 21 10:23:38 2018 -0500

    Fortran: Adjust compiler candidates based on host platform
    
    Typical Fortran compiler command-line tool names differ on Windows and
    non-Windows platforms.  Also, the name `ifc` should not be used on
    Windows because there is an `ifc.exe` tool in Visual Studio that is
    unrelated.
    
    Fixes: #17752

diff --git a/Modules/CMakeDetermineFortranCompiler.cmake b/Modules/CMakeDetermineFortranCompiler.cmake
index cf502f6..5ddd64f 100644
--- a/Modules/CMakeDetermineFortranCompiler.cmake
+++ b/Modules/CMakeDetermineFortranCompiler.cmake
@@ -66,12 +66,20 @@ else()
       #  The order is 95 or newer compilers first, then 90,
       #  then 77 or older compilers, gnu is always last in the group,
       #  so if you paid for a compiler it is picked by default.
-      set(CMAKE_Fortran_COMPILER_LIST
-        ftn
-        ifort ifc af95 af90 efc f95 pathf2003 pathf95 pgf95 pgfortran lf95 xlf95
-        fort flang gfortran gfortran-4 g95 f90 pathf90 pgf90 xlf90 epcf90 fort77
-        frt pgf77 xlf fl32 af77 g77 f77 nag
-        )
+      if(CMAKE_HOST_WIN32)
+        set(CMAKE_Fortran_COMPILER_LIST
+          ifort pgf95 pgfortran lf95 fort
+          flang gfortran gfortran-4 g95 f90 pgf90
+          pgf77 g77 f77 nag
+          )
+      else()
+        set(CMAKE_Fortran_COMPILER_LIST
+          ftn
+          ifort ifc efc pgf95 pgfortran lf95 xlf95 fort
+          flang gfortran gfortran-4 g95 f90 pgf90
+          frt pgf77 xlf g77 f77 nag
+          )
+      endif()
 
       # Vendor-specific compiler names.
       set(_Fortran_COMPILER_NAMES_GNU       gfortran gfortran-4 g95 g77)

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=83f8e764676fca5f99fb66abfdc2fa3febea36e9
commit 83f8e764676fca5f99fb66abfdc2fa3febea36e9
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Feb 21 10:02:52 2018 -0500
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Feb 21 10:13:47 2018 -0500

    cmake: Fix global generator path style in --build mode
    
    Fix the `--build` code path so that `cmSystemTools::SetForceUnixPaths`
    is called with the global generator's path style.  This makes forwarding
    of `--target subdir/src.c.obj` match the slash style the generator
    placed in the build system.
    
    Fixes: #17742

diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 5620723..f4f4a15 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -2387,17 +2387,17 @@ int cmake::Build(const std::string& dir, const std::string& target,
     std::cerr << "Error: could not find CMAKE_GENERATOR in Cache\n";
     return 1;
   }
-  std::unique_ptr<cmGlobalGenerator> gen(
-    this->CreateGlobalGenerator(cachedGenerator));
-  if (!gen.get()) {
+  cmGlobalGenerator* gen = this->CreateGlobalGenerator(cachedGenerator);
+  if (!gen) {
     std::cerr << "Error: could create CMAKE_GENERATOR \"" << cachedGenerator
               << "\"\n";
     return 1;
   }
+  this->SetGlobalGenerator(gen);
   const char* cachedGeneratorInstance =
     this->State->GetCacheEntryValue("CMAKE_GENERATOR_INSTANCE");
   if (cachedGeneratorInstance) {
-    cmMakefile mf(gen.get(), this->GetCurrentSnapshot());
+    cmMakefile mf(gen, this->GetCurrentSnapshot());
     if (!gen->SetGeneratorInstance(cachedGeneratorInstance, &mf)) {
       return 1;
     }

-----------------------------------------------------------------------

Summary of changes:
 Modules/CMakeDetermineFortranCompiler.cmake |   20 ++++++++++++++------
 Source/cmGeneratorExpressionEvaluator.h     |   12 ++++++------
 Source/cmGeneratorExpressionParser.cxx      |    7 ++++---
 Source/cmake.cxx                            |    8 ++++----
 4 files changed, 28 insertions(+), 19 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list