Enable seccomp-filter if CMake detects that host is x86_64 or x86.

This commit is contained in:
Nicholas J. Kain 2014-03-21 23:52:15 -04:00
parent 2d79465eed
commit 22dcfc00ee

View File

@ -5,6 +5,42 @@ cmake_minimum_required (VERSION 2.6)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -Wall -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wshadow -Wpointer-arith -Wmissing-prototypes -lrt -lcap -D_GNU_SOURCE -DHAVE_CLEARENV -DLINUX") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -Wall -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wshadow -Wpointer-arith -Wmissing-prototypes -lrt -lcap -D_GNU_SOURCE -DHAVE_CLEARENV -DLINUX")
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -Wall -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wshadow -Wpointer-arith -Wmissing-prototypes -lrt -lcap -D_GNU_SOURCE -DHAVE_CLEARENV -DLINUX") set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -Wall -Wextra -Wformat=2 -Wformat-nonliteral -Wformat-security -Wshadow -Wpointer-arith -Wmissing-prototypes -lrt -lcap -D_GNU_SOURCE -DHAVE_CLEARENV -DLINUX")
if (WIN32)
set(OSNAME "Win32")
else()
execute_process(
COMMAND uname
COMMAND tr "\n" " "
COMMAND sed "s/ //"
OUTPUT_VARIABLE OSNAME
)
endif()
if (NOT (${OSNAME} STREQUAL "Linux"))
message("ndhc requires Linux. Patches are welcome. Consult README.")
return()
endif()
execute_process(
COMMAND uname -m
COMMAND tr "\n" " "
COMMAND sed "s/ //"
OUTPUT_VARIABLE MACHINENAME
)
if (${MACHINENAME} STREQUAL "x86_64")
message("Detected that the current host is x86_64. Enabling seccomp-filter.")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DENABLE_SECCOMP_FILTER")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DENABLE_SECCOMP_FILTER")
elseif ((${MACHINENAME} STREQUAL "i686") OR (${MACHINENAME} STREQUAL "i586") OR
(${MACHINENAME} STREQUAL "i486") OR (${MACHINENAME} STREQUAL "i386"))
message("Detected that the current host is x86. Enabling seccomp-filter.")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DENABLE_SECCOMP_FILTER")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DENABLE_SECCOMP_FILTER")
else()
message("Host machine type does not support seccomp-filter.")
endif()
include_directories("${PROJECT_SOURCE_DIR}/ncmlib") include_directories("${PROJECT_SOURCE_DIR}/ncmlib")
add_subdirectory(ncmlib) add_subdirectory(ncmlib)