summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-scheme/gauche/files/gauche-xz-info.patch')
-rw-r--r--dev-scheme/gauche/files/gauche-xz-info.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/dev-scheme/gauche/files/gauche-xz-info.patch b/dev-scheme/gauche/files/gauche-xz-info.patch
new file mode 100644
index 000000000000..5ca77a8d583d
--- /dev/null
+++ b/dev-scheme/gauche/files/gauche-xz-info.patch
@@ -0,0 +1,31 @@
+--- a/lib/gauche/interactive/info.scm
++++ b/lib/gauche/interactive/info.scm
+@@ -113,7 +113,8 @@
+ :paths (get-info-paths)
+ :pred (^p (or (file-is-readable? p)
+ (file-is-readable? #"~|p|.gz")
+- (file-is-readable? #"~|p|.bz2")))))
++ (file-is-readable? #"~|p|.bz2")
++ (file-is-readable? #"~|p|.xz")))))
+
+ (define (handle-ambiguous-name entry-name)
+ (let* ([keys (map x->string (hash-table-keys (~ (get-info)'index)))]
+--- a/lib/text/info.scm
++++ b/lib/text/info.scm
+@@ -67,6 +67,7 @@
+
+ ;; Find bzip2 location
+ (define bzip2 (find-file-in-paths "bzip2"))
++(define xz (find-file-in-paths "xz"))
+
+ (cond-expand
+ [gauche.sys.zlib]
+@@ -90,6 +91,8 @@
+ (with-input-from-process #"~gzip -c -d ~|file|.gz" thunk)])]
+ [(and bzip2 (file-exists? #"~|file|.bz2"))
+ (with-input-from-process #"~bzip2 -c -d ~|file|.bz2" thunk)]
++ [(and xz (file-exists? #"~|file|.xz"))
++ (with-input-from-process #"~xz -c -d ~|file|.xz" thunk)]
+ [else (error "can't find info file" file)]))
+ (with-input-from-info
+ (^[]