René's URL Explorer Experiment
go
Title:
C++ submodule manager
direct link
Domain:
cppsm.github.io
Links
:
≡
https://cppsm.github.io/#contents
C++ submodule manager
https://cppsm.github.io/
https://github.com/cppsm/cppsm.github.io
https://gitter.im/cppsm/community
https://travis-ci.org/cppsm/cppsm-cli
https://codecov.io/github/cppsm/cppsm-cli?branch=master
conventions
https://cppsm.github.io/#conventions
Git
https://git-scm.com/
CMake
https://cmake.org/
a new tool
https://cppsm.github.io/#cppsm-command
Git
https://git-scm.com/
Git
https://git-scm.com/
Git
https://git-scm.com/
CMake
https://cmake.org/
Command line tool
https://cppsm.github.io/#cppsm-command
Generate project boilerplate
https://cppsm.github.io/#cppsm-init-library
Add
https://cppsm.github.io/#cppsm-add
remove
https://cppsm.github.io/#cppsm-remove
upgrade
https://cppsm.github.io/#cppsm-upgrade
Code formatting
https://cppsm.github.io/#cppsm-format
Build
https://cppsm.github.io/#cppsm-build
test
https://cppsm.github.io/#cppsm-test
watch
https://cppsm.github.io/#cppsm-test-watch
CMake functions to minimize boilerplate
https://cppsm.github.io/#cmake
Travis CI integration
https://cppsm.github.io/#travis-ci
Codecov integration
https://cppsm.github.io/#codecov
repositories with the #cppsm topic
https://github.com/topics/cppsm
≡
https://cppsm.github.io/#contents
Contents
https://cppsm.github.io/#contents
cppsm command
https://cppsm.github.io/#cppsm-command
Supported platforms
https://cppsm.github.io/#cppsm-supported-platforms
Installation
https://cppsm.github.io/#installation
Automated installation
https://cppsm.github.io/#automated-installation
Manual installation
https://cppsm.github.io/#manual-installation
For optional code formatting
https://cppsm.github.io/#for-optional-code-formatting
For optional auto completion
https://cppsm.github.io/#for-optional-auto-completion
For optional watch commands
https://cppsm.github.io/#for-optional-watch-commands
Quick tour
https://cppsm.github.io/#quick-tour
Subcommands
https://cppsm.github.io/#subcommands
cppsm
https://cppsm.github.io/#cppsm
cppsm add (requires|equipment)
https://cppsm.github.io/#cppsm-add
cppsm build
https://cppsm.github.io/#cppsm-build
cppsm build-watch
https://cppsm.github.io/#cppsm-build-watch
cppsm clone
https://cppsm.github.io/#cppsm-clone
cppsm format
https://cppsm.github.io/#cppsm-format
cppsm init
https://cppsm.github.io/#cppsm-init
NAME='...'
https://cppsm.github.io/#init-name
VERSION='v1'|'...'
https://cppsm.github.io/#init-version
cppsm init-hello
https://cppsm.github.io/#cppsm-init-hello
cppsm init-library
https://cppsm.github.io/#cppsm-init-library
cppsm list
https://cppsm.github.io/#cppsm-list
cppsm remove
https://cppsm.github.io/#cppsm-remove
cppsm setup
https://cppsm.github.io/#cppsm-setup
CMAKE_BUILD_TYPE=Debug|Release
https://cppsm.github.io/#cmake_build_type
CMAKE_GENERATOR=''|'...'
https://cppsm.github.io/#cmake_generator
CMAKE_TOOLCHAIN_FILE=''|'...'
https://cppsm.github.io/#cmake_toolchain_file
CC=cc|gcc|clang|emcc|...
https://cppsm.github.io/#cc
CXX=c++|g++|clang++|emcc|...
https://cppsm.github.io/#cxx
CLEAN=0|1
https://cppsm.github.io/#clean
COVERAGE=0|1
https://cppsm.github.io/#coverage
cppsm test
https://cppsm.github.io/#cppsm-test
cppsm test-watch
https://cppsm.github.io/#cppsm-test-watch
cppsm update
https://cppsm.github.io/#cppsm-update
cppsm upgrade
https://cppsm.github.io/#cppsm-upgrade
CMake
https://cppsm.github.io/#cmake
conventional-project.cmake
https://cppsm.github.io/#conventional-project-cmake
add_conventional_targets_under(directory)
https://cppsm.github.io/#add_conventional_targets_under
add_conventional_targets_provided_under(directory)
https://cppsm.github.io/#add_conventional_targets_provided_under
add_conventional_targets()
https://cppsm.github.io/#add_conventional_targets
conventional-targets.cmake
https://cppsm.github.io/#conventional-targets-cmake
add_conventional_executable(name)
https://cppsm.github.io/#add_conventional_executable
add_conventional_executable_tests(...)
https://cppsm.github.io/#add_conventional_executable_tests
add_conventional_library(${LIBRARY_NAME}_${LIBRARY_VERSION})
https://cppsm.github.io/#add_conventional_library
Travis CI
https://cppsm.github.io/#travis-ci
CLANG=1|0
https://cppsm.github.io/#clang
CODECOV=0|1
https://cppsm.github.io/#codecov
EMSCRIPTEN=0|1
https://cppsm.github.io/#emscripten
FORMAT_CHECK=1|0
https://cppsm.github.io/#format_check
GCC=1|0
https://cppsm.github.io/#gcc
INSTALL_WAIT=0|1
https://cppsm.github.io/#install_wait
UPGRADE_CHECK=1|0
https://cppsm.github.io/#upgrade_check
VS2017=1|0
https://cppsm.github.io/#vs2017
VS2019=1|0
https://cppsm.github.io/#vs2019
Variables
https://cppsm.github.io/#variables
CTEST_OUTPUT_ON_FAILURE=1|0
https://cppsm.github.io/#ctest_output_on_failure
QUIET=1|0
https://cppsm.github.io/#quiet
GIT_QUIET=QUIET
https://cppsm.github.io/#git_quiet
MSBUILD_VERBOSITY=QUIET|MINIMAL|NORMAL|DETAILED|DIAGNOSTIC
https://cppsm.github.io/#msbuild_verbosity
XCODE_VERBOSITY=quiet|verbose
https://cppsm.github.io/#xcode_verbosity
NUMBER_OF_PROCESSORS=1|2|...
https://cppsm.github.io/#number_of_processors
N_PARALLEL_BUILD=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_build
N_PARALLEL_TEST=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_test
N_PARALLEL_UPDATE=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_update
TRACE=0|1
https://cppsm.github.io/#trace
XTRACE=TRACE
https://cppsm.github.io/#xtrace
Conventions
https://cppsm.github.io/#conventions
Conventional project structure
https://cppsm.github.io/#conventional-project-structure
A project
https://cppsm.github.io/#project
The equipment directory
https://cppsm.github.io/#equipment-directory
The internals directory
https://cppsm.github.io/#internals-directory
The provides directory
https://cppsm.github.io/#provides-directory
The requires directory
https://cppsm.github.io/#requires-directory
A project submodule
https://cppsm.github.io/#project-submodule
A target directory
https://cppsm.github.io/#target-directory
Conventional target structure
https://cppsm.github.io/#conventional-target-structure
A library
https://cppsm.github.io/#library-target
Any number of executable tests
https://cppsm.github.io/#testing-target
An executable program
https://cppsm.github.io/#program-target
Conventional project versioning
https://cppsm.github.io/#conventional-project-versioning
${PROJECT_NAME}
https://cppsm.github.io/#project-name
${PROJECT_VERSION}
https://cppsm.github.io/#project-version
Conventional library versioning
https://cppsm.github.io/#conventional-library-versioning
≡
https://cppsm.github.io/#contents
cppsm command
https://cppsm.github.io/#cppsm-command
Bash
https://en.wikipedia.org/wiki/Bash_(Unix_shell)
conventions
https://cppsm.github.io/#conventions
Git
https://git-scm.com/
CMake
https://cmake.org/
Bash
https://en.wikipedia.org/wiki/Bash_(Unix_shell)
macOS
https://www.apple.com/macos/
Linux
https://www.linux.org/
Ubuntu
https://ubuntu.com/
Cygwin
https://www.cygwin.com/
Git BASH
https://gitforwindows.org/
Cygwin
https://www.cygwin.com/
Git BASH
https://gitforwindows.org/
Bash
https://en.wikipedia.org/wiki/Bash_(Unix_shell)
≡
https://cppsm.github.io/#contents
Installation
https://cppsm.github.io/#installation
repository
https://github.com/cppsm/cppsm-cli
Automated installation
https://cppsm.github.io/#automated-installation
install
https://github.com/cppsm/cppsm-cli/blob/master/install
curl
https://curl.haxx.se/
wget
https://www.gnu.org/software/wget/
Manual installation
https://cppsm.github.io/#manual-installation
cppsm-cli
https://github.com/cppsm/cppsm-cli
$HOME/.bashrc or $HOME/.bash_profile
https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html
For optional code formatting
https://cppsm.github.io/#for-optional-code-formatting
clang-format
https://clang.llvm.org/docs/ClangFormat.html
prettier
https://prettier.io/
For optional auto completion
https://cppsm.github.io/#for-optional-auto-completion
GitHub
https://github.com/
curl
https://curl.haxx.se/
wget
https://www.gnu.org/software/wget/
jq
https://stedolan.github.io/jq/
For optional watch commands
https://cppsm.github.io/#for-optional-watch-commands
fswatch
http://emcrisostomo.github.io/fswatch/
watchexec
https://github.com/watchexec/watchexec
≡
https://cppsm.github.io/#contents
Quick tour
https://cppsm.github.io/#quick-tour
≡
https://cppsm.github.io/#contents
Subcommands
https://cppsm.github.io/#subcommands
≡
https://cppsm.github.io/#contents
cppsm
https://cppsm.github.io/#cppsm
≡
https://cppsm.github.io/#contents
cppsm add (requires|equipment)
https://cppsm.github.io/#cppsm-add
≡
https://cppsm.github.io/#contents
cppsm build
https://cppsm.github.io/#cppsm-build
cppsm setup
https://cppsm.github.io/#cppsm-setup
≡
https://cppsm.github.io/#contents
cppsm build-watch
https://cppsm.github.io/#cppsm-build-watch
cppsm setup
https://cppsm.github.io/#cppsm-setup
≡
https://cppsm.github.io/#contents
cppsm clone
https://cppsm.github.io/#cppsm-clone
≡
https://cppsm.github.io/#contents
cppsm format
https://cppsm.github.io/#cppsm-format
clang-format
https://clang.llvm.org/docs/ClangFormat.html
prettier
https://prettier.io/
≡
https://cppsm.github.io/#contents
cppsm init
https://cppsm.github.io/#cppsm-init
cppsm init-hello
https://cppsm.github.io/#cppsm-init-hello
cppsm init-library
https://cppsm.github.io/#cppsm-init-library
NAME='...'
https://cppsm.github.io/#init-name
VERSION='v1'|'...'
https://cppsm.github.io/#init-version
≡
https://cppsm.github.io/#contents
cppsm init-hello
https://cppsm.github.io/#cppsm-init-hello
cppsm init
https://cppsm.github.io/#cppsm-init
cppsm init-library
https://cppsm.github.io/#cppsm-init-library
≡
https://cppsm.github.io/#contents
cppsm init-library
https://cppsm.github.io/#cppsm-init-library
cppsm init
https://cppsm.github.io/#cppsm-init
cppsm init-hello
https://cppsm.github.io/#cppsm-init-hello
≡
https://cppsm.github.io/#contents
cppsm list
https://cppsm.github.io/#cppsm-list
≡
https://cppsm.github.io/#contents
cppsm remove
https://cppsm.github.io/#cppsm-remove
≡
https://cppsm.github.io/#contents
cppsm setup
https://cppsm.github.io/#cppsm-setup
CMAKE_BUILD_TYPE=Debug|Release
https://cppsm.github.io/#cmake_build_type
specifies which configuration to use
https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html
CMAKE_GENERATOR=''|'...'
https://cppsm.github.io/#cmake_generator
specifies which generator to use
https://cmake.org/cmake/help/latest/envvar/CMAKE_GENERATOR.html#envvar:CMAKE_GENERATOR
CMAKE_TOOLCHAIN_FILE=''|'...'
https://cppsm.github.io/#cmake_toolchain_file
specifies toolchain file to use
https://cmake.org/cmake/help/latest/variable/CMAKE_TOOLCHAIN_FILE.html
CC=cc|gcc|clang|emcc|...
https://cppsm.github.io/#cc
specifies which C compiler to use
https://cmake.org/cmake/help/latest/envvar/CC.html
CXX=c++|g++|clang++|emcc|...
https://cppsm.github.io/#cxx
specifies which C++ compiler to use
https://cmake.org/cmake/help/latest/envvar/CXX.html
CLEAN=0|1
https://cppsm.github.io/#clean
COVERAGE=0|1
https://cppsm.github.io/#coverage
GCC
https://gcc.gnu.org/
Clang
https://clang.llvm.org/
≡
https://cppsm.github.io/#contents
cppsm test
https://cppsm.github.io/#cppsm-test
cppsm setup
https://cppsm.github.io/#cppsm-setup
≡
https://cppsm.github.io/#contents
cppsm test-watch
https://cppsm.github.io/#cppsm-test-watch
cppsm setup
https://cppsm.github.io/#cppsm-setup
≡
https://cppsm.github.io/#contents
cppsm update
https://cppsm.github.io/#cppsm-update
≡
https://cppsm.github.io/#contents
cppsm upgrade
https://cppsm.github.io/#cppsm-upgrade
cppsm init
https://cppsm.github.io/#cppsm-init
≡
https://cppsm.github.io/#contents
CMake
https://cppsm.github.io/#cmake
≡
https://cppsm.github.io/#contents
conventional-project.cmake
https://cppsm.github.io/#conventional-project-cmake
conventional-project.cmake
https://github.com/cppsm/cppsm-boilerplate/blob/master/conventional-project.cmake
project structure
https://cppsm.github.io/#conventional-project-structure
≡
https://cppsm.github.io/#contents
add_conventional_targets_under(directory)
https://cppsm.github.io/#add_conventional_targets_under
target directories
https://cppsm.github.io/#target-directory
add_subdirectory
https://cmake.org/cmake/help/latest/command/add_subdirectory.html
≡
https://cppsm.github.io/#contents
add_conventional_targets_provided_under(directory)
https://cppsm.github.io/#add_conventional_targets_provided_under
project submodule
https://cppsm.github.io/#project-submodule
add_conventional_targets_under
https://cppsm.github.io/#add_conventional_targets_under
add_subdirectory
https://cmake.org/cmake/help/latest/command/add_subdirectory.html
≡
https://cppsm.github.io/#contents
add_conventional_targets()
https://cppsm.github.io/#add_conventional_targets
project
https://cppsm.github.io/#project
add_conventional_targets_provided_under(requires)
https://cppsm.github.io/#requires-directory
add_conventional_targets_under(provides)
https://cppsm.github.io/#provides-directory
add_conventional_targets_provided_under(equipment)
https://cppsm.github.io/#equipment-directory
add_conventional_targets_under(internals)
https://cppsm.github.io/#internals-directory
≡
https://cppsm.github.io/#contents
conventional-targets.cmake
https://cppsm.github.io/#conventional-targets-cmake
conventional-targets.cmake
https://github.com/cppsm/cppsm-boilerplate/blob/master/conventional-targets.cmake
conventional target structure
https://cppsm.github.io/#conventional-target-structure
≡
https://cppsm.github.io/#contents
add_conventional_executable(name)
https://cppsm.github.io/#add_conventional_executable
target_link_libraries
https://cmake.org/cmake/help/latest/command/target_link_libraries.html
≡
https://cppsm.github.io/#contents
add_conventional_executable_tests(...)
https://cppsm.github.io/#add_conventional_executable_tests
target_link_libraries
https://cmake.org/cmake/help/latest/command/target_link_libraries.html
≡
https://cppsm.github.io/#contents
add_conventional_library(${LIBRARY_NAME}_${LIBRARY_VERSION})
https://cppsm.github.io/#add_conventional_library
include/${LIBRARY_NAME}_${LIBRARY_VERSION}/*.hpp
https://cppsm.github.io/#conventional-library-versioning
${LIBRARY_NAME}_${LIBRARY_VERSION}
https://cppsm.github.io/#conventional-library-versioning
≡
https://cppsm.github.io/#contents
Travis CI
https://cppsm.github.io/#travis-ci
Travis CI
https://travis-ci-ci.org/
configuration file
https://github.com/cppsm/cppsm-cli/blob/master/.travis.yml
CI script
https://github.com/cppsm/cppsm-cli/blob/master/travis-ci
Clang
https://clang.llvm.org/
GCC
https://gcc.gnu.org/
Visual C++
https://docs.microsoft.com/en-us/cpp/
Emscripten
https://emscripten.org/
Clang
https://clang.llvm.org/
GCC
https://gcc.gnu.org/
Emscripten
https://emscripten.org/
Clang
https://clang.llvm.org/
GCC
https://gcc.gnu.org/
Emscripten
https://emscripten.org/
MinGW
http://www.mingw.org/
GCC
https://gcc.gnu.org/
Visual C++
https://docs.microsoft.com/en-us/cpp/
CLANG=1|0
https://cppsm.github.io/#clang
Clang
https://clang.llvm.org/
Clang
https://clang.llvm.org/
CODECOV=0|1
https://cppsm.github.io/#codecov
Codecov
https://codecov.io/
EMSCRIPTEN=0|1
https://cppsm.github.io/#emscripten
Emscripten
https://emscripten.org/
Emscripten
https://emscripten.org/
FORMAT_CHECK=1|0
https://cppsm.github.io/#format_check
cppsm format
https://cppsm.github.io/#cppsm-format
GCC=1|0
https://cppsm.github.io/#gcc
GCC
https://gcc.gnu.org/
GCC
https://gcc.gnu.org/
INSTALL_WAIT=0|1
https://cppsm.github.io/#install_wait
UPGRADE_CHECK=1|0
https://cppsm.github.io/#upgrade_check
cppsm upgrade
https://cppsm.github.io/#cppsm-upgrade
VS2017=1|0
https://cppsm.github.io/#vs2017
Visual C++
https://docs.microsoft.com/en-us/cpp/
Visual C++
https://docs.microsoft.com/en-us/cpp/
VS2019=1|0
https://cppsm.github.io/#vs2019
Visual C++
https://docs.microsoft.com/en-us/cpp/
Visual C++
https://docs.microsoft.com/en-us/cpp/
≡
https://cppsm.github.io/#contents
Variables
https://cppsm.github.io/#variables
CI
https://cppsm.github.io/#travis-ci
≡
https://cppsm.github.io/#contents
CTEST_OUTPUT_ON_FAILURE=1|0
https://cppsm.github.io/#ctest_output_on_failure
log output in case a test fails
https://cmake.org/cmake/help/latest/envvar/CTEST_OUTPUT_ON_FAILURE.html
≡
https://cppsm.github.io/#contents
QUIET=1|0
https://cppsm.github.io/#quiet
GIT_QUIET=QUIET
https://cppsm.github.io/#git_quiet
Git
https://git-scm.com/
MSBUILD_VERBOSITY=QUIET|MINIMAL|NORMAL|DETAILED|DIAGNOSTIC
https://cppsm.github.io/#msbuild_verbosity
/VERBOSITY
https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild-command-line-reference
MSBuild
https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild
XCODE_VERBOSITY=quiet|verbose
https://cppsm.github.io/#xcode_verbosity
≡
https://cppsm.github.io/#contents
NUMBER_OF_PROCESSORS=1|2|...
https://cppsm.github.io/#number_of_processors
N_PARALLEL_BUILD=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_build
--parallel option of cmake --build
https://cmake.org/cmake/help/latest/manual/cmake.1.html#build-a-project
N_PARALLEL_TEST=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_test
--parallel option of ctest
https://cmake.org/cmake/help/latest/manual/ctest.1.html#options
N_PARALLEL_UPDATE=NUMBER_OF_PROCESSORS
https://cppsm.github.io/#n_parallel_update
--jobs option of git submodule update
https://git-scm.com/docs/git-submodule#Documentation/git-submodule.txt---jobsltngt
≡
https://cppsm.github.io/#contents
TRACE=0|1
https://cppsm.github.io/#trace
XTRACE=TRACE
https://cppsm.github.io/#xtrace
set -x
https://www.gnu.org/software/bash/manual/bash.html#The-Set-Builtin
≡
https://cppsm.github.io/#contents
Conventions
https://cppsm.github.io/#conventions
cppsm init-hello
https://cppsm.github.io/#cppsm-init-hello
≡
https://cppsm.github.io/#contents
Conventional project structure
https://cppsm.github.io/#conventional-project-structure
conventional-project.cmake
https://cppsm.github.io/#conventional-project-cmake
subcommands
https://cppsm.github.io/#subcommands
cppsm command
https://cppsm.github.io/#cppsm-command
A project
https://cppsm.github.io/#project
boilerplate
https://github.com/cppsm/cppsm-boilerplate
The equipment directory
https://cppsm.github.io/#equipment-directory
project submodules
https://cppsm.github.io/#project-submodule
The internals directory
https://cppsm.github.io/#internals-directory
target directories
https://cppsm.github.io/#target-directory
The provides directory
https://cppsm.github.io/#provides-directory
target directories
https://cppsm.github.io/#target-directory
The requires directory
https://cppsm.github.io/#requires-directory
project submodules
https://cppsm.github.io/#project-submodule
A project submodule
https://cppsm.github.io/#project-submodule
project
https://cppsm.github.io/#project
project
https://cppsm.github.io/#project
provides
https://cppsm.github.io/#provides-directory
A target directory
https://cppsm.github.io/#target-directory
internals
https://cppsm.github.io/#internals-directory
provides
https://cppsm.github.io/#provides-directory
internals
https://cppsm.github.io/#internals-directory
provides
https://cppsm.github.io/#provides-directory
≡
https://cppsm.github.io/#contents
Conventional target structure
https://cppsm.github.io/#conventional-target-structure
conventional-targets.cmake
https://cppsm.github.io/#conventional-targets-cmake
A library
https://cppsm.github.io/#library-target
include/${LIBRARY_NAME}_${LIBRARY_VERSION}
https://cppsm.github.io/#conventional-library-versioning
Any number of executable tests
https://cppsm.github.io/#testing-target
An executable program
https://cppsm.github.io/#program-target
≡
https://cppsm.github.io/#contents
Conventional project versioning
https://cppsm.github.io/#conventional-project-versioning
projects
https://cppsm.github.io/#project
project submodules
https://cppsm.github.io/#project-submodule
${PROJECT_NAME}
https://cppsm.github.io/#project-name
${PROJECT_VERSION}
https://cppsm.github.io/#project-version
${PROJECT_NAME}
https://cppsm.github.io/#project-name
${PROJECT_VERSION}
https://cppsm.github.io/#project-version
equipment/${PROJECT_NAME}/${PROJECT_VERSION}
https://cppsm.github.io/#equipment-directory
requires/${PROJECT_NAME}/${PROJECT_VERSION}
https://cppsm.github.io/#requires-directory
≡
https://cppsm.github.io/#contents
Conventional library versioning
https://cppsm.github.io/#conventional-library-versioning
library target
https://cppsm.github.io/#add_conventional_library
project versioning conventions
https://cppsm.github.io/#conventional-project-versioning
PROJECT_NAME
https://cppsm.github.io/#project-name
PROJECT_VERSION
https://cppsm.github.io/#project-version
URLs of
crawlers that visited me
.