forked from WebKit/WebKit-http
-
Notifications
You must be signed in to change notification settings - Fork 157
Expand file tree
/
Copy pathBubblewrapSandboxChecks.cmake
More file actions
44 lines (40 loc) · 1.86 KB
/
BubblewrapSandboxChecks.cmake
File metadata and controls
44 lines (40 loc) · 1.86 KB
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
if (ENABLE_BUBBLEWRAP_SANDBOX)
find_program(BWRAP_EXECUTABLE bwrap)
if (NOT BWRAP_EXECUTABLE)
message(FATAL_ERROR "bwrap executable is needed for ENABLE_BUBBLEWRAP_SANDBOX")
endif ()
find_package(Libseccomp)
if (NOT Libseccomp_FOUND)
message(FATAL_ERROR "libseccomp is needed for ENABLE_BUBBLEWRAP_SANDBOX")
endif ()
find_program(DBUS_PROXY_EXECUTABLE xdg-dbus-proxy)
if (NOT DBUS_PROXY_EXECUTABLE)
message(FATAL_ERROR "xdg-dbus-proxy not found and is needed for ENABLE_BUBBLEWRAP_SANDBOX")
endif ()
if (NOT CMAKE_CROSSCOMPILING)
execute_process(
COMMAND "${BWRAP_EXECUTABLE}" --version
RESULT_VARIABLE BWRAP_RET
OUTPUT_VARIABLE BWRAP_OUTPUT
)
if (BWRAP_RET)
message(FATAL_ERROR "Failed to run ${BWRAP_EXECUTABLE}")
endif ()
string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" BWRAP_VERSION "${BWRAP_OUTPUT}")
if (BWRAP_VERSION VERSION_LESS "0.3.1")
message(FATAL_ERROR "bwrap must be >= 0.3.1 but ${BWRAP_VERSION} found")
endif ()
elseif (NOT SILENCE_CROSS_COMPILATION_NOTICES)
message(NOTICE
"***--------------------------------------------------------***\n"
"*** Cannot check Bubblewrap version when cross-compiling. ***\n"
"*** The target system MUST have version 0.3.1 or newer. ***\n"
"*** Use the BWRAP_EXECUTABLE and DBUS_PROXY_EXECUTABLE ***\n"
"*** variables to set the run-time paths for the 'bwrap' ***\n"
"*** and 'xdg-dbus-proxy' programs. ***\n"
"***--------------------------------------------------------***"
)
endif ()
add_definitions(-DBWRAP_EXECUTABLE="${BWRAP_EXECUTABLE}")
add_definitions(-DDBUS_PROXY_EXECUTABLE="${DBUS_PROXY_EXECUTABLE}")
endif ()