Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Common CMake modules
CMake C Python C++ Other
branch: master

Merge pull request #324 from rdumusc/qtsupport

Implement Qt support for common_library
latest commit 61fc35a9e7
@eile eile authored
Failed to load latest commit information.
2.8.3 Improve support for CMake 2.8
2.8.8 Make PackageConfig work on CMake versions < 2.8.8
cpp Missing update from Eyescale:master
icons Update icons with PD versions
util Missing update from Eyescale:master
.gitignore Update gitignore
BuildApplication.cmake Addendum to #83:
BuildConfig.cmake Missing update from Eyescale:master
Buildyard.cmake Changes needed for including sub projects
CHANGES.md Missing update from Eyescale:master
CMakeCompatibility.cmake Make SubProject work with older CMake 2.8 versions
CMakeInstallPath.cmake Missing update from Eyescale:master
ChoosePython.cmake Added a config script to auto detect the Python version to use.
Common.cmake Added a config script to auto detect the Python version to use.
CommonApplication.cmake Implement Qt support for common_library
CommonCPPCTest.cmake Fixing doxygen and coverage targets for subprojects
CommonCPack.cmake More QUIET for internal find_packages, remove obsolete GNUModules
CommonCTest.cmake Fix issues with 'tests' target
CommonCode.cmake Missing update from Eyescale:master
CommonDocumentation.cmake Doxygit: deprecate generation of index.html in favor of Jekyll.
CommonInstall.cmake Fix typo bug
CommonLibrary.cmake Implement Qt support for common_library
CommonPackage.cmake More QUIET for internal find_packages, remove obsolete GNUModules
CommonProcess.cmake Introduce and use CommonProcess
CommonQtSupport.cmake Implement Qt support for common_library
Compiler.cmake Missing update from Eyescale:master
CompilerVersion.cmake Fix compatibility with CMake < 2.8.3
Coverage.cmake Fix doxygen_install, cleanup Coverage target and force LCOV 1.11
CppcheckTargets.cmake More QUIET for internal find_packages, remove obsolete GNUModules
CpplintTargets.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Doxyfile Subproject fixes
DoxygenRule.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Doxygit.cmake More QUIET for internal find_packages, remove obsolete GNUModules
FindAIO.cmake Missing update from Eyescale:master
FindAtlas.cmake Added find script for ATLAS (optimized lapack/blas) library
FindBlueZ.cmake Add abandoned finder from Buildyard
FindBoostConfig.cmake Added a config script to auto detect the Python version to use.
FindCBLAS.cmake Unified solution for LAPACK/CBLAS
FindCairo.cmake Add finder for Cairo library
FindDNSSD.cmake Implement quiet and required for FindVTune
FindFCGI.cmake Added find script for FastCGI (used by DisplayCluster WebService)
FindFFMPEG.cmake Missing update from Eyescale:master
FindFlowVR.cmake Missing update from Eyescale:master
FindGLEW_MX.cmake Missing update from Eyescale:master
FindGPFS.cmake Add GPFS API finder
FindGTS.cmake Implement QUIET for GTS finder
FindLibJpegTurbo.cmake Missing update from Eyescale:master
FindMAGELLAN.cmake Fix Magellan OS X finder
FindMKL.cmake Add FindMKL script (forked from external github repository). Not yet …
FindMaya.cmake Updating the finder to look into Maya 2013 directory.
FindNumPy.cmake Added a config script to auto detect the Python version to use.
FindOFED.cmake Implement QUIET for FindOFED
FindOpenMesh.cmake Add author/copyright
FindPoppler.cmake Missing update from Eyescale:master
FindPythonCython.cmake Missing update from Eyescale:master
FindPythonModule.cmake Missing update from Eyescale:master
FindPythonh5py.cmake Missing update from Eyescale:master
FindPythonnose.cmake Missing update from Eyescale:master
FindQwt.cmake Add finder Qwt library
FindRealityGrid.cmake Add RealityGrid finder
FindSAGE.cmake Missing update from Eyescale:master
FindSLURM.cmake Missing update from Eyescale:master
FindSpatialIndex.cmake added file for libSpatialIndex
FindTuvok.cmake Fix FindTuvok.cmake script
FindUDT.cmake Implement QUIET for UDT finder
FindVRPN.cmake Denoise some finders
FindVTune.cmake Missing update from Eyescale:master
FindWiiuse.cmake Minor fixes
FindXDR.cmake Add finder foro XDR library
Findcapnproto.cmake Missing update from Eyescale:master
Findcppcheck.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Findcppcheck.cpp Improve cppcheck compatibility
Findcpplint.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Findcppnetlib.cmake config superprojects: only switch projects with SHA to master
Findgmock.cmake Adding find package support for gmock, jsoncpp, zeromq, and zeromq c+…
Findhwloc.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Findjack.cmake Add jack finder for SAGE
Findleveldb.cmake More QUIET for internal find_packages, remove obsolete GNUModules
Findlibzmq.cmake Adding path hints to locate ZMQ when built from source in Windows.
Findlo.cmake Add lo finder for SAGE
Findrocksdb.cmake Fix rocksdb finder for newer versions
Findv4l2.cmake v4l2 & yasm finder for SAGE
Findvncserver.cmake Add vnc finder for SAGE
Findyasm.cmake v4l2 & yasm finder for SAGE
Findzeromqcpp.cmake Missing update from Eyescale:master
GitExternal.cmake More QUIET for internal find_packages, remove obsolete GNUModules
GitInfo.cmake More QUIET for internal find_packages, remove obsolete GNUModules
GitTargets.cmake More QUIET for internal find_packages, remove obsolete GNUModules
GithubInfo.cmake Not overwriting the PROJECT_ISSUES_URL if already set.
GithubOrganization.cmake Foundations to transform documentation repository into directory:
InstallFiles.cmake Common adaptations for more complex projects than Hello:
InstallSymlink.cmake Install symlinks relative, not absolute
LICENSE.txt Missing update from Eyescale:master
LSBInfo.cmake More QUIET for internal find_packages, remove obsolete GNUModules
LibFindMacros.cmake Make TurboJpeg finding more informative
MPI.cmake Merge branch 'master' of https://github.com/delalond/CMake
MacPorts.cmake Missing update from Eyescale:master
Maturity.cmake Foundations to transform documentation repository into directory:
OSG.cmake Missing update from Eyescale:master
OSSCPack.cmake Rename file
PackageConfig.cmake Added a config script to auto detect the Python version to use.
PackageInstall.cmake Missing update from Eyescale:master
Portfile Fix make Macports portfilename configurable
ProjectInfo.cmake Use correct property to exclude targets from VS "All Build"
ProjectInfo.in.cmake Modifications in setup of issues link.
PurpleInstallPDB.cmake Separate and install object manager template instantiation, clean up …
README.md Implement "cmake -DINSTALL_PACKAGES=1"
Revision.cmake General Improvements done for the Template project:
SCM.cmake Merge cleanup
StringifyShaders.cmake Fix shader stringify for real, rename to remove eq historics
SubProject.cmake Use Module mode for find_package in subprojects if Config mode fails.
System.cmake Missing update from Eyescale:master
TargetHooks.cmake Fix cppcheck: missing include for version.h when UPPER_PROJECT_NAME !…
TestCPP11.cmake More QUIET for internal find_packages, remove obsolete GNUModules
TestScriptUtils.cmake Allow absolute paths for test scripts.
Ubuntu.cmake Unify ubuntu codenames in a single place
UpdateFile.cmake Missing update from Eyescale:master
UpdateGitExternal.cmake Deprecate useless update_file
UploadPPA.cmake Missing update from Eyescale:master
VersionUtils.cmake Missing update from Eyescale:master
cdash.bat CDash Win32 batch script
cdash.plist Update launchctl CDash plist
clangcheckTargets.cmake Use correct property to exclude targets from VS "All Build"
github.css Foundations to transform documentation repository into directory:
html2rst.py Fix README.rst generation
ittnotify.h Add VTune notification API support
rpmPostInstall.sh Run ldconfig after rpm installation, second try

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 ${PROJECT_SOURCE_DIR}/CMake
                              ${PROJECT_SOURCE_DIR}/CMake/common)
include(GitExternal)
include(Common)

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.
    • clangcheckTargets: clangcheck target for clang-check code analysis. Adds all cppcheck targets to tests if ENABLE_CLANGCHECK_TESTS is set.
  • DoxygenRule: doxygen target to build documentation into PROJECT_BINARY_DIR/doc. Optional doxygit target to copy result to ../GITHUB_ORGANIZATION/Project-M.m/. Must be included after all targets.
  • SubProject: Using a top level simple CMake superproject, several CMake subprojects (which typically depend on each other) can be build. Each subproject is added to the parent superproject with an add_subdirectory( subproject ) directive. To use the SubProject feature, the sub projects should modify their CMake scripts. In the scripts most CMAKE_BINARY_DIR should be changed to PROJECT_BINARY_DIR and CMAKE_SOURCE_DIR should be changed to PROJECT_SOURCE_DIR. A simple sample project can be found at https://github.com/Eyescale/Collage.git, and a complex one at https://github.com/BlueBrain/Livre.git. Users can use "cmake -DINSTALL_PACKAGES=1" during the initial configuration to install known system packages (Ubuntu and OS X only).

  • Find scripts for non-CMake projects.

Something went wrong with that request. Please try again.