gnu: guile-bytestructures: Update to 1.0.1.

* gnu/package/guile.scm (guile-bytestructures): Update to 1.0.1.
[source]: Use tarball from github instead of git.
[build-system]: Use GNU-BUILD-SYSTEM.
[arguments]: Remove.
[navitve-inputs]: Add PKG-CONFIG.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
amirouche 2018-01-08 22:30:10 +01:00 committed by Ludovic Courtès
parent 73244e634c
commit 4f85f7f7ef
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
3 changed files with 9 additions and 112 deletions

View File

@ -16,6 +16,7 @@
# Copyright © 2017 Clément Lassieur <clement@lassieur.org> # Copyright © 2017 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> # Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> # Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# #
# This file is part of GNU Guix. # This file is part of GNU Guix.
# #
@ -721,7 +722,6 @@ dist_patch_DATA = \
%D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-default-utf8.patch \ %D%/packages/patches/guile-2.2-default-utf8.patch \
%D%/packages/patches/guile-bytestructures-name-clash.patch \
%D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-default-utf8.patch \
%D%/packages/patches/guile-linux-syscalls.patch \ %D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-present-coding.patch \ %D%/packages/patches/guile-present-coding.patch \

View File

@ -1658,90 +1658,18 @@ is no support for parsing block and inline level HTML.")
(define-public guile-bytestructures (define-public guile-bytestructures
(package (package
(name "guile-bytestructures") (name "guile-bytestructures")
(version "20170402.91d042e") (version "1.0.1")
(source (origin (source (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append "https://github.com/TaylanUB/scheme-bytestructures"
(url "https://github.com/TaylanUB/scheme-bytestructures") "/releases/download/v" version
(commit "91d042e3427e1d7740b604b6296c616cf2eec13d"))) "/bytestructures-" version ".tar.gz"))
(file-name (string-append name "-" version "-checkout"))
(sha256 (sha256
(base32 (base32
"04lgh0nk6ddnwgh20hnz4pyhczaik0xbd50kikjsxcwcl46shavb")) "1lnfcy65mqj823lamy2n2vaghdz0g7mj011bgnhmd6hwpnaidnh2"))))
(patches (search-patches "guile-bytestructures-name-clash.patch")))) (build-system gnu-build-system)
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 ftw)
(ice-9 match)
(ice-9 popen)
(ice-9 rdelim))
;; Unpack.
(setenv "PATH"
(string-join (list (assoc-ref %build-inputs "tar")
(assoc-ref %build-inputs "xz"))
"/bin:" 'suffix))
(system* "tar" "xf" (assoc-ref %build-inputs "source"))
(match (scandir ".")
(("." ".." directory)
(chdir directory)))
(let* ((out (assoc-ref %outputs "out"))
(guile (assoc-ref %build-inputs "guile"))
(effective (read-line
(open-pipe* OPEN_READ
(string-append guile "/bin/guile")
"-c" "(display (effective-version))")))
(module-dir (string-append out "/share/guile/site/"
effective))
(object-dir (string-append out "/lib/guile/" effective
"/site-ccache"))
(source (getcwd))
(doc (string-append out "/share/doc/scheme-bytestructures"))
(sld-files (with-directory-excursion source
(find-files "bytestructures/r7" "\\.exports.sld$")))
(scm-files (filter (lambda (path)
(not (string-prefix? "bytestructures/r7" path)))
(with-directory-excursion source
(find-files "bytestructures" "\\.scm$"))))
(guild (string-append (assoc-ref %build-inputs "guile")
"/bin/guild")))
;; Make installation directories.
(mkdir-p doc)
;; Compile .scm files and install.
(chdir source)
(setenv "GUILE_AUTO_COMPILE" "0")
(for-each (lambda (file)
(let* ((dest-file (string-append module-dir "/"
file))
(go-file (string-append object-dir "/"
(substring file 0
(string-rindex file #\.))
".go")))
;; Install source module.
(mkdir-p (dirname dest-file))
(copy-file file dest-file)
;; Install compiled module.
(mkdir-p (dirname go-file))
(unless (zero? (system* guild "compile"
"-L" source
"-o" go-file
file))
(error (format #f "Failed to compile ~s to ~s!"
file go-file)))))
(append sld-files scm-files))
;; Also copy over the README.
(install-file "README.md" doc)
#t))))
(native-inputs (native-inputs
`(("tar" ,tar) `(("pkg-config" ,pkg-config)))
("xz" ,xz)))
(inputs (inputs
`(("guile" ,guile-2.2))) `(("guile" ,guile-2.2)))
(home-page "https://github.com/TaylanUB/scheme-bytestructures") (home-page "https://github.com/TaylanUB/scheme-bytestructures")

View File

@ -1,31 +0,0 @@
This patch works around a name clash between the 'cstring-pointer' module and
the 'cstring-module' variable that occurs in Guile 2.0:
ice-9/boot-9.scm:109:20: re-exporting local variable: cstring-pointer
--- guile-bytestructures-20170402.91d042e-checkout/bytestructures/guile.scm 2017-07-25 17:04:32.858289986 +0200
+++ guile-bytestructures-20170402.91d042e-checkout/bytestructures/guile.scm 2017-07-25 17:04:41.130244725 +0200
@@ -1,6 +1,6 @@
(define-module (bytestructures guile))
-(import
+(use-modules
(bytestructures guile base)
(bytestructures guile vector)
(bytestructures guile struct)
@@ -8,7 +8,7 @@
(bytestructures guile pointer)
(bytestructures guile numeric)
(bytestructures guile string)
- (bytestructures guile cstring-pointer))
+ ((bytestructures guile cstring-pointer) #:prefix cstr:))
(re-export
make-bytestructure-descriptor
bytestructure-descriptor?
@@ -75,5 +75,5 @@
bs:string
- cstring-pointer
+ cstr:cstring-pointer
)