GNU bug report logs -
#74784
[PATCH] gnu: hugs: Fix build with GCC.
Previous Next
Reported by: Homo <gay <at> disroot.org>
Date: Wed, 11 Dec 2024 10:28:01 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#74784: [PATCH] gnu: hugs: Fix build with GCC.
which was filed against the guix-patches package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 74784 <at> debbugs.gnu.org.
--
74784: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=74784
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Homo <gay <at> disroot.org> skribis:
> * gnu/packages/patches/hugs-fix-build.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/hugs.scm (hugs)[source]: Use it.
> [native-inputs]: Remove.
>
> Change-Id: I8b17f6c8a89fbc25ac9fe40b58962c83b08cbc21
> ---
> Hi,
>
> The patch itself is taken from https://aur.archlinux.org/cgit/aur.git/tree/hsbase_inline.patch?h=hugs
> so for a while I was puzzled what to write when I don't understand C code.
I added this link to the top of the patch.
> etc/committer.scm doesn't work with these changes, either it backtraces or says "Nothing to do."
> so instead I had to write manually, hopefully I didn't misunderstand what to write.
Oh, too bad. It’s perfect anyway!
Applied, thanks!
Ludo’.
[Message part 3 (message/rfc822, inline)]
Change-Id: I6bbfb65e62d9a2b1a3c8b29eb386a24d6974eb45
---
gnu/packages/hugs.scm | 7 +++----
gnu/packages/patches/hugs-fix-build.patch | 21 +++++++++++++++++++++
2 files changed, 24 insertions(+), 4 deletions(-)
create mode 100644 gnu/packages/patches/hugs-fix-build.patch
diff --git a/gnu/packages/hugs.scm b/gnu/packages/hugs.scm
index c9915e4cd6..b6a97ea78c 100644
--- a/gnu/packages/hugs.scm
+++ b/gnu/packages/hugs.scm
@@ -23,7 +23,7 @@ (define-module (gnu packages hugs)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
- #:use-module (gnu packages gcc))
+ #:use-module (gnu packages))
(define-public hugs
(package
@@ -36,7 +36,8 @@ (define-public hugs
name "98-plus-" version ".tar.gz"))
(sha256
(base32
- "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))))
+ "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))
+ (patches (search-patches "hugs-fix-build.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -71,8 +72,6 @@ (define-public hugs
(("/bin/cp") (which "cp")))
#t)))
#:tests? #f)) ; no test target
- ;; FIXME: Fails to build with GCC 5.
- (native-inputs (list gcc-4.9))
(home-page "https://www.haskell.org/hugs/")
(synopsis "Functional programming system based on Haskell 98")
(description
diff --git a/gnu/packages/patches/hugs-fix-build.patch b/gnu/packages/patches/hugs-fix-build.patch
new file mode 100644
index 0000000000..d41bec4d8b
--- /dev/null
+++ b/gnu/packages/patches/hugs-fix-build.patch
@@ -0,0 +1,21 @@
+diff --git a/packages/base/include/HsBase.h b/packages/base/include/HsBase.h
+index aa1a7fb..78d5b46 100644
+--- a/packages/base/include/HsBase.h
++++ b/packages/base/include/HsBase.h
+@@ -217,15 +217,7 @@ StgWord64 stg_integerToWord64 (StgInt sa, StgByteArray /* Really: mp_limb_t* */
+ when compiling to native code.
+ -------------------------------------------------------------------------- */
+
+-#ifndef INLINE
+-# if defined(_MSC_VER)
+-# define INLINE extern __inline
+-# elif defined(__GNUC__)
+-# define INLINE extern inline
+-# else
+-# define INLINE inline
+-# endif
+-#endif
++#define INLINE inline
+
+ INLINE int __hscore_get_errno(void) { return errno; }
+ INLINE void __hscore_set_errno(int e) { errno = e; }
--
2.46.0
This bug report was last modified 149 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.