X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fprocd.git;a=blobdiff_plain;f=CMakeLists.txt;h=805e2ed8f5ea02c66268eeccf2ec8d1893987afa;hp=4c899479a6ed37d9522a7e713ce8adfc9ed99538;hb=9da365ee0060bbc616d39758b6e48cee28abbd07;hpb=09c09dc870148c99a546243f434e546aafaa6b89 diff --git a/CMakeLists.txt b/CMakeLists.txt index 4c89947..805e2ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,17 +10,31 @@ IF(APPLE) LINK_DIRECTORIES(/opt/local/lib) ENDIF() + +ADD_LIBRARY(setlbf SHARED service/setlbf.c) +INSTALL(TARGETS setlbf + LIBRARY DESTINATION lib +) + + SET(SOURCES procd.c signal.c watchdog.c state.c inittab.c rcS.c ubus.c system.c service/service.c service/instance.c service/validate.c service/trigger.c service/watch.c plug/coldplug.c plug/hotplug.c utils/utils.c) -find_library(json NAMES json-c json) -SET(LIBS ubox ubus ${json} blobmsg_json json_script) +SET(LIBS ubox ubus json-c blobmsg_json json_script) IF(DEBUG) ADD_DEFINITIONS(-DDEBUG -g3) ENDIF() +IF(ZRAM_TMPFS) + ADD_DEFINITIONS(-DZRAM_TMPFS) + SET(SOURCES_ZRAM initd/zram.c) +ENDIF() + +IF(BUILD_UPGRADED) + add_subdirectory(upgraded) +ENDIF() ADD_EXECUTABLE(procd ${SOURCES}) TARGET_LINK_LIBRARIES(procd ${LIBS}) @@ -29,7 +43,8 @@ INSTALL(TARGETS procd ) -ADD_EXECUTABLE(init initd/init.c initd/early.c initd/preinit.c initd/mkdev.c watchdog.c) +ADD_EXECUTABLE(init initd/init.c initd/early.c initd/preinit.c initd/mkdev.c watchdog.c + utils/utils.c ${SOURCES_ZRAM}) TARGET_LINK_LIBRARIES(init ${LIBS}) INSTALL(TARGETS init RUNTIME DESTINATION sbin @@ -46,3 +61,42 @@ ADD_EXECUTABLE(askfirst utils/askfirst.c) INSTALL(TARGETS askfirst RUNTIME DESTINATION sbin ) + +ADD_CUSTOM_COMMAND( + OUTPUT syscall-names.h + COMMAND ./make_syscall_h.sh ${CMAKE_C_COMPILER} > ./syscall-names.h + DEPENDS ./make_syscall_h.sh +) +ADD_CUSTOM_TARGET(headers DEPENDS syscall-names.h) + +IF(SECCOMP_SUPPORT) +ADD_LIBRARY(preload-seccomp SHARED jail/preload.c jail/seccomp.c) +TARGET_LINK_LIBRARIES(preload-seccomp dl ubox blobmsg_json) +INSTALL(TARGETS preload-seccomp + LIBRARY DESTINATION lib +) +ADD_DEPENDENCIES(preload-seccomp headers) +endif() + +IF(JAIL_SUPPORT) +ADD_EXECUTABLE(ujail jail/jail.c jail/elf.c) +TARGET_LINK_LIBRARIES(ujail ubox) +INSTALL(TARGETS ujail + RUNTIME DESTINATION sbin +) +endif() + +IF(UTRACE_SUPPORT) +ADD_EXECUTABLE(utrace trace/trace.c) +TARGET_LINK_LIBRARIES(utrace ubox ${json} blobmsg_json) +INSTALL(TARGETS utrace + RUNTIME DESTINATION sbin +) +ADD_DEPENDENCIES(utrace headers) + +ADD_LIBRARY(preload-trace SHARED trace/preload.c) +TARGET_LINK_LIBRARIES(preload-trace dl) +INSTALL(TARGETS preload-trace + LIBRARY DESTINATION lib +) +endif()