2003/09/07 04:46:18
[org.ibex.core.git] / upstream / darwin-linker / patches / libstuff.patch
index c6c3ec7..b0dcb8f 100644 (file)
@@ -1,7 +1,7 @@
-Only in libstuff: CVS
-diff -ubr libstuff/Makefile libstuff/Makefile
+Only in libstuff/: CVS
+diff -rub libstuff/Makefile libstuff/Makefile
 --- libstuff/Makefile  Fri Sep  6 18:27:55 2002
-+++ libstuff/Makefile  Mon Aug 25 21:54:30 2003
++++ libstuff/Makefile  Sat Sep  6 20:12:21 2003
 @@ -1,7 +1,7 @@
  RC_OS = macos
  OFLAG = -O
@@ -25,7 +25,7 @@ diff -ubr libstuff/Makefile libstuff/Makefile
  else
 -  CFLAGS = $(OFLAG) -g -I$(SRCROOT)/../include -Wall -Wno-precomp $(X_CFLAGS)
 +  ifeq "Linux" "$(shell uname)"
-+    CFLAGS = $(OFLAG) -g -I$(SRCROOT)/../include -Wall $(X_CFLAGS) -D__ppc__ -I/usr/include -I../../../macosx-include
++    CFLAGS = $(OFLAG) -g -I$(SRCROOT)/../include -Wall $(X_CFLAGS) -D__LITTLE_ENDIAN__ -U__BIG_ENDIAN__ -D__ppc__ -I/usr/include -I../../../macosx-include
 +  else
 +    CFLAGS = $(OFLAG) -g -I$(SRCROOT)/../include -Wall $(X_CFLAGS)
 +  endif
@@ -88,7 +88,7 @@ diff -ubr libstuff/Makefile libstuff/Makefile
  
  ifeq "NO" "$(USE_DEPENDENCY_FILE)"
  .c.o:
-diff -ubr libstuff/SymLoc.c libstuff/SymLoc.c
+diff -rub libstuff/SymLoc.c libstuff/SymLoc.c
 --- libstuff/SymLoc.c  Fri Sep  6 18:27:55 2002
 +++ libstuff/SymLoc.c  Mon Aug 25 13:17:40 2003
 @@ -1,15 +1,15 @@
@@ -124,7 +124,7 @@ diff -ubr libstuff/SymLoc.c libstuff/SymLoc.c
  
      // read DylibProjects entries
      *buf = '\0';
-diff -ubr libstuff/arch.c libstuff/arch.c
+diff -rub libstuff/arch.c libstuff/arch.c
 --- libstuff/arch.c    Tue Jan 14 23:35:27 2003
 +++ libstuff/arch.c    Mon Aug 25 13:17:40 2003
 @@ -60,11 +60,13 @@
@@ -152,7 +152,7 @@ diff -ubr libstuff/arch.c libstuff/arch.c
            return(0x1000); /* 4K */
        else
            return(0x2000); /* 8K */
-diff -ubr libstuff/best_arch.c libstuff/best_arch.c
+diff -rub libstuff/best_arch.c libstuff/best_arch.c
 --- libstuff/best_arch.c       Tue Jan 14 23:35:27 2003
 +++ libstuff/best_arch.c       Mon Aug 25 13:17:40 2003
 @@ -44,7 +44,8 @@
