gnu: chmlib: Patch for compilation on mips.
* gnu/packages/patches/chmlib-inttypes.patch: New file. * gnu-system.am (dist_patch_DATA): Register patch. * gnu/packages/ebook.scm (chmlib): Apply patch.
This commit is contained in:
parent
cc9b70d3ea
commit
a34816ef6e
|
@ -1,6 +1,6 @@
|
||||||
# GNU Guix --- Functional package management for GNU
|
# GNU Guix --- Functional package management for GNU
|
||||||
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||||
# Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
# Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
|
||||||
# Copyright © 2013, 2014, 2015 Mark H Weaver <mhw@netris.org>
|
# Copyright © 2013, 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||||
#
|
#
|
||||||
# This file is part of GNU Guix.
|
# This file is part of GNU Guix.
|
||||||
|
@ -362,6 +362,7 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/binutils-ld-new-dtags.patch \
|
gnu/packages/patches/binutils-ld-new-dtags.patch \
|
||||||
gnu/packages/patches/binutils-loongson-workaround.patch \
|
gnu/packages/patches/binutils-loongson-workaround.patch \
|
||||||
gnu/packages/patches/cdparanoia-fpic.patch \
|
gnu/packages/patches/cdparanoia-fpic.patch \
|
||||||
|
gnu/packages/patches/chmlib-inttypes.patch \
|
||||||
gnu/packages/patches/clucene-pkgconfig.patch \
|
gnu/packages/patches/clucene-pkgconfig.patch \
|
||||||
gnu/packages/patches/cmake-fix-tests.patch \
|
gnu/packages/patches/cmake-fix-tests.patch \
|
||||||
gnu/packages/patches/coreutils-dummy-man.patch \
|
gnu/packages/patches/coreutils-dummy-man.patch \
|
||||||
|
|
|
@ -20,7 +20,8 @@
|
||||||
#:use-module ((guix licenses) #:select (lgpl2.1+))
|
#:use-module ((guix licenses) #:select (lgpl2.1+))
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix build-system gnu))
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (gnu packages))
|
||||||
|
|
||||||
(define-public chmlib
|
(define-public chmlib
|
||||||
(package
|
(package
|
||||||
|
@ -32,7 +33,8 @@
|
||||||
version ".tar.bz2"))
|
version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"18zzb4x3z0d7fjh1x5439bs62dmgsi4c1pg3qyr7h5gp1i5xcj9l"))))
|
"18zzb4x3z0d7fjh1x5439bs62dmgsi4c1pg3qyr7h5gp1i5xcj9l"))
|
||||||
|
(patches (list (search-patch "chmlib-inttypes.patch")))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://www.jedrea.com/chmlib/")
|
(home-page "http://www.jedrea.com/chmlib/")
|
||||||
(synopsis "Library for CHM files")
|
(synopsis "Library for CHM files")
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
Taken from Debian, necessary for compilation on mips.
|
||||||
|
|
||||||
|
Patch to fix integer types problem by Goswin von Brederlow
|
||||||
|
<brederlo@informatik.uni-tuebingen.de> (#258444)
|
||||||
|
--- chmlib-0.39.orig/src/chm_lib.c
|
||||||
|
+++ chmlib-0.39/src/chm_lib.c
|
||||||
|
@@ -56,6 +56,7 @@
|
||||||
|
|
||||||
|
#include "lzx.h"
|
||||||
|
|
||||||
|
+#include <stdint.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
#ifdef CHM_DEBUG
|
||||||
|
@@ -149,22 +150,9 @@
|
||||||
|
typedef __int64 Int64;
|
||||||
|
typedef unsigned __int64 UInt64;
|
||||||
|
|
||||||
|
-/* I386, 32-bit, non-Windows */
|
||||||
|
-/* Sparc */
|
||||||
|
-/* MIPS */
|
||||||
|
-/* PPC */
|
||||||
|
-#elif __i386__ || __sun || __sgi || __ppc__
|
||||||
|
-typedef unsigned char UChar;
|
||||||
|
-typedef short Int16;
|
||||||
|
-typedef unsigned short UInt16;
|
||||||
|
-typedef long Int32;
|
||||||
|
-typedef unsigned long UInt32;
|
||||||
|
-typedef long long Int64;
|
||||||
|
-typedef unsigned long long UInt64;
|
||||||
|
-
|
||||||
|
/* x86-64 */
|
||||||
|
/* Note that these may be appropriate for other 64-bit machines. */
|
||||||
|
-#elif __x86_64__ || __ia64__
|
||||||
|
+#elif defined(__LP64__)
|
||||||
|
typedef unsigned char UChar;
|
||||||
|
typedef short Int16;
|
||||||
|
typedef unsigned short UInt16;
|
||||||
|
@@ -173,10 +161,18 @@
|
||||||
|
typedef long Int64;
|
||||||
|
typedef unsigned long UInt64;
|
||||||
|
|
||||||
|
+/* I386, 32-bit, non-Windows */
|
||||||
|
+/* Sparc */
|
||||||
|
+/* MIPS */
|
||||||
|
+/* PPC */
|
||||||
|
#else
|
||||||
|
-
|
||||||
|
-/* yielding an error is preferable to yielding incorrect behavior */
|
||||||
|
-#error "Please define the sized types for your platform in chm_lib.c"
|
||||||
|
+typedef unsigned char UChar;
|
||||||
|
+typedef short Int16;
|
||||||
|
+typedef unsigned short UInt16;
|
||||||
|
+typedef long Int32;
|
||||||
|
+typedef unsigned long UInt32;
|
||||||
|
+typedef long long Int64;
|
||||||
|
+typedef unsigned long long UInt64;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* GCC */
|
Loading…
Reference in New Issue