readobj.c - scc - simple c99 compiler
 (HTM) git clone git://git.simple-cc.org/scc
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
       readobj.c (352B)
       ---
            1 #include <stdio.h>
            2 
            3 #include <scc/mach.h>
            4 
            5 #include "libmach.h"
            6 
            7 #include "elf/fun.h"
            8 #include "coff32/fun.h"
            9 
           10 static int (*ops[NFORMATS])(Obj *, FILE *) = {
           11         [COFF32] = coff32read,
           12         [ELF] = elfread,
           13 };
           14 
           15 int
           16 readobj(Obj *obj, FILE *fp)
           17 {
           18         long off;
           19 
           20         if ((off = ftell(fp)) == EOF)
           21                 return -1;
           22         obj->pos = off;
           23 
           24         return (*ops[objfmt(obj)])(obj, fp);
           25 }