@@ -188,7 +188,7 @@ diff -ubr libstuff/best_arch.c libstuff/best_arch.c
                for(i = 0; i < nfat_archs; i++){
                    if(fat_archs[i].cputype != cputype)
                        continue;
-diff -ubr libstuff/bytesex.c libstuff/bytesex.c
+diff -rub libstuff/bytesex.c libstuff/bytesex.c
 --- libstuff/bytesex.c Fri Sep  6 18:27:56 2002
 +++ libstuff/bytesex.c Mon Aug 25 13:17:40 2003
 @@ -25,13 +25,13 @@
@@ -212,7 +212,7 @@ diff -ubr libstuff/bytesex.c libstuff/bytesex.c
  #include <mach-o/nlist.h>
  #include <mach-o/reloc.h>
  #include <mach-o/ranlib.h>
-diff -ubr libstuff/checkout.c libstuff/checkout.c
+diff -rub libstuff/checkout.c libstuff/checkout.c
 --- libstuff/checkout.c        Fri Sep  6 18:27:57 2002
 +++ libstuff/checkout.c        Mon Aug 25 13:17:40 2003
 @@ -132,9 +132,11 @@
@@ -251,7 +251,7 @@ diff -ubr libstuff/checkout.c libstuff/checkout.c
                 *      string table
                 *              strings for external symbols
                 *              strings for local symbols
-diff -ubr libstuff/crc32.c libstuff/crc32.c
+diff -rub libstuff/crc32.c libstuff/crc32.c
 --- libstuff/crc32.c   Fri Sep  6 18:27:57 2002
 +++ libstuff/crc32.c   Mon Aug 25 13:19:21 2003
 @@ -35,6 +35,12 @@
@@ -267,7 +267,7 @@ diff -ubr libstuff/crc32.c libstuff/crc32.c
  static const u_int32_t crctab[] = {
        0x0,
        0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b,
-diff -ubr libstuff/dylib_roots.c libstuff/dylib_roots.c
+diff -rub libstuff/dylib_roots.c libstuff/dylib_roots.c
 --- libstuff/dylib_roots.c     Fri Sep  6 18:27:58 2002
 +++ libstuff/dylib_roots.c     Mon Aug 25 13:17:40 2003
 @@ -21,7 +21,7 @@
@@ -344,8 +344,9 @@ diff -ubr libstuff/dylib_roots.c libstuff/dylib_roots.c
                return;
            }
            lc = (struct load_command *)((char *)lc + lc->cmdsize);
-Only in libstuff: fake-mach.c
-diff -ubr libstuff/get_arch_from_host.c libstuff/get_arch_from_host.c
+Only in libstuff/: dynamic_obj
+Only in libstuff/: fake-mach.c
+diff -rub libstuff/get_arch_from_host.c libstuff/get_arch_from_host.c
 --- libstuff/get_arch_from_host.c      Tue Jan 14 23:35:27 2003
 +++ libstuff/get_arch_from_host.c      Mon Aug 25 13:17:40 2003
 @@ -181,6 +181,14 @@
@@ -363,8 +364,11 @@ diff -ubr libstuff/get_arch_from_host.c libstuff/get_arch_from_host.c
            default:
                if(family_arch_flag != NULL){
                      family_arch_flag->name = "ppc";
-Only in libstuff: gpul_notes
-diff -ubr libstuff/notes libstuff/notes
+Only in libstuff/: gpul_notes
+Only in libstuff/: libstuff.a
+Only in libstuff/: libstuff.dylib
+Only in libstuff/: libstuff_p.a
+diff -rub libstuff/notes libstuff/notes
 --- libstuff/notes     Tue Jan 14 23:35:27 2003
 +++ libstuff/notes     Mon Aug 25 12:12:33 2003
 @@ -5,6 +5,69 @@
@@ -437,10 +441,17 @@ diff -ubr libstuff/notes libstuff/notes
  Changes for the 5.11 release (the cctools-440 release):
  - Fixed the warnings about extra tokens at end of #endif directive in ofile.c
    (Radar bug #3072042).
-diff -ubr libstuff/ofile.c libstuff/ofile.c
+diff -rub libstuff/ofile.c libstuff/ofile.c
 --- libstuff/ofile.c   Tue Jan 14 23:35:27 2003
-+++ libstuff/ofile.c   Mon Aug 25 23:49:59 2003
-@@ -27,6 +27,7 @@
++++ libstuff/ofile.c   Tue Sep  2 20:15:34 2003
+@@ -21,12 +21,14 @@
+  * 
+  * @APPLE_LICENSE_HEADER_END@
+  */
++#include "machine/endian.h"
+ #ifdef SHLIB
+ #include "shlib.h"
+ #endif
  #include <libc.h>
  #include <mach/mach.h>
  #include "stuff/openstep_mach.h"
@@ -448,7 +459,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
  #include <stdarg.h>
  #include <limits.h>
  #include <errno.h>
-@@ -35,12 +36,12 @@
+@@ -35,12 +37,12 @@
  #include <sys/file.h>
  #include <mach-o/fat.h>
  #include <mach-o/loader.h>
@@ -467,7 +478,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
  #include <mach-o/nlist.h>
  #include <mach-o/reloc.h>
  #include "stuff/bool.h"
-@@ -91,6 +92,12 @@
+@@ -91,6 +93,12 @@
      unsigned long *member_name_size);
  static enum check_type check_Mach_O(
      struct ofile *ofile);
@@ -480,7 +491,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
  
  #ifndef OFI
  /*
-@@ -229,7 +236,8 @@
+@@ -229,7 +237,8 @@
                            else if(process_non_objects == TRUE ||
                                    ofile.arch_type == OFILE_Mach_O){
                                if(ofile.arch_type == OFILE_Mach_O &&
@@ -490,7 +501,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                                    if(dylib_flat == TRUE){
                                        processor(&ofile, arch_name, cookie);
                                    }
-@@ -349,7 +357,8 @@
+@@ -349,7 +358,8 @@
                        else if(process_non_objects == TRUE ||
                                ofile.arch_type == OFILE_Mach_O){
                            if(ofile.arch_type == OFILE_Mach_O &&
@@ -500,7 +511,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                                if(dylib_flat == TRUE){
                                    processor(&ofile, NULL, cookie);
                                }
-@@ -445,7 +454,8 @@
+@@ -445,7 +455,8 @@
                else if(process_non_objects == TRUE ||
                        ofile.arch_type == OFILE_Mach_O){
                    if(ofile.arch_type == OFILE_Mach_O &&
@@ -510,7 +521,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                        if(dylib_flat == TRUE){
                            processor(&ofile, ofile.arch_flag.name, cookie);
                        }
-@@ -557,9 +567,9 @@
+@@ -557,9 +568,9 @@
                    }
  #ifdef OTOOL
                    if(ofile.mh->magic == SWAP_LONG(MH_MAGIC)){
@@ -522,7 +533,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                                arch_flags[i].cpusubtype ||
                            family == TRUE)){
                            arch_found = TRUE;
-@@ -580,7 +590,8 @@
+@@ -580,7 +591,8 @@
                if(arch_found == FALSE)
                    return;
            }
@@ -532,7 +543,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                if(dylib_flat == TRUE){
                    processor(&ofile, NULL, cookie);
                }
-@@ -658,19 +669,15 @@
+@@ -658,19 +670,15 @@
  {
      int fd;
      struct stat stat_buf;
@@ -554,7 +565,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
  #ifdef OFI
            return(NSObjectFileImageAccess);
  #else
-@@ -700,6 +707,35 @@
+@@ -700,6 +708,35 @@
            printf("Modification time = %ld\n", (long int)stat_buf.st_mtime);
  #endif /* OTOOL */
  
@@ -590,7 +601,16 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
        /* fill in the start of the ofile structure */
        ofile->file_name = savestr(file_name);
        if(ofile->file_name == NULL)
-@@ -1176,7 +1212,7 @@
+@@ -939,7 +976,7 @@
+               }
+           }
+       }
+-      /* see if this file is Mach-O file */
++
+       else if(size >= sizeof(struct mach_header) &&
+               (magic == MH_MAGIC || magic == SWAP_LONG(MH_MAGIC))){
+           ofile->file_type = OFILE_Mach_O;
+@@ -1176,7 +1213,7 @@
        }
  
  #ifdef OTOOL
