procps-ng: add patch from Alpine to fix build with musl.

This commit is contained in:
Juan RP 2014-09-21 10:55:43 +02:00
parent 3962fadd33
commit da757b0736
2 changed files with 109 additions and 15 deletions

View File

@ -0,0 +1,102 @@
diff --git a/configure.ac b/configure.ac
index f08867c..a0150f0 100644
--- configure.ac
+++ configure.ac
@@ -45,7 +45,7 @@ AC_PROG_RANLIB
# Checks for header files.
AC_HEADER_MAJOR
-AC_CHECK_HEADERS([arpa/inet.h fcntl.h langinfo.h libintl.h limits.h locale.h netinet/in.h stdint.h stdio_ext.h stdlib.h string.h sys/file.h sys/ioctl.h sys/param.h sys/time.h termios.h unistd.h utmp.h values.h wchar.h wctype.h])
+AC_CHECK_HEADERS([arpa/inet.h fcntl.h langinfo.h libintl.h limits.h locale.h netinet/in.h stdint.h stdio_ext.h stdlib.h string.h sys/file.h sys/ioctl.h sys/param.h sys/time.h termios.h unistd.h utmp.h values.h wchar.h wctype.h error.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_CHECK_HEADER_STDBOOL
@@ -235,7 +235,9 @@ if test "x$enable_numa" = xno; then
else
AC_SEARCH_LIBS([dlopen], [dl], [],
[AC_MSG_ERROR([dynamic linking unavailable, circumvent with --disable-numa])])
- DL_LIB="$ac_cv_search_dlopen"
+ if test "x$ac_cv_search_dlopen" != "xnone required"; then
+ DL_LIB="$ac_cv_search_dlopen"
+ fi
fi
AC_SUBST([DL_LIB])
diff --git a/lib/nsutils.c b/lib/nsutils.c
index b97f446..a166a74 100644
--- lib/nsutils.c
+++ lib/nsutils.c
@@ -1,5 +1,4 @@
#include <errno.h>
-#include <error.h>
#include <stdio_ext.h>
#include <stdlib.h>
#include <sys/types.h>
diff --git a/ps/display.c b/ps/display.c
index c20285d..b8d8fd5 100644
--- ps/display.c
+++ ps/display.c
@@ -25,7 +25,9 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#ifdef HAVE_ERROR_H
#include <error.h>
+#endif
#include <sys/sysmacros.h>
#include <sys/types.h>
@@ -63,7 +65,12 @@ static void signal_handler(int signo){
case SIGUSR2:
exit(EXIT_FAILURE);
default:
+#ifdef HAVE_ERROR_H
error_at_line(0, 0, __FILE__, __LINE__, "%s", _("please report this bug"));
+#else
+ fflush(stdout);
+ fprintf(stderr, "%s:%u: %s\n", __FILE__, __LINE__, _("please report this bug"));
+#endif
signal(signo, SIG_DFL); /* allow core file creation */
kill(getpid(), signo);
}
diff --git a/ps/global.c b/ps/global.c
index b75f728..d4d36a8 100644
--- ps/global.c
+++ ps/global.c
@@ -25,7 +25,9 @@
#include <string.h>
#include <termios.h>
#include <unistd.h>
+#ifdef HAVE_ERROR_H
#include <error.h>
+#endif
#include <sys/ioctl.h>
#include <sys/stat.h>
@@ -522,6 +524,11 @@ catastrophic_failure(const char *filename,
unsigned int linenum,
const char *message)
{
+#ifdef HAVE_ERROR_H
error_at_line(0, 0, filename, linenum, "%s", message);
+#else
+ fflush(stdout);
+ fprintf(stderr, "%s:%u: %s\n", filename, linenum, message);
+#endif
exit(EXIT_FAILURE);
}
diff --git a/sysctl.c b/sysctl.c
index bb3e6b7..8afd487 100644
--- sysctl.c
+++ sysctl.c
@@ -48,6 +48,10 @@
#include "proc/procps.h"
#include "proc/version.h"
+#ifndef GLOB_TILDE
+#define GLOB_TILDE 0
+#endif
+
/*
* Globals...
*/

View File

@ -1,12 +1,12 @@
# Template file for 'procps-ng'
pkgname=procps-ng
version=3.3.9
revision=2
revision=3
build_style=gnu-configure
configure_args="--exec-prefix=/ --bindir=/usr/bin --sbindir=/usr/sbin
--libdir=/usr/lib --disable-static"
hostmakedepends="pkg-config"
makedepends="ncurses-devel"
--libdir=/usr/lib --disable-static --disable-kill $(vopt_with systemd)"
hostmakedepends="automake libtool pkg-config gettext-devel"
makedepends="ncurses-devel $(vopt_if systemd systemd-devel)"
conflicts="coreutils<8.21_3"
short_desc="Utilities for monitoring your system and its processes"
maintainer="Juan RP <xtraeme@gmail.com>"
@ -18,18 +18,10 @@ checksum=00f0cb0fadf968ddf605b0ef119846af07386629244d4f3da711a2cecf4e8663
# Package build options
build_options="systemd"
if [ "$build_option_systemd" ]; then
configure_args+=" --with-systemd"
makedepends+=" systemd-devel"
else
configure_args+=" --without-systemd"
fi
pre_configure() {
autoreconf -fi
}
post_install() {
# provided by util-linux
rm ${DESTDIR}/usr/bin/kill
rm ${DESTDIR}/usr/share/man/man1/kill.1
# Remove devel and docs.
rm -rf ${DESTDIR}/usr/share/doc \
${DESTDIR}/usr/include ${DESTDIR}/usr/lib/pkgconfig