Commit | Line | Data |
---|---|---|
a6922ef0 SS |
1 | # Sed commands that finish translating the GDB Unix Makefile to MPW syntax. |
2 | ||
884fb64c SS |
3 | /^host_alias =/s/^/#/ |
4 | /^target_alias =/s/^/#/ | |
a6922ef0 SS |
5 | |
6 | /^host_makefile_frag@$/d | |
7 | /^target_makefile_frag@$/d | |
8 | ||
c148ab3c SS |
9 | /@ENABLE_CFLAGS@/s/@ENABLE_CFLAGS@/{ENABLE_CFLAGS}/g |
10 | /^ENABLE_CFLAGS=/s/^/#/ | |
653b07da | 11 | |
a6922ef0 SS |
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_DISABLE/s/^#// | |
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 | /@DEFS@/s/@DEFS@//g | |
36 | ||
37 | /@YACC@/s/@YACC@/byacc/g | |
38 | ||
39 | /@ENABLE_OBS@/s/@ENABLE_OBS@//g | |
40 | ||
41 | /@ENABLE_CLIBS@/s/@ENABLE_CLIBS@//g | |
42 | ||
884fb64c SS |
43 | /@LIBS@/s/@LIBS@//g |
44 | ||
e7600d8e SS |
45 | # Whack out autoconf hook for thread debugging. |
46 | /@THREAD_DB_OBS@/s/@THREAD_DB_OBS@//g | |
47 | ||
48 | # Fix up paths to include directories. | |
a6922ef0 SS |
49 | /INCLUDE_DIR/s/"{s}"{INCLUDE_DIR}/{INCLUDE_DIR}/g |
50 | /INCLUDE_DIR/s/{INCLUDE_DIR}:/{INCLUDE_DIR}/g | |
51 | /INCLUDE_DIR/s/"{INCLUDE_DIR}":/"{INCLUDE_DIR}"/g | |
52 | ||
53 | /{BFD_DIR}/s/"{BFD_DIR}":/"{BFD_DIR}"/g | |
54 | /{BFD_DIR}/s/\([ ]\){BFD_DIR}/\1::{BFD_DIR}/g | |
55 | /{BFD_DIR}/s/\([ ]\)"{BFD_DIR}"/\1::"{BFD_DIR}"/g | |
56 | ||
57 | /{BFD_SRC}/s/"{s}"{BFD_SRC}/{BFD_SRC}/g | |
58 | /{BFD_SRC}/s/{BFD_SRC}:/{BFD_SRC}/g | |
59 | ||
60 | /{READLINE_SRC}/s/"{s}"{READLINE_SRC}/{READLINE_SRC}/g | |
61 | ||
62 | /^readline_headers =/,/^$/c\ | |
63 | readline_headers =\ | |
64 | ||
65 | ||
66 | /{MMALLOC_CHECK}/s/{MMALLOC_CHECK}//g | |
67 | ||
68 | # This isn't really useful, and seems to cause nonsensical complaints. | |
69 | /{ALLDEPFILES}/s/{ALLDEPFILES}//g | |
70 | ||
71 | /^copying.c \\Option-f /,/^$/d | |
72 | ||
73 | # Fix the syntax of bits of C code that go into version.c. | |
74 | /char /s/'char .Option-x/'char */ | |
75 | ||
e7600d8e | 76 | # Point at files in the obj dir rather than src dir. |
a6922ef0 SS |
77 | /version/s/"{s}"version\.c/"{o}"version.c/g |
78 | /version/s/^version\.c/"{o}"version.c/ | |
761e98aa SS |
79 | /config/s/"{s}"config\.h/"{o}"config.h/g |
80 | /config/s/^config\.h/"{o}"config.h/ | |
a6922ef0 SS |
81 | /xm/s/"{s}"xm\.h/"{o}"xm.h/g |
82 | /xm/s/^xm\.h/"{o}"xm.h/ | |
83 | /tm/s/"{s}"tm\.h/"{o}"tm.h/g | |
84 | /tm/s/^tm\.h/"{o}"tm.h/ | |
85 | /nm/s/"{s}"nm\.h/"{o}"nm.h/g | |
86 | /nm/s/^nm\.h/"{o}"nm.h/ | |
87 | ||
88 | /exp.tab.c/s/"{s}"\([a-z0-9]*\)-exp\.tab\.c/"{o}"\1-exp.tab.c/g | |
89 | /exp.tab.c/s/^\([a-z0-9]*\)-exp\.tab\.c/"{o}"\1-exp.tab.c/ | |
90 | ||
91 | /y.tab/s/"{s}"y.tab\.c/"{o}"y.tab.c/g | |
92 | /y.tab/s/^y.tab\.c/"{o}"y.tab.c/ | |
93 | ||
94 | /init/s/"{s}"init\.c-tmp/"{o}"init.c-tmp/g | |
95 | /init/s/^init\.c-tmp/"{o}"init.c-tmp/ | |
96 | /init/s/"{s}"init\.c/"{o}"init.c/g | |
97 | /init/s/^init\.c/"{o}"init.c/ | |
98 | ||
99 | /"{o}"version.c \\Option-f Makefile/,/^$/c\ | |
100 | "{o}"version.c \\Option-f Makefile\ | |
101 | echo -n 'char *version = "' >"{o}"version.c\ | |
102 | echo -n "{VERSION}" >>"{o}"version.c\ | |
103 | echo '";' >>"{o}"version.c\ | |
104 | echo -n 'char *host_name = "' >>"{o}"version.c\ | |
105 | echo -n "{host_alias}" >>"{o}"version.c\ | |
106 | echo '";' >>"{o}"version.c\ | |
107 | echo -n 'char *target_name = "' >>"{o}"version.c\ | |
108 | echo -n "{target_alias}" >>"{o}"version.c\ | |
109 | echo '";' >>"{o}"version.c\ | |
110 | ||
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 | /filename=`echo $i | sed/,/esac/c\ | |
120 | set filename "`Echo {i} | sed \\Option-d\ | |
121 | -e '/^Onindy.c.o/d' \\Option-d\ | |
122 | -e '/^nindy.c.o/d' \\Option-d\ | |
123 | -e '/ttyflush.c.o/d' \\Option-d\ | |
124 | -e '/xdr_ld.c.o/d' \\Option-d\ | |
125 | -e '/xdr_ptrace.c.o/d' \\Option-d\ | |
126 | -e '/xdr_rdb.c.o/d' \\Option-d\ | |
127 | -e '/udr.c.o/d' \\Option-d\ | |
128 | -e '/udip2soc.c.o/d' \\Option-d\ | |
129 | -e '/udi2go32.c.o/d' \\Option-d\ | |
130 | -e '/version.c.o/d' \\Option-d\ | |
131 | -e '/[a-z0-9A-Z_]*-exp.tab.c.o/d' \\Option-d\ | |
132 | -e 's/\\.c\\.o/.c/' \\Option-d\ | |
133 | -e 's/^://'`"\ | |
134 | If "{filename}" != ""\ | |
135 | sed <"{s}""{filename}" >>"{o}"init.c-tmp -n \\Option-d\ | |
136 | -e '/^_initialize_[a-z_0-9A-Z]* *(/s/^\\([a-z_0-9A-Z]*\\).*/ {extern void \\1 (); \\1 ();}/p'\ | |
137 | End If | |
138 | ||
139 | # Fix the main compile/link command. | |
140 | /{CC_LD} {INTERNAL_LDFLAGS} -o gdb/,/"{o}"init.c.o {OBS} {TSOBS} {ADD_FILES} {CLIBS} {LOADLIBES}/c\ | |
141 | {CC_LD} {INTERNAL_LDFLAGS} -o gdb{PROG_EXT} "{o}"init.c.o {OBS} {TSOBS} {ADD_FILES} {CLIBS} {LOADLIBES} {EXTRALIBS}\ | |
142 | {MAKEPEF} gdb{PROG_EXT} -o gdb {MAKEPEF_TOOL_FLAGS} {MAKEPEF_FLAGS}\ | |
143 | {REZ} "{s}"mac-gdb.r -o gdb -append -d PROG_NAME='"'gdb'"' -d VERSION_STRING='"'{version}'"'\ | |
144 | ||
c148ab3c SS |
145 | /^install \\Option-f /,/^$/c\ |
146 | install \\Option-f all install-only\ | |
147 | \ | |
148 | install-only \\Option-f \ | |
149 | Duplicate -y gdb "{bindir}"gdb\ | |
150 | If "`Exists SiowGDB`" != ""\ | |
151 | Duplicate -y SiowGDB "{bindir}"SiowGDB\ | |
152 | End If\ | |
153 | ||
154 | ||
7bd447ba SS |
155 | # Don't do any recursive subdir stuff. |
156 | / subdir_do/s/{MAKE}/null-command/ | |
157 | ||
884fb64c | 158 | # Edit out actions that only confuse MPW Make. |
7bd447ba | 159 | /^config.status \\Option-f/,/^$/d |
884fb64c | 160 | /^Makefile \\Option-f/,/^$/d |
96336a43 | 161 | |
761e98aa SS |
162 | /^"{o}"config.h \\Option-f/s/^/#/ |
163 | ||
96336a43 RJ |
164 | # Add an action to build SIOWgdb. |
165 | $a\ | |
166 | SIOWgdb \\Option-f {OBS} {TSOBS} {ADD_DEPS} {CDEPS} "{o}"init.c.o\ | |
167 | Delete -i -y SIOWgdb\ | |
168 | {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}\ | |
169 | {MAKEPEF} SIOWgdb{PROG_EXT} -o SIOWgdb -ft 'APPL' -fc 'gdb ' {MAKEPEF_FLAGS} \ | |
1c1a6a1e | 170 | {REZ} -o SIOWgdb "{RIncludes}"siow.r -append -d __kPrefSize=5000 -d __kMinSize=2000 -d APPNAME='"'SIOWgdb'"' \ |
96336a43 | 171 | {REZ} "{s}"mac-gdb.r -o SIOWgdb -append -d VERSION_STRING='"'{version}'"'\ |
1c1a6a1e | 172 |