From 60c213a37a70f992322f7780e9bedd75b086843b Mon Sep 17 00:00:00 2001
From: Rinat M <mukhometzyanov@mail.ru>
Date: Thu, 27 Feb 2020 15:32:44 -0500
Subject: Some grammar, vocabulary improvements

---
 cmake.html.markdown | 49 +++++++++++++++++++++++++------------------------
 1 file changed, 25 insertions(+), 24 deletions(-)

(limited to 'cmake.html.markdown')

diff --git a/cmake.html.markdown b/cmake.html.markdown
index 32a7b758..9ea68a42 100644
--- a/cmake.html.markdown
+++ b/cmake.html.markdown
@@ -6,25 +6,25 @@ contributors:
 filename: CMake
 ---
 
-CMake is a cross-platform, open-source build system. This tool will allow you
-to test, compile and create packages of your source code.
+CMake is a cross-platform, open-source build system. This tool allows you to test, 
+compile, and create packages of your source code.
 
-The problem that CMake tries to solve is the problem of Makefiles and
-Autoconfigure on cross-platforms (different make interpreters have different
-command) and the ease-of-use on linking 3rd party libraries.
+The problem that CMake tries to solve is the problem of Makefiles and 
+Autoconfigure on cross-platforms (different make interpreters have different 
+commands) and the ease-of-use on linking 3rd party libraries.
 
-CMake is an extensible, open-source system that manages the build process in
-an operating system and compiler-independent manner. Unlike many
-cross-platform systems, CMake is designed to be used in conjunction with the
+CMake is an extensible, open-source system that manages the build process in 
+an operating system and compiler-agnostic manner. Unlike many 
+cross-platform systems, CMake is designed to be used in conjunction with the 
 native build environment. Simple configuration files placed in each source 
-directory (called CMakeLists.txt files) are used to generate standard build
-files (e.g., makefiles on Unix and projects/workspaces in Windows MSVC) which
+directory (called CMakeLists.txt files) are used to generate standard build 
+files (e.g., makefiles on Unix and projects/workspaces in Windows MSVC) which 
 are used in the usual way.
 
 ```cmake
 # In CMake, this is a comment
 
-# To run our code, we will use these steps:
+# To run our code, please perform the following commands:
 #  - mkdir build && cd build
 #  - cmake ..
 #  - make
@@ -45,22 +45,22 @@ cmake_minimum_required (VERSION 2.8)
 # Raises a FATAL_ERROR if version < 2.8
 cmake_minimum_required (VERSION 2.8 FATAL_ERROR)
 
-# We setup the name for our project. After we do that, this will change some
-# directories naming convention generated by CMake. We can send the LANG of
-# code as second param
+# We define the name of our project, and this changes some directories
+# naming convention generated by CMake. We can send the LANG of code
+# as the second param
 project (learncmake C)
 
 # Set the project source dir (just convention)
 set( LEARN_CMAKE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} )
 set( LEARN_CMAKE_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR} )
 
-# It's useful to setup the current version of our code in the build system
+# It's useful to set up the current version of our code in the build system
 # using a `semver` style
 set (LEARN_CMAKE_VERSION_MAJOR 1)
 set (LEARN_CMAKE_VERSION_MINOR 0)
 set (LEARN_CMAKE_VERSION_PATCH 0)
 
-# Send the variables (version number) to source code header
+# Send the variables (version number) to the source code header
 configure_file (
   "${PROJECT_SOURCE_DIR}/TutorialConfig.h.in"
   "${PROJECT_BINARY_DIR}/TutorialConfig.h"
@@ -127,14 +127,14 @@ if(FALSE AND (FALSE OR TRUE))
   message("Don't display!")
 endif()
 
-# Set a normal, cache, or environment variable to a given value.
-# If the PARENT_SCOPE option is given the variable will be set in the scope
+# Set a regular, cache, or environment variable to a given value.
+# If the PARENT_SCOPE option is given, the variable will be set in the scope
 # above the current scope.
 # `set(<variable> <value>... [PARENT_SCOPE])`
 
-# How to reference variables inside quoted and unquoted arguments
-# A variable reference is replaced by the value of the variable, or by the
-# empty string if the variable is not set
+# How to reference variables inside quoted and unquoted arguments?
+# A variable reference is replaced by either the variable value or by the 
+# empty string if the variable is not set.
 ${variable_name}
 
 # Lists
@@ -172,6 +172,7 @@ endif()
 
 ### More Resources
 
-+ [cmake tutorial](https://cmake.org/cmake-tutorial/)
-+ [cmake documentation](https://cmake.org/documentation/)
-+ [mastering cmake](http://amzn.com/1930934319/)
++ [CMake tutorial](https://cmake.org/cmake-tutorial/)
++ [CMake documentation](https://cmake.org/documentation/)
++ [Mastering CMake](http://amzn.com/1930934319/)
++ [An Introduction to Modern CMake](https://cliutils.gitlab.io/modern-cmake/)
-- 
cgit v1.2.3