home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   linux.debian.bugs.dist      Ohh some weird Debian bug report thing      28,835 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 28,127 of 28,835   
   Samuel Thibault to All   
   Bug#1128371: ghc: Hurd fixes (1/2)   
   18 Feb 26 22:20:01   
   
   From: sthibault@debian.org   
      
   Package: ghc   
   Version: 9.6.6-4   
   Severity: important   
   Tags: patch upstream   
   Forwarded: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/15319   
      
   Hello,   
      
   A few patches are needed to fix building ghc on hurd-any. The attached   
   three patches have already been applied upstream, could you apply them   
   to the Debian package?   
      
   Thanks,   
   Samuel   
      
   -- System Information:   
   Debian Release: forky/sid   
     APT prefers testing   
     APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, '   
   esting-debug'), (500, 'stable-security'), (500, 'stable-debug'), (500,   
   'proposed-updates'), (500, 'oldstable-debug'), (500, 'oldoldstable'), (500,   
   'buildd-unstable'), (500, 'unstable'), (   
   500, 'stable'), (500, 'oldstable'), (1, 'experimental-debug'), (1,   
   'buildd-experimental'), (1, 'experimental')   
   Architecture: amd64 (x86_64)   
   Foreign Architectures: i386, arm64   
      
   Kernel: Linux 6.19.0 (SMP w/22 CPU threads; PREEMPT)   
   Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not   
   set   
   Shell: /bin/sh linked to /usr/bin/dash   
   Init: systemd (via /run/systemd/system)   
   LSM: AppArmor: enabled   
      
   Versions of packages ghc depends on:   
   ii  dpkg            1.23.5   
   ii  gcc             4:15.2.0-5   
   ii  libbsd-dev      0.12.2-2+b1   
   ii  libc6           2.42-11+b1   
   ii  libc6-dev       2.42-11+b1   
   ii  libffi-dev      3.5.2-3+b1   
   ii  libffi8         3.5.2-3+b1   
   ii  libgmp-dev      2:6.3.0+dfsg-5+b1   
   ii  libgmp10        2:6.3.0+dfsg-5+b1   
   ii  libncurses-dev  6.6+20251231-1   
   ii  libnuma-dev     2.0.19-1+b1   
   ii  libnuma1        2.0.19-1+b1   
   ii  libtinfo6       6.6+20251231-1   
      
   Versions of packages ghc recommends:   
   ii  libstdc++-14-dev  14.3.0-12   
      
   Versions of packages ghc suggests:   
   pn  ghc-doc      
   pn  ghc-prof     
   ii  llvm-18   1:18.1.8-20+b2   
   ii  perl      5.40.1-7   
      
   -- no debconf information   
      
   commit bf4694e9d10b7d9898ed1e3cd7ae115fd33ac725   
   Author: Samuel Thibault    
   Date:   Sat Jan 10 15:53:10 2026 +0100   
      
       Fix linking against libm by moving the -lm option   
      
       For those systems that need -lm for getting math functions, this is   
       currently added on the link line very early, before the object files being   
       linked together. Newer toolchains enable --as-needed by default, which   
   means   
       -lm is ignored at that point because no object requires a math function   
       yet. With such toolchains, we thus have to add -lm after the objects, so   
   the   
       linker actually includes libm in the link.   
      
   ---   
    compiler/GHC/Linker/Dynamic.hs |    2 +-   
    1 file changed, 1 insertion(+), 1 deletion(-)   
      
   https://gitlab.haskell.org/ghc/ghc/-/merge_requests/15319   
      
   --- a/compiler/GHC/Linker/Dynamic.hs   
   +++ b/compiler/GHC/Linker/Dynamic.hs   
   @@ -223,7 +223,6 @@ linkDynLib logger tmpfs dflags0 unit_env   
      
                runLink logger tmpfs linker_config (   
                        map Option verbFlags   
   -                 ++ libmLinkOpts platform   
                     ++ [ Option "-o"   
                        , FileOption "" output_fn   
                        ]   
   @@ -234,6 +233,7 @@ linkDynLib logger tmpfs dflags0 unit_env   
                        -- Solaris 10 doesn't support the latter:   
                     ++ [ Option ("-Wl,-h," ++ takeFileName output_fn) ]   
                     ++ extra_ld_inputs   
   +                 ++ libmLinkOpts platform   
                     ++ map Option lib_path_opts   
                     ++ map Option pkg_lib_path_opts   
                     ++ map Option pkg_link_opts   
      
   https://gitlab.haskell.org/ghc/ghc/-/merge_requests/15318   
      
   +   
      
   From 3939a8bf93e27d8151aa1d92bf3ce10bbbc96a72 Mon Sep 17 00:00:00 2001   
   From: Samuel Thibault    
   Date: Sun, 15 Sep 2024 15:57:52 +0200   
   Subject: [PATCH] GNU/Hurd: Add getExecutablePath support   
      
   GNU/Hurd exposes it as /proc/self/exe just like on Linux.   
   ---   
    .../src/GHC/Internal/System/Environment/ExecutablePath.hsc  | 6 +++---   
    1 file changed, 3 insertions(+), 3 deletions(-)   
      
   Index: ghc-9.10.3/libraries/ghc-internal/src/GHC/Internal/System   
   Environment/ExecutablePath.hsc   
   ===================================================================   
   --- ghc-9.10.3.orig/libraries/ghc-internal/src/GHC/Internal/Syst   
   m/Environment/ExecutablePath.hsc   
   +++ ghc-9.10.3/libraries/ghc-internal/src/GHC/Internal/System/En   
   ironment/ExecutablePath.hsc   
   @@ -51,7 +51,7 @@ import GHC.Internal.Foreign.Ptr   
    import GHC.Internal.Foreign.Storable   
    import GHC.Internal.System.IO.Error (isDoesNotExistError)   
    import GHC.Internal.System.Posix.Internals   
   -#elif defined(linux_HOST_OS)   
   +#elif defined(linux_HOST_OS) || defined(gnu_HOST_OS)   
    import GHC.Internal.Data.Functor   
    import GHC.Internal.Data.List (isSuffixOf)   
    import GHC.Internal.Foreign.C.Types   
   @@ -200,9 +200,9 @@ executablePath = Just (fmap Just getExec   
          | otherwise             = throw e   
      
    ---------------------------------------------------------------   
   ----------------   
   --- Linux / Solaris   
   +-- Linux / Solaris / Hurd   
      
   -#elif defined(linux_HOST_OS) || defined(solaris2_HOST_OS)   
   +#elif defined(linux_HOST_OS) || defined(solaris2_HOST_OS) || de   
   ined(gnu_HOST_OS)   
      
    foreign import ccall unsafe "readlink"   
        c_readlink :: CString -> CString -> CSize -> IO CInt   
   @@ -219,7 +219,7 @@ readSymbolicLink file =   
                       c_readlink s buf 4096   
                peekFilePathLen (buf,fromIntegral len)   
      
   -#  if defined(linux_HOST_OS)   
   +#  if defined(linux_HOST_OS) || defined(gnu_HOST_OS)   
    getExecutablePath = readSymbolicLink $ "/proc/self/exe"   
      
    executablePath = Just (check <$> getExecutablePath) where   
      
   commit 95773d289c62373772f676df91c1278b7d382e30   
   Author: Samuel Thibault    
   Date:   Sat Jan 10 15:59:18 2026 +0100   
      
       Fix the OS string encoding for GNU/Hurd   
      
       Following https://github.com/haskell/cabal/pull/9434/files , and as seen   
      
   [continued in next message]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca