aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntero Mejr <antero@mailbox.org>2023-02-24 03:18:03 +0000
committerLudovic Courtès <ludo@gnu.org>2023-03-10 14:49:59 +0100
commite152e861b8e1fc2f57949a5e5b27b568d063bace (patch)
treefc7f3efb4c0bc387531c391c1d5921435b8a6b74
parent344a0d2c11440dc7aa6b30c1633ed098b8d700cc (diff)
downloadguix-e152e861b8e1fc2f57949a5e5b27b568d063bace.tar
guix-e152e861b8e1fc2f57949a5e5b27b568d063bace.tar.gz
gnu: Add 9base.
* gnu/packages/suckless.scm (9base): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/suckless.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index cfd70df027..400832045f 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -48,6 +48,7 @@
#:use-module (gnu packages mpd)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cargo)
@@ -1355,3 +1356,39 @@ It also contains the Plan 9 libbio, libregexp, libfmt and libutf libraries.")
(description
"This package provides a ported version of the Plan 9 yacc parser
generator.")))
+
+(define-public 9base
+ (package
+ (inherit 9yacc)
+ (name "9base")
+ (arguments
+ (substitute-keyword-arguments (package-arguments 9yacc)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'patch-for-9yacc 'patch-for-9base
+ (lambda _
+ (substitute* "Makefile"
+ (("SUBDIRS = lib9\\\\")
+ "SUBDIRS = \\")
+ (("@chmod 755 yacc/9yacc")
+ ""))
+ (for-each (lambda (x)
+ (substitute* "Makefile"
+ (((string-append x "\\\\")) "\\")))
+ '("yacc" "diff" "hoc" "rc"))
+ (substitute* "sam/Makefile"
+ (("\\$\\{CFLAGS\\}")
+ "${CFLAGS} -I."))
+ (substitute* "config.mk"
+ (("^YACC.*=.*$")
+ (string-append "YACC=" #$(this-package-native-input "9yacc")
+ "/bin/yacc\n")))))
+ (delete 'chdir)
+ (delete 'install-yaccpar)))))
+ (native-inputs (list 9yacc))
+ (inputs (list lib9))
+ (propagated-inputs (list rc))
+ (synopsis "Port of various Plan 9 tools for Unix")
+ (description
+ "This package provides ported versions of various Plan 9 userland tools
+for Unix.")))