[openbeos] Re: build problems

> "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx> wrote:
> > "Ingo Weinhold" <bonefish@xxxxxxxxxxxxxxx> wrote:
> > > > Failed to link iso9660 filesystem due to undefined reference to
> > > > '__builtin_delete'.
> > > Sounds like some C++ kernel thing. Axel?
> >
> > Yeah, sounds like that - but the iso9660 file system doesn't make use
> > of C++ at all.
> > And it builds over here; does anyone else have problems building it?
>
> Ah, no, it's the disk scanner module. As there isn't any need to build
> it until we can build it for our kernel, I've removed it from the
> build.
>

PS. What is a disk scanner module? I seem to find on the web site that it is
to detect which kind of file system you have, but that is not very clear to
me. For example the code to see which kind if FAT is (from official
microsoft documentation):

int DetermineFATType(struct BootSectorStruct* boot)
{
    unsigned long RootDirSectors, FatSize, TotalSectors, DataSector;
    unsigned long CountOfClusters;

    RootDirSectors = ((boot->NumberOfFiles * 32) +
                      (boot->BytesPerSector-1)) /
                      (boot->BytesPerSector);

    if (boot->SectorsPerFat != 0)
        FatSize = boot->SectorsPerFat;
    else
        FatSize = boot->fs.spc32.SectorsPerFat;

    if (boot->NumberOfSectors != 0)
       TotalSectors = boot->NumberOfSectors;
    else
       TotalSectors = boot->NumberOfSectors32;

    DataSector = TotalSectors -
                     (boot->ReservedSectors +
                          (boot->Fats * FatSize) +
                             RootDirSectors);

   CountOfClusters = DataSector / boot->SectorsPerCluster;

   if (CountOfClusters < 4085)
   {
      return FAT12;
   }
   else if (CountOfClusters < 65525L)
   {
      return FAT16;
   }
   else
   {
      return FAT32;
   }
}

But i do not know exactly if this is what you want.

Imre





Other related posts: