mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
gnu: file: Fix building on 32-bit systems.
* gnu/packages/file.scm (file)[source]: Add patch. * gnu/packages/patches/file-32bit-time.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I9511769647147eb79db2babaaa606816d77fadad
This commit is contained in:
parent
2b93fed8fa
commit
f645cf65c1
3 changed files with 43 additions and 1 deletions
|
@ -1240,6 +1240,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/fifengine-swig-compat.patch \
|
%D%/packages/patches/fifengine-swig-compat.patch \
|
||||||
%D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \
|
%D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \
|
||||||
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \
|
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \
|
||||||
|
%D%/packages/patches/file-32bit-time.patch \
|
||||||
%D%/packages/patches/findutils-localstatedir.patch \
|
%D%/packages/patches/findutils-localstatedir.patch \
|
||||||
%D%/packages/patches/firebird-riscv64-support-pt1.patch \
|
%D%/packages/patches/firebird-riscv64-support-pt1.patch \
|
||||||
%D%/packages/patches/firebird-riscv64-support-pt2.patch \
|
%D%/packages/patches/firebird-riscv64-support-pt2.patch \
|
||||||
|
|
|
@ -38,7 +38,8 @@ (define-public file
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"10jdg2fd19h2q3jrsaw7xqwy1w3qyvdfzzrv9sgjq3mv548gb5zw"))))
|
"10jdg2fd19h2q3jrsaw7xqwy1w3qyvdfzzrv9sgjq3mv548gb5zw"))
|
||||||
|
(patches (search-patches "file-32bit-time.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
|
||||||
;; When cross-compiling, this package depends upon a native install of
|
;; When cross-compiling, this package depends upon a native install of
|
||||||
|
|
40
gnu/packages/patches/file-32bit-time.patch
Normal file
40
gnu/packages/patches/file-32bit-time.patch
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
Upstream uses CVS, this is taken from the Github mirror
|
||||||
|
https://github.com/file/file/commit/218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1.patch
|
||||||
|
https://sources.debian.org/src/file/1%3A5.45-2/debian/patches/1690555105.FILE5_45-1-g218fdf81.deal-with-32-bit-time-t.patch/
|
||||||
|
|
||||||
|
From 218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christos Zoulas <christos@zoulas.com>
|
||||||
|
Date: Fri, 28 Jul 2023 14:38:25 +0000
|
||||||
|
Subject: [PATCH] deal with 32 bit time_t
|
||||||
|
|
||||||
|
---
|
||||||
|
src/file.h | 8 +++++---
|
||||||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/file.h b/src/file.h
|
||||||
|
index 2e0494d2f..78f574ea1 100644
|
||||||
|
--- a/src/file.h
|
||||||
|
+++ b/src/file.h
|
||||||
|
@@ -27,7 +27,7 @@
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
* file.h - definitions for file(1) program
|
||||||
|
- * @(#)$File: file.h,v 1.247 2023/07/27 19:40:22 christos Exp $
|
||||||
|
+ * @(#)$File: file.h,v 1.248 2023/07/28 14:38:25 christos Exp $
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __file_h__
|
||||||
|
@@ -159,9 +159,11 @@
|
||||||
|
/*
|
||||||
|
* Dec 31, 23:59:59 9999
|
||||||
|
* we need to make sure that we don't exceed 9999 because some libc
|
||||||
|
- * implementations like muslc crash otherwise
|
||||||
|
+ * implementations like muslc crash otherwise. If you are unlucky
|
||||||
|
+ * to be running on a system with a 32 bit time_t, then it is even less.
|
||||||
|
*/
|
||||||
|
-#define MAX_CTIME CAST(time_t, 0x3afff487cfULL)
|
||||||
|
+#define MAX_CTIME \
|
||||||
|
+ CAST(time_t, sizeof(time_t) > 4 ? 0x3afff487cfULL : 0x7fffffffULL)
|
||||||
|
|
||||||
|
#define FILE_BADSIZE CAST(size_t, ~0ul)
|
||||||
|
#define MAXDESC 64 /* max len of text description/MIME type */
|
Loading…
Reference in a new issue