]> git.saurik.com Git - bison.git/blame - djgpp/config.sed
Simplify y.tab.c when location tracking is disabled.
[bison.git] / djgpp / config.sed
CommitLineData
db0dcbf3 1# DJGPP specific configuration file.
7c799348 2# Sed script for additional DJGPP specific editing
013cb7f4 3# of the configure script generated by autoconf 2.62.
7c799348 4
db0dcbf3 5
38609c34
JD
6# Copyright (C) 2005, 2006, 2007, 2008-2009 Free Software Foundation,
7# Inc.
db0dcbf3 8
f16b0819 9# This program is free software: you can redistribute it and/or modify
db0dcbf3 10# it under the terms of the GNU General Public License as published by
f16b0819 11# the Free Software Foundation, either version 3 of the License, or
db0dcbf3 12# (at your option) any later version.
f16b0819 13#
db0dcbf3
PE
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details.
f16b0819 18#
db0dcbf3 19# You should have received a copy of the GNU General Public License
f16b0819 20# along with this program. If not, see <http://www.gnu.org/licenses/>.
db0dcbf3 21
b36e835b 22
3768a1ae 23# Additional editing of Makefiles
013cb7f4
JMG
24/^eval sed.*ac_file_inputs.*tmp\/out \\$/ {
25:loop
26n
27/^$/!b loop
28a\
2c061cb0 29cat > "$tmp/subs-djgpp.sed" << eof_djgpp\
3768a1ae 30# DJGPP specific Makefile changes.\
b36e835b
JMG
31s,\\.deps,_deps,g\
32s,\\.libs,_libs,g\
33s,\\.new\\.,_new.,g\
34s,\\.old\\.,_old.,g\
35s,\\.tab\\.,_tab.,g\
36s,c++\\.at,cxx.at,g\
37s,c++\\.m4,cxx.m4,g\
a7309d7d 38s,c++-skel\\.m4,cxx-skel.m4,g\
b36e835b
JMG
39s,calc++,calcxx,g\
40s,scan-gram-c,c-scan-gram,g\
41s,scan-skel-c,c-scan-skel,g\
50a84377 42s,inttypes_,_inttypes,g\
38b5fb0c
JMG
43s,javacomp\\.sh\\.in,javacomp.sh-in,g\
44s,javaexec\\.sh\\.in,javaexec.sh-in,g\
45s,yacc\\.1\\.in,yacc.1-in,g\
46s,bench\\.pl\\.in,bench.pl-in,g\
b36e835b
JMG
47s,Makefile\\.am\\.in,Makefile.am-in,g\
48s,Makefile\\.in\\.in,Makefile.in-in,g\
49/^\\.y\\.c:/,/^$/ {\
50 /\\\$(YACCCOMPILE)/ {\
51 a\\\\\
52 -@test -f y.tab.c && mv -f y.tab.c y_tab.c\\\\\
3768a1ae 53 -@test -f y.tab.h && mv -f y.tab.h y_tab.h\
3768a1ae 54 }\
b36e835b
JMG
55}\
56/^libbison.a:/ i\\\\\
57\\$(top_srcdir)/djgpp/subpipe.c: \\$(top_srcdir)/djgpp/subpipe.h\\\\\
58subpipe.o: \\$(top_srcdir)/djgpp/subpipe.c \\$(top_srcdir)/djgpp/subpipe.h\\\\\
3768a1ae 59 \\$(COMPILE) -c \\$<\
b36e835b
JMG
60/^yacc:/ i\\\\\
61yacc.bat:\\\\\
3768a1ae
JMG
62 echo "bison\\$(EXEEXT) -y %1 %2 %3 %4 %5 %6 %7 %8 %9" >\\$@\
63/^bin_SCRIPTS =/s/$/ yacc.bat/\
b36e835b 64/^MOSTLYCLEANFILES = yacc/s/$/ yacc.bat/\
38b5fb0c
JMG
65/cross-options.texi:/,/^$/ s|bison|&.exe|g\
66/^\\.x\\.1:/,/^$/ s|\\$program|&.exe|g\
b36e835b 67eof_djgpp\
2c061cb0 68sed -f "\$tmp/subs-djgpp.sed" \$tmp/out > \$tmp/out.djgpp\
b36e835b 69mv -f \$tmp/out.djgpp \$tmp/out
013cb7f4 70}
3768a1ae
JMG
71
72# Makefile.in.in is renamed to Makefile.in-in.
b36e835b
JMG
73/ac_config_files=/ {
74 /runtime-po/!s|po/Makefile\.in|&:po/Makefile.in-in|
75 s|runtime-po/Makefile\.in|&:runtime-po/Makefile.in-in|
38b5fb0c
JMG
76 s|javacomp\.sh\.in|javacomp.sh-in|
77 s|javaexec\.sh\.in|javaexec.sh-in|
78 s|doc/yacc\.1|&:doc/yacc.1-in|
79 s|etc/bench.pl|&:etc/bench.pl-in|
b36e835b
JMG
80}
81
82/CONFIG_FILES=/ {
83 /runtime-po/!s|po/Makefile\.in|&:po/Makefile.in-in|2
84 s|runtime-po/Makefile\.in|&:runtime-po/Makefile.in-in|2
38b5fb0c
JMG
85 s|javacomp\.sh\.in|javacomp.sh-in|
86 s|javaexec\.sh\.in|javaexec.sh-in|
87 s|doc/yacc\.1|&:doc/yacc.1-in|2
88 s|etc/bench\.pl|&:etc/bench.pl-in|2
3768a1ae 89}
3768a1ae
JMG
90
91# We always use _deps and _libs instead of .deps and .libs, because
db0dcbf3 92# the latter is an invalid name on 8+3 MS-DOS file system. This makes
3768a1ae
JMG
93# the generated Makefiles good for every DJGPP installation, not only
94# the one where the package was configured (which could happen to be
95# a Windows box, where leading dots in file names are allowed).
02650b7f 96/^rmdir[ ]*\.tst/ i\
3768a1ae
JMG
97am__leading_dot=_
98
99# Replace (command) > /dev/null with `command > /dev/null`, since
100# parenthesized commands always return zero status in the ported Bash,
101# even if the named command doesn't exist
102/if ([^|;`]*null/{
103 s,(,`,
104 s,),,
02650b7f 105 /null[ ]*2>&1/ s,2>&1,&`,
3768a1ae
JMG
106 /null.*null/ s,null.*null,&`,
107 /null.*null/ !{
02650b7f 108 /null[ ]*2>&1/ !s,null,&`,
3768a1ae
JMG
109 }
110}
111
112# DOS-style absolute file names should be supported as well
113/\*) top_srcdir=/s,/\*,[\\\\/]* | ?:[\\\\/]*,
114
3768a1ae
JMG
115# The following two items are changes needed for configuring
116# and compiling across partitions.
117# 1) The given srcdir value is always translated from the
118# "x:" syntax into "/dev/x" syntax while we run configure.
02650b7f 119/^[ ]*-srcdir=\*.*$/ a\
3768a1ae
JMG
120 ac_optarg=`echo "$ac_optarg" | sed "s,^\\([A-Za-z]\\):,/dev/\\1,"`
121/set X `ls -Lt \$srcdir/ i\
122 if `echo $srcdir | grep "^/dev/" - > /dev/null`; then\
123 srcdir=`echo "$srcdir" | sed -e "s%^/dev/%%" -e "s%/%:/%"`\
124 fi
125
126# Autoconf 2.52e generated configure scripts
127# write absolute paths into Makefiles and bison.in
128# making them useless for DJGPP installations for
129# which the package has not been configured for.
130/MISSING=/,/^$/ {
131 /^fi$/ a\
b36e835b 132am_missing_run=`echo "$am_missing_run" | sed 's%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%${top_srcdir}%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%${top_srcdir}%'`
3768a1ae
JMG
133}
134/^install_sh=/a\
b36e835b 135install_sh=`echo "$install_sh" | sed 's%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%${top_srcdir}%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%${top_srcdir}%'`
3768a1ae
JMG
136
137# This will only work if the assumption that the
138# testsuite is ran from the following path:
139# ${top_srcdir}/tests/testsuite.dir
140# holds. The explicit names are of no importance.
141# ../../. == ${top_srcdir}
b36e835b
JMG
142#/^esac$/,/^ac_abs_srcdir=/ {
143/^ac_abs_srcdir=/ i\
144ac_abs_builddir=`echo "$ac_abs_builddir" | sed "s%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../.%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../.%"`\
145ac_abs_top_builddir=`echo "$ac_abs_top_builddir" | sed "s%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../..%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../..%"`\
146ac_abs_top_srcdir=`echo "$ac_abs_top_srcdir" | sed "s%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../..%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../..%"`
147#ac_abs_srcdir=`echo "$ac_abs_srcdir" | sed "s%/dev/.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../.%;s%.:.*/bison[-_0-9]\\{1,1\\}[-.0-9A-Za-z+]*%../../.%"`
148/^ac_abs_srcdir=/ a\
149for dj_dir in $ac_abs_builddir $ac_abs_top_builddir $ac_abs_top_srcdir $ac_abs_srcdir\
150do\
151 ac_abs_builddir=`echo "$ac_abs_builddir" | sed "s%//%/%g"`\
152 ac_abs_top_builddir=`echo "$ac_abs_top_builddir" | sed "s%//%/%g"`\
153 ac_abs_top_srcdir=`echo "$ac_abs_top_srcdir" | sed "s%//%/%g"`\
154 ac_abs_srcdir=`echo "$ac_abs_srcdir" | sed "s%//%/%g"`\
155done
db0dcbf3 156
3768a1ae
JMG
157# Add DJGPP version information.
158/^#define VERSION/ s/\$VERSION/& (DJGPP port (r1))/
159
160# We need makeinfo to make the html formated docs.
02650b7f 161/\$am_missing_run[ ]*makeinfo/ s,\$am_missing_run,,
3768a1ae
JMG
162
163# The path to the FORTRAN compiler and libraries
164# shall contain no absolute path reference so it
165# will be good for all djgpp installations.
166/^FLIBS="\$ac_cv_flibs"/ i\
167ac_djgpp_path=`echo "$DJDIR" | sed 's%\\\\\\%/%g' | tr $as_cr_LETTERS $as_cr_letters`\
168ac_cv_flibs=`echo "$ac_cv_flibs" | sed "s%-L$ac_djgpp_path%-L/dev/env/DJDIR%g"`
169
2c061cb0
JMG
170# Autoconf generated configure scripts write absolute
171# paths of certain header files into Makefiles making
172# them useless for DJGPP installations for which the
173# package has not been configured for.
174/^.*echo "\$as_me:\$LINENO: result: \$gl_cv_absolute_.*$/ {
175h
176s,^.*\(gl_cv_absolute_\)\([a-z0-9_]*\)\(_h\).*$,\1\2\3=`echo $\1\2\3 | sed "s%[^:]:.*/include/%/dev/env/DJDIR/include/%"`,
177G
178}
50a84377
JMG
179/^.*echo "\$as_me:\$LINENO: result: \$gl_cv_full_.*$/ {
180h
181s,^.*\(gl_cv_full_\)\([a-z0-9_]*\)\(_h\).*$,\1\2\3=`echo $\1\2\3 | sed "s%[^:]:.*/include/%/dev/env/DJDIR/include/%"`,
182G
183}
2c061cb0 184
3768a1ae 185# The following is not a valid DOS file name
db0dcbf3 186s/calc++/calcxx/g
013cb7f4
JMG
187
188# The CR test for awk does not work for DJGPP.
189/^ac_cs_awk_cr=/,/^$/ {
190 /^fi$/ a\
191ac_cs_awk_cr=$ac_cr
192}