When I build 5.10.0, I don't have this problem.  In config.h, I have:

#define HAS_UNION_SEMUN /**/

Did you run Configure and does your config.h define HAS_UNION_SEMUN?
--------------------------------------------------------------------------
Edward Moy
Apple Inc.
[EMAIL PROTECTED]

On Mar 5, 2008, at 10:20 AM, snowcrash+perl wrote:

i'm building perl 5.10.0 on

        Darwin Kernel Version 9.2.0: Tue Feb  5 16:15:19 PST 2008;
root:xnu-1228.3.13~1/RELEASE_PPC
        powerpc-apple-darwin9-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5531)


currently,

        make

dies @ "redef of 'union semun'"


        cd /build/perl-5.10.0
        make
        ...
        In file included from miniperlmain.c:36:
        perl.h:5431: error: redefinition of 'union semun'
        make: *** [miniperlmain.o] Error 1


looking @ perl.h:5427
...
#ifdef HAS_SEM
#   include <sys/ipc.h>
#   include <sys/sem.h>
#   ifndef HAS_UNION_SEMUN  /* Provide the union semun. */
   union semun {
   int     val;
   struct semid_ds *buf;
   unsigned short  *array;
   };
#   endif
#   ifdef USE_SEMCTL_SEMUN
#   ifdef IRIX32_SEMUN_BROKEN_BY_GCC
           union gccbug_semun {
       int             val;
       struct semid_ds *buf;
       unsigned short  *array;
       char            __dummy[5];
       };
#           define semun gccbug_semun
#   endif
#       define Semctl(id, num, cmd, semun) semctl(id, num, cmd, semun)
#   else
#       ifdef USE_SEMCTL_SEMID_DS
#           ifdef EXTRA_F_IN_SEMUN_BUF
#               define Semctl(id, num, cmd, semun) semctl(id, num,
cmd, semun.buff)
#           else
#               define Semctl(id, num, cmd, semun) semctl(id, num,
cmd, semun.buf)
#           endif
#       endif
#   endif
#endif
...


it looks like a HAS_UNION_SEMUN or HAS_SEM needs to be undef'd?

i don't see this issue w/ 5.8.8, so it might be perl-src ...

before I blindly undef/def symbols, can anyone comment/hint on this?

thanks.


Reply via email to