* mh-apollo68: remove unused HDEFINES setting.
[deliverable/binutils-gdb.git] / bfd / coff-stgo32.c
index 45e7d62795af989755942c8793ebfcfd0e34fed3..5d867ea40b923e7fb7552934278fcd34126e215c 100644 (file)
@@ -1,5 +1,5 @@
-/* BFD back-end for Intel 386 COFF files (go32 variant with a stub).
-   Copyright 1997, 1998, 1999 Free Software Foundation, Inc.
+/* BFD back-end for Intel 386 COFF files (DJGPP variant with a stub).
+   Copyright 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
    Written by Robert Hoehne.
 
    This file is part of BFD, the Binary File Descriptor library.
 #define COFF_GO32_EXE
 #define COFF_LONG_SECTION_NAMES
 #define COFF_SUPPORT_GNU_LINKONCE
+#define COFF_LONG_FILENAMES
 
 #define COFF_SECTION_ALIGNMENT_ENTRIES \
 { COFF_SECTION_NAME_EXACT_MATCH (".data"), \
   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 4 }, \
 { COFF_SECTION_NAME_EXACT_MATCH (".text"), \
   COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 4 }, \
-{ COFF_SECTION_NAME_EXACT_MATCH (".bss"), \
-  COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 4 }
+{ COFF_SECTION_NAME_PARTIAL_MATCH (".debug"), \
+  COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }, \
+{ COFF_SECTION_NAME_PARTIAL_MATCH (".gnu.linkonce.wi"), \
+  COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }
 
 #include "bfd.h"
 
@@ -111,7 +114,7 @@ static boolean
 
 /* This macro is used, because I cannot assume the endianess of the
    host system */
-#define _H(index) (bfd_h_get_16(abfd, (bfd_byte *)(header+index*2)))
+#define _H(index) (H_GET_16 (abfd, (header+index*2)))
 
 /* These bytes are a 2048-byte DOS executable, which loads the COFF
    image into memory and then runs it. It is called 'stub' */
@@ -146,7 +149,7 @@ adjust_filehdr_in_post  (abfd, src, dst)
   ADJUST_VAL (filehdr_dst->f_symptr, STUBSIZE);
 
   /* Save now the stub to be used later */
-  bfd_coff_go32stub (abfd) = (PTR) bfd_alloc (abfd, STUBSIZE);
+  bfd_coff_go32stub (abfd) = (PTR) bfd_alloc (abfd, (bfd_size_type) STUBSIZE);
 
   /* Since this function returns no status, I do not set here
      any bfd_error_...
@@ -309,7 +312,8 @@ create_go32_stub (abfd)
       int f;
       unsigned char header[10];
       char magic[8];
-      unsigned long coff_start, exe_start;
+      unsigned long coff_start;
+      long exe_start;
 
       /* Check at first the environment variable $(GO32STUB) */
       stub = getenv ("GO32STUB");
@@ -351,7 +355,7 @@ create_go32_stub (abfd)
          goto stub_end;
        }
       exe_start = _H (4) * 16;
-      if ((unsigned long) lseek (f, exe_start, SEEK_SET) != exe_start)
+      if ((long) lseek (f, exe_start, SEEK_SET) != exe_start)
        {
          close (f);
          goto stub_end;
@@ -367,7 +371,8 @@ create_go32_stub (abfd)
          goto stub_end;
        }
       /* Now we found a correct stub (hopefully) */
-      bfd_coff_go32stub (abfd) = (PTR) bfd_alloc (abfd, coff_start);
+      bfd_coff_go32stub (abfd)
+       = (PTR) bfd_alloc (abfd, (bfd_size_type) coff_start);
       if (bfd_coff_go32stub (abfd) == NULL)
        {
          close (f);
@@ -387,7 +392,8 @@ stub_end:
      stub */
   if (bfd_coff_go32stub (abfd) == NULL)
     {
-      bfd_coff_go32stub (abfd) = (PTR) bfd_alloc (abfd, STUBSIZE);
+      bfd_coff_go32stub (abfd)
+       = (PTR) bfd_alloc (abfd, (bfd_size_type) STUBSIZE);
       if (bfd_coff_go32stub (abfd) == NULL)
        {
          return;
This page took 0.025656 seconds and 4 git commands to generate.