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

Re: Header files

"Scott Bambrough" <scottb@corelcomputer.com> wrote:

> Turbo Fredriksson wrote:
> > 
> > The header files we got on the netwinder... Where do they come from?
> > 
> > I am missing <sys/sem_buf.h> and <sys/sem.h> does not look like the one
> > on my i386...
> > 
> > --
> The header files come from the glibc-2.0.94.tar.gz distribution.  
> I had a quick glance at my RedHat i386 system and the NetWinder.

Oki dokey... How do one go about to fix problems that seems to originate
with the system header files?

When I built rpm, it started to complain about:

----- s n i p ----
gcc -I/home/turbo/src/Build/rpm-2.5.1 -I/home/turbo/src/Build/rpm-2.5.1 -g -O2
-I/usr/local/include -DHAVE_CONFIG_H -I/home/turbo/src/Build/rpm-2.5.1/lib -I/home/turbo/src/Build/rpm-2.5.1/misc   -c files.c -o files.o
In file included from files.c:3:
/usr/include/glob.h:95: parse error before `size_t'
/usr/include/glob.h:95: warning: no semicolon at end of struct or union
/usr/include/glob.h:97: parse error before `gl_offs'
/usr/include/glob.h:97: warning: data definition has no type or storage class
/usr/include/glob.h:107: parse error before `}'
/usr/include/glob.h:107: warning: data definition has no type or storage class
/usr/include/glob.h:119: parse error before `glob_t'
/usr/include/glob.h:122: parse error before `*'
files.c: In function `processBinaryFile':
files.c:705: `glob_t' undeclared (first use in this function)
files.c:705: (Each undeclared identifier is reported only once
files.c:705: for each function it appears in.)
files.c:705: parse error before `glob_result'
files.c:724: `glob_result' undeclared (first use in this function)
make[1]: *** [files.o] Error 1
make[1]: Leaving directory `/home/turbo/src/Build/rpm-2.5.1/build'
make: *** [build-stamp] Error 2
----- s n i p ----

And a easy fix for this, was to insert:

----- s n i p ----
/* Added by TURBO. Should'nt be here but... */
#ifndef size_t
# define size_t unsigned int
----- s n i p ----

Into the file '/usr/include/glob.h'... But this is ovisly not the correct
way, but since this is my first port... It shouldn't break anything though,
since the ifndef...

> It looks to me that on the i386 system, sys/sem.h has portable stuff 
> in it, while sys/sem_buf.h has system specific information.  On the
> NetWinder, in keeping with glibc philosophy, the system specific 
> stuff in sem_buf.h has been moved to bits/sem.h and the portable
> stuff is in sys/sem.h which includes <bits/sem.h>
> You only need to include <sys/sem.h>.

That's what the progs where doing (first few lines of 'build/files.c'):

----- s n i p -----
#include "config.h"
#ifdef HAVE_GLOB_H
#  include <glob.h>
#  include "misc-glob.h"
----- s n i p -----

I'll try to add

#ifndef _SYS_SEM_H
#  include <sys/sem.h>

just before the ifdef HAVE_GLOB_H...

 Turbo     __ _     Debian GNU     Unix _IS_ user friendly - it's just 
 ^^^^^    / /(_)_ __  _   ___  __  selective about who its friends are 
         / / | | '_ \| | | \ \/ /          papadoc.nocrew.org          
  _ /// / /__| | | | | |_| |>  <  Turbo Fredriksson    turbo@tripnet.se
  \\\/  \____/_|_| |_|\__,_/_/\_\ Surrey/B.C./Canada      (604)572-3523
Debian Certified Linux Developer  PGP#788CD1A9   www5.tripnet.se/~turbo
------- PGP:  B7 92 93 0E 06 94 D6 22  98 1F 0B 5B FE 33 A1 0B --------
SDI spy Marxist munitions AK-47 security Honduras cracking Mossad
World Trade Center cryptographic South Africa Nazi DES KGB

Attachment: pgptnhWGBnWLd.pgp
Description: PGP signature

Reply to: