CMakeFindCodeBlocks.cmake 1.7 KB

123456789101112131415161718192021222324252627282930313233
  1. # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. # file Copyright.txt or https://cmake.org/licensing for details.
  3. # This file is included in CMakeSystemSpecificInformation.cmake if
  4. # the CodeBlocks extra generator has been selected.
  5. find_program(CMAKE_CODEBLOCKS_EXECUTABLE NAMES codeblocks DOC "The CodeBlocks executable")
  6. if(CMAKE_CODEBLOCKS_EXECUTABLE)
  7. set(CMAKE_OPEN_PROJECT_COMMAND "${CMAKE_CODEBLOCKS_EXECUTABLE} <PROJECT_FILE>" )
  8. endif()
  9. # Determine builtin macros and include dirs:
  10. include(${CMAKE_CURRENT_LIST_DIR}/CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake)
  11. # Try to find out how many CPUs we have and set the -j argument for make accordingly
  12. set(_CMAKE_CODEBLOCKS_INITIAL_MAKE_ARGS "")
  13. include(ProcessorCount)
  14. processorcount(_CMAKE_CODEBLOCKS_PROCESSOR_COUNT)
  15. # Only set -j if we are under UNIX and if the make-tool used actually has "make" in the name
  16. # (we may also get here in the future e.g. for ninja)
  17. if("${_CMAKE_CODEBLOCKS_PROCESSOR_COUNT}" GREATER 1 AND CMAKE_HOST_UNIX AND "${CMAKE_MAKE_PROGRAM}" MATCHES make)
  18. set(_CMAKE_CODEBLOCKS_INITIAL_MAKE_ARGS "-j${_CMAKE_CODEBLOCKS_PROCESSOR_COUNT}")
  19. endif()
  20. # This variable is used by the CodeBlocks generator and appended to the make invocation commands.
  21. set(CMAKE_CODEBLOCKS_MAKE_ARGUMENTS "${_CMAKE_CODEBLOCKS_INITIAL_MAKE_ARGS}" CACHE STRING "Additional command line arguments when CodeBlocks invokes make. Enter e.g. -j<some_number> to get parallel builds")
  22. # This variable is used by the CodeBlocks generator and allows the user to overwrite the autodetected CodeBlocks compiler id
  23. set(CMAKE_CODEBLOCKS_COMPILER_ID "" CACHE STRING "Id string of the compiler for the CodeBlocks IDE. Automatically detected when left empty")