File: CMakeLists.txt

package info (click to toggle)
chromium 139.0.7258.127-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,068 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (63 lines) | stat: -rw-r--r-- 2,012 bytes parent folder | download | duplicates (23)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
cmake_minimum_required(VERSION 2.8.8)
project(ChromeExtras)
enable_testing()

list(APPEND CMAKE_MODULE_PATH "${LLVM_BUILD_DIR}/share/llvm/cmake")

# These tools are built using LLVM's build system, not Chromium's.
# The build script generates a shim CMakeLists.txt in the LLVM source tree,
# which simply forwards to this file.


# Use rpath to find the bundled standard C++ library.
set(CMAKE_BUILD_WITH_INSTALL_RPATH ON)
if (APPLE)
  set(CMAKE_INSTALL_NAME_DIR "@rpath")
  set(CMAKE_INSTALL_RPATH "@executable_path/../lib")
else(UNIX)
  set(CMAKE_INSTALL_RPATH "\$ORIGIN/../lib")
endif()

include_directories("${CMAKE_SOURCE_DIR}/include"
                    "${CMAKE_BINARY_DIR}/include"
                    "${CMAKE_BINARY_DIR}/tools/clang/include")

link_directories("${CMAKE_SOURCE_DIR}/lib"
                 "${CMAKE_BINARY_DIR}/lib"
                 "${CMAKE_BINARY_DIR}/tools/clang/lib")

if (DEFINED LLVM_EXTERNAL_CLANG_SOURCE_DIR)
  include_directories("${LLVM_EXTERNAL_CLANG_SOURCE_DIR}/include")
  link_directories("${LLVM_EXTERNAL_CLANG_SOURCE_DIR}/lib")
else ()
  include_directories("${CMAKE_SOURCE_DIR}/tools/clang/include")
  link_directories("${CMAKE_SOURCE_DIR}/tools/clang/lib")
endif ()

# Tests for all enabled tools can be run by building this target.
add_custom_target(cr-check-all COMMAND ${CMAKE_CTEST_COMMAND} -V)

# cr_add_test(
#   name
#   testprog
#   arguments...
#   )
function(cr_add_test name testprog)
  add_custom_target(
    ${name} COMMAND ${testprog} ${ARGN}
    WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
  add_dependencies(cr-check-all ${name})
endfunction(cr_add_test)

function(cr_install)
  install(${ARGN} COMPONENT chrome-tools OPTIONAL)
endfunction(cr_install)

# Custom install target, so the chrome tools can be installed without installing
# all the other LLVM targets.
add_custom_target(cr-install COMMAND
  ${CMAKE_COMMAND} -D COMPONENT=chrome-tools -P cmake_install.cmake)

foreach(tool ${CHROMIUM_TOOLS})
  add_subdirectory(${tool})
endforeach(tool)