~ruther/guix-local

e7336ba225ddc9e7374d196029f10b541a60855f — Ludovic Courtès 1 year, 3 months ago 7c79be1
gnu: doxygen: Remove now unnecessary Hurd patch.

* gnu/packages/documentation.scm (doxygen)[arguments]: Remove
‘apply-patch’ phase.
* gnu/packages/patches/doxygen-hurd.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Remove it.

Reported-by: yelninei
Change-Id: Ifa5eca19e0504b9c5df1f7a57c4d5c355049a41f
3 files changed, 1 insertions(+), 40 deletions(-)

M gnu/local.mk
M gnu/packages/documentation.scm
D gnu/packages/patches/doxygen-hurd.patch
M gnu/local.mk => gnu/local.mk +0 -1
@@ 1183,7 1183,6 @@ dist_patch_DATA =						\
  %D%/packages/patches/doc++-segfault-fix.patch			\
  %D%/packages/patches/dovecot-opensslv3.patch			\
  %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch	\
  %D%/packages/patches/doxygen-hurd.patch			\
  %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch	\
  %D%/packages/patches/dstat-skip-devices-without-io.patch	\
  %D%/packages/patches/dtc-meson-cell-overflow.patch		\

M gnu/packages/documentation.scm => gnu/packages/documentation.scm +1 -9
@@ 228,15 228,7 @@ markup) can be customized and extended by the user.")
              (let ((/bin/sh (search-input-file inputs "/bin/sh")))
                (substitute* "src/portable.cpp"
                  (("/bin/sh")
                   /bin/sh)))))
          #$@(if (target-hurd?)
                 #~((add-after 'unpack 'apply-patch
                      (lambda _
                        (let ((patch-file
                               #$(local-file
                                  (search-patch "doxygen-hurd.patch"))))
                          (invoke "patch" "--force" "-p1" "-i" patch-file)))))
                 #~()))))
                   /bin/sh))))))))
    (synopsis "Generate documentation from annotated sources")
    (description "Doxygen is the de facto standard tool for generating
documentation from annotated C++ sources, but it also supports other popular

D gnu/packages/patches/doxygen-hurd.patch => gnu/packages/patches/doxygen-hurd.patch +0 -30
@@ 1,30 0,0 @@
Upstream status: Adapted from upstream.

From d3d968e5835f449d7ea715f45160db81ea906303 Mon Sep 17 00:00:00 2001
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Tue, 16 Aug 2022 20:29:54 +0200
Subject: [PATCH] Fix build on GNU/Hurd

There is no path length limitation there, even via pathconf.  But glibc
provides a getcwd function that allocates the buffer dynamically so we can
just leverage that.
---
 include/ghc/filesystem.hpp | 7 +++++++
 1 file changed, 7 insertions(+)

--- a/filesystem/filesystem.hpp.orig	2022-08-11 22:14:32.000000000 +0200
+++ b/filesystem/filesystem.hpp	2023-06-13 07:26:25.310000000 +0200
@@ -4081,6 +4081,13 @@
         return path();
     }
     return path(std::wstring(buffer.get()), path::native_format);
+#elif defined(__GLIBC__)
+    std::unique_ptr<char, decltype(&std::free)> buffer { ::getcwd(NULL, 0), std::free };
+    if (buffer == nullptr) {
+        ec = detail::make_system_error();
+        return path();
+    }
+    return path(buffer.get());
 #else
     size_t pathlen = static_cast<size_t>(std::max(int(::pathconf(".", _PC_PATH_MAX)), int(PATH_MAX)));
     std::unique_ptr<char[]> buffer(new char[pathlen + 1]);