blob: 252d619f6ea5355656002dae4f9a890d8deed06d [file] [log] [blame]
Ed Tanousf61ca6f2019-08-15 15:09:05 -07001cmake_minimum_required(VERSION 2.8.10 FATAL_ERROR)
2project(power-control CXX)
3set(CMAKE_CXX_STANDARD 17)
4set(CMAKE_CXX_STANDARD_REQUIRED ON)
5
6add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY)
7add_definitions(-DBOOST_SYSTEM_NO_DEPRECATED)
8add_definitions(-DBOOST_ALL_NO_LIB)
9add_definitions(-DBOOST_NO_RTTI)
10add_definitions(-DBOOST_NO_TYPEID)
11add_definitions(-DBOOST_ASIO_DISABLE_THREADS)
12
13set(SRC_FILES src/power_control.cpp)
14
15add_executable(${PROJECT_NAME} ${SRC_FILES})
16target_link_libraries(${PROJECT_NAME} -lstdc++fs)
17target_link_libraries(${PROJECT_NAME} chassisi2c)
18target_link_libraries(${PROJECT_NAME} i2c)
19target_link_libraries(${PROJECT_NAME} gpiodcxx)
20target_link_libraries(${PROJECT_NAME} systemd)
21target_link_libraries(${PROJECT_NAME} sdbusplus)
22
23install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
24
Andrew Geissler46152f92020-10-05 13:29:38 -050025# Temporarily disable rtti
26# See https://github.com/chriskohlhoff/asio/issues/533
27#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
28#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-rtti")
Ed Tanousf61ca6f2019-08-15 15:09:05 -070029
30set(
31 SERVICE_FILES
Vijay Khemkab0c613a2020-05-06 11:11:04 -070032 ${PROJECT_SOURCE_DIR}/service_files/chassis-system-reset.service
33 ${PROJECT_SOURCE_DIR}/service_files/chassis-system-reset.target
Ed Tanousf61ca6f2019-08-15 15:09:05 -070034 ${PROJECT_SOURCE_DIR}/service_files/xyz.openbmc_project.Chassis.Control.Power.service
35 )
Priyatharshan Pe4d7f2b2020-06-22 22:41:42 +053036
37set(
38 CONFIG_FILE
39 ${PROJECT_SOURCE_DIR}/config/power-config-host0.json
40 )
41
Ed Tanousf61ca6f2019-08-15 15:09:05 -070042install(FILES ${SERVICE_FILES} DESTINATION /lib/systemd/system/)
Kumar Thangavel699b5652020-08-04 22:38:33 +053043install(FILES ${CONFIG_FILE} DESTINATION /usr/share/x86-power-control/)