;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2021 Dr. Stefan Karrmann ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages prjware) #:use-module (guix packages) #:use-module (gnu packages skarnet) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix build utils) #:use-module (guix licenses) #:use-module (gnu packages gawk)) (define-public runwhen (package (name "runwhen") (version "2020.05.04") (source (origin (method url-fetch) (uri (string-append "https://code.dogmap.org/runwhen/releases/runwhen-" version ".tar.bz2")) (sha256 (base32 ; guix hash /tmp/ "0jqci0sbg116lrghhrdyvmb4a8haqmk6yb34liy5qbprmznkbmi7")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'subdir ; in general chdir subdir unless not sticky (lambda _ (chdir (string-append ,name "-" ,version)) #t)) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* (find-files "src" "\\.c$") (("pathexec0_run") "exec_e") (("pathexec_env") "env_mexec") (("pathexec\\(") "mexec(")) (with-output-to-file "conf-compile/package-home" (lambda _ (display (assoc-ref outputs "out")))) (with-output-to-file "conf-compile/host_link.sh" (lambda _ (display (string-append "gcc " "-L" (assoc-ref inputs "skalibs") "/lib " "-o \"${output?}\" -s ${1+\"$@\"} " )))) (with-output-to-file "conf-compile/host_compile.sh" (lambda _ (display (string-append "gcc -O2 " "-I" (assoc-ref inputs "skalibs") "/include " "${1+\"$@\"} -c \"${input?}\" -o \"${output?}\" " "-Wall -W -Wpointer-arith -Wcast-align " "-Wwrite-strings")))) (with-output-to-file "conf-compile/depend_skalibs_sysdeps" (lambda _ (display (string-append (assoc-ref inputs "skalibs") "/lib/skalibs/sysdeps")))) #t)) (replace 'build (lambda _ (invoke "package/build"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (copy-recursively "command" bin)))) (replace 'check (lambda _ (invoke "package/check"))) ))) (inputs `(("skalibs" ,skalibs))) ;(native-inputs `(("coreutils" ,coreutils))) (synopsis "Paul Jarc's runwhen package") (description "Programms rw-sleep, -match, -add, -sub, -min, -max, -touch") (home-page "https://code.dogmap.org./runwhen/") (license gpl2)))