* genscripts.sh: Put the scripts in the ldscripts directory, not
emulations.
* configure.in (ldscripts): Make, instead of emulations.
* Makefile.in (scriptdir): Take off the "ld" part.
(install, clean, distclean): Use ldscripts, not emulations.
In tests, pass -L., not -Lemulations.
(ldmain.o): Don't pass -DSCRIPTDIR=....
* ldlang.c (lang_process): Add "ldscripts/" to the name of the
default script file.
It wasn't documented (or likely used) and wastes time.
(try_open): If EXTEN is empty, don't try it.
* ldctor.c, lderror.c, ldexp.c, ldfile.c, ldindr.c, ldlang.c,
ldlex.l, ldmain.c, ldmisc.c, ldsym.c, ldver.c, ldwarn.c,
ldwrite.c, lexsup.c, mri.c, relax.c: Replace DEFUN macro calls
with normal function declarations.
* Move *.em to emultempl/*.em. Move *.sh to emulparams/*.sh.
Move *.sc-sh to scripttempl/*.sc.
* {emultempl,emulparams,scripttempl}/README: New files.
* sh.em, st2000.em, z8ksim.em, h8300hms.em, h8500hms.em: Files
removed, replaced with generic.em.
* h8300.sh, h8500.sh, h8300.sc, h8500.sc: Renamed from
h8[35]00hms.s[ch]. Change their contents to omit the "hms".
* *.em (*_get_script): Return script name instead of script contents.
* ldlang.c (lang_process): Change caller.
* ldlex.l, ldgram.y: Recognize -m option.
Check for input files after *all* options in grammar.
* ldmain.c (main): Check for -m options. Add default directory
for -m.
* mkscript.c: File removed.
* genscripts.sh: Take two more parameters, tooldirlib and libdir,
to add to the default LIB_PATH.
Look for input files in the new subdirectories.
Create the scripts in emulations subdirectory and don't filter
them through mkscript.
* configure.in: Make the emulations subdirectory.
* Makefile.in: Account for all of the above changes.
Remove unused .SUFFIXES. Get libgcc.a path with gcc
-print-libgcc-file-name instead of $(libdir)/libgcc.a.
Put CFLAGS last in the compilation rules.
Add -I../bfd to INCLUDES so sysdep.h is found.
* ldfile.c (try_open): If opening without the extension fails,
try with the extension even if -v or -V was given.
had_script is imported (from ldgram.y), not exported.
(mips-idt-ecoff*): Added trailing '*'.
* config/mips-idtl.mt: New file; use EMUL of mipsidtl.
* mipsidtl.sh: New file; like mipsidt.sh, but little endian.
* Makefile.in (ALL_EMULATIONS): Added em_mipsidtl.o.
Conditionalize manual to maintain Cygnus, Hitachi versions in parallel.
(Texinfo conditionals are stable enough to permit this, at last!)
NOTE: @ignore'd passages from earlier versions DELETED; use CVS history
to retrieve if wanted.
gen-doc.texi, h8-doc.texi: manual configuration definitions.
Makefile.in: link config defn (`gen' by default) to configdoc.texi, included
by ld.texinfo
.Sanitize: add gen-doc.texi, h8-doc.texi
specific emulation.
* mipsidt.sh: New file; emulation for IDT MIPS board.
* Makefile.in (ALL_EMULATIONS): Added em_mipsidt.o.
(em_mipsidt.c): New target. Uses mipsidt.sh and mips.sc-sh.
* config/mips-idt.mt: New file; sets EMUL to mipsidt.
* configure.in (mips-idt-ecoff): New target; uses mips-idt.
* mips.sc-sh: New file. Ultrix, and hopefully other MIPS ECOFF
targets, linker script.
* mipslit.sh: New file. Little endian MIPS emulation.
* config/mips-lit.mt: New file. Use mipslit emulation.
* configure.in (mips-dec-ultrix*): Use target mips-lit.
* Makefile.in (ALL_EMULATIONS): Added em_mipslit.o.
(em_mipslit.c): New target. Uses mipslit.sh.
Added initial support for the z8k
* z8ksim.em, z8ksim.sc-sh, z8ksim.sh: new files
* configure.in, Makefile.in: modified to reflect above
* ldlang.c (lang_check): when linking conflicting architectures,
make the output file reflect at least one of the bad inputs.
please let me know, or plug them in yourself.
Wed Sep 9 11:52:58 1992 Ian Lance Taylor (ian@cygnus.com)
* Makefile.in, m68kcoff.sh, m68kcoff.sc-sh, config/m68k-coff.mt:
added m68k-coff emulation mode, stolen from a29k emulation.
Almost certainly wrong, but perhaps better than sun3.
Also fixed an error message in configure.in so that it started with
'***' like the other error messages do.
Tue Aug 18 13:41:36 1992 Ian Lance Taylor (ian@cygnus.com)
* configure.in: accept all m68K family members.
* Makefile.in: always create installation directories.
rules, since these are used when building a distribution.
* Makefile.in (ldlex.c): Don't re-direct output, since that
leaves a bogus output files if it fails.
magic to converts scripts, since that is now handled
by genscripts.sh and the *.sc-sh scipt generators.
* config.h: Remove a bunch of macros defining emulations
and targets. This becomes one less file to edit when
adding emulations or targets.
* ldemul.h (struct ld_emulation_xfer_struct): Add
emulation_name and target_name fields.
* ldemul.c, ldemul.h: Define some default functions used
by most emulations (and remove from the *.em scripts).
* ldemul.c (ldemul_choose_target): Search the new
ld_emulations array using a loop (instead of a hardwired
nested if statement).
Define the ld_emulation from the automatically-geenrated
ldemul-list.h. This means you no longer have to edit ldemul.c
to add a new emulation.
* ldmain.c: Replace {GLD,LNK}960_EMULATION_NAME by
their expansions, since the former no longer exist.
* PORTING: A very rough first draft of a porting guide.
* ldmain.c: quit using exit
* *.sc: use *(COMMON) rather than [COMMON]
* ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
to allow preprocessing of .l file.
* Makefile.in: New ldlex.l mangling
* ldexp.c (fold_binary): perform expressions with % and / in
integer.
* ldfile.c (open_a): open archives on VMS in a special way
* lderror.c: forgot to check in from a long while ago
i386 aout changes from Bob Kukura
* Makefile.in, config.h: added i386aout support
* configure.in: fixed /h-{myhost} typo
* ldgram.y: -MM now gives more boring map.
* ldlang.c: now does D_PAGED flag the right way.
* ldsym.c: -MM flags does the right thing.
* ldtemplate: Add (yet another) script to get for -n or -N
options. (These need different alignment than ZMAGIC files.)
* Makefile.in: Add stuff for new foo.xn scripts.
These are generated by replacing "ALIGN(0x...00)" by ".".
by default. Don't the WP_TEXT and D_PAGED flags of
output_bfd here; it's too late, so set it when output_bfd
is created (in ldlang.c). Also fix setting of EXEC_P flag
* ldlang.c (ldlang_open_output): Set output_bfd->flags here.
* ldlang.c: Remove some duplicate extern declarations.
* ldgram.y: Fixes to -N and -n options.
* Makefile.in: Recognize upper case letters in sed script
to remove assignments from script files.
* ldtemplate: Don't assukme that -N or -n options
imply use of -r script.
* mkscript.c: Tweaking to correctly handle \n and \\ in input.
* ldtemplate: Remove ldfile_add_library_path calls;
just use the SEARCH_DIR commands in the script files.
* Makefile.in: Add LIB_PATH macro, which if set is used to replace
the SEARCH_DIR commands in the scripts (using ugly sed magic).
This is primarily intended for cross-linking, where you would
place libaries in a different place than native libraries.
Also, emulations made from ldtemplate now use $(srcdir).
* ldglda29k.sc: Change SEARCH_DIR commands to a conventional
form; people can use the Makefile's LIB_PATH to override.