procps-ng3: update to 3.3.17 and install library only

- Install library only (utilities are in procps-ng API version 4)
- Latest 3.3.17 version of 3.x series is used
- Refresh existing patch
- Add new patch from Alpine Linux

Signed-off-by: krant <aleksey.vasilenko@gmail.com>

- Rebase patch because of packages version update was reverted before

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
krant 2024-02-15 13:11:09 +02:00 committed by Florian Eckert
parent c1ef481e66
commit 04e8fac6e8
3 changed files with 40 additions and 67 deletions

View File

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=procps-ng3 PKG_NAME:=procps-ng3
PKG_VERSION:=3.3.16 PKG_VERSION:=3.3.17
PKG_RELEASE:=3 PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/procps-ng-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/procps-$(PKG_VERSION)
PKG_SOURCE:=procps-ng-$(PKG_VERSION).tar.xz PKG_SOURCE:=procps-ng-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@SF/procps-ng PKG_SOURCE_URL:=@SF/procps-ng
PKG_HASH:=925eacd65dedcf9c98eb94e8978bbfb63f5de37294cc1047d81462ed477a20af PKG_HASH:=4518b3e7aafd34ec07d0063d250fd474999b20b200218c3ae56f5d2113f141b4
PKG_MAINTAINER:= PKG_MAINTAINER:=
PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE:=GPL-2.0-or-later
@ -27,31 +27,12 @@ PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
CONFIGURE_ARGS += --enable-skill define Package/procps-ng3
SECTION:=utils
# most of these have alternatives provided by busybox applets CATEGORY:=Utilities
PROCPS_APPLETS := \ DEPENDS:=+libncurses
free kill pgrep pkill pmap ps pwdx skill slabtop \ TITLE:=procps-ng old compatibility library
snice sysctl tload top uptime vmstat w watch URL:=https://gitlab.com/procps-ng/procps
# procps-ng will be configured with "--bindir=/usr/bin --sbindir=/usr/sbin" and
# as such executables will be installed there by default, but some of them need
# to reside in locations such as /bin and /sbin to be in accordance with
# busybox alternatives which is also other distributions like debian and centos
# are doing
PROCPS_APPLETS_SRC_DIR_SBIN:=sysctl
procps-applets-src-dir=$(if $(filter $(PROCPS_APPLETS_SRC_DIR_SBIN),$(1)),/usr/sbin,/usr/bin)
PROCPS_APPLETS_DIR_BIN:=kill ps watch
PROCPS_APPLETS_DIR_SBIN:=sysctl
procps-applets-dir=$(if $(filter $(PROCPS_APPLETS_DIR_BIN),$(1)),/bin,$(if $(filter $(PROCPS_APPLETS_DIR_SBIN),$(1)),/sbin,/usr/bin))
define Package/procps-ng3/Default
SECTION:=utils
CATEGORY:=Utilities
DEPENDS:=+libncurses
TITLE:=procps-ng utilities
URL:=https://gitlab.com/procps-ng/procps
endef endef
define Build/Prepare define Build/Prepare
@ -59,35 +40,10 @@ define Build/Prepare
echo "$(PKG_VERSION)" > "$(PKG_BUILD_DIR)/.tarball-version" echo "$(PKG_VERSION)" > "$(PKG_BUILD_DIR)/.tarball-version"
endef endef
define Package/procps-ng3
$(call Package/procps-ng3/Default)
MENU:=1
endef
define Package/procps-ng3/description define Package/procps-ng3/description
procps is a set of command line and full-screen utilities that provide information out of the pseudo-filesystem Compatibility library of old 3.x version of procps-ng utilities.
most commonly located at /proc. This filesystem provides a simple interface to the kernel data structures.
The programs of procps generally concentrate on the structures that describe the processess running on the system.
NOTE: some utilities provided by procps-ng packages (ps, uptime, kill, ...) are installed as busybox applets, by default.
Conflicting applets should be removed from the build to avoid file conflicts.
endef endef
define GenPlugin
define Package/procps-ng3-$(1)
$(call Package/procps-ng3/Default)
DEPENDS:=procps-ng3
TITLE:=Applet $(1) from the procps-ng3 package
ALTERNATIVES:=200:$(2)/$(1):/usr/libexec/$(1)-procps-ng
endef
define Package/procps-ng3-$(1)/description
Installs the applet $(1).
endef
endef
$(foreach a,$(PROCPS_APPLETS),$(eval $(call GenPlugin,$(a),$(call procps-applets-dir,$(a)))))
MAKE_FLAGS += \ MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS)" \ CFLAGS="$(TARGET_CFLAGS)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \ CPPFLAGS="$(TARGET_CPPFLAGS)" \
@ -104,14 +60,4 @@ define Build/InstallDev
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
endef endef
define BuildPlugin
define Package/procps-ng3-$(1)/install
$(INSTALL_DIR) $$(1)/usr/libexec
$(INSTALL_BIN) $(PKG_INSTALL_DIR)$(2)/$(1) $$(1)/usr/libexec/$(1)-procps-ng
endef
$$(eval $$(call BuildPackage,procps-ng3-$(1)))
endef
$(foreach a,$(PROCPS_APPLETS),$(eval $(call BuildPlugin,$(a),$(call procps-applets-src-dir,$(a)))))
$(eval $(call BuildPackage,procps-ng3)) $(eval $(call BuildPackage,procps-ng3))

View File

@ -1,6 +1,6 @@
--- a/Makefile.am --- a/Makefile.am
+++ b/Makefile.am +++ b/Makefile.am
@@ -14,10 +14,7 @@ PACKAGE_VERSION = @PACKAGE_VERSION@ @@ -15,10 +15,7 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I m4
SUBDIRS = \ SUBDIRS = \
@ -14,7 +14,7 @@
LDADD = ./proc/libprocps.la $(CYGWINFLAGS) LDADD = ./proc/libprocps.la $(CYGWINFLAGS)
--- a/configure.ac --- a/configure.ac
+++ b/configure.ac +++ b/configure.ac
@@ -298,8 +298,5 @@ AC_CHECK_FUNCS([__fpending alarm atexit @@ -323,8 +323,5 @@ AC_CHECK_FUNCS([__fpending alarm atexit
AC_CONFIG_FILES([Makefile AC_CONFIG_FILES([Makefile
include/Makefile include/Makefile

View File

@ -0,0 +1,27 @@
From https://git.alpinelinux.org/aports/tree/community/procps-compat/musl-fixes.patch?id=781a465d3d41af56a6e4bf9d52b7273c87899e25
--- a/w.c
+++ b/w.c
@@ -55,11 +55,7 @@
#include <termios.h>
#include <time.h>
#include <unistd.h>
-#ifdef HAVE_UTMPX_H
-# include <utmpx.h>
-#else
-# include <utmp.h>
-#endif
+#include <utmp.h>
#include <arpa/inet.h>
static int ignoreuser = 0; /* for '-u' */
--- a/proc/escape.c
+++ b/proc/escape.c
@@ -21,6 +21,7 @@
#include <sys/types.h>
#include <string.h>
#include <limits.h>
+#include <langinfo.h>
#include "procps.h"
#include "escape.h"
#include "readproc.h"