Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Common CMake modules

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 2.8.3
Octocat-spinner-32 2.8.8
Octocat-spinner-32 cpp
Octocat-spinner-32 icons
Octocat-spinner-32 .gitignore
Octocat-spinner-32 BuildApplication.cmake
Octocat-spinner-32 BuildConfig.cmake
Octocat-spinner-32 BuildLibrary.cmake
Octocat-spinner-32 Buildyard.cmake
Octocat-spinner-32 CMakeInstallPath.cmake
Octocat-spinner-32 Common.cmake
Octocat-spinner-32 CommonApplication.cmake
Octocat-spinner-32 CommonCPPCTest.cmake
Octocat-spinner-32 CommonCPack.cmake
Octocat-spinner-32 CommonCTest.cmake
Octocat-spinner-32 CommonCode.cmake
Octocat-spinner-32 CommonLibrary.cmake
Octocat-spinner-32 CommonProcess.cmake
Octocat-spinner-32 Compiler.cmake
Octocat-spinner-32 CompilerVersion.cmake
Octocat-spinner-32 Coverage.cmake
Octocat-spinner-32 CppcheckTargets.cmake
Octocat-spinner-32 Doxyfile
Octocat-spinner-32 DoxygenRule.cmake
Octocat-spinner-32 Doxygit.cmake
Octocat-spinner-32 FindAtlas.cmake
Octocat-spinner-32 FindCBLAS.cmake
Octocat-spinner-32 FindCairo.cmake
Octocat-spinner-32 FindDNSSD.cmake
Octocat-spinner-32 FindDisplayCluster.cmake
Octocat-spinner-32 FindFCGI.cmake
Octocat-spinner-32 FindFFMPEG.cmake
Octocat-spinner-32 FindGLEW_MX.cmake
Octocat-spinner-32 FindGPFS.cmake
Octocat-spinner-32 FindGTS.cmake
Octocat-spinner-32 FindLibJpegTurbo.cmake
Octocat-spinner-32 FindMAGELLAN.cmake
Octocat-spinner-32 FindMKL.cmake
Octocat-spinner-32 FindMaya.cmake
Octocat-spinner-32 FindNumPy.cmake
Octocat-spinner-32 FindOFED.cmake
Octocat-spinner-32 FindOpenMesh.cmake
Octocat-spinner-32 FindPoppler.cmake
Octocat-spinner-32 FindQwt.cmake
Octocat-spinner-32 FindRealityGrid.cmake
Octocat-spinner-32 FindSAGE.cmake
Octocat-spinner-32 FindSpatialIndex.cmake
Octocat-spinner-32 FindTUIO.cmake
Octocat-spinner-32 FindTuvok.cmake
Octocat-spinner-32 FindUDT.cmake
Octocat-spinner-32 FindVRPN.cmake
Octocat-spinner-32 FindVTune.cmake
Octocat-spinner-32 FindWiiuse.cmake
Octocat-spinner-32 FindXDR.cmake
Octocat-spinner-32 Findcppcheck.cmake
Octocat-spinner-32 Findcppcheck.cpp
Octocat-spinner-32 Findgmock.cmake
Octocat-spinner-32 Findhwloc.cmake
Octocat-spinner-32 Findjack.cmake
Octocat-spinner-32 Findlo.cmake
Octocat-spinner-32 Findv4l2.cmake
Octocat-spinner-32 Findvncserver.cmake
Octocat-spinner-32 Findyasm.cmake
Octocat-spinner-32 Findzmqcpp.cmake
Octocat-spinner-32 GNUModules.cmake
Octocat-spinner-32 GitExternal.cmake
Octocat-spinner-32 GitInfo.cmake
Octocat-spinner-32 GitTargets.cmake
Octocat-spinner-32 GithubInfo.cmake
Octocat-spinner-32 GithubOrganization.cmake
Octocat-spinner-32 InstallFiles.cmake
Octocat-spinner-32 InstallSymlink.cmake
Octocat-spinner-32 LSBInfo.cmake
Octocat-spinner-32 LibFindMacros.cmake
Octocat-spinner-32 MPI.cmake
Octocat-spinner-32 MacPorts.cmake
Octocat-spinner-32 Maturity.cmake
Octocat-spinner-32 OSSCPack.cmake
Octocat-spinner-32 PackageConfig.cmake
Octocat-spinner-32 Portfile
Octocat-spinner-32 ProjectInfo.cmake
Octocat-spinner-32 ProjectInfo.in.cmake
Octocat-spinner-32 PurpleInstallPDB.cmake
Octocat-spinner-32 README.md
Octocat-spinner-32 Revision.cmake
Octocat-spinner-32 SCM.cmake
Octocat-spinner-32 StringifyShaders.cmake
Octocat-spinner-32 System.cmake
Octocat-spinner-32 TargetHooks.cmake
Octocat-spinner-32 TestCPP11.cmake
Octocat-spinner-32 UpdateFile.cmake
Octocat-spinner-32 UpdateGitExternal.cmake
Octocat-spinner-32 UploadPPA.cmake
Octocat-spinner-32 WriteModuleFile.cmake
Octocat-spinner-32 cdash.bat
Octocat-spinner-32 cdash.plist
Octocat-spinner-32 github.css
Octocat-spinner-32 html2rst.py
Octocat-spinner-32 ittnotify.h
Octocat-spinner-32 rpmPostInstall.sh
README.md

CMake Modules

This repository contains common CMake modules. To use it, create a .gitexternals in your project:

# -*- mode: cmake -*-
# CMake/common https://github.com/Eyescale/CMake.git master

Copy GitExternal from this repository to CMake/, and use it in your top-level CMakeLists.txt:

list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMake
  ${CMAKE_SOURCE_DIR}/CMake/common)
include(GitExternal)
include(Common)

Run 'make update' to change the SHA hash in .gitexternals to the newest origin/master version.

Documentation

  • Common does a common CMake setup, including:
    • CommonLibrary common_library function to build a shared library using a standard recipe.
    • CommonApplication common_application function to build an application using a standard recipe.
    • CommonCode generates standard header files for the project (api.h, defines.h, version.h).
    • GNUModules: module target to create a GNUModules module and snapshot targets to create GNU modules.
    • GitTargets branch, cut, tag, erase, retag, tarball targets.
    • Compiler: Default compiler flags, useful default warnings and 'safe' C++11 features.
    • GitInfo sets variables with information about the git source tree.
  • CommonCTest does a common CTest setup, including
    • Automatically adding all .cpp files as tests
    • Coverage Create code coverage report as html, if ENABLE_COVERAGE is set. Buildyard has 'make Coverage' target to enable this in a separate build, since coverage flags may break downstream projects.
    • CppcheckTargets: cppcheck target for static code analysis. Also adds all cppcheck targets to tests.
  • DoxygenRule: doxygen target to build documentation into CMAKE_BINARY_DIR/doc. Optional doxygit target to copy result to ../GITHUB_ORGANIZATION/Project-M.m/. Must be included after all targets.
  • Find scripts for non-CMake projects.
Something went wrong with that request. Please try again.