Initial revision
[binutils.git] / bfd / mpw-config.in
blob31addeebdcfbc346afc91b767a933d56cc7609ba
1 # Configuration fragment for BFD.
3 # This is almost always correct.
5 Set selarchs "&bfd_{target_cpu}_arch"
6 Set defvec ""
7 Set selvecs ""
8 Set havevecs ""
10 If "{target_canonical}" =~ /m68k-apple-macos/
11         Set BFD_BACKENDS '"{o}"coff-m68k.c.o "{o}"cofflink.c.o'
12         Set defvec m68kcoff_vec
13         Set selvecs '&m68kcoff_vec'
14         Set havevecs '-d HAVE_m68kcoff_vec'
16 Else If "{target_canonical}" =~ /powerpc-apple-macos/
17         Set BFD_BACKENDS '"{o}"coff-pmac.c.o "{o}"xcofflink.c.o'
18         Set defvec pmac_xcoff_vec
19         Set selvecs '&pmac_xcoff_vec'
20         Set havevecs '-d HAVE_pmac_xcoff_vec'
21         Set selarchs "&bfd_powerpc_arch"
23 Else If "{target_canonical}" =~ /i386-\Option-x-go32/
24         Set BFD_BACKENDS '"{o}"coff-i386.c.o'
25         Set defvec i386coff_vec
26         Set selvecs '&i386coff_vec'
27         Set havevecs '-d HAVE_i386coff_vec'
29 Else If "{target_canonical}" =~ /mips-\Option-x-\Option-x/
30         Set BFD_BACKENDS '"{o}"coff-mips.c.o "{o}"ecoff.c.o "{o}"ecofflink.c.o "{o}"elf32.c.o "{o}"elf32-mips.c.o "{o}"elflink.c.o'
31         Set defvec ecoff_big_vec
32         Set selvecs '&ecoff_big_vec,&ecoff_little_vec,&bfd_elf32_bigmips_vec'
33         Set havevecs '-d HAVE_ecoff_big_vec -d HAVE_ecoff_little_vec -d HAVE_bfd_elf32_bigmips_vec'
35 Else If "{target_canonical}" =~ /sh-\Option-x-hms/
36         Set BFD_BACKENDS '"{o}"coff-sh.c.o "{o}"cofflink.c.o'
37         Set defvec shcoff_vec
38         Set selvecs '&shcoff_vec,&shlcoff_vec'
39         Set havevecs '-d HAVE_shcoff_vec -d HAVE_shlcoff_vec'
40 End If
42 Set ta `echo {selarchs} | sed -e 's/&bfd_/{o}cpu-/g' -e 's/_arch/.c.o/g'`
44 Set tdefaults "-d DEFAULT_VECTOR={defvec} -d SELECT_VECS={selvecs} -d SELECT_ARCHITECTURES={selarchs} {havevecs}"
46 Echo '# From mpw-config.in'                              > "{o}"mk.tmp
47 Echo 'WORDSIZE = 32'                                    >> "{o}"mk.tmp
48 Echo 'BFD_MACHINES = ' {ta}                             >> "{o}"mk.tmp
49 Echo 'BFD_BACKENDS = ' {BFD_BACKENDS}                   >> "{o}"mk.tmp
50 Echo 'TDEFAULTS = ' {tdefaults}                         >> "{o}"mk.tmp
51 Echo 'HDEPFILES = '                                     >> "{o}"mk.tmp
52 Echo 'TDEPFILES = '                                     >> "{o}"mk.tmp
53 Echo '# End from mpw-config.in'                         >> "{o}"mk.tmp
55 Echo '/* config.h.  Generated by mpw-configure.  */'     > "{o}"config.new
56 Echo '#include "mpw.h"'                                 >> "{o}"config.new
58 MoveIfChange "{o}"config.new "{o}"config.h
60 # We can only handle 32-bit targets right now.
62 sed -e 's/@WORDSIZE@/32/' \Option-d
63     -e 's/@wordsize@/32/' \Option-d
64     -e "s/@VERSION@/`Catenate {srcdir}VERSION`/" \Option-d
65     -e 's/@BFD_HOST_64_BIT_DEFINED@/0/' \Option-d
66     -e 's/@BFD_HOST_64_BIT@//' \Option-d
67     -e 's/@BFD_HOST_U_64_BIT@//' \Option-d
68     -e 's/@BFD_HOST_64BIT_LONG@/0/' \Option-d
69     "{srcdir}"bfd-in2.h >"{o}"bfd.h-new
71 MoveIfChange "{o}"bfd.h-new "{o}"bfd.h
73 sed -e 's/NN/32/g' "{srcdir}"elfxx-target.h >"{o}"elf32-target.h-new
74 MoveIfChange "{o}"elf32-target.h-new "{o}"elf32-target.h
76 # Pre-expand some macros in coffswap.h, so MPW C doesn't choke.
78 sed -e 's/^  PUT_AOUTHDR_TSIZE (/  bfd_h_put_32 (/' \Option-d
79     -e 's/^  PUT_AOUTHDR_DSIZE (/  bfd_h_put_32 (/' \Option-d
80     -e 's/^  PUT_AOUTHDR_BSIZE (/  bfd_h_put_32 (/' \Option-d
81     -e 's/^  PUT_AOUTHDR_ENTRY (/  bfd_h_put_32 (/' \Option-d
82     -e 's/^  PUT_AOUTHDR_TEXT_START (/  bfd_h_put_32 (/' \Option-d
83     -e 's/^  PUT_AOUTHDR_DATA_START (/  bfd_h_put_32 (/' \Option-d
84     "{srcdir}"coffswap.h >"{o}"coffswap.h-new
86 MoveIfChange "{o}"coffswap.h-new "{o}"coffswap.h