me
/
guix
Archived
1
0
Fork 0

gnu: genimage: Update to 14-1.11bb044.

Update to commit 11bb04455 to integrate fixes related to new genext2fs and
e2fsprogs versions.

* gnu/packages/genimage.scm (genimage): Update to 14-1.11bb044.
[arguments]{fix-failing-tests}: Update it.
* gnu/packages/patches/genimage-mke2fs-test.patch: Update it.
master
Mathieu Othacehe 2021-11-21 11:22:45 +00:00
parent e74bcbc64f
commit 72501a555e
No known key found for this signature in database
GPG Key ID: 8354763531769CA6
2 changed files with 98 additions and 96 deletions

View File

@ -41,96 +41,98 @@
#:use-module (gnu packages virtualization)) #:use-module (gnu packages virtualization))
(define-public genimage (define-public genimage
(package (let ((commit "11bb04455eaf5434f0723c91a2224918ebd0a196")
(name "genimage") (revision "1"))
(version "14") (package
(source (origin (name "genimage")
(method git-fetch) (version (git-version "14" revision commit))
(uri (git-reference (source (origin
(url "https://github.com/pengutronix/genimage") (method git-fetch)
(commit (string-append "v" version)))) (uri (git-reference
(file-name (git-file-name name version)) (url "https://github.com/pengutronix/genimage")
(sha256 (commit commit)))
(base32 (file-name (git-file-name name version))
"1l45djpbaffhyw0allq3mgzwrdilk05iyj0nvp8l3s47vnp5bnbs")) (sha256
(patches (base32
(search-patches "genimage-mke2fs-test.patch")))) "1dq3lk0awk12v2aidry35gvrci5a3nr6rzcq0j9hyyf0w1z1rn0l"))
(build-system gnu-build-system) (patches
(arguments (search-patches "genimage-mke2fs-test.patch"))))
`(#:modules (build-system gnu-build-system)
((ice-9 match) (arguments
,@%gnu-build-system-modules) `(#:modules
#:phases ((ice-9 match)
(modify-phases %standard-phases ,@%gnu-build-system-modules)
(add-after 'unpack 'guixify #:phases
(lambda* (#:key inputs #:allow-other-keys) (modify-phases %standard-phases
(map (match-lambda (add-after 'unpack 'guixify
((input directory regexp) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "config.c" (map (match-lambda
(((format #f "\\.def = \"(~a)\"" regexp) _ command) ((input directory regexp)
(format #f ".def = \"~a/~a/~a\"" (substitute* "config.c"
(assoc-ref inputs input) directory command))))) (((format #f "\\.def = \"(~a)\"" regexp) _ command)
'(("cpio" "bin" "cpio") (format #f ".def = \"~a/~a/~a\""
("coreutils" "bin" "dd") (assoc-ref inputs input) directory command)))))
("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs") '(("cpio" "bin" "cpio")
("genext2fs" "bin" "genext2fs") ("coreutils" "bin" "dd")
("cdrkit-libre" "bin" "genisoimage") ("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs")
("mtools" "bin" "mcopy|mmd") ("genext2fs" "bin" "genext2fs")
;; mkcramfs is obsolete. ("cdrkit-libre" "bin" "genisoimage")
("dosfstools" "sbin" "mkdosfs") ("mtools" "bin" "mcopy|mmd")
("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize") ;; mkcramfs is obsolete.
("squashfs-tools" "bin" "mksquashfs") ("dosfstools" "sbin" "mkdosfs")
("qemu" "bin" "qemu-img") ("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize")
("tar" "bin" "tar") ("squashfs-tools" "bin" "mksquashfs")
("u-boot-tools" "bin" "mkimage"))) ("qemu" "bin" "qemu-img")
(substitute* "util.c" ("tar" "bin" "tar")
(("\"/bin/sh\"") ("u-boot-tools" "bin" "mkimage")))
(string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))))) (substitute* "util.c"
(add-before 'check 'fix-failing-tests (("\"/bin/sh\"")
(lambda _ (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\"")))))
;; We don't have /etc/passwd so uid 0 is not known as "root". (add-before 'check 'fix-failing-tests
;; Thus patch it out. (lambda _
(substitute* '("test/ext2test.dump" ;; We don't have /etc/passwd so uid 0 is not known as "root".
"test/ext3test.dump" ;; Thus patch it out.
"test/ext4test.dump" (substitute* '("test/ext2test.0.dump"
"test/ext2test-percent.dump" "test/ext3test.0.dump"
"test/mke2fs.dump") "test/ext4test.0.dump"
(("root") "unknown")))) "test/ext2test-percent.0.dump"
(add-before 'check 'setenv-check "test/mke2fs.0.dump")
(lambda _ (("root") "unknown"))))
;; Our container doesn't provide access to /etc/mtab (add-before 'check 'setenv-check
(setenv "EXT2FS_NO_MTAB_OK" "1") (lambda _
;; Make test reproducible ;; Our container doesn't provide access to /etc/mtab
(setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U") (setenv "EXT2FS_NO_MTAB_OK" "1")
(setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs"))) ;; Make test reproducible
(replace 'check (setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U")
(lambda _ (setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs")))
(invoke "make" "TEST_LOG_COMPILER=" "check")))))) (replace 'check
(native-inputs (lambda _
`(("autoconf" ,autoconf) (invoke "make" "TEST_LOG_COMPILER=" "check"))))))
("automake" ,automake) (native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
;;; Note: cramfs is obsolete. ;;; Note: cramfs is obsolete.
("dtc" ,dtc) ; for the tests ("dtc" ,dtc) ; for the tests
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("util-linux" ,util-linux))) ; for the tests ("util-linux" ,util-linux))) ; for the tests
(inputs (inputs
`(("bash" ,bash) `(("bash" ,bash)
("cdrkit-libre" ,cdrkit-libre) ("cdrkit-libre" ,cdrkit-libre)
("cpio" ,cpio) ("cpio" ,cpio)
;; Note: invoked by final executable. ;; Note: invoked by final executable.
("coreutils" ,coreutils) ; chmod, dd ("coreutils" ,coreutils) ; chmod, dd
("dosfstools" ,dosfstools) ("dosfstools" ,dosfstools)
("e2fsprogs" ,e2fsprogs) ("e2fsprogs" ,e2fsprogs)
("genext2fs" ,genext2fs) ("genext2fs" ,genext2fs)
("libconfuse" ,libconfuse) ("libconfuse" ,libconfuse)
("mtd-utils" ,mtd-utils) ("mtd-utils" ,mtd-utils)
("mtools" ,mtools) ("mtools" ,mtools)
("qemu" ,qemu-minimal) ("qemu" ,qemu-minimal)
("squashfs-tools" ,squashfs-tools) ("squashfs-tools" ,squashfs-tools)
("tar" ,tar) ("tar" ,tar)
("u-boot-tools" ,u-boot-tools))) ("u-boot-tools" ,u-boot-tools)))
(synopsis "Create Flash images according to specification") (synopsis "Create Flash images according to specification")
(description "@command{genimage} creates Flash images according to a (description "@command{genimage} creates Flash images according to a
specification file.") specification file.")
(home-page "https://github.com/pengutronix/genimage") (home-page "https://github.com/pengutronix/genimage")
(license license:gpl2))) (license license:gpl2))))

View File

@ -1,8 +1,8 @@
diff --git a/test/mke2fs.dump b/test/mke2fs.dump diff --git a/test/mke2fs.dump b/test/mke2fs.dump
index 8e63662..0c25798 100644 index 8e63662..0c25798 100644
--- a/test/mke2fs.dump --- a/test/mke2fs.0.dump
+++ b/test/mke2fs.dump +++ b/test/mke2fs.0.dump
@@ -11,7 +11,7 @@ Filesystem OS type: Linux @@ -11,7 +11,7 @@
Inode count: 8192 Inode count: 8192
Block count: 32768 Block count: 32768
Reserved block count: 1638 Reserved block count: 1638
@ -11,7 +11,7 @@ index 8e63662..0c25798 100644
Free inodes: 8141 Free inodes: 8141
First block: 1 First block: 1
Block size: 1024 Block size: 1024
@@ -29,7 +29,7 @@ Mount count: 0 @@ -29,7 +29,7 @@
Maximum mount count: -1 Maximum mount count: -1
Last checked: Sat Jan 1 00:00:00 2000 Last checked: Sat Jan 1 00:00:00 2000
Check interval: 0 (<none>) Check interval: 0 (<none>)
@ -20,7 +20,7 @@ index 8e63662..0c25798 100644
Reserved blocks uid: 0 (user root) Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root) Reserved blocks gid: 0 (group root)
First inode: 11 First inode: 11
@@ -49,13 +49,13 @@ Journal sequence: 0x00000001 @@ -51,13 +51,13 @@
Journal start: 0 Journal start: 0