GNU bug report logs - #18237
Small fix for MSDOS

Previous Next

Package: emacs;

Reported by: Reuben Thomas <rrt <at> sc3d.org>

Date: Sun, 10 Aug 2014 16:41:03 UTC

Severity: normal

Done: Reuben Thomas <rrt <at> sc3d.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 18237 <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 18237 <at> debbugs.gnu.org
Subject: Re: bug#18237: Small fix for MSDOS
Date: Sun, 10 Aug 2014 19:19:24 +0100
[Message part 1 (text/plain, inline)]
On 10 August 2014 19:02, Eli Zaretskii <eliz <at> gnu.org> wrote:

> > Date: Sun, 10 Aug 2014 17:40:24 +0100
> > From: Reuben Thomas <rrt <at> sc3d.org>
> >
> > The following patch helps in the case when a sockets library is
> installed;
> > in my case, ls080b.zip from the DJGPP site:
> >
> > === modified file 'src/msdos.c'
> > --- src/msdos.c    2014-08-09 16:12:33 +0000
> > +++ src/msdos.c    2014-08-09 21:51:56 +0000
> > @@ -4016,7 +4017,7 @@
> >  #endif
> >
> >
> > -#ifndef HAVE_SELECT
> > +#ifndef HAVE_SYS_SELECT_H
> >  #include "sysselect.h"
> >
> >  /* This yields the rest of the current time slice to the task manager.
> >
> >
> > The reasoning is that having select doesn't imply having the sys/select.h
> > functionality that the following code emulates.
> >
> > Does that look OK to install?
>
> You didn't tell enough details, so I don't understand why the change
> is needed, and why it is OK not to test HAVE_SELECT at all here.  (I
> don't have ls080b.zip installed.)  Please tell what problems did you
> see with the original code, and let's take it from there.
>

libsocket is a sockets implementation:
http://rich.phekda.org/richdawe/lsck/lsck_dl.htm

When it is installed, configure correctly detects that select is available,
and sets HAVE_SELECT. However, libsocket has no sys/select.h, nor does it
implement sys_select.

Hence, at present, when I build using ./configure && make for DOS with
libsocket installed, HAVE_SELECT is defined to 1, so the MS-DOS
implementation of sys_select in msdos.c is not compiled. Later, the linker
is unable to find sys_select, and the build fails.

I think you're also saying that I should test both HAVE_SELECT &&
HAVE_SYS_SELECT_H therefore? You're probably right, I (incorrectly?)
assumed that if HAVE_SYS_SELECT_H is true, then HAVE_SELECT would be too.

-- 
http://rrt.sc3d.org
[Message part 2 (text/html, inline)]

This bug report was last modified 10 years and 342 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.