mirror of
https://github.com/openwrt/packages.git
synced 2026-10-12 23:16:56 +04:00
The lxc-unprivileged package depends on both newgidmap and newuidmap
if users are installing and setting it up for the first time. dc52894
dropped both of the applets.
This change builds libusbid as a shared lib which builds a versioned
symbol which OpenWrt does not stage so build with --disable-shared
and --enable-static to avoid a failure.
Signed-off-by: John Audia <therealgraysky@proton.me>
167 lines
4.0 KiB
Makefile
167 lines
4.0 KiB
Makefile
#
|
|
# Copyright (C) 2008-2015 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:=shadow
|
|
PKG_VERSION:=4.19.4
|
|
PKG_RELEASE:=2
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
|
PKG_SOURCE_URL:=https://github.com/shadow-maint/shadow/releases/download/$(PKG_VERSION)
|
|
PKG_HASH:=ce57a313e315a0a7cb04a8f50cc20753e994e487bbe9b78a2a824ca75cb486c0
|
|
|
|
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
|
|
PKG_LICENSE:=BSD-3-Clause
|
|
PKG_LICENSE_FILES:=COPYING
|
|
PKG_CPE_ID:=cpe:/a:debian:shadow
|
|
|
|
PKG_INSTALL:=1
|
|
PKG_BUILD_PARALLEL:=1
|
|
PKG_BUILD_DEPENDS:=libxcrypt
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/nls.mk
|
|
|
|
SHADOW_APPLETS := \
|
|
chage chfn chgpasswd chpasswd chsh expiry faillog gpasswd \
|
|
groupadd groupdel groupmems groupmod grpck grpconv grpunconv \
|
|
login logoutd newgrp newgidmap newuidmap newusers nologin \
|
|
passwd pwck pwconv pwunconv su \
|
|
useradd userdel usermod vipw
|
|
|
|
CONFIGURE_ARGS += \
|
|
--without-audit \
|
|
--without-libpam \
|
|
--without-selinux \
|
|
--without-acl \
|
|
--without-attr \
|
|
--without-tcb \
|
|
--without-nscd \
|
|
--without-sssd \
|
|
--without-libbsd \
|
|
--disable-logind \
|
|
--enable-subordinate-ids \
|
|
--disable-shared \
|
|
--enable-static \
|
|
--with-bcrypt
|
|
|
|
CONFIGURE_VARS += \
|
|
ac_cv_func_ruserok=no
|
|
|
|
define Package/shadow/Default
|
|
SECTION:=utils
|
|
CATEGORY:=Utilities
|
|
TITLE:=The PLD Linux shadow utilities
|
|
URL:=https://github.com/shadow-maint/shadow
|
|
endef
|
|
|
|
define Package/shadow
|
|
$(call Package/shadow/Default)
|
|
TITLE+= (all)
|
|
DEPENDS:=$(foreach u,$(SHADOW_APPLETS),+shadow-$(u))
|
|
HIDDEN:=1
|
|
endef
|
|
|
|
define Package/shadow/description
|
|
Full versions of standard shadow utilities. Normally, you would not
|
|
use this package, since the functionality in BusyBox is more than
|
|
sufficient and much smaller.
|
|
endef
|
|
|
|
define Package/shadow/install
|
|
true
|
|
endef
|
|
|
|
define Package/shadow-utils
|
|
$(call Package/shadow/Default)
|
|
endef
|
|
|
|
define Package/shadow-utils/config
|
|
menu "Select shadow utilities"
|
|
depends on PACKAGE_shadow-utils
|
|
|
|
config shadow-all
|
|
bool "Include all PLD shadow utilities"
|
|
select PACKAGE_shadow
|
|
default y
|
|
|
|
comment "Utilities"
|
|
|
|
$(foreach u,$(SHADOW_APPLETS), \
|
|
config PACKAGE_shadow-$(u)
|
|
prompt "Full PLD version of $(u) utility"
|
|
|
|
)
|
|
|
|
endmenu
|
|
|
|
endef
|
|
|
|
Package/shadow-utils/description = $(Package/shadow/description)
|
|
|
|
define Package/shadow-common
|
|
$(call Package/shadow/Default)
|
|
TITLE:=Shared definitions for the PLD Linux shadow utilities
|
|
DEPENDS:=$(ICONV_DEPENDS) $(INTL_DEPENDS)
|
|
HIDDEN:=1
|
|
endef
|
|
|
|
define GenPlugin
|
|
define Package/shadow-$(1)
|
|
$(call Package/shadow/Default)
|
|
TITLE:=Utility $(1) from the PLD Linux shadow utilities
|
|
DEPENDS:=+shadow-common
|
|
HIDDEN:=1
|
|
endef
|
|
|
|
define Package/shadow-$(1)/description
|
|
Full version of standard $(1) utility. Normally, you would not use this
|
|
package, since the functionality in BusyBox is more than sufficient.
|
|
endef
|
|
endef
|
|
|
|
$(foreach u,$(SHADOW_APPLETS),$(eval $(call GenPlugin,$(u))))
|
|
|
|
define Package/shadow-common/conffiles
|
|
/etc/login.defs
|
|
endef
|
|
|
|
#hack to get libxcrypt working
|
|
TARGET_LDFLAGS:=-L$(STAGING_DIR)/usr/lib/libxcrypt $(TARGET_LDFLAGS)
|
|
|
|
define Package/shadow-common/install
|
|
$(INSTALL_DIR) $(1)/etc
|
|
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/login.defs $(1)/etc/
|
|
$(SED) 's,SU_NAME,#SU_NAME,g' $(1)/etc/login.defs
|
|
$(SED) 's,#ENCRYPT_METHOD DES,ENCRYPT_METHOD BCRYPT,g' $(1)/etc/login.defs
|
|
endef
|
|
|
|
define Package/shadow-utils/install
|
|
true
|
|
endef
|
|
|
|
define BuildPlugin
|
|
define Package/shadow-$(1)/install
|
|
[ -x "$(PKG_INSTALL_DIR)/usr/sbin/$(1)" ] && { \
|
|
$(INSTALL_DIR) $$(1)/usr/sbin; \
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/$(1) $$(1)/usr/sbin/; \
|
|
} || { \
|
|
$(INSTALL_DIR) $$(1)/usr/bin; \
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/bin/$(1) $$(1)/usr/bin/; \
|
|
}
|
|
endef
|
|
|
|
$$(eval $$(call BuildPackage,shadow-$(1)))
|
|
endef
|
|
|
|
$(foreach u,$(SHADOW_APPLETS),$(eval $(call BuildPlugin,$(u))))
|
|
|
|
$(eval $(call BuildPackage,shadow-utils))
|
|
$(eval $(call BuildPackage,shadow-common))
|
|
$(eval $(call BuildPackage,shadow))
|