annotate extra/README @ 448:5cccf90bf838 3.0 tip

Fixed bug with complex external references generating invalid relocations in the object file
author lost@l-w.ca
date Fri, 05 Nov 2010 22:27:00 -0600
parents acaafc70044b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
339
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
1 These files are extra utility type scripts that can be used for various
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
2 purposes.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
3
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
4 as
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
5
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
6 This is a sort of front-end script that makes lwasm look approximately like
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
7 gnu as which is useful for using lwasm as a backend to gcc. You will
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
8 probably need to edit it to make it work fully. Simply put this in place
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
9 of whatever gcc6809 installed for "as" (in the "m6809/bin" folder in
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
10 "--prefix") after editing it to point to the real location of the "lwasm"
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
11 binary.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
12
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
13
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
14 ld
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
15
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
16 Similar to the "as" script above except for lwlink.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
17
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
18
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
19 ar
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
20
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
21 Similar to the "as" script above except for lwar.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
22
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
23
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
24 To use these scripts, you really need to understand how to build a gcc as a
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
25 cross compiler. The basics are that you put the as, ld, and ar scripts
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
26 whereever you plan to put your cross-development binaries. Then, when
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
27 building the cross compiler, you tell it where the scripts are.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
28
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
29 You should probably name them m6809-unknown-none-{ar,as,ld} or similar
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
30 depending on your gcc build target. Then you'll want to get the gcc6809
410
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
31 patch and patch the correct gcc source code. You probably want to add
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
32 m6809-unknown-none-ranlib as a symblink to /bin/true, too.
339
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
33
410
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
34 Then, you can skip the bits in the install instructions that install
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
35 "binutils" and so on. A simple "make" in the "build-6809" directory should
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
36 do. At least it does with gcc6809-4.3.4-3.
339
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
37
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
38 The exact mechanics of configuring and getting gcc to install correctly is
410
acaafc70044b Fixed "=" pseudo op to work correctly
lost@l-w.ca
parents: 378
diff changeset
39 left as an exercise to the dedicated masochist.