MPS issue job001637

TitleLinux build fails.
Statusclosed
Priorityessential
Assigned userDavid Jones
OrganizationRavenbrook
DescriptionLinux build fails.

On the current master (change level 161906), I get:

 lii4gc: lii4gc/hi/lockli.o
 lii4gc: lii4gc/hi/thlii4.o
 lii4gc: lii4gc/hi/pthrdext.o
 cc1: warnings being treated as errors
 pthrdext.c: In function ‘PThreadextSuspend’:
 pthrdext.c:332: warning: implicit declaration of function
 ‘pthread_kill’
 pthrdext.c:332: warning: nested extern declaration of
 ‘pthread_kill’
 make[2]: *** [lii4gc/hi/pthrdext.o] Error 1
 make[1]: *** [target] Error 2
 make: *** [amcss] Error 2

(Yes, I really did get those funny characters, they appeared as
typographically correct open- and close- single quotes. The spacing
was wrong, naturally).

I'm running on Fedora Core 6 on a Parallels VM:

$ uname -a
Linux localhost.localdomain 2.6.18-1.2798.fc6 #1 SMP Mon Oct 16
14:54:20 EDT 2006 i686 i686 i386 GNU/Linux
AnalysisLooks like some #include or open-sesame magic I guess.

2007-03-09 DRJ:

Seems that more recent version of linux are more careful with their
open-sesame magic. In particular "#define _POSIX_C_SOURCE 1 " is not
sufficient to get a declaration of pthread_kill from <signal.h>.

Fixed by changing POSIX_C_SOURCE 1 to _XOPEN_SOURCE 500 (to claim that
we want X/Open XSH5 conformance).
How foundmanual_test
Observed in1.107.0
Created byDavid Jones
Created on2007-03-09 11:38:28
Last modified byDavid Jones
Last modified on2007-03-09 12:34:59
History2007-03-09 DRJ Created.
2007-03-09 DRJ Analysed. Fixed.

Fixes

Change Effect Date User Description
161907 closed 2007-03-09 12:31:34 David Jones MPS: Fixing linux builds. Recent Linuxes are more careful with their open-sesame magic.