@@ -599,7 +619,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            error("fat file: %s offset to architecture %s extends past end "
                  "of file", ofile->file_name, ofile->arch_flag.name);
            return(FALSE);
-@@ -1327,7 +1363,7 @@
+@@ -1327,7 +1364,7 @@
            return(FALSE);
        }
  #ifdef OTOOL
@@ -608,7 +628,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            archive_error(ofile, "offset to first member extends past the end "
                          "of the file");
            return(FALSE);
-@@ -1832,7 +1868,7 @@
+@@ -1832,7 +1869,7 @@
  
  /*
   * ofile_first_module() set up the ofile structure (the dylib_module field)
@@ -617,7 +637,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
   */
  __private_extern__
  enum bool
-@@ -1856,7 +1892,8 @@
+@@ -1856,7 +1893,8 @@
  
        if(ofile->file_type == OFILE_FAT){
            if(ofile->arch_type != OFILE_Mach_O &&
@@ -627,7 +647,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                error("ofile_first_module() called on fat file: %s with a "
                      "non-MH_DYLIB architecture or no architecture selected\n",
                      ofile->file_name);
-@@ -1864,7 +1901,8 @@
+@@ -1864,7 +1902,8 @@
            }
        }
        else if(ofile->arch_type != OFILE_Mach_O &&
@@ -637,7 +657,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            error("ofile_first_module() called and file type of %s is "
                  "non-MH_DYLIB\n", ofile->file_name);
            return(FALSE);
-@@ -1902,20 +1940,22 @@
+@@ -1902,20 +1941,22 @@
        m = *ofile->dylib_module;
        if(swapped)
            swap_dylib_module(&m, 1, host_byte_sex);
@@ -662,7 +682,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
      struct symtab_command *st;
      struct dysymtab_command *dyst;
      struct load_command *lc;
-@@ -1926,7 +1966,8 @@
+@@ -1926,7 +1967,8 @@
  
        if(ofile->file_type == OFILE_FAT){
            if(ofile->arch_type != OFILE_Mach_O &&
@@ -672,7 +692,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                error("ofile_next_module() called on fat file: %s with a "
                      "non-MH_DYLIB architecture or no architecture selected\n",
                      ofile->file_name);
-@@ -1934,7 +1975,8 @@
+@@ -1934,7 +1976,8 @@
            }
        }
        else if(ofile->arch_type != OFILE_Mach_O &&
@@ -682,7 +702,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            error("ofile_next_module() called and file type of %s is "
                  "non-MH_DYLIB\n", ofile->file_name);
            return(FALSE);
-@@ -1959,7 +2001,8 @@
+@@ -1959,7 +2002,8 @@
            return(FALSE);
        }
  
@@ -692,7 +712,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            return(FALSE);
  
        ofile->dylib_module++;
-@@ -1969,13 +2012,17 @@
+@@ -1969,13 +2013,17 @@
        m = *ofile->dylib_module;
        if(swapped)
            swap_dylib_module(&m, 1, host_byte_sex);
@@ -711,7 +731,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
   */
  __private_extern__
  enum bool
-@@ -2000,7 +2047,8 @@
+@@ -2000,7 +2048,8 @@
  
        if(ofile->file_type == OFILE_FAT){
            if(ofile->arch_type != OFILE_Mach_O &&
@@ -721,7 +741,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                error("ofile_specific_module() called on fat file: %s with a "
                      "non-MH_DYLIB architecture or no architecture selected\n",
                      ofile->file_name);
-@@ -2008,7 +2056,8 @@
+@@ -2008,7 +2057,8 @@
            }
        }
        else if(ofile->arch_type != OFILE_Mach_O &&
@@ -731,7 +751,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
            error("ofile_specific_module() called and file type of %s is "
                  "non-MH_DYLIB\n", ofile->file_name);
            return(FALSE);
-@@ -2047,8 +2096,10 @@
+@@ -2047,8 +2097,10 @@
            m = *p;
            if(swapped)
                swap_dylib_module(&m, 1, host_byte_sex);
@@ -743,7 +763,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                ofile->dylib_module_name = strings + m.module_name;
                return(TRUE);
            }
-@@ -2520,10 +2571,12 @@
+@@ -2520,10 +2572,12 @@
            return(CHECK_BAD);
        }
        if(ofile->file_type == OFILE_FAT){
@@ -757,7 +777,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
        }
        /*
         * Make a pass through the load commands checking them to the level
-@@ -3595,55 +3648,73 @@
+@@ -3595,55 +3649,73 @@
            }
        }
        if(st == NULL){
@@ -840,7 +860,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
                }
            }
        }
-@@ -3655,6 +3726,109 @@
+@@ -3655,6 +3727,109 @@
        }
  
        /* looks good return ok */
@@ -950,7 +970,7 @@ diff -ubr libstuff/ofile.c libstuff/ofile.c
        return(CHECK_GOOD);
  #endif /* OTOOL */
  }
-diff -ubr libstuff/ofile_get_word.c libstuff/ofile_get_word.c
+diff -rub libstuff/ofile_get_word.c libstuff/ofile_get_word.c
 --- libstuff/ofile_get_word.c  Fri Sep  6 18:28:00 2002
 +++ libstuff/ofile_get_word.c  Mon Aug 25 13:17:40 2003
 @@ -34,7 +34,7 @@
@@ -962,7 +982,7 @@ diff -ubr libstuff/ofile_get_word.c libstuff/ofile_get_word.c
      struct load_command *lc;
      struct segment_command *sg;
      struct section *s;
-diff -ubr libstuff/print.c libstuff/print.c
+diff -rub libstuff/print.c libstuff/print.c
 --- libstuff/print.c   Tue Apr 30 00:37:20 2002
 +++ libstuff/print.c   Mon Aug 25 13:17:40 2003
 @@ -21,8 +21,8 @@
@@ -976,7 +996,8 @@ diff -ubr libstuff/print.c libstuff/print.c
  
  /*
   * All printing of all messages for ofile functions goes through this function.
-diff -ubr libstuff/reloc.c libstuff/reloc.c
+Only in libstuff/: profile_obj
+diff -rub libstuff/reloc.c libstuff/reloc.c
 --- libstuff/reloc.c   Tue Jan 14 23:35:27 2003
 +++ libstuff/reloc.c   Mon Aug 25 13:17:40 2003
 @@ -106,6 +106,7 @@
@@ -995,7 +1016,7 @@ diff -ubr libstuff/reloc.c libstuff/reloc.c
               r_type == PPC_RELOC_HA16_SECTDIFF)
                return(TRUE);
            break;
-diff -ubr libstuff/round.c libstuff/round.c
+diff -rub libstuff/round.c libstuff/round.c
 --- libstuff/round.c   Tue Apr 30 00:37:20 2002
 +++ libstuff/round.c   Mon Aug 25 13:17:40 2003
 @@ -26,9 +26,9 @@
@@ -1010,7 +1031,9 @@ diff -ubr libstuff/round.c libstuff/round.c
  unsigned long r)
  {
        r--;
-diff -ubr libstuff/swap_headers.c libstuff/swap_headers.c
+Only in libstuff/: shlib_obj
+Only in libstuff/: static_obj
+diff -rub libstuff/swap_headers.c libstuff/swap_headers.c
 --- libstuff/swap_headers.c    Tue Jan 14 23:35:27 2003
 +++ libstuff/swap_headers.c    Mon Aug 25 13:17:40 2003
 @@ -22,13 +22,13 @@
@@ -1034,8 +1057,8 @@ diff -ubr libstuff/swap_headers.c libstuff/swap_headers.c
  #include "stuff/bool.h"
  #include "stuff/bytesex.h"
  #include "stuff/errors.h"
-Only in libstuff: symbol_list.c
-diff -ubr libstuff/writeout.c libstuff/writeout.c
+Only in libstuff/: symbol_list.c
+diff -rub libstuff/writeout.c libstuff/writeout.c
 --- libstuff/writeout.c        Fri Sep  6 18:28:00 2002
 +++ libstuff/writeout.c        Mon Aug 25 13:17:40 2003
 @@ -511,7 +511,7 @@