Vito Gamberini
fb58de1a56
Tutorial: Add Step 0 to prepare the working environment
...
Adds a "Step 0" to the tutorial which discusses minutia about where to
get CMake, how to run it, and most importantly deals at length with
various generator issues which aren't covered elsewhere.
2025-10-29 09:49:23 -04:00
Brad King
b22a77e337
Merge topic 'doc-cmake.org-tutorial-archive' into release-4.2
...
5473a45fd8 Tutorial: Restore source archive when published on cmake.org
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !11370
2025-10-29 09:31:10 -04:00
Brad King
5473a45fd8
Tutorial: Restore source archive when published on cmake.org
...
Restore commit 4cb616fed6 (Tutorial: Provide a source archive when
published on cmake.org, 2022-04-27, v3.23.2~22^2). Its effects were
accidentally reverted by commit 9784834b4c (Help: Use `*.rst` extension
for included files, 2025-04-07, v4.1.0-rc1~354^2).
Reported-by: Vito Gamberini <vito.gamberini@kitware.com >
2025-10-29 09:17:14 -04:00
Vito Gamberini
058e7da541
Tutorial: Add redirect pages for removed steps
2025-09-17 11:57:34 -04:00
Vito Gamberini
b2e3e3e30e
Tutorial: Rewrite using conventions enabled by CMake 3.23
...
This is a full re-write of the CMake Tutorial for CMake 3.23, both
the functionality it provides, as well as the modern workflows that
developers use when interfacing with CMake.
Issue: #22663 , #23086 , #23799 , #26053 , #26105 , #26153 , #26914
2025-09-17 11:57:23 -04:00
Alex Turbov
9784834b4c
Help: Use *.rst extension for included files
...
So, editor(s) can correctly highlight the RST syntax in the included files.
2025-04-14 03:07:46 +04:00
Markus Ferrell
ccba87b05b
Tutorial: Move step 10 to step 4
...
Shifts steps 4-9 to 5-10.
2022-08-08 17:15:48 -04:00
Markus Ferrell
6c77ccec51
Tutorial: Move step 8 to step 5. Shift steps 5-7 to 6-8.
2022-07-19 15:32:42 -04:00
Brad King
4cb616fed6
Tutorial: Provide a source archive when published on cmake.org
...
Provide readers following the tutorial on `cmake.org` a direct link to
download the tutorial's source examples. Previously readers had to
fetch the CMake source tree separately and look for the tutorial source
examples inside it.
Fixes : #22475
2022-04-28 13:36:20 -04:00
Brad King
9c703ff741
Tutorial: Add infrastructure to preserve old links when renaming steps
2021-06-17 12:10:14 -04:00
Josef Angstenberger
d1c3e7e78a
Tutorial: Split steps into separate files
...
Fixes : #21737
2021-06-17 11:53:55 -04:00
Brad King
13fdb26323
Tutorial: Break up intro paragraph
2021-06-17 10:33:07 -04:00
Betsy McPhail
174b1e5da5
Tutorial: Remove incorrect instructions from Step 5
...
The first section of Step 5 is not tested, incorrect, and not the
recommended solution.
Fixes : #21539
2021-01-14 13:05:09 -05:00
fazl
b42a63605c
Tutorial: Fix minor typo in index.rst
...
s/mqsqrt.h/mysqrt.h/
2021-01-04 12:02:09 -05:00
Betsy McPhail
9b988d9e57
Help: Cleanup guides
...
* Move sections to be same level as Introduction in "Using Dependecies"
* Rename "Importing Exporting Targets" to "Importing Exporting Guide"
* Add an Introduction header to the Tutorial and Importing Exporting Guide
2020-09-25 15:29:05 -04:00
Brad King
9d9a6a8532
Merge topic 'tutorial-update'
...
63af35019a Tutorial: Add missing `language` option to literalinclude
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5046
2020-07-23 11:08:38 -04:00
Betsy McPhail
63af35019a
Tutorial: Add missing language option to literalinclude
2020-07-22 16:17:41 -04:00
Jean-Christophe Fillion-Robin
207373802e
Fix typos identified using codespell
...
See https://github.com/codespell-project/codespell#readme
The following command was used:
```
codespell -q6 --skip="\
.git,\
*.json,\
./Copyright.txt,\
./Help/command/foreach.rst,\
./Help/prop_test/REQUIRED_FILES.rst,\
./Help/variable/CTEST_COVERAGE_COMMAND.rst,\
./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\
./Modules/CMakeRCInformation.cmake,\
./Modules/Internal/CPack/NSIS.template.in,\
./Modules/FindMatlab.cmake,\
./Modules/MatlabTestsRedirect.cmake,\
./Modules/Platform/Windows-Clang.cmake,\
./Modules/Platform/Windows-Intel-Fortran.cmake,\
./Modules/Platform/Windows-MSVC.cmake,\
./Source/CMakeVersion.cmake,\
./Source/cmConvertMSBuildXMLToJSON.py,\
./Source/cmCreateTestSourceList.cxx,\
./Source/cmGlobalVisualStudio10Generator.cxx,\
./Source/cmExportBuildFileGenerator.cxx,\
./Source/cmExportInstallAndroidMKGenerator.cxx,\
./Source/cmExportInstallFileGenerator.cxx,\
./Source/cmExportSet.cxx,\
./Source/cmExportTryCompileFileGenerator.cxx,\
./Source/cmFindPackageCommand.cxx,\
./Source/cmInstallCommand.cxx,\
./Source/cmGeneratorExpressionLexer.cxx,\
./Source/cmLocalVisualStudio7Generator.cxx,\
./Source/cmOrderDirectories.cxx,\
./Source/cmTarget.cxx,\
./Source/kwsys/*,\
./Source/QtDialog/CMakeSetupDialog.ui,\
./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\
./Source/CTest/cmParseCoberturaCoverage.h,\
./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\
./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\
./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\
./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\
./Tests/RunCMake/GoogleTest/xml_output.cpp,\
./Tests/RunCMake/Make/TargetMessages*,\
./Utilities/*,\
" \
-L "\
dependees,\
endwhile,\
fo,\
filetest,\
helpfull,\
nd,\
objext,\
stoll,\
supercedes,\
superceded,\
vas,\
varn,\
"
```
2020-07-22 12:44:47 -04:00
Betsy McPhail
8a80b8fbe4
Tutorial: Clarify Steps 1, 2 and 3
2020-07-17 12:17:26 -04:00
Brad King
3252bc4476
Merge topic 'tutorial_install_when_built_static'
...
0fdfd6bf37 Tutorial: Install correctly when built statically
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !4906
2020-06-18 09:41:31 -04:00
Robert Maynard
7c3204fc7d
Tutorial: Correct Step9 wording
...
on some platforms -fPIC is implicit so you won't get an error
2020-06-16 15:43:32 -04:00
Robert Maynard
0fdfd6bf37
Tutorial: Install correctly when built statically
...
When built statically we failed to install the SqrtLibrary
2020-06-16 15:38:57 -04:00
Betsy McPhail
d0797f62d9
Tutorial: Clarify Step 5
...
Fixes : #20619
2020-04-23 11:47:20 -04:00
Betsy McPhail
07223c5c27
Tutorial: Update Step 5 to work on Windows
...
`log` and `exp` should be found on Windows systems now, as expected.
Update tests to be more specific in looking for the expected outcome of
the tutorial.
2020-02-27 14:58:24 -05:00
Brad King
c5d7c29137
Help: Replace UTF-8 apostrophe with ascii apostrophe
...
Also replace UTF-8 graphical characters with simple dashes.
Fixes : #20349
2020-02-12 14:37:41 -05:00
Betsy McPhail
fc2d1b1347
Tutorial: Clarify Step 5
2020-01-16 15:54:01 -05:00
Betsy McPhail
77b515f3eb
Tutorial: Improve "MultiPackage" example
...
Rename to Step 12 and ensure that it follows Step 11
2020-01-10 11:37:54 -05:00
Betsy McPhail
3a510a47b0
Tutorial: Add links to relevant CMake documentation
...
Add links for commands, properties and variables.
2020-01-09 14:49:28 -05:00
Arkadiusz Drabczyk
02aa03eb0a
Tutorial: replace Unicode EN DASH with ASCII dash
...
Unicode EN DASH is problematic:
- it cannot be easily found in web browsers, editors etc.
- it doesn't work when copied and run in the terminal
2019-11-18 06:51:58 +11:00
Craig Scott
9682adb6ad
Tutorial: clean up typos, grammar and formatting
2019-11-04 12:44:34 +11:00
Betsy McPhail
6f6a32a0f6
Tutorial: Improve Step 9
...
* Move USE_MYMATH from configured header to target_compile_definitions
2019-08-19 11:49:05 -04:00
Betsy McPhail
6a35d630dc
Tutorial: Improve Step 8
...
* Remove comments from CTestConfig.cmake
* Update directions
2019-08-19 11:49:05 -04:00
Betsy McPhail
61d4d990d6
Tutorial: Improve Step 7
...
* Update directions
2019-08-19 11:49:05 -04:00
Betsy McPhail
a36731c634
Tutorial: Improve Step 6
...
* Print message when using the table
* Remove duplicated comment
* Remove HAVE_LOG and HAVE_EXP checks, use generated table instead
2019-08-19 11:49:05 -04:00
Betsy McPhail
df9cdf629c
Tutorial: Improve Step 5
...
* Updated output message
* Use 'target_compile_definitions' for HAVE_LOG and HAVE_EXP
Previously, the change from using TutorialConfig.h to
target_compile_definitions happened without explanation as part of Step 8.
2019-08-19 11:49:05 -04:00
Betsy McPhail
442c0f0d46
Tutorial: Improve Step 4
...
* Clarify directions
2019-08-19 11:49:05 -04:00
Betsy McPhail
bc64401c3d
Tutorial: Improve Step 3
...
* Move `option(USE_MYMATH...` to the same location in all CMakeLists files
2019-08-19 11:49:05 -04:00
Betsy McPhail
49ce4d6ff4
Tutorial: Improve Step 2
...
* Fix typo in #include
* Remove CMakeLists file that users should create
* Clarify which files users are expected to create
* Highlight the importance of configuring TutorialConfig.h.in after
the MY_MATH option has been set
2019-08-19 11:49:05 -04:00
Betsy McPhail
82332f81bb
Tutorial: Improve Step 1
...
* Update minimum required version to 3.10
* Use VERSION argument to project command rather than separate variables
* Replace `endif(USE_MYMATH)` with more modern `endif()`
* Simplify the call to 'configure_file()'
* Add comments to tutorial.cxx to use as anchors in documentation
* Remove CMakeLists and TutorialConfig.h.in files that users should
create. Consequently, remove Step1 from CMake tests.
2019-08-19 11:48:58 -04:00
Robert Maynard
fa203ee323
Tutorial: Improve Step 10 generator expression example.
...
Use compiler flags and standard levels as the compelling argument
for using generator expressions and interface libraries
2019-07-25 07:30:13 -04:00
Robert Maynard
c94e62c07e
Tutorial: Updated to reference using cmake --install
...
This is preferred over using `make install` as it allows for control
over the install location, configuration, and component.
2019-07-19 14:38:05 -04:00
Brad King
8ab8563533
Help: Add tutorial guide table of contents
2019-06-19 09:00:19 -04:00
Betsy McPhail
0a6c9c417a
Help: Update tutorial to include text from CMake book
2019-06-19 08:59:31 -04:00
Betsy McPhail
eef3e020c2
Help: Populate tutorial guide text
...
Migrate tutorial text from individual `directions.txt` files to the main
tutorial document. Add some comments to source code to provide anchors
for inclusion.
2019-06-19 08:57:12 -04:00
Brad King
d2fde94809
Help: Add infrastructure for guide-level documentation
...
Create a `Help/guide/` directory to hold guide-level documents.
Build them in most documentation formats, but not as man pages.
Initialize the guide directory with a placeholder for the tutorial.
2019-06-18 10:36:16 -04:00