GNU bug report logs - #74784
[PATCH] gnu: hugs: Fix build with GCC.

Previous Next

Package: guix-patches;

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

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Homo <gay <at> disroot.org>
Subject: bug#74784: closed (Re: [bug#74784] [PATCH v2] gnu: hugs: Fix
 build with GCC.)
Date: Mon, 23 Dec 2024 19:41:02 +0000
[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)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Homo <gay <at> disroot.org>
Cc: 74784-done <at> debbugs.gnu.org
Subject: Re: [bug#74784] [PATCH v2] gnu: hugs: Fix build with GCC.
Date: Mon, 23 Dec 2024 20:40:31 +0100
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)]
From: Homo <gay <at> disroot.org>
To: guix-patches <at> gnu.org
Cc: Homo <gay <at> disroot.org>
Subject: [PATCH] gnu: hugs: Fix build with GCC.
Date: Wed, 11 Dec 2024 12:26:36 +0200
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.