mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
gnu: opensp: Fix build on the Hurd.
* gnu/packages/patches/opensp-maxpathlen.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/xml.scm (opensp): Add phase for adding the patch. Change-Id: I47278396eb5ded8f654708019e51b7d88b13b976 Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This commit is contained in:
committed by
Liliana Marie Prikler
parent
8b19b95599
commit
3afbbf8ae3
@@ -2027,6 +2027,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
|
||||
%D%/packages/patches/openscad-fix-path-in-expected-test-results-to-acommodate-diff.patch \
|
||||
%D%/packages/patches/opensles-add-license-file.patch \
|
||||
%D%/packages/patches/opensp-maxpathlen.patch \
|
||||
%D%/packages/patches/openssl-1.1-c-rehash-in.patch \
|
||||
%D%/packages/patches/openssl-3.0-c-rehash-in.patch \
|
||||
%D%/packages/patches/openssl-hurd64.patch \
|
||||
|
||||
41
gnu/packages/patches/opensp-maxpathlen.patch
Normal file
41
gnu/packages/patches/opensp-maxpathlen.patch
Normal file
@@ -0,0 +1,41 @@
|
||||
Adapted from https://sources.debian.org/src/opensp/1.5.2-15.2/debian/patches/diff-1.0.patch
|
||||
|
||||
Index: OpenSP-1.5.2/sx/XmlOutputEventHandler.cxx
|
||||
===================================================================
|
||||
--- OpenSP-1.5.2.orig/sx/XmlOutputEventHandler.cxx
|
||||
+++ OpenSP-1.5.2/sx/XmlOutputEventHandler.cxx
|
||||
@@ -1199,12 +1199,22 @@ void XmlOutputEventHandler::inputOpened(
|
||||
// Check to make sure we haven't passed outside of the
|
||||
// output directory
|
||||
char *dirs = strdup (filePath);
|
||||
+#ifdef MAXPATHLEN
|
||||
char realDirs[MAXPATHLEN];
|
||||
char realOutputDir[MAXPATHLEN];
|
||||
+#else
|
||||
+ char *realDirs;
|
||||
+ char *realOutputDir;
|
||||
+#endif
|
||||
char *outputDir = strdup(outputDir_);
|
||||
|
||||
+#ifdef MAXPATHLEN
|
||||
realpath((const char *)dirname(dirs), realDirs);
|
||||
realpath((const char *)dirname(outputDir), realOutputDir);
|
||||
+#else
|
||||
+ realDirs = realpath((const char *)dirname(dirs), NULL);
|
||||
+ realOutputDir = realpath((const char *)dirname(outputDir), NULL);
|
||||
+#endif
|
||||
|
||||
if (strncmp(realDirs, realOutputDir, strlen (realOutputDir)) != 0) {
|
||||
app_->message(XmlOutputMessages::pathOutsideOutputDirectory,
|
||||
@@ -1214,6 +1224,11 @@ void XmlOutputEventHandler::inputOpened(
|
||||
}
|
||||
}
|
||||
|
||||
+#ifndef MAXPATHLEN
|
||||
+ free(realDirs);
|
||||
+ free(realOutputDir);
|
||||
+#endif
|
||||
+
|
||||
// Make the necessary directories
|
||||
maybeCreateDirectories(dirname(dirs));
|
||||
|
||||
@@ -1845,6 +1845,13 @@ modular implementation of XML-RPC for C and C++.")
|
||||
#:make-flags #~(list "TESTS_THAT_FAIL=")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
#$@(if (target-hurd?)
|
||||
#~((add-after 'unpack 'patch-hurd
|
||||
(lambda _
|
||||
(let ((patch #$(local-file
|
||||
(search-patch "opensp-maxpathlen.patch"))))
|
||||
(invoke "patch" "--force" "-p1" "-i" patch)))))
|
||||
#~())
|
||||
(add-after 'unpack 'delete-configure
|
||||
;; The configure script in the release was made with an older
|
||||
;; Autoconf and lacks support for the `--docdir' option.
|
||||
|
||||
Reference in New Issue
Block a user