| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 | <!doctype html><title>CodeMirror: CMake mode</title><meta charset="utf-8"/><link rel=stylesheet href="../../doc/docs.css"><link rel="stylesheet" href="../../lib/codemirror.css"><script src="../../lib/codemirror.js"></script><script src="../../addon/edit/matchbrackets.js"></script><script src="cmake.js"></script><style>      .CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}      .cm-s-default span.cm-arrow { color: red; }    </style><div id=nav>  <a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png"></a>  <ul>    <li><a href="../../index.html">Home</a>    <li><a href="../../doc/manual.html">Manual</a>    <li><a href="https://github.com/codemirror/codemirror">Code</a>  </ul>  <ul>    <li><a href="../index.html">Language modes</a>    <li><a class=active href="#">CMake</a>  </ul></div><article><h2>CMake mode</h2><form><textarea id="code" name="code"># vim: syntax=cmakeif(NOT CMAKE_BUILD_TYPE)    # default to Release build for GCC builds    set(CMAKE_BUILD_TYPE Release CACHE STRING        "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel."        FORCE)endif()message(STATUS "cmake version ${CMAKE_VERSION}")if(POLICY CMP0025)    cmake_policy(SET CMP0025 OLD) # report Apple's Clang as just Clangendif()if(POLICY CMP0042)    cmake_policy(SET CMP0042 NEW) # MACOSX_RPATHendif()project (x265)cmake_minimum_required (VERSION 2.8.8) # OBJECT libraries require 2.8.8include(CheckIncludeFiles)include(CheckFunctionExists)include(CheckSymbolExists)include(CheckCXXCompilerFlag)# X265_BUILD must be incremented each time the public API is changedset(X265_BUILD 48)configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"               "${PROJECT_BINARY_DIR}/x265.def")configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"               "${PROJECT_BINARY_DIR}/x265_config.h")SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")# System architecture detectionstring(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC)set(X86_ALIASES x86 i386 i686 x86_64 amd64)list(FIND X86_ALIASES "${SYSPROC}" X86MATCH)if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1")    message(STATUS "Detected x86 target processor")    set(X86 1)    add_definitions(-DX265_ARCH_X86=1)    if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)        set(X64 1)        add_definitions(-DX86_64=1)    endif()elseif(${SYSPROC} STREQUAL "armv6l")    message(STATUS "Detected ARM target processor")    set(ARM 1)    add_definitions(-DX265_ARCH_ARM=1 -DHAVE_ARMV6=1)else()    message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown")    message(STATUS "Please add this value near ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE}")endif()if(UNIX)    list(APPEND PLATFORM_LIBS pthread)    find_library(LIBRT rt)    if(LIBRT)        list(APPEND PLATFORM_LIBS rt)    endif()    find_package(Numa)    if(NUMA_FOUND)        list(APPEND CMAKE_REQUIRED_LIBRARIES ${NUMA_LIBRARY})        check_symbol_exists(numa_node_of_cpu numa.h NUMA_V2)        if(NUMA_V2)            add_definitions(-DHAVE_LIBNUMA)            message(STATUS "libnuma found, building with support for NUMA nodes")            list(APPEND PLATFORM_LIBS ${NUMA_LIBRARY})            link_directories(${NUMA_LIBRARY_DIR})            include_directories(${NUMA_INCLUDE_DIR})        endif()    endif()    mark_as_advanced(LIBRT NUMA_FOUND)endif(UNIX)if(X64 AND NOT WIN32)    option(ENABLE_PIC "Enable Position Independent Code" ON)else()    option(ENABLE_PIC "Enable Position Independent Code" OFF)endif(X64 AND NOT WIN32)# Compiler detectionif(CMAKE_GENERATOR STREQUAL "Xcode")  set(XCODE 1)endif()if (APPLE)  add_definitions(-DMACOS)endif()</textarea></form>    <script>      var editor = CodeMirror.fromTextArea(document.getElementById("code"), {        mode: "text/x-cmake",        matchBrackets: true,        indentUnit: 4      });    </script>    <p><strong>MIME types defined:</strong> <code>text/x-cmake</code>.</p>  </article>
 |