annotate .cms/lib/codemirror/mode/cmake/index.html @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
1 <!doctype html>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
2
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
3 <title>CodeMirror: CMake mode</title>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
4 <meta charset="utf-8"/>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
5 <link rel=stylesheet href="../../doc/docs.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
6
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
7 <link rel="stylesheet" href="../../lib/codemirror.css">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
8 <script src="../../lib/codemirror.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
9 <script src="../../addon/edit/matchbrackets.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
10 <script src="cmake.js"></script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
11 <style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
12 .CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
13 .cm-s-default span.cm-arrow { color: red; }
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
14 </style>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
15 <div id=nav>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
16 <a href="https://codemirror.net/5"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png" alt=""></a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
17
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
18 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
19 <li><a href="../../index.html">Home</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
20 <li><a href="../../doc/manual.html">Manual</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
21 <li><a href="https://github.com/codemirror/codemirror5">Code</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
22 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
23 <ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
24 <li><a href="../index.html">Language modes</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
25 <li><a class=active href="#">CMake</a>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
26 </ul>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
27 </div>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
28
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
29 <article>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
30 <h2>CMake mode</h2>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
31 <form><textarea id="code" name="code">
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
32 # vim: syntax=cmake
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
33 if(NOT CMAKE_BUILD_TYPE)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
34 # default to Release build for GCC builds
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
35 set(CMAKE_BUILD_TYPE Release CACHE STRING
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
36 "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel."
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
37 FORCE)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
38 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
39 message(STATUS "cmake version ${CMAKE_VERSION}")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
40 if(POLICY CMP0025)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
41 cmake_policy(SET CMP0025 OLD) # report Apple's Clang as just Clang
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
42 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
43 if(POLICY CMP0042)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
44 cmake_policy(SET CMP0042 NEW) # MACOSX_RPATH
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
45 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
46
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
47 project (x265)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
48 cmake_minimum_required (VERSION 2.8.8) # OBJECT libraries require 2.8.8
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
49 include(CheckIncludeFiles)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
50 include(CheckFunctionExists)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
51 include(CheckSymbolExists)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
52 include(CheckCXXCompilerFlag)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
53
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
54 # X265_BUILD must be incremented each time the public API is changed
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
55 set(X265_BUILD 48)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
56 configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
57 "${PROJECT_BINARY_DIR}/x265.def")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
58 configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
59 "${PROJECT_BINARY_DIR}/x265_config.h")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
60
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
61 SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
62
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
63 # System architecture detection
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
64 string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
65 set(X86_ALIASES x86 i386 i686 x86_64 amd64)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
66 list(FIND X86_ALIASES "${SYSPROC}" X86MATCH)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
67 if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
68 message(STATUS "Detected x86 target processor")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
69 set(X86 1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
70 add_definitions(-DX265_ARCH_X86=1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
71 if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
72 set(X64 1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
73 add_definitions(-DX86_64=1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
74 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
75 elseif(${SYSPROC} STREQUAL "armv6l")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
76 message(STATUS "Detected ARM target processor")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
77 set(ARM 1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
78 add_definitions(-DX265_ARCH_ARM=1 -DHAVE_ARMV6=1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
79 else()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
80 message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
81 message(STATUS "Please add this value near ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE}")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
82 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
83
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
84 if(UNIX)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
85 list(APPEND PLATFORM_LIBS pthread)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
86 find_library(LIBRT rt)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
87 if(LIBRT)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
88 list(APPEND PLATFORM_LIBS rt)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
89 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
90 find_package(Numa)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
91 if(NUMA_FOUND)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
92 list(APPEND CMAKE_REQUIRED_LIBRARIES ${NUMA_LIBRARY})
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
93 check_symbol_exists(numa_node_of_cpu numa.h NUMA_V2)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
94 if(NUMA_V2)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
95 add_definitions(-DHAVE_LIBNUMA)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
96 message(STATUS "libnuma found, building with support for NUMA nodes")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
97 list(APPEND PLATFORM_LIBS ${NUMA_LIBRARY})
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
98 link_directories(${NUMA_LIBRARY_DIR})
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
99 include_directories(${NUMA_INCLUDE_DIR})
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
100 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
101 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
102 mark_as_advanced(LIBRT NUMA_FOUND)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
103 endif(UNIX)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
104
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
105 if(X64 AND NOT WIN32)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
106 option(ENABLE_PIC "Enable Position Independent Code" ON)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
107 else()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
108 option(ENABLE_PIC "Enable Position Independent Code" OFF)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
109 endif(X64 AND NOT WIN32)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
110
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
111 # Compiler detection
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
112 if(CMAKE_GENERATOR STREQUAL "Xcode")
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
113 set(XCODE 1)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
114 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
115 if (APPLE)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
116 add_definitions(-DMACOS)
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
117 endif()
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
118 </textarea></form>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
119 <script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
120 var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
121 mode: "text/x-cmake",
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
122 matchBrackets: true,
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
123 indentUnit: 4
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
124 });
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
125 </script>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
126
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
127 <p><strong>MIME types defined:</strong> <code>text/x-cmake</code>.</p>
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
128
Coffee CMS <info@coffee-cms.ru>
parents:
diff changeset
129 </article>