mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-26 14:19:43 +00:00
e79b9601bf
Commit 6e060bd62c85 introduced a dependency to the dialout group. Adding this group to the "group" file in the base-files package is not enough to handle this dependency, because after a sysupgrade this entry will be missing in the "group" file. To address this problem the dependencies to the required groups needs to be set in the Makefile of the procd package. Then, the uci-default script "13_fix_group_user" will add the groups on first boot-up after a sysupgrade. Fixes: 6e060bd62c85 ("base-files/hotplug: fix dedicated group for tty devices") Tested-by: Michael Heimpold <mhei@heimpold.de> Signed-off-by: Martin Schiller <ms@dev.tdt.de>
123 lines
3.3 KiB
Makefile
123 lines
3.3 KiB
Makefile
#
|
|
# Copyright (C) 2014-2016 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=procd
|
|
PKG_RELEASE:=2
|
|
|
|
PKG_SOURCE_PROTO:=git
|
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/procd.git
|
|
PKG_SOURCE_DATE:=2019-04-07
|
|
PKG_SOURCE_VERSION:=baaf38c5e540b23ba086d94743de860b60c37161
|
|
PKG_MIRROR_HASH:=315f50294fbc745fbbd909317948544ad78071f15622995d4f508c692a3d0bc3
|
|
CMAKE_INSTALL:=1
|
|
|
|
PKG_LICENSE:=GPL-2.0
|
|
PKG_LICENSE_FILES:=
|
|
|
|
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
|
|
|
|
PKG_CONFIG_DEPENDS:= \
|
|
CONFIG_TARGET_INIT_PATH CONFIG_KERNEL_SECCOMP \
|
|
CONFIG_PROCD_SHOW_BOOT CONFIG_PROCD_ZRAM_TMPFS \
|
|
CONFIG_KERNEL_NAMESPACES CONFIG_PACKAGE_procd-ujail CONFIG_PACKAGE_procd-seccomp
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/cmake.mk
|
|
|
|
ifeq ($(DUMP),)
|
|
STAMP_CONFIGURED:=$(strip $(STAMP_CONFIGURED))_$(shell echo $(CONFIG_TARGET_INIT_PATH) | mkhash md5)
|
|
endif
|
|
|
|
CMAKE_OPTIONS += -DEARLY_PATH="$(TARGET_INIT_PATH)"
|
|
TARGET_LDFLAGS += $(if $(CONFIG_USE_GLIBC),-lrt)
|
|
|
|
TARGET_CFLAGS += -flto
|
|
TARGET_LDFLAGS += -flto
|
|
|
|
define Package/procd
|
|
SECTION:=base
|
|
CATEGORY:=Base system
|
|
DEPENDS:=+ubusd +ubus +libjson-script +ubox +USE_GLIBC:librt +libubox +libubus
|
|
TITLE:=OpenWrt system process manager
|
|
USERID:=:dialout=20 :audio=29
|
|
endef
|
|
|
|
define Package/procd-ujail
|
|
SECTION:=base
|
|
CATEGORY:=Base system
|
|
DEPENDS:=@KERNEL_NAMESPACES +@KERNEL_UTS_NS +@KERNEL_IPC_NS +@KERNEL_PID_NS +libubox +libblobmsg-json
|
|
TITLE:=OpenWrt process jail helper
|
|
endef
|
|
|
|
define Package/procd-seccomp
|
|
SECTION:=base
|
|
CATEGORY:=Base system
|
|
DEPENDS:=@arm||@armeb||@mips||@mipsel||@i386||@powerpc||@x86_64 @!TARGET_uml @KERNEL_SECCOMP +libubox +libblobmsg-json
|
|
TITLE:=OpenWrt process seccomp helper + utrace
|
|
endef
|
|
|
|
define Package/procd/config
|
|
menu "Configuration"
|
|
depends on PACKAGE_procd
|
|
|
|
config PROCD_SHOW_BOOT
|
|
bool
|
|
default n
|
|
prompt "Print the shutdown to the console as well as logging it to syslog"
|
|
|
|
config PROCD_ZRAM_TMPFS
|
|
bool
|
|
default n
|
|
prompt "Mount /tmp using zram."
|
|
endmenu
|
|
endef
|
|
|
|
|
|
ifeq ($(CONFIG_PROCD_SHOW_BOOT),y)
|
|
CMAKE_OPTIONS += -DSHOW_BOOT_ON_CONSOLE=1
|
|
endif
|
|
|
|
ifeq ($(CONFIG_PROCD_ZRAM_TMPFS),y)
|
|
CMAKE_OPTIONS += -DZRAM_TMPFS=1
|
|
endif
|
|
|
|
ifdef CONFIG_PACKAGE_procd-ujail
|
|
CMAKE_OPTIONS += -DJAIL_SUPPORT=1
|
|
endif
|
|
|
|
SECCOMP=$(if $(CONFIG_PACKAGE_procd-seccomp),1,0)
|
|
CMAKE_OPTIONS += -DSECCOMP_SUPPORT=$(SECCOMP) -DUTRACE_SUPPORT=$(SECCOMP)
|
|
|
|
define Package/procd/install
|
|
$(INSTALL_DIR) $(1)/sbin $(1)/etc $(1)/lib/functions
|
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/{init,procd,askfirst,udevtrigger,upgraded} $(1)/sbin/
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libsetlbf.so $(1)/lib
|
|
$(INSTALL_BIN) ./files/reload_config $(1)/sbin/
|
|
$(INSTALL_CONF) ./files/hotplug*.json $(1)/etc/
|
|
$(INSTALL_DATA) ./files/procd.sh $(1)/lib/functions/
|
|
endef
|
|
|
|
define Package/procd-ujail/install
|
|
$(INSTALL_DIR) $(1)/sbin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ujail $(1)/sbin/
|
|
endef
|
|
|
|
define Package/procd-seccomp/install
|
|
$(INSTALL_DIR) $(1)/sbin $(1)/lib
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libpreload-seccomp.so $(1)/lib
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/utrace $(1)/sbin/
|
|
$(LN) utrace $(1)/sbin/seccomp-trace
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libpreload-trace.so $(1)/lib
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,procd))
|
|
$(eval $(call BuildPackage,procd-ujail))
|
|
$(eval $(call BuildPackage,procd-seccomp))
|