pies: 1.3 -> 1.8, unbreak

This commit is contained in:
awwpotato 2025-03-29 14:27:06 -07:00
parent 9e83f2a9f7
commit e2bd46dddb
No known key found for this signature in database
2 changed files with 43 additions and 11 deletions

View file

@ -1,30 +1,40 @@
{ {
fetchurl,
lib, lib,
stdenv, stdenv,
fetchurl,
libxcrypt, libxcrypt,
versionCheckHook,
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "pies"; pname = "pies";
version = "1.3"; version = "1.8";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/pies/${pname}-${version}.tar.bz2"; url = "mirror://gnu/pies/pies-${finalAttrs.version}.tar.bz2";
sha256 = "12r7rjjyibjdj08dvwbp0iflfpzl4s0zhn6cr6zj3hwf9gbzgl1g"; hash = "sha256-ZSi00WmC6il4+aSohqFKrKjtp6xFXYE7IIRGVwFmHWw=";
}; };
buildInputs = [ libxcrypt ]; buildInputs = [ libxcrypt ];
patches = [ ./stdlib.patch ];
postPatch = ''
substituteInPlace configure \
--replace-fail "gl_cv_func_memchr_works=\"guessing no\"" "gl_cv_func_memchr_works=yes"
'';
configureFlags = [ "--sysconfdir=/etc" ]; configureFlags = [ "--sysconfdir=/etc" ];
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
doCheck = true; doCheck = true;
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
meta = { meta = {
description = "Program invocation and execution supervisor"; description = "Program invocation and execution supervisor";
longDescription = '' longDescription = ''
The name Pies (pronounced "p-yes") stands for Program Invocation and The name Pies (pronounced "p-yes") stands for Program Invocation and
Execution Supervisor. This utility starts and controls execution of Execution Supervisor. This utility starts and controls execution of
@ -45,12 +55,10 @@ stdenv.mkDerivation rec {
Jabberd or MeTA1 (and it offers much more control over them than the Jabberd or MeTA1 (and it offers much more control over them than the
native utilities). Finally, it can replace the inetd utility! native utilities). Finally, it can replace the inetd utility!
''; '';
license = lib.licenses.gpl3Plus;
homepage = "https://www.gnu.org/software/pies/"; homepage = "https://www.gnu.org/software/pies/";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.gnu ++ lib.platforms.linux; platforms = lib.platforms.gnu ++ lib.platforms.linux;
broken = stdenv.hostPlatform.system == "aarch64-linux";
maintainers = [ ]; maintainers = [ ];
}; };
} })

View file

@ -0,0 +1,24 @@
diff --git a/src/pies.c b/src/pies.c
index 9355d50..9fe6109 100644
--- a/src/pies.c
+++ b/src/pies.c
@@ -19,6 +19,7 @@
#include <configmake.h>
#include "meta1parse.h"
#include "grecsasrt.h"
+#include <stdlib.h>
int preprocess_only; /* Preprocess config, do nothing more */
int lint_mode; /* Test configuration syntax and exit */
diff --git a/src/piesctl.c b/src/piesctl.c
index a0ac967..fd6c3e2 100644
--- a/src/piesctl.c
+++ b/src/piesctl.c
@@ -14,6 +14,7 @@
You should have received a copy of the GNU General Public License
along with GNU Pies. If not, see <http://www.gnu.org/licenses/>. */
+#include <stdlib.h>
#include <config.h>
#include <sys/types.h>
#include <sys/socket.h>