diff options
author | Ludovic Courtès <ludo@gnu.org> | 2010-08-19 16:52:18 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2010-08-19 16:52:18 +0000 |
commit | a69596b95125702a28874f44bce3c7c6c3820740 (patch) | |
tree | f8df604a13162e20f47b385c17cce9bec4e3b617 /maintainers/scripts/gnu | |
parent | 7b9d03d596e29b4dc92f5d3fccc86c7a3d0a9cc1 (diff) | |
download | nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar.gz nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar.bz2 nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar.lz nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar.xz nixlib-a69596b95125702a28874f44bce3c7c6c3820740.tar.zst nixlib-a69596b95125702a28874f44bce3c7c6c3820740.zip |
gnupdate: Use the latest FFI.
* maintainers/scripts/gnu/gnupdate (version-string>?): Use the new `string->pointer', available in 1.9.12. svn path=/nixpkgs/trunk/; revision=23253
Diffstat (limited to 'maintainers/scripts/gnu')
-rwxr-xr-x | maintainers/scripts/gnu/gnupdate | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/maintainers/scripts/gnu/gnupdate b/maintainers/scripts/gnu/gnupdate index dbb3f0d528ef..b9f34a2750e3 100755 --- a/maintainers/scripts/gnu/gnupdate +++ b/maintainers/scripts/gnu/gnupdate @@ -623,19 +623,9 @@ exec ${GUILE-guile} -L "$PWD" -l "$0" \ (let ((strverscmp (let ((sym (or (dynamic-func "strverscmp" (dynamic-link)) (error "could not find `strverscmp' (from GNU libc)")))) - (make-foreign-function int sym (list '* '*)))) - (string->null-terminated-utf8 - (lambda (s) - (let* ((utf8 (string->utf8 s)) - (len (bytevector-length utf8)) - (nts (make-bytevector (+ len 1)))) - (bytevector-copy! utf8 0 nts 0 len) - (bytevector-u8-set! nts len 0) - nts)))) + (make-foreign-function int sym (list '* '*))))) (lambda (a b) - (let ((a (bytevector->foreign (string->null-terminated-utf8 a))) - (b (bytevector->foreign (string->null-terminated-utf8 b)))) - (> (strverscmp a b) 0))))) + (> (strverscmp (string->pointer a) (string->pointer b)) 0)))) (define (latest-release project) ;; Return "FOO-X.Y" or #f. |