Annotation of binutils/ChangeLog, revision 1.1.1.3

1.1.1.3 ! root        1: Fri Nov  3 15:18:15 EST 1989 Jay Fenlason ([email protected])
        !             2: 
        !             3:        * nm.c (main) make long_options static so it can be compiled with cc.
        !             4:        * strip.c (main) ditto.
        !             5: 
        !             6: Thu Oct 26 12:28:33 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !             7: 
        !             8:        * Makefile (install): Supply missing `done'.
        !             9: 
        !            10: Tue Oct 17 12:50:46 1989  Mike Haertel  (mike at wheat-chex)
        !            11: 
        !            12:        * ld.c (enter_file_symbols): ignore symbols of type
        !            13:        N_SETV | N_EXT.  These shouldn't be here at all should
        !            14:        they?
        !            15: 
        !            16: Mon Oct 16 16:53:03 1989  Joseph Arceneaux  (jla at apple-gunkies.ai.mit.edu)
        !            17: 
        !            18:        * ld.c (process_subentry): New function called from
        !            19:        linear_library.
        !            20: 
        !            21: Fri Oct  6 10:46:40 1989  Jim Kingdon  (kingdon at hobbes.ai.mit.edu)
        !            22: 
        !            23:        * gprof.c [!HAVE_VPRINTF]: Put in v{f,s}printf emulations.
        !            24: 
        !            25: Mon Oct  2 17:20:42 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !            26: 
        !            27:        * ld.c [sequent] (N_TXTADDR, N_DATADDR): Define these macros.
        !            28:        [sequent] (INITIALIZE_HEADER): Define this same as for i386.
        !            29:        (RELOC_MEMORY_SUB_P): New customization macro.
        !            30:        Define as 0 on sun 4.  Define as 0 for defaults.
        !            31:        [sequent] (RELOC_* macros): Definitions for sequent.
        !            32:        (decode_command, digest_symbols): Handle case where NMAGIC is undefined.
        !            33:        (enter_global_ref) [sequent]: Handle special N_SHUNDF code.
        !            34:        (digest_symbols, write_symbols) [sequent]: Adjust outheader.a_text.
        !            35:        (perform_relocation): Handle RELOC_MEMORY_SUB_P like ..._ADD_P.
        !            36:        (symtab_init) [sequent]: Define symbol `_387_flt' w/ value 0.
        !            37: 
        !            38: Fri Sep 22 11:06:25 EDT 1989   [email protected]
        !            39: 
        !            40:        * gprof.c (main) Installed Joy's code for using the long-option names.
        !            41: 
        !            42: Thu Sep 21 03:24:36 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !            43: 
        !            44:        * ld.c (symtab_init) [sun]: Define __DYNAMIC as 0.
        !            45:        (perform_relocation) [RELOC_ADD_EXTRA]:
        !            46:        Special handling for relocatable_output case.
        !            47:        (read_file_relocation): Fix error message typos.
        !            48: 
        !            49: Mon Sep 18 14:40:40 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !            50: 
        !            51:        * ld.c (digest_symbols): Pad data and bss to 8 byte boundary.
        !            52: 
        !            53: Fri Sep 15 16:42:33 1989  Roland McGrath  (mcgrath at paris.Berkeley.EDU)
        !            54: 
        !            55:        * a.out.gnu.h [sony]: Defined SEGMENT_SIZE as 0x2000.
        !            56: 
        !            57:        * Makefile (ranlib): Include getopt in the link.
        !            58:        (objdump): New rule.
        !            59:        (install): New rule.
        !            60: 
        !            61: Fri Sep  1 01:32:01 1989  Roland McGrath  (mcgrath at saffron.Berkeley.EDU)
        !            62: 
        !            63:        * ranlib.c: Added copyright notice and license info.
        !            64: 
        !            65: Thu Aug 24 14:33:48 1989  Randy Smith  (randy at hobbes.ai.mit.edu)
        !            66: 
        !            67:        * ld.c (do_file_warnings): Don't print out multiple definition
        !            68:        warnings at references.
        !            69: 
        !            70: Mon Aug 21 20:19:08 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !            71: 
        !            72:        * ar.c (make_new_symdefs): Abort if MAPELT->info.name is nil.
        !            73:        (update_symdefs): In the loop that calls make_new_symdefs, reject
        !            74:        deleted members (i.e., TAIL->info.name == 0).
        !            75: 
        !            76:        * ar.c (make_new_symdefs): Return if we fail reading the header or the
        !            77:        magic number is bad.
        !            78: 
        !            79:        * ar.c (make_new_symdefs): Check for ridiculous string table offsets.
        !            80: 
        !            81:        * ranlib.c (main): If the child ar exits with a signal, print the
        !            82:        signal that killed it.
        !            83: 
        !            84:        * ar.c (make_new_symdefs): Check for a ridiculous string table size.
        !            85: 
        !            86:        * ar.c (write_archive): When fixing up symdefs, use each member's
        !            87:        new_offset rather than data_offset.
        !            88: 
        !            89:        * ar.c (update_symdefs): When the old archive's string table is too
        !            90:        small, die, don't just bitch.
        !            91: 
        !            92:        * ar.c (update_symdefs): Don't decrement num_old_symdefs when deleting
        !            93:        symdefs of deleted members.  After compactifying old symdefs, decrease
        !            94:        num_old_symdefs as necessary.
        !            95: 
        !            96:        * ar.c (update_symdefs): When removing symdefs of deleted members,
        !            97:        compare the symdef offsets to the mapelt's data offset, not its header
        !            98:        offset.
        !            99: 
        !           100: Sat Aug 19 08:07:26 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           101: 
        !           102:        * ar.c (header_from_map): Print correct message when truncating.
        !           103: 
        !           104:        * ar.c (find_mapelt_noerror, header_from_map): Truncate to 15 chars,
        !           105:        not 16.
        !           106: 
        !           107:        * ranlib.c (main): Don't do the first ar run an infinite number of
        !           108:        times.  One will suffice.
        !           109: 
        !           110:        * ranlib.c (main): Under -v, echo the ar command before running it.
        !           111: 
        !           112:        * ar.c (ignore_symdef): New variable.  If nonzero, only do symdef
        !           113:        processing if the `s' option is given.
        !           114:        (main): If one of the members given on the command line is __.SYMDEF,
        !           115:        set ignore_symdef.
        !           116:        (scan): If ignore_symdef is nonzero, don't set symdef_exists.
        !           117: 
        !           118:        * ar.c (find_mapelt_noerror): A mapelt matches NAME if the names are
        !           119:        the same for 14 characters and either both end in ".o", or they are the
        !           120:        same for as many more characters as they both have (i.e., the longer
        !           121:        name is truncated to the length of the shorter name for the
        !           122:        comparison).
        !           123: 
        !           124:        * ar.c (update_symdefs): When correcting a bad string table size,
        !           125:        correct the size of the __.SYMDEF member as well.
        !           126: 
        !           127:        * ar.c (update_symdefs): Keep track of the space in the string table
        !           128:        accounted for by deleted members.  If the old archive's string table
        !           129:        size was too big, correct it; if it was too small, die.
        !           130: 
        !           131: Tue Aug 15 00:54:37 1989  Roland McGrath  (roland at apple-gunkies.ai.mit.edu)
        !           132: 
        !           133:        * ranlib.c (main): Use getopt, and accept new `-v' option, which means
        !           134:        to pass `v' to ar.  Use vfork instead of fork.  Look at the status of
        !           135:        the children, and exit if it's nonzero.  Also added error checking on
        !           136:        several calls.
        !           137: 
        !           138:        * ar.c (write_archive): Fully initialize the new mapelt for __.SYMDEF.
        !           139: 
        !           140: Sun Aug        13 00:01:27 1989  Joy Kendall     (jak at hobbes.ai.mit.edu)
        !           141: 
        !           142:        * strip.c, nm.c, objdump.c:  Installed versions with long
        !           143:        named options available, i.e., getopt substituted with 
        !           144:        getopt_long.
        !           145: 
        !           146:        * Makefile: changed GNU_GETOPT to GNU_GETOPT_LONG (need to
        !           147:        make sure I did this right)
        !           148: 
        !           149: Wed Aug  9 00:24:34 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           150: 
        !           151:        * ar.c (write_archive): When rewriting the symdef member, seek to its
        !           152:        header offset, not its data offset.
        !           153: 
        !           154:        * ar.c (header_from_map): New function to convert a `struct mapelt' to
        !           155:        an ar header.
        !           156: 
        !           157:        * ar.c: Miscellaneous cosmetic clean-ups.
        !           158: 
        !           159:        * ar.c (copy_out_member): If truncating the member name, and the
        !           160:        desired name (which is too long) ends in ".o", make the written member
        !           161:        name end in ".o" as well.
        !           162: 
        !           163: Tue Aug  8 16:26:49 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           164: 
        !           165:        * ld.c (classify_arg): Added 'V' to the list of possible
        !           166:        argument having thingys.
        !           167: 
        !           168:        * ld.c (do_relocation_warnings, do_file_warnings): Changed
        !           169:        messages slightly and removed hack to allow N_WARNING name to
        !           170:        be a printf string taking stuff as arguments.
        !           171: 
        !           172: Mon Aug  7 16:27:04 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           173: 
        !           174:        * ld.c: Created set_element_prefixes (list of symbol name
        !           175:        prefixes to force symbols to be treated as set elements).
        !           176:        (main): Initialized to 0.
        !           177:        (decode_option): -V name recognized as defining a prefix.
        !           178:        (set_element_prefixed_p): New function.
        !           179:        (enter_file_symbols): Check every symbol to see if it has a
        !           180:        prefix; if so, change the type.
        !           181:        (subfile_wanted_p): A subfile isn't wanted if the symbol
        !           182:        definition indicated is a set element by prefix.
        !           183: 
        !           184:        * ld.c [N_WARNING]: Changed commenting.
        !           185: 
        !           186:        * ld.c (do_file_warnings): On the second pass for actual
        !           187:        warning symbols, warn only if it isn't a definition and it
        !           188:        isn't the reference used by the warning symbol itself.
        !           189: 
        !           190: Fri Aug  4 13:04:57 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           191: 
        !           192:        * ld.c: Remove the warning field from struct file entry.
        !           193:        (enter_file_symbols): Deal with N_WARNING symbols on a
        !           194:        per symbol basis instead of a per file basis.
        !           195:        (mark_flagged_symbols): Deleted.
        !           196:        (do_warnings): Don't call mark_flagged_symbols anymore.
        !           197: 
        !           198:        * ld.c: Improved commenting on new GNU symbols.
        !           199: 
        !           200:        * ld.c (subfile_wanted_p): Don't load in files for a set
        !           201:        element symbol definition.
        !           202: 
        !           203: Thu Aug  3 12:54:30 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           204: 
        !           205:        * ld.c (write_output): Checked return code on last chmod and
        !           206:        output error if there is one.
        !           207: 
        !           208: Wed Aug  2 13:26:16 1989  Randy Smith  (randy at hobbes.ai.mit.edu)
        !           209: 
        !           210:        * ld.c (enter_global_ref): Separate out cases of undefined
        !           211:        reference and defining it versus from stuff done whenever you
        !           212:        define a symbol.  Clean up assignment to sp->defined.
        !           213: 
        !           214: Tue Aug  1 23:12:07 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           215: 
        !           216:        * ld.c: Created count common_defined_global_count.
        !           217:        (main): Initialized to 0.
        !           218:        (symdef_library): Symbol is needed if it isn't defined OR it's
        !           219:        defined common.  Don't stop looking till we don't have any
        !           220:        more symbols defined as common.
        !           221:        (linear_library): Don't stop looking until we have no more
        !           222:        symbols defined as common.
        !           223:        (subfile_wanted_p): If a symbol is defined common, we want to
        !           224:        check for a real definition.  If it used to be undefined and
        !           225:        we've defined it by common, increment CDGC.
        !           226:        (enter_global_ref): If a symbol is defined common and it used
        !           227:        to be undefined, increment CDGC.  If it is defined for real
        !           228:        and it used to be defined common, decrement CDGC and zero
        !           229:        max_common_size (so we can tell that it isn't defined common
        !           230:        any more).  Rewrote logic to be cleaner.
        !           231: 
        !           232: Mon Jul 31 14:52:25 1989  Randy Smith  (randy at hobbes.ai.mit.edu)
        !           233: 
        !           234:        * ld.c (digest_symbols): Reverse the order of the set element
        !           235:        vector so that the elements will be in the order of the input
        !           236:        files to ld.
        !           237: 
        !           238: Mon Jul 31 00:19:05 1989  Roland McGrath  (roland at apple-gunkies.ai.mit.edu)
        !           239: 
        !           240:        * ld.c [sun && sparc]: Don't include alloca.h if !defined(__GNUC__).
        !           241: 
        !           242: Mon Jul 24 19:29:40 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           243: 
        !           244:        * ld.c (enter_global_ref): Produce a warning message and
        !           245:        rewrite not to be so dangerous if someone is clueless enough
        !           246:        to indirect a symbol to itself.
        !           247: 
        !           248: Fri Jul 14 04:04:19 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           249: 
        !           250:        * ar.c (write_archive): Don't zero out the count of old symdefs if we
        !           251:        just read some.
        !           252:        (update_symdefs): Don't copy symdefs onto themselves when compacting.
        !           253: 
        !           254: Wed Jul 12 16:16:36 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           255: 
        !           256:        * ar.c (write_archive): Use read_old_symdefs if the member is there.
        !           257:        (make_new_symdefs): Return if passed a deleted member.
        !           258: 
        !           259:        * ar.c (write_archive): Zero out the info of the new __.SYMDEF member
        !           260:        properly.
        !           261: 
        !           262: Mon Jul 10 22:16:08 1989  Randy Smith  (roland at hobbes.ai.mit.edu)
        !           263: 
        !           264:        * ld.c (enter_global_ref): Put the type of the nlist entry with the
        !           265:        strongest type into the "defined" field of the symbol.  Used this to
        !           266:        determine the first definition of a set element.
        !           267: 
        !           268: Wed Jul  5 17:29:27 1989  Randy Smith  (randy at apple-gunkies.ai.mit.edu)
        !           269: 
        !           270:        * ld.c (do_file_warnings): Find undefined references on second
        !           271:        passes. 
        !           272: 
        !           273: Fri Jun 30 03:32:50 1989  Roland McGrath  (roland at apple-gunkies.ai.mit.edu)
        !           274: 
        !           275:        * ar.c [__GNUC__]: Use __builtin_alloca.
        !           276:        [sparc]: Include <alloca.h>.
        !           277: 
        !           278:        * ar.c (copy_out_member): After writing the header, set the entry's
        !           279:        `data_offset' field to the current file position.
        !           280:        (write_archive): After copying out members, check for any whose data
        !           281:        offsets weren't known when the symdef member was written, fix up the
        !           282:        offsets, and rewrite the symdef member.
        !           283: 
        !           284: Thu Jun 29 21:29:35 1989  Roland McGrath  (roland at apple-gunkies.ai.mit.edu)
        !           285: 
        !           286:        * ar.c (main): Call exit (0), instead of running off the end.
        !           287: 
        !           288: Tue Jun 27 02:11:22 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           289: 
        !           290:        * ar.c (make_new_symdefs): Rewritten to correctly convert the namelist
        !           291:        to symdefs.
        !           292: 
        !           293:        * ar.c (replace_members): Write the archive if symdef_flag is true and
        !           294:        there is no symdef member.
        !           295: 
        !           296:        * Makefile: Added $(archpfx) where appropriate.
        !           297: 
        !           298:        * ld.c (symdef_library): When decode_library_subfile returns nil
        !           299:        (meaning it hit the end of the library archive), barf.
        !           300: 
        !           301: Mon Jun 26 17:41:38 1989  Randy Smith  (randy at hobbes.ai.mit.edu)
        !           302: 
        !           303:        * ld.c (do_warnings): Take out the blank line printed at the
        !           304:        end of the warning routine.
        !           305: 
        !           306:        * ld.c (do_file_warnings): When looking for multiple
        !           307:        definitions, don't print out references (things that are just
        !           308:        N_EXT).  
        !           309: 
        !           310: Sun Jun 25 15:17:42 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           311: 
        !           312:        * ar.c (requestedp): Removed unused function.
        !           313:        (find_mapelt): Use find_mapelt_noerror.
        !           314:        (find_mapelt_noerror): Compare only the first 16 chars of names.
        !           315:        (error): Accept more args.
        !           316:        (copy_out_member): Write a message if the member name is truncated.
        !           317: 
        !           318:        * GNUmakefile: Just include Makefile, rather than doing the silly
        !           319:        recursion bit.
        !           320: 
        !           321:        * ar.c (write_archive): Split unlocking and closing into new function
        !           322:        close_archive.
        !           323:        (replace_members): If nothing changed, don't write the archive!
        !           324: 
        !           325:        * ar.c: Only write old Unix style informational messages
        !           326:        (x - foo, a - bar, etc.).  1003.2 requires it (sigh).
        !           327: 
        !           328: Wed Jun 21 21:45:57 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           329: 
        !           330:        * ar.c (insert_in_map): Only write one message under -v.
        !           331:        (print_descr): Use puts instead of printf where applicable.
        !           332: 
        !           333:        * ar.c (copy_out_member): Don't say "copying ... to new archive" under
        !           334:        -v.  This amounts to listing the entire archive with each insertion.
        !           335: 
        !           336:        * Makefile (ranlib.o): Use $(bindir)/ar rather than `pwd`/ar.
        !           337: 
        !           338: Tue Jun 20 18:46:42 1989  Roland McGrath  (roland at hobbes.ai.mit.edu)
        !           339: 
        !           340:        * ar.c (main): The `u' flag implies the `r' operation.
        !           341: 
        !           342: Mon Jun 12 19:12:37 1989  Jay Fenlason  (hack at apple-gunkies.ai.mit.edu)
        !           343: 
        !           344:        * nm.c  Fixed #ifndef N_WARNING to actually compile correctly.
        !           345: 
        !           346:        * ld.c (N_TXTADDR, N_DATADDR): Changed #ifdef vax to
        !           347:        #if defined(vax) || defined(sony_news)
        !           348:        so that it'll compile on the Sony's.
        !           349: 
        !           350: Tue Jun  6 15:27:10 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           351: 
        !           352:        * ld.c (print_files_defining_symbol): Eliminated.
        !           353:        (main): Zero the first cmdline references after it is allocated.
        !           354:        (add_cmdline_ref): Make sure that we don't overwrite the end of the
        !           355:        array. 
        !           356: 
        !           357: Sun May 28 15:15:42 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           358: 
        !           359:        * nm.c (,print_one_symbol): Added code to handle N_WARNING.
        !           360: 
        !           361: Thu May 11 20:26:23 1989  Mike Haertel  (mike at apple-gunkies.ai.mit.edu)
        !           362: 
        !           363:        * ld.c (read_file_symbols): Use a struct exec instead of an int
        !           364:        for magic number checking.
        !           365:        * nm.c (do_one_file): Similar change.
        !           366:        * size.c (do_one_file): Similar change.
        !           367:        * strip.c (file_open): Similar change.  
        !           368: 
        !           369: Thu May 11 16:33:51 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !           370: 
        !           371:        * ar.c (update_symdefs): Detect null pointer in info.name.
        !           372: 
        !           373: Thu May  4 01:53:32 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !           374: 
        !           375:        * Makefile: Provide $(LIBS) when linking strip.
        !           376: 
        !           377: Mon May  1 16:40:27 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
        !           378: 
        !           379:        * ld.c (main): Change return from main to be exit from main
        !           380:        (supported on more systems).
        !           381: 
        !           382: Mon Apr 24 14:47:53 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !           383: 
        !           384:        * ld.c (decode_option, classify_arg): Accept -Bstatic as no-op.
        !           385: 
        !           386: Mon Apr 24 13:08:48 1989  Jay Fenlason  (hack at apple-gunkies.ai.mit.edu)
        !           387: 
        !           388:        * gprof.c:  Removed #ifdef __STDC__ stuff from all the
        !           389:        function headers, etc.
        !           390: 
        !           391: Sun Apr 23 00:16:09 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !           392: 
        !           393:        * ld.c: Define INITIALIZE_HEADER for ALTOS.
        !           394: 
        !           395:        * robotussin.c (reloc_segment): Handle R_RELLONG like R_DIR32.
        !           396:        (INPUT_MAGIC): Set it for 386 or 68k according to predef symbols.
        !           397: 
        !           398:        * ranlib.c: Handle USG.  Define bzero, gettimeofday.
        !           399:        New macro `seconds' defined for USG or BSD.
        !           400:        Include sys/types.h and fcntl.h.
        !           401: 
        !           402: Thu Apr 20 14:47:37 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
        !           403: 
        !           404:        * robotussin.c: discard symbols in section -1.
        !           405: 
        !           406:        * libconvert: change *.o to * in for statement.
        !           407: 
        !           408: Mon Apr 10 16:54:43 1989  Pace Willisson   (pace at apple-gunkies.ai.mit.edu)
        !           409: 
        !           410:        * strip.c (rewrite_file_symbols): Make strip work for
        !           411:        COFF_ENCAPSULATE (it used to write the new exec header at
        !           412:        file offset 0, instead of using HEADER_SEEK_FD)
        !           413: 
1.1.1.2   root      414: Fri Mar 10 15:50:45 1989  Randall Smith  (randy at sugar-bombs.ai.mit.edu)
                    415: 
                    416:        * ranlib.c (touch): Created to simply touch an archive (update the
                    417:        date on the symdef member).  Done here since adding an option to
                    418:        ar.c would be a hassle and using the routines in ar.c would
                    419:        require doing almost all of the work of an "ar rs x.a" anyway.
                    420:        Same result in both cases; differing amounts of time.
                    421: 
                    422: Mon Mar  6 15:27:56 1989  Jay Fenlason  (hack at apple-gunkies.ai.mit.edu)
                    423: 
                    424:        * gprof.c (ck_fclose) only fflush() streams opened for writing.
                    425: 
                    426: Sun Mar  5 17:13:37 1989  Randall Smith  (randy at gluteus.ai.mit.edu)
                    427: 
                    428:        * ar.c (write_archive): Modified test to write symdef header;
                    429:        wasn't being done if the symdef map entry didn't need to be newly
                    430:        created. 
                    431: 
                    432: Fri Mar  3 10:56:55 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    433: 
                    434:        * *.*, Makefile: Changed to use new wording as directed by the new
                    435:        GNU General Public License.
                    436:        * COPYING: Created as a link to /gp/rms/COPYING.
                    437: 
                    438: Wed Feb 22 04:42:54 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    439: 
                    440:        * Makefile: Use GNU getopt by preference.
                    441: 
                    442:        * gprof.c [USG]: Define bcopy as macro.
                    443: 
                    444: Tue Feb 21 04:46:44 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    445: 
                    446:        * ld.c (INITIALIZE_HEADER) [HPUX]: Use N_SET_MACHTYPE.
                    447: 
                    448: Sat Feb 18 12:47:36 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    449: 
                    450:        * Makefile: Added note for using GNU getopt for app routines.
                    451:        Linked (symlink) it into this directory.
                    452: 
                    453:        * ld.c: Added #ifndef sony_news around inclusion of fcntl.h.  This
                    454:        file duplicates code in sys/file.h on the sony.
                    455: 
                    456:        * nm.c: Added include of alloca.h on a sun4 and use of
                    457:        __builtin_alloca if compiling with GCC.
                    458: 
                    459: Sat Feb 18 09:43:51 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    460: 
                    461:        * ar.c (write_archive): Don't die if info.name is 0 (member deleted).
                    462:        (scan): Reverse fread args, so value is right.
                    463: 
                    464: Fri Feb 17 05:19:50 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    465: 
                    466:        * ar.c (extract_members, scan): Open just a FILE *, and pass that.
                    467:        (extract_member, print_contents): Expect a FILE *; no need to fdopen.
                    468: 
                    469: Thu Feb 16 07:36:03 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    470: 
                    471:        * gprof.c: Reformatted.
                    472: 
                    473: Fri Feb  3 14:28:24 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    474: 
                    475:        * ld.c (do_warnings): Changed calls to each_full_file to each_file
                    476:        (which is what we want, since we are concerned with symbol
                    477:        definitions).
                    478: 
                    479:        * ld.c: Added a parameter MAX_ALIGNMENT, defined in #ifdef sparc
                    480:        and by default, to set the maximum necessary alignment for data
                    481:        objects on this machine.  This is necessary for allocation in the
                    482:        bss area.
                    483:        (digest_symbols): Made sure that everything allocated had the
                    484:        minimum of it's alignment (lowest bit set in the size) or the
                    485:        MAX_ALIGNMENT. 
                    486: 
                    487: Thu Jan 26 13:31:52 1989  Pace Willison  (pace at apple-gunkies.ai.mit.edu)
                    488: 
                    489:        * Makefile: Delete -Dnounderscore, add gprof to USG PROG list
                    490: 
                    491:        * ar.c (rename for USG): ignore error from first unlink
                    492: 
                    493:        * gprof.c: COFF_ENCAPSULATE and USG changes.
                    494: 
                    495:        * ld.c strip.c: Deal with internal labels starting with '.' on
                    496:        nounderscore machines and 'L' on normal ones (LPREFIX).
                    497: 
                    498:        * ld.c(next_debug_entry): Mask n_type field in switch statement
                    499:        since it is a char, and some of its values (N_SOL) are > 128, which
                    500:        get sign extended on some machines.
                    501: 
                    502:        * objdump.c: Deal with symbols that have no name; mask fields 
                    503:        of nlist before printing.
                    504: 
                    505: Mon Jan 23 14:08:43 1989  Randall Smith  (randy at plantaris.ai.mit.edu)
                    506: 
                    507:        * ld.c (coptxtrel, copdatrel): Made sure that, when relocation is
                    508:        being copied, that N_INDR symbols were properly followed.  Also
                    509:        made sure that the symbol indicies were correct even in the
                    510:        presence of indirection information.
                    511: 
                    512:        * ld.c (write_rel): When specifying symbol numbers, make sure to
                    513:        leave room for the extra undefined ref that will be written for
                    514:        the sake of N_INDR entries.
                    515: 
                    516:        * ld.c (write_syms): Fixed typo; a duplicate of the N_INDR entry
                    517:        was being written instead of the undefined ref required.
                    518: 
                    519: Tue Jan 17 16:23:56 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    520: 
                    521:        * strip.c (rename): Arranged to ignore return code from "unlink";
                    522:        file may not be there.
                    523: 
                    524: Thu Jan 12 15:24:23 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    525: 
                    526:        * Makefile: Modified "dist" target so as to get hp-*
                    527:        subdirectories. 
                    528: 
                    529:        * strip.c (rename): Added function to mimic BSD system call for
                    530:        system V.
                    531: 
                    532: Tue Jan 10 19:44:33 1989  Pace Willison  (pace at prep.ai.mit.edu)
                    533: 
                    534:        * Makefile: put -Dnounderscore back for COFF_ENCAPSULATE.
                    535: 
                    536: Tue Jan 10 17:58:50 1989  Randall Smith  (randy at cream-of-wheat.ai.mit.edu)
                    537: 
                    538:        * ld.c (linear_library, symdef_library, list_file_locals,
                    539:        write_file_syms): Took care to make sure that when the buffer
                    540:        pointed to by entry->strings became invalid, entry->strings was
                    541:        set to zero (either on a free or a function return if space had
                    542:        been allocated through alloca).
                    543: 
                    544:        * ld.c (getpagesize): Deleted define in hpux dependent section;
                    545:        taken care of when compiling on hpux because of define of USG in
                    546:        Makefile. 
                    547: 
                    548: Mon Jan  9 22:49:42 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    549: 
                    550:        * strip.c (strip_file): Effectively defer certain signals
                    551:        while rewriting the file.
                    552: 
                    553: Mon Jan  9 09:45:41 1989  Pace Willisson  (pace at prep.ai.mit.edu)
                    554: 
                    555:        * These changes improve support for COFF_ENCAPSULATE, and
                    556:        for the future development of the GNU exec header.  The
                    557:        main change is to rename the exec header field a_magic
                    558:        so that it can contain additional information.  Now, the
                    559:        magic number must be accessed with N_MAGIC(exec), and set
                    560:        with N_SET_MAGIC(exec,val).  Programs that only need to use
                    561:        N_BADMAG will not have to change.  Also COFF_ENCAPSULATE will
                    562:        no longer use "nounderscore", so that it will be more like
                    563:        normal bsd systems.  This means gcc must be updated before using
                    564:        these new tools.  (It is safe to put -Dnounderscore back in
                    565:        if you want to use an old gcc for a while.)
                    566: 
                    567:        * README-ENCAP: new documentation for how to set up to use
                    568:        COFF_ENCAPSULATE.
                    569: 
                    570:        * Makefile:  Add target for gnulib.
                    571:        Don't define 'nounderscore' (must tell gcc about that too.)
                    572: 
                    573:        * ar.c: Don't automatically define COFF_ENCAPSULATE.
                    574: 
                    575:        * nm.c: No need to initialize the header before reading it.
                    576: 
                    577:        * size.c: Include, sys/types.h, and sys/fcntl.h if USG
                    578:        * strip.c: Likewise--types.h before file.h.
                    579: 
                    580:        * ld.c, objdump.c, robotussin.c:
                    581:        Changed to use new exec macros for a_magic.
                    582: 
                    583:        * libconvert: now takes arguments
                    584: 
                    585:        * robotussin.c: don't automatically define nounderscore - leave
                    586:        that to the makefile, if desired
                    587: 
                    588: Fri Jan  6 13:06:37 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    589: 
                    590:        * ld.c (digest_symbols, write_text, write_data): Changed N_SETV
                    591:        from being in the text area to being in the data area.
                    592:        * nm.c, a.out.gnu.h: Changed comments to conform with above.
                    593: 
                    594:        * ld.c (do_file_warnings): Added loop to go through each external
                    595:        nlist entry and check for multiple definitions, as well as
                    596:        catching any references which weren't caught by the relocation
                    597:        pass. 
                    598: 
                    599:        * ld.c (address_to_line): Changed so that it will work (albeit
                    600:        slowly) with an address less than the current address.
                    601:        (do_file_warnings, do_relocation_warnings): Broke out scan through
                    602:        relocation entries into a separate function.  Added creation of a
                    603:        bitvector with each bit refereing to an nlist entry so that
                    604:        do_relocation_warnings could mark which symbol entries it had
                    605:        output for undefined references.
                    606: 
                    607: Thu Jan  5 20:36:44 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    608: 
                    609:        * ld.c: Cosmetic changes: Moved helper functions for
                    610:        do_file_warnings to before it and modified comments to
                    611:        next_debug_symbol and address_to_line.
                    612: 
                    613: Wed Jan  4 15:37:52 1989  Randall Smith  (randy at gluteus.ai.mit.edu)
                    614: 
                    615:        * ld.c: Added #define getpagesize() EXEC_PAGESIZE for hpux.
                    616: 
                    617:        * ld.c (do_warnings): Will now print out all undefined external
                    618:        symbols which were not referenced from the text or data sections
                    619:        separately.
                    620:        (do_file_warnings): Decreases undefined_global_sym_count for each
                    621:        symbol printed.
                    622: 
                    623: Tue Jan  3 23:43:41 1989  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    624: 
                    625:        * Makefile (nm): Link with $(LIBS).
                    626: 
                    627:        * ld.c (getpagesize): HPUX definition deleted; not needed.
                    628: 
                    629: Mon Jan  2 23:04:35 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    630: 
                    631:        * ld.c (digest_symbols): Modified the creation of set vectors
                    632:        to include a zero word after the end  of the vector.
                    633:        (write_text): Made the same modification of the set vector section
                    634:        size. 
                    635: 
                    636: Sun Jan  1 12:01:22 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    637: 
                    638:        * ld.c: Fixed typo in description of relocation values, and
                    639:        changed note on RELOC_ADD_EXTRA to force is to be an lvalue if
                    640:        it's defined.
                    641:        (coptxtrel): If a specific relocation entry has just changed from
                    642:        external to internal, and we aren't supposed to add in memory on
                    643:        the new relocation value, make sure that the value of the symbol
                    644:        get's added to the ADD_EXTRA in the relocation value.  Otherwise,
                    645:        all the work we do in a partial linking will be wasted (will be in
                    646:        memory, but will be ignored on the next pass of the linker).
                    647: 
                    648: Sat Dec 31 13:13:01 1988  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    649: 
                    650:        * ld.c: Removed "|| TARGET == SUN2" from line 210; I believe that
                    651:        TARGET and SUN2 were both showing up defined as 0 on the sparc,
                    652:        which resulted in a redefine of the INITIALIZE_HEADER macro, back
                    653:        to sun2 style.
                    654: 
1.1       root      655: Thu Dec 29 01:48:03 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    656: 
                    657:        * ld.c, ar.c: Don't define COFF_ENCAPSULATE automatically.
                    658:        The recommended Makefile change defines it.
                    659: 
                    660:        * ld.c (alloca): If compiling with GCC, use __builtin_alloca.
                    661: 
                    662:        * robotussin.c: New reformatted version with all variables renamed.
                    663: 
                    664:        * ranlib.c: New file, just runs `ar rs' on each specified file.
                    665:        * Makefile: Special hack to tell ranlib where to find GNU ar.
                    666:        (LIBS): Recommend -lPW on USG; ld needs it for alloca (if not GCC).
                    667: 
                    668: Sat Dec 24 13:59:09 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    669: 
                    670:        * ld.c (error): Start with name of program running.
                    671:        (main): Set `progname' to that name.
                    672:        (digest_symbols): Fix punctuation and spelling in calls to `error'.
                    673: 
                    674: Tue Dec 20 21:49:46 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    675: 
                    676:        * robotussin.c (INPUT_MAGIC): New macro, has the magic number
                    677:        to expect in input files.
                    678:        (nounderscore): New macro; as in ld, define it to inhibit
                    679:        adding underscore to symbols.
                    680: 
                    681:        * Makefile: Don't compile objdump on BSD; N_DATADDR causes trouble.
                    682: 
                    683: Tue Dec 20 14:57:38 1988  Pace Willisson  (pace at prep.at.mit.edu)
                    684: 
                    685:        * objdump.c: New program like the system 5 'dump' program.
                    686:        Documentation will follow...
                    687: 
                    688:        * Makefile: Set up CFLAGS for USG systems.  Added target
                    689:        libc.a to do robotussin conversion.  Added objdump.
                    690: 
                    691:        * libconvert: Wrote shell script to do robotussin conversion.
                    692: 
                    693:        * ar.c, ld.c: Don't define COFF_ENCAPSULATE if it is already defined.
                    694: 
                    695:        * ld.c: If i386, set a_machtype to M_386.  Use a_flags instead
                    696:        of a_encap.  Don't compute coff header if it isn't going to
                    697:        get written out.
                    698: 
                    699:        * robotussin.c: Define COFF_ENCAPSULATE. Include a.out.encap.h
                    700:        instead of a.out.h.  Check magic number of input
                    701:        file.  Skip over optional header, if present.  Don't ignore
                    702:        symbols with aux entries (they could be function definitions),
                    703:        instead, ignore symbols beginning with '.' (.text, etc).
                    704:        Don't prepend underscore to externals, since gcc doesn't do
                    705:        it now.  Don't run past the end of symbols that are exactly
                    706:        eight characters long.  Always write the string table size,
                    707:        even if it is empty.  Change relocation types handled from
                    708:        R_PCRBYTE, etc, to R_DIR32 and R_PCRLONG (these are the
                    709:        only two emitted by the system 5 assembler.)
                    710: 
                    711:        * size.c: Include <sys/types.h> so including sys/file.h will
                    712:        not get an error on USG systems.  Include fcntl.h on usg systems.
                    713: 
                    714:        * strip.c: Move inclusion of file.h to after types.h.  Include
                    715:        fcntl.h.  Add defintion of rename.
                    716: 
                    717: Fri Dec 16 13:55:11 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    718: 
                    719:        * size.c: Delete all ROBOTUSSIN conditionals and contents.
                    720:        Change SYSV conditionals to USG.
                    721:        COFF_ENCAPSULATE conditionals for headers.
                    722:        (do_one_file, read_header): Skip encapsulation headers if any.
                    723: 
                    724:        * strip.c: Delete all ROBOTUSSIN conditionals and contents.
                    725:        Change SYSV conditionals to USG.
                    726:        COFF_ENCAPSULATE conditionals for headers.
                    727:        (file_open, read_header): Skip encapsulation headers if any.
                    728: 
                    729:        * strip.c: Change most fatal errors to nonfatal.
                    730:        (file_open, read_header, read_{file,entry}_symbols):
                    731:        Now return 0 for success, -1 for failure.
                    732:        Failure means do no more for the current file.
                    733:        (modify_relocation): Now just warn if strip a symbol needed
                    734:        for relocation, and warn only once per file.
                    735:        (error_with_file): New function, replaces most fatal_with_file.
                    736:        Print filename first, as in most programs.
                    737:        (fatal_with_file): Deleted.
                    738:        (rewrite_file_symbols): Use perror_file when system call fails.
                    739: 
                    740: Tue Dec 13 17:16:39 1988  Jay Fenlason  (hack at apple-gunkies.ai.mit.edu)
                    741: 
                    742:        * ar.c:  Changed pad character after odd-length archive member
                    743:        from \0 to \n so archives can be cmp'd with the output from /bin/ar
                    744:        Added fix for when ranlib is using ar to insert an __.SYMDEF member
                    745: 
                    746: Tue Dec 13 09:09:27 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    747: 
                    748:        * ar.c: conditional #includes for USG.
                    749:        * COFF_ENCAPSULATE conditionals for headers.
                    750:        (extract_member): Don't do fchmod if USG.
                    751:        Alternate USG code to set modtimes of extracted members.
                    752:        (write_archive): Don't do fsync if USG.
                    753:        (make_new_symdefs): Skip encapsulation headers if any.
                    754:        [USG] (bcopy, bzero, bcmp): New fns.
                    755: 
                    756:        * nm.c: Delete all ROBOTUSSIN conditionals and contents.
                    757:        Include types.h.
                    758:        Change SYSV conditionals to USG.
                    759:        * COFF_ENCAPSULATE conditionals for headers.
                    760:        (do_one_file): Skip encapsulation headers if any.
                    761:        (read_header): Likewise.
                    762: 
                    763:        * ld.c: Delete all ROBOTUSSIN conditionals and contents.
                    764:        Change SYSV conditionals to USG.
                    765:        Change HEADER_TYPE back to `struct exec'.
                    766:        (L_SET): Define it if headers don't.
                    767:        * COFF_ENCAPSULATE conditionals for headers.
                    768:        (main): Update text_size differently if encapsulating.
                    769:        (write_header): Write the encapsulation headers if nec.
                    770:        Don't end with padding if encapsulation being done.
                    771:        [USG] (bzero, bcopy, getpagesize): New fns.
                    772: 
                    773: Tue Dec  6 13:26:56 1988  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    774: 
                    775:        * ld.c (do_file_warnings): Ignored text relocation entries that
                    776:        went through local symbols; any problems with lack of definitions
                    777:        etc. with them would have been caught by the compiler.
                    778: 
                    779: Mon Dec  5 16:13:22 1988  Jay Fenlason  (hack at sugar-bombs.ai.mit.edu)
                    780: 
                    781:        * ar.c (make_new_symdefs): On error, close the input files.
                    782: 
                    783: Thu Nov 10 18:15:07 1988  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
                    784: 
                    785:        * ld.c: Put declaration of alloca inside an #ifdef so that it
                    786:        wouldn't mess up on the sparc.
                    787: 
                    788:        * ld.c: Added #define CORE_ADDR for include of symseg.h from gdb
                    789:        and took out TARGET == SUN2 for sun2 INITIALIZE_HEADER.
                    790: 
                    791: Wed Nov  2 18:43:09 1988  Randall Smith  (randy at gluteus.ai.mit.edu)
                    792: 
                    793:        * ld.c: Merged in isi68k port.  This included a kludge for symbols
                    794:        starting with _$ (#ifdef DOLLAR_KLUDGE) and addition of the
                    795:        STANDARD_SEARCH_DIRS macro to override the default if it's
                    796:        defined. 
                    797: 
                    798:        * ld.c: Added code for the N_WARNING symbol type.  If a reference
                    799:        is found to a symbol in an input .o file which contains an
                    800:        N_WARNING symbol, a warning message (the name of the N_WARNING
                    801:        symbol) is printed.  This name is treated as a printf format
                    802:        string; the name of the symbol referenced (which caused the
                    803:        warning) is supplied as a single argument to the print which
                    804:        interpets this string.
                    805: 
                    806: Tue Nov  1 16:57:00 1988  Randall Smith  (randy at gluteus.ai.mit.edu)
                    807: 
                    808:        * ld.c: Added code for Sun 2.
                    809: 
                    810:        * ld.c: Modified access to the relocation information to be *much*
                    811:        more general; added in sparc support.  This change is a minor
                    812:        performance hit; the perform_relocation routine uses about 0.1
                    813:        seconds more time on linking gdb than did the original ld.
                    814:        (perform_relocation is about 5% of the total time the loader
                    815:        spends).  The price of generality.
                    816: 
                    817: Thu Aug  4 13:20:50 1988  Randy Smith  (randy at rice-chex.ai.mit.edu)
                    818: 
                    819:        * Modified ld.c to print only the first 10 unresolved references
                    820:        for each symbol, followed by a message indicating that there are
                    821:        more unresolved references that have not been printed (if indeed
                    822:        there are).  Made default behaivior upon errors *not* writing any
                    823:        output file at all.  Also added the -noinhibit-exec flag to force
                    824:        writing of an executable when that was desirable.
                    825: 
                    826: Tue Aug  2 12:04:01 1988  Randy Smith  (randy at rice-chex.ai.mit.edu)
                    827: 
                    828:        * Modified ld.c to give line numbers wherever possible on
                    829:        unreferenced symbols.  Added a new symbol (N_DSLNE) to allow for
                    830:        the same mapping of data location to line number as is done for
                    831:        text segments by N_SLINE.  Added code to sort the relocation
                    832:        entries when it is necessary to output these line numbers.  The
                    833:        assumption was made that both N_SLINE and N_DSLNE symbols would
                    834:        always be in order by address.
                    835: 
                    836: Wed Jul 27 15:13:08 1988  Randy Smith  (randy at rice-chex.ai.mit.edu)
                    837: 
                    838:        * Modified ld.c to include a facility for equivalencing two
                    839:        symbols (translating one to another).  Modified lib/a.out.h to
                    840:        include a definition of this new symbol.  Modified nm.c to
                    841:        recognize this symbol and all of the set element and vector
                    842:        symbols I had added before.
                    843: 
                    844: Thu Jul 21 17:06:10 1988  Randy Smith  (randy at rice-chex.ai.mit.edu)
                    845: 
                    846:        * Modified ld.c to printout source file and line numbers for
                    847:        unresolved references whenever possible (ie. whenever the input
                    848:        file has debugger symbols and the reference is from the text area).
                    849: 
                    850: Wed Jul 13 17:21:33 1988  Randy Smith  (randy at frosted-flakes.ai.mit.edu)
                    851: 
                    852:        * Modified ld.c and a.out.h to handle new types of symbols; the
                    853:        loader can now create "sets" of symbols from entries in its input
                    854:        files.  See a.out.h for more info.  Also fixed a bug in ld in
                    855:        which references to common areas that we not defined in one pass
                    856:        of the loader caused errors on the next.
                    857: 
                    858: Sat Jul  2 00:05:44 1988  Richard Stallman  (rms at sugar-bombs.ai.mit.edu)
                    859: 
                    860:        * ld.c (symdef_library): Error check was off by one.
                    861: 
                    862: Mon May  9 12:53:08 1988  Chris Hanson  (cph at kleph)
                    863: 
                    864:        * ar.c (replace_members): After updating map, write out
                    865:        `change_map->next' rather than `map', since the latter may be
                    866:        null.
1.1.1.3 ! root      867: 
        !           868: Local Variables:
        !           869: mode: indented-text
        !           870: left-margin: 8
        !           871: version-control: never
        !           872: End:

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.