screen-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[screen-devel] [bug #42524] IRIX: build problems SCM_RIGHTS is undefined


From: anonymous
Subject: [screen-devel] [bug #42524] IRIX: build problems SCM_RIGHTS is undefined / _XOPEN_SOURCE
Date: Sun, 08 Jun 2014 13:46:55 +0000
User-agent: Mozilla/5.0 (X11; U; IRIX64 IP35; en-US; rv:1.8.1.25pre) Gecko/20121113 SeaMonkey/1.1.20pre

URL:
  <http://savannah.gnu.org/bugs/?42524>

                 Summary: IRIX: build problems SCM_RIGHTS is undefined /
_XOPEN_SOURCE
                 Project: GNU Screen
            Submitted by: None
            Submitted on: Sun 08 Jun 2014 01:46:54 PM UTC
                Category: Build/Install
                Severity: 3 - Normal
                Priority: 5 - Normal
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 4.2.1
           Fixed Release: None
         Planned Release: None
           Work Required: None

    _______________________________________________________

Details:

Compiling screen 4.2.1 fails on IRIX 6.5.30 in screen.c, since 'The identifier
"SCM_RIGHTS" is undefined.'. 

"SCM_RIGHTS" is defined in sys/sockets.h

#if defined(_KERNEL) || defined(_XOPEN_SOURCE)
/* "Socket"-level control message types: */
#define SCM_RIGHTS      0x01            /* access rights (array of int) */
#endif /* (_KERNEL || _XOPEN_SOURCE) */

however, if I set CPPFLAGS to -D_XOPEN_SOURCE, configure fails with  'you have
neither usable sockets nor usable pipes -> no screen'.

This is caused by 

cc-1077 c99: ERROR File = /usr/include/sys/select.h, Line = 83
  The indicated declaration has no storage class or type specifier.

  __SGI_LIBC_BEGIN_NAMESPACE_STD
  ^

and 100 further errors, both when checking for sockets and fifos.  The
__SGI_LIBC_BEGIN_NAMESPACE_STD is not protected by any ifdefs, if I see that
correctly. It would be defined in internal/sgimacros.h. I haven't seen any
mechanism that would cause sgimacros.h to be included from sys/select.h, but
both 
sys/time.h or sys/types.h do so. Therefore, moving the include statements for
sys/types.h or sys/time.h before sys/select.h in the test programs in
configure.in would help.

However, _XOPEN_SOURCE causes "Declaration is incompatible" errors for
connect, bind, accept and setregid (and friends) in osdef.h, as well as Errors
concerning ut_exit.e_termination (the field is called __e_termination and
there's a #define e_termination __e_termination if _XOPEN_SOURCE) and the lack
of a proper definition for and UTMPFILE. All those work without
_XOPEN_SOURCE.

No matter what  I've tried so far as workarounds, including just compiling
with -DSCM_RIGHTS=0x01 to escape the whole XOPEN_SOURCE mess, I end up with a
screen binary that exits with "Bad tty '/dev/ttyq0'"

screen 4.0.3 works without any patches at all.




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?42524>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]