bugGNU Screen - Bugs: bug #42524, IRIX: build problems SCM_RIGHTS is...

 
 

bug #42524: IRIX: build problems SCM_RIGHTS is undefined / _XOPEN_SOURCE

Submitter:  None
Submitted:  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 Release:  4.2.1
Fixed Release:  None Planned Release:  None
Work Required:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Sun 08 Jun 2014 01:46:54 PM UTC, original submission:  

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.

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

Only logged-in users can vote.

 

No changes have been made to this item

Back to the top

Powered by Savane 3.13-3230.
Corresponding source code