Fix date of last commit.
[external/binutils.git] / gdb / mpw-make.sed
1 # Sed commands that finish translating the GDB Unix Makefile to MPW syntax.
2
3 /^host_alias =/s/^/#/
4 /^target_alias =/s/^/#/
5
6 /^host_makefile_frag@$/d
7 /^target_makefile_frag@$/d
8
9 /@ENABLE_CFLAGS@/s/@ENABLE_CFLAGS@/{ENABLE_CFLAGS}/g
10 /^ENABLE_CFLAGS=/s/^/#/
11
12 # Edit all the symbolic definitions pointing to various libraries and such.
13
14 /^INCLUDE_DIR = /s/"{srcdir}":include/"{topsrcdir}"include:/
15
16 /^MMALLOC_DIR = /s/::mmalloc/mmalloc:/
17 /^MMALLOC_SRC = /s/"{srcdir}"/"{topsrcdir}"/
18 /^MMALLOC =/s/=.*$/=/
19 /MMALLOC_CFLAGS =/s/=.*$/= -u USE_MMALLOC/
20
21 /^BFD_DIR = /s/::bfd/bfd:/
22 /^BFD = /s/{BFD_DIR}:libbfd/{BFD_DIR}libbfd/
23 /^BFD_SRC = /s/"{srcdir}"/"{topsrcdir}"/
24
25 /^READLINE_DIR = /s/::readline/readline:/
26 /^READLINE =/s/=.*$/=/
27 /^READLINE_SRC = /s/"{srcdir}"/"{topsrcdir}"/
28
29 /^INCLUDE_CFLAGS = /s/$/ -i "{topsrcdir}"include:mpw: -i ::extra-include:/
30
31 /^SER_HARDWIRE =/s/ser-unix/ser-mac/
32
33 /^TERMCAP =/s/ =.*$/ =/
34
35 # Whack out various autoconf vars that we don't need.
36 /@CONFIG_LDFLAGS@/s/@CONFIG_LDFLAGS@//g
37 /@HLDFLAGS@/s/@HLDFLAGS@//g
38 /@DEFS@/s/@DEFS@//g
39 /@YACC@/s/@YACC@/byacc/g
40 /@ENABLE_OBS@/s/@ENABLE_OBS@//g
41 /@ENABLE_CLIBS@/s/@ENABLE_CLIBS@//g
42 /@LIBS@/s/@LIBS@//g
43
44 # Whack out autoconf hook for thread debugging.
45 /@THREAD_DB_OBS@/s/@THREAD_DB_OBS@//g
46
47 # Fix up paths to include directories.
48 /INCLUDE_DIR/s/"{s}"{INCLUDE_DIR}/{INCLUDE_DIR}/g
49 /INCLUDE_DIR/s/{INCLUDE_DIR}:/{INCLUDE_DIR}/g
50 /INCLUDE_DIR/s/"{INCLUDE_DIR}":/"{INCLUDE_DIR}"/g
51
52 /{BFD_DIR}/s/"{BFD_DIR}":/"{BFD_DIR}"/g
53 /{BFD_DIR}/s/\([        ]\){BFD_DIR}/\1::{BFD_DIR}/g
54 /{BFD_DIR}/s/\([        ]\)"{BFD_DIR}"/\1::"{BFD_DIR}"/g
55
56 /{BFD_SRC}/s/"{s}"{BFD_SRC}/{BFD_SRC}/g
57 /{BFD_SRC}/s/{BFD_SRC}:/{BFD_SRC}/g
58
59 /{READLINE_SRC}/s/"{s}"{READLINE_SRC}/{READLINE_SRC}/g
60
61 /^readline_headers =/,/^$/c\
62 readline_headers =\
63
64
65 # This isn't really useful, and seems to cause nonsensical complaints.
66 /{ALLDEPFILES}/s/{ALLDEPFILES}//g
67
68 /^copying.c \\Option-f /,/^$/d
69
70 # Fix the syntax of bits of C code that go into version.c.
71 /char /s/'char .Option-x/'char */
72
73 # Point at files in the obj dir rather than src dir.
74 /version/s/"{s}"version\.c/"{o}"version.c/g
75 /version/s/^version\.c/"{o}"version.c/
76 /config/s/"{s}"config\.h/"{o}"config.h/g
77 /config/s/^config\.h/"{o}"config.h/
78 /xm/s/"{s}"xm\.h/"{o}"xm.h/g
79 /xm/s/^xm\.h/"{o}"xm.h/
80 /tm/s/"{s}"tm\.h/"{o}"tm.h/g
81 /tm/s/^tm\.h/"{o}"tm.h/
82 /nm/s/"{s}"nm\.h/"{o}"nm.h/g
83 /nm/s/^nm\.h/"{o}"nm.h/
84
85 /exp.tab.c/s/"{s}"\([a-z0-9]*\)-exp\.tab\.c/"{o}"\1-exp.tab.c/g
86 /exp.tab.c/s/^\([a-z0-9]*\)-exp\.tab\.c/"{o}"\1-exp.tab.c/
87
88 /y.tab/s/"{s}"y.tab\.c/"{o}"y.tab.c/g
89 /y.tab/s/^y.tab\.c/"{o}"y.tab.c/
90
91 /init/s/"{s}"init\.c-tmp/"{o}"init.c-tmp/g
92 /init/s/^init\.c-tmp/"{o}"init.c-tmp/
93 /init/s/"{s}"init\.c/"{o}"init.c/g
94 /init/s/^init\.c/"{o}"init.c/
95
96 # Fix up the generation of version.c.
97 /"{o}"version.c \\Option-f Makefile/,/^$/c\
98 "{o}"version.c \\Option-f Makefile\
99         echo -n 'char *version = "'      >"{o}"version.c\
100         echo -n "{VERSION}"             >>"{o}"version.c\
101         echo '";'                       >>"{o}"version.c\
102         echo -n 'char *host_name = "'   >>"{o}"version.c\
103         echo -n "{host_alias}"          >>"{o}"version.c\
104         echo '";'                       >>"{o}"version.c\
105         echo -n 'char *target_name = "' >>"{o}"version.c\
106         echo -n "{target_alias}"        >>"{o}"version.c\
107         echo '";'                       >>"{o}"version.c\
108
109
110 /ansidecl/s/include "{s}""ansidecl.h"/include "ansidecl.h"/
111
112 # Open-brace in a command causes much confusion; replace with the
113 # result from a script.
114 /initialize_all_files ()/c\
115         Echo -n 'void initialize_all_files () ' >> "{o}"init.c-tmp\
116         open-brace >> "{o}"init.c-tmp
117
118 # Replace the whole sed bit for init.c; it's simpler that way...
119 /echo {OBS} {TSOBS}/,/echo '}'/c\
120         For i in {OBS} {TSOBS}\
121           Set filename "`Echo {i} | sed \\Option-d\
122             -e '/^Onindy.c.o/d' \\Option-d\
123             -e '/^nindy.c.o/d' \\Option-d\
124             -e '/ttyflush.c.o/d' \\Option-d\
125             -e '/xdr_ld.c.o/d' \\Option-d\
126             -e '/xdr_ptrace.c.o/d' \\Option-d\
127             -e '/xdr_rdb.c.o/d' \\Option-d\
128             -e '/udr.c.o/d' \\Option-d\
129             -e '/udip2soc.c.o/d' \\Option-d\
130             -e '/udi2go32.c.o/d' \\Option-d\
131             -e '/version.c.o/d' \\Option-d\
132             -e '/[a-z0-9A-Z_]*-exp.tab.c.o/d' \\Option-d\
133             -e 's/\\.c\\.o/.c/' \\Option-d\
134             -e 's/^://'`"\
135           If "{filename}" != ""\
136             sed <"{s}""{filename}" >>"{o}"init.c-tmp -n \\Option-d\
137             -e '/^_initialize_[a-z_0-9A-Z]* *(/s/^\\([a-z_0-9A-Z]*\\).*/  {extern void \\1 (); \\1 ();}/p'\
138           End If\
139         End For\
140         Echo '}' >>"{o}"init.c-tmp
141
142 # Fix the main compile/link command.
143 /{CC_LD} {INTERNAL_LDFLAGS} -o gdb/,/"{o}"init.c.o {OBS} {TSOBS} {ADD_FILES} {CLIBS} {LOADLIBES}/c\
144         {CC_LD} {INTERNAL_LDFLAGS} -o gdb{PROG_EXT} "{o}"init.c.o {OBS} {TSOBS} {ADD_FILES} {CLIBS} {LOADLIBES} {EXTRALIBS}\
145         {MAKEPEF} gdb{PROG_EXT} -o gdb {MAKEPEF_TOOL_FLAGS} {MAKEPEF_FLAGS}\
146         {REZ} "{s}"mac-gdb.r -o gdb -append -d PROG_NAME='"'gdb'"' -d VERSION_STRING='"'{version}'"'\
147
148 # Replace the install actions with MPW-friendly script.
149 /^install \\Option-f /,/^$/c\
150 install \\Option-f all install-only\
151 \
152 install-only \\Option-f \
153         NewFolderRecursive "{bindir}"\
154         Duplicate -y gdb "{bindir}"gdb\
155         If "`Exists SiowGDB`" != ""\
156                 Duplicate -y SiowGDB "{bindir}"SiowGDB\
157         End If\
158
159
160 # Don't do any recursive subdir stuff.
161 / subdir_do/s/{MAKE}/null-command/
162
163 # Edit out actions that only confuse MPW Make.
164 /^config.status \\Option-f/,/^$/d
165 /^Makefile \\Option-f/,/^$/d
166
167 # Don't test config.h dependencies.
168 /^"{o}"config.h \\Option-f/s/^/#/
169
170 # Add an action to build SIOWgdb.
171 $a\
172 SIOWgdb \\Option-f {OBS} {TSOBS} {ADD_DEPS} {CDEPS} "{o}"init.c.o\
173         Delete -i -y SIOWgdb\
174         {CC_LD} {INTERNAL_LDFLAGS} -t 'APPL' -c 'gdb ' -o SIOWgdb{PROG_EXT} "{o}"init.c.o {OBS} {TSOBS} {ADD_FILES} {CLIBS} {SIOW_LIB} {LOADLIBES} {EXTRALIBS}\
175         {MAKEPEF} SIOWgdb{PROG_EXT} -o SIOWgdb -ft 'APPL' -fc 'gdb ' {MAKEPEF_FLAGS} \
176         {REZ} -o SIOWgdb "{RIncludes}"siow.r -append -d __kPrefSize=5000 -d __kMinSize=2000 -d APPNAME='"'SIOWgdb'"' \
177         {REZ} "{s}"mac-gdb.r -o SIOWgdb -append -d VERSION_STRING='"'{version}'"'\
178