Please find attached two patches contributed by Flavio Cruz, that fix the compilation of CLISP on GNU/Hurd. Those patches are going to be applied to the Debian package.
I have applied the equivalent of the maxpathlen.patch; thanks.
Regarding clisp-hurd-einval-extra.patch: How to reproduce the issue? I've not seen any related test failure or misbehaviour of clisp on GNU/Hurd in a couple of months. (I'm using Samuel Thibault's Hurd image from 2017-01-15.)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Concerning clisp-hurd-einval-extra.patch, I have verified that it is no longer needed on the tip of the clisp-2.50 branch. I am going to drop it from the Debian package. Hence this bug can be closed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for the patches.
I see no problem with these, except we probably want to use
alloca
instead ofmalloc
.Bruno, WDYT?
I have applied the equivalent of the maxpathlen.patch; thanks.
Regarding clisp-hurd-einval-extra.patch: How to reproduce the issue? I've not seen any related test failure or misbehaviour of clisp on GNU/Hurd in a couple of months. (I'm using Samuel Thibault's Hurd image from 2017-01-15.)
About the clisp-hurd-einval-extra.patch: I haven't recently tested that this patch is actually needed.
The problem was reported more than 2 years ago, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=801260
If you confirm that clisp works fine on GNU/Hurd without it, then it's probably ok to just ignore it.
Chasing the references to
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=801260
-> https://lists.debian.org/debian-hurd/2015/09/msg00031.html
-> https://buildd.debian.org/status/fetch.php?pkg=clisp&arch=hurd-i386&ver=1%3A2.49-10&stamp=1440769077
this seems indeed to be an interaction with the Debian build system with the file descriptors 0, 1, 2.
On other operating systems, with 'nohup' that clobbers the file descriptor 0, I see similar errors.
So it's perfectly OK for Debian to include this patch.
But upstream != Debian; I won't include it because I haven't seen it happen myself so far and because I would expect to get some "standard" errno such as ENOTTY or EBADF, not EMIG_BAD_ID.
Concerning clisp-hurd-einval-extra.patch, I have verified that it is no longer needed on the tip of the clisp-2.50 branch. I am going to drop it from the Debian package. Hence this bug can be closed.