From 8852d54df49dd08207748ea537f23710add98c97 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 20 Apr 1999 08:21:41 +0000 Subject: to open CVS git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_3@439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 42 +++++ Makefile.in | 5 +- configure | 480 ++++++++++++++++++++++++++++------------------------ configure.in | 28 ++- defines.h | 8 +- dln.c | 43 ++++- eval.c | 7 +- ext/aix_ld.rb | 26 ++- ext/extmk.rb.in | 12 +- ext/socket/socket.c | 4 - io.c | 41 +++-- lib/mkmf.rb | 4 +- mkconfig.rb | 12 +- parse.c | 15 +- parse.y | 15 +- re.c | 73 ++++---- regex.c | 22 +-- regex.h | 2 +- string.c | 6 +- variable.c | 1 + version.h | 4 +- 21 files changed, 486 insertions(+), 364 deletions(-) diff --git a/ChangeLog b/ChangeLog index 993dea9ff8..373a0ac85c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,39 @@ +Tue Apr 20 11:24:18 1999 Yukihiro Matsumoto + + * string.c (rb_str_dump): `#' should be escaped. + +Tue Apr 20 02:32:42 1999 Yukihiro Matsumoto + + * parse.y (parse_regx): option /p for posix match added. + + * re.c (rb_reg_desc): did not print options properly. + + * io.c (rb_file_s_open): intialize was called twice. + +Mon Apr 19 18:56:21 1999 Yukihiro Matsumoto + + * configure.in (DEFAULT_KCODE): can specify default code for + $KCODE by --with-default-kcode=(euc|sjis|utf8|none). + + * regex.c (IS_A_LETTER): a byte sequence shorter than mbc should + not match with \w etc. + +Mon Apr 19 13:49:11 1999 Yukihiro Matsumoto + + * eval.c (eval): should restore ruby_dyna_vars. + +Fri Apr 16 21:40:43 1999 Nobuetsu Nokada + + * io.c (f_backquote): pipe_open may return nil. + + * io.c (f_open): rb_io_open may return nil. + + * io.c (io_s_foreach): ditto. + + * io.c (io_s_readlines): ditto. + + * io.c (io_defset): wrong message. + Fri Apr 16 15:09:20 1999 Yukihiro Matsumoto * bignum.c (rb_str2inum): strtoul() returns long, not int. @@ -16,6 +52,12 @@ Wed Apr 14 23:52:51 1999 SHIROYAMA Takayuki * node.h (NODE_LMASK): should be long to avoid overflow. +Wed Apr 14 13:14:35 1999 Katsuyuki Komatsu + + * dln.c: AIX dynamic link. + + * ext/aix_ld.rb: ditto. + Wed Apr 14 12:19:09 1999 Yukihiro Matsumoto * lib/thread.rb: Queue#{enq,deq} added. diff --git a/Makefile.in b/Makefile.in index b6e37a5335..717e16acdc 100644 --- a/Makefile.in +++ b/Makefile.in @@ -14,6 +14,7 @@ AUTOCONF = autoconf prefix = @prefix@ CFLAGS = @CFLAGS@ -I. -I@srcdir@ -I@includedir@ LDFLAGS = @STATIC@ $(CFLAGS) @LDFLAGS@ +XLDFLAGS = @XLDFLAGS@ EXTLIBS = LIBS = @LIBS@ $(EXTLIBS) MISSING = @LIBOBJS@ @ALLOCA@ @@ -85,9 +86,9 @@ all: miniruby$(binsuffix) rbconfig.rb miniruby$(binsuffix): config.status $(LIBRUBY_A) $(MAINOBJ) dmyext.o @rm -f $@ - $(PURIFY) $(CC) $(LDFLAGS) $(MAINOBJ) dmyext.o $(LIBRUBY_A) $(LIBS) -o $@ + $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINOBJ) dmyext.o $(LIBRUBY_A) $(LIBS) -o $@ -$(PROGRAM): $(LIBRUBY) $(MAINOBJ) $(EXTOBJS) +$(PROGRAM): $(LIBRUBY) $(MAINOBJ) $(EXTOBJS) @rm -f $@ $(PURIFY) $(CC) $(LDFLAGS) $(MAINOBJ) $(EXTOBJS) $(LIBRUBYARG) $(LIBS) -o $@ diff --git a/configure b/configure index e40313d3c6..bf155d06c1 100644 --- a/configure +++ b/configure @@ -16,6 +16,8 @@ ac_help="$ac_help ac_help="$ac_help --enable-fat-binary build a NeXT/Apple Multi Architecture Binary. " ac_help="$ac_help +--with-default-kcode=CODE speficy default value for \$KCODE (utf8|euc|sjis|none)" +ac_help="$ac_help --with-dln-a-out use dln_a_out if possible" ac_help="$ac_help --with-static-linked-ext link external modules statically" @@ -587,7 +589,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:591: checking host system type" >&5 +echo "configure:593: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -618,7 +620,7 @@ fi if test "$fat_binary" = yes ; then echo $ac_n "checking target architecture""... $ac_c" 1>&6 -echo "configure:622: checking target architecture" >&5 +echo "configure:624: checking target architecture" >&5 case "$host_os" in rhapsody*) @@ -683,7 +685,7 @@ test "$program_transform_name" = "" && program_transform_name="s,x,x," # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:687: checking for $ac_word" >&5 +echo "configure:689: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -713,7 +715,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:717: checking for $ac_word" >&5 +echo "configure:719: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -764,7 +766,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:768: checking for $ac_word" >&5 +echo "configure:770: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -796,7 +798,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:800: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:802: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -807,12 +809,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 811 "configure" +#line 813 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:816: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:818: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -838,12 +840,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:842: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:844: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:847: checking whether we are using GNU C" >&5 +echo "configure:849: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -852,7 +854,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:856: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:858: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -871,7 +873,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:875: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:877: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -903,7 +905,7 @@ else fi echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:907: checking how to run the C preprocessor" >&5 +echo "configure:909: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -918,13 +920,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:928: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:930: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -935,13 +937,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:945: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:947: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -952,13 +954,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:962: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:964: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -984,13 +986,13 @@ echo "$ac_t""$CPP" 1>&6 if test $ac_cv_prog_gcc = yes; then echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6 -echo "configure:988: checking whether ${CC-cc} needs -traditional" >&5 +echo "configure:990: checking whether ${CC-cc} needs -traditional" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_pattern="Autoconf.*'x'" cat > conftest.$ac_ext < Autoconf TIOCGETP @@ -1008,7 +1010,7 @@ rm -f conftest* if test $ac_cv_prog_gcc_traditional = no; then cat > conftest.$ac_ext < Autoconf TCGETA @@ -1034,7 +1036,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1038: checking for $ac_word" >&5 +echo "configure:1040: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1067,7 +1069,7 @@ test -n "$YACC" || YACC="yacc" # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1071: checking for $ac_word" >&5 +echo "configure:1073: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1100,7 +1102,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1104: checking for $ac_word" >&5 +echo "configure:1106: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1142,7 +1144,7 @@ test -n "$AR" || AR="ar" # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:1146: checking for a BSD compatible install" >&5 +echo "configure:1148: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1195,7 +1197,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:1199: checking whether ln -s works" >&5 +echo "configure:1201: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1216,7 +1218,7 @@ else fi echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:1220: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:1222: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1246,17 +1248,17 @@ fi # checks for UNIX variants that set C preprocessor variables ac_safe=`echo "minix/config.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for minix/config.h""... $ac_c" 1>&6 -echo "configure:1250: checking for minix/config.h" >&5 +echo "configure:1252: checking for minix/config.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1260: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1262: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1295,7 +1297,7 @@ fi echo $ac_n "checking size of int""... $ac_c" 1>&6 -echo "configure:1299: checking size of int" >&5 +echo "configure:1301: checking size of int" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1303,7 +1305,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1314,7 +1316,7 @@ main() exit(0); } EOF -if { (eval echo configure:1318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1320: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_int=`cat conftestval` else @@ -1334,7 +1336,7 @@ EOF echo $ac_n "checking size of short""... $ac_c" 1>&6 -echo "configure:1338: checking size of short" >&5 +echo "configure:1340: checking size of short" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_short'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1342,7 +1344,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1353,7 +1355,7 @@ main() exit(0); } EOF -if { (eval echo configure:1357: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1359: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_short=`cat conftestval` else @@ -1373,7 +1375,7 @@ EOF echo $ac_n "checking size of long""... $ac_c" 1>&6 -echo "configure:1377: checking size of long" >&5 +echo "configure:1379: checking size of long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1381,7 +1383,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1392,7 +1394,7 @@ main() exit(0); } EOF -if { (eval echo configure:1396: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1398: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_long=`cat conftestval` else @@ -1412,7 +1414,7 @@ EOF echo $ac_n "checking size of void*""... $ac_c" 1>&6 -echo "configure:1416: checking size of void*" >&5 +echo "configure:1418: checking size of void*" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_voidp'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1420,7 +1422,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1431,7 +1433,7 @@ main() exit(0); } EOF -if { (eval echo configure:1435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1437: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_voidp=`cat conftestval` else @@ -1451,7 +1453,7 @@ EOF echo $ac_n "checking size of float""... $ac_c" 1>&6 -echo "configure:1455: checking size of float" >&5 +echo "configure:1457: checking size of float" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_float'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1459,7 +1461,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1470,7 +1472,7 @@ main() exit(0); } EOF -if { (eval echo configure:1474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1476: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_float=`cat conftestval` else @@ -1490,7 +1492,7 @@ EOF echo $ac_n "checking size of double""... $ac_c" 1>&6 -echo "configure:1494: checking size of double" >&5 +echo "configure:1496: checking size of double" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1498,7 +1500,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext < main() @@ -1509,7 +1511,7 @@ main() exit(0); } EOF -if { (eval echo configure:1513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1515: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_sizeof_double=`cat conftestval` else @@ -1530,19 +1532,19 @@ EOF echo $ac_n "checking for prototypes""... $ac_c" 1>&6 -echo "configure:1534: checking for prototypes" >&5 +echo "configure:1536: checking for prototypes" >&5 if eval "test \"`echo '$''{'rb_cv_have_prototypes'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_have_prototypes=yes else @@ -1563,19 +1565,19 @@ EOF fi echo $ac_n "checking token paste string""... $ac_c" 1>&6 -echo "configure:1567: checking token paste string" >&5 +echo "configure:1569: checking token paste string" >&5 if eval "test \"`echo '$''{'rb_cv_tokenpaste'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1581: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_tokenpaste=ansi else @@ -1601,12 +1603,12 @@ EOF fi echo $ac_n "checking for variable length prototypes and stdarg.h""... $ac_c" 1>&6 -echo "configure:1605: checking for variable length prototypes and stdarg.h" >&5 +echo "configure:1607: checking for variable length prototypes and stdarg.h" >&5 if eval "test \"`echo '$''{'rb_cv_stdarg'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -1623,7 +1625,7 @@ int main() { return foo(10, "", 3.14); ; return 0; } EOF -if { (eval echo configure:1627: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_stdarg=yes else @@ -1644,19 +1646,19 @@ EOF fi echo $ac_n "checking for gcc attribute noreturn""... $ac_c" 1>&6 -echo "configure:1648: checking for gcc attribute noreturn" >&5 +echo "configure:1650: checking for gcc attribute noreturn" >&5 if eval "test \"`echo '$''{'rb_cv_have_attr_noreturn'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1662: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_have_attr_noreturn=yes else @@ -1685,7 +1687,7 @@ beos*) ;; *) LIBS="-lm $LIBS";; esac echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 -echo "configure:1689: checking for crypt in -lcrypt" >&5 +echo "configure:1691: checking for crypt in -lcrypt" >&5 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1693,7 +1695,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrypt $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1710: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1732,7 +1734,7 @@ else fi echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "configure:1736: checking for dlopen in -ldl" >&5 +echo "configure:1738: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1740,7 +1742,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1757: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1779,7 +1781,7 @@ else fi # Dynamic linking for SunOS/Solaris and SYSV echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "configure:1783: checking for shl_load in -ldld" >&5 +echo "configure:1785: checking for shl_load in -ldld" >&5 ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1787,7 +1789,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1826,7 +1828,7 @@ else fi # Dynamic linking for HP-UX echo $ac_n "checking for setlocale in -lxpg4""... $ac_c" 1>&6 -echo "configure:1830: checking for setlocale in -lxpg4" >&5 +echo "configure:1832: checking for setlocale in -lxpg4" >&5 ac_lib_var=`echo xpg4'_'setlocale | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1834,7 +1836,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lxpg4 $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1878,12 +1880,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:1882: checking for $ac_hdr that defines DIR" >&5 +echo "configure:1884: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include <$ac_hdr> @@ -1891,7 +1893,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:1895: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1897: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -1916,7 +1918,7 @@ done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:1920: checking for opendir in -ldir" >&5 +echo "configure:1922: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1924,7 +1926,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1941: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1957,7 +1959,7 @@ fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:1961: checking for opendir in -lx" >&5 +echo "configure:1963: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1965,7 +1967,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1982: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1999,12 +2001,12 @@ fi fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:2003: checking for ANSI C header files" >&5 +echo "configure:2005: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2012,7 +2014,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2016: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2018: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2029,7 +2031,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2047,7 +2049,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2068,7 +2070,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -2079,7 +2081,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:2083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2085: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -2108,17 +2110,17 @@ for ac_hdr in stdlib.h unistd.h limits.h sys/file.h sys/ioctl.h pwd.h \ do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2112: checking for $ac_hdr" >&5 +echo "configure:2114: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2122: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2124: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2146,12 +2148,12 @@ done echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6 -echo "configure:2150: checking for uid_t in sys/types.h" >&5 +echo "configure:2152: checking for uid_t in sys/types.h" >&5 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF @@ -2180,12 +2182,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:2184: checking for size_t" >&5 +echo "configure:2186: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -2213,12 +2215,12 @@ EOF fi echo $ac_n "checking for st_blksize in struct stat""... $ac_c" 1>&6 -echo "configure:2217: checking for st_blksize in struct stat" >&5 +echo "configure:2219: checking for st_blksize in struct stat" >&5 if eval "test \"`echo '$''{'ac_cv_struct_st_blksize'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2226,7 +2228,7 @@ int main() { struct stat s; s.st_blksize; ; return 0; } EOF -if { (eval echo configure:2230: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2232: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_st_blksize=yes else @@ -2248,12 +2250,12 @@ fi save_LIBOJBS="$LIBOBJS" echo $ac_n "checking for st_blocks in struct stat""... $ac_c" 1>&6 -echo "configure:2252: checking for st_blocks in struct stat" >&5 +echo "configure:2254: checking for st_blocks in struct stat" >&5 if eval "test \"`echo '$''{'ac_cv_struct_st_blocks'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2261,7 +2263,7 @@ int main() { struct stat s; s.st_blocks; ; return 0; } EOF -if { (eval echo configure:2265: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2267: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_st_blocks=yes else @@ -2285,12 +2287,12 @@ fi LIBOBJS="$save_LIBOBJS" echo $ac_n "checking for st_rdev in struct stat""... $ac_c" 1>&6 -echo "configure:2289: checking for st_rdev in struct stat" >&5 +echo "configure:2291: checking for st_rdev in struct stat" >&5 if eval "test \"`echo '$''{'ac_cv_struct_st_rdev'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2298,7 +2300,7 @@ int main() { struct stat s; s.st_rdev; ; return 0; } EOF -if { (eval echo configure:2302: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2304: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_st_rdev=yes else @@ -2320,7 +2322,7 @@ fi echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6 -echo "configure:2324: checking type of array argument to getgroups" >&5 +echo "configure:2326: checking type of array argument to getgroups" >&5 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2328,7 +2330,7 @@ else ac_cv_type_getgroups=cross else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2359: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_type_getgroups=gid_t else @@ -2367,7 +2369,7 @@ fi if test $ac_cv_type_getgroups = cross; then cat > conftest.$ac_ext < EOF @@ -2391,12 +2393,12 @@ EOF echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:2395: checking return type of signal handlers" >&5 +echo "configure:2397: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2413,7 +2415,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:2417: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -2434,19 +2436,19 @@ EOF # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:2438: checking for working alloca.h" >&5 +echo "configure:2440: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:2450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2452: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -2467,12 +2469,12 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:2471: checking for alloca" >&5 +echo "configure:2473: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -2532,12 +2534,12 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:2536: checking whether alloca needs Cray hooks" >&5 +echo "configure:2538: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2566: checking for $ac_func" >&5 +echo "configure:2568: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2596: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2617,7 +2619,7 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:2621: checking stack direction for C alloca" >&5 +echo "configure:2623: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2625,7 +2627,7 @@ else ac_cv_c_stack_direction=0 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2650: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 else @@ -2666,12 +2668,12 @@ EOF fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:2670: checking for pid_t" >&5 +echo "configure:2672: checking for pid_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -2700,17 +2702,17 @@ fi ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for vfork.h""... $ac_c" 1>&6 -echo "configure:2704: checking for vfork.h" >&5 +echo "configure:2706: checking for vfork.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2714: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2716: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2735,18 +2737,18 @@ else fi echo $ac_n "checking for working vfork""... $ac_c" 1>&6 -echo "configure:2739: checking for working vfork" >&5 +echo "configure:2741: checking for working vfork" >&5 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test "$cross_compiling" = yes; then echo $ac_n "checking for vfork""... $ac_c" 1>&6 -echo "configure:2745: checking for vfork" >&5 +echo "configure:2747: checking for vfork" >&5 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_vfork=yes" else @@ -2791,7 +2793,7 @@ fi ac_cv_func_vfork_works=$ac_cv_func_vfork else cat > conftest.$ac_ext < @@ -2886,7 +2888,7 @@ main() { } } EOF -if { (eval echo configure:2890: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_vfork_works=yes else @@ -2909,7 +2911,7 @@ EOF fi echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6 -echo "configure:2913: checking for 8-bit clean memcmp" >&5 +echo "configure:2915: checking for 8-bit clean memcmp" >&5 if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2917,7 +2919,7 @@ else ac_cv_func_memcmp_clean=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2933: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_memcmp_clean=yes else @@ -2949,12 +2951,12 @@ for ac_func in dup2 memmove mkdir strcasecmp strerror strftime\ fnmatch isinf isnan finite do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2953: checking for $ac_func" >&5 +echo "configure:2955: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3010,12 +3012,12 @@ for ac_func in fmod killpg drand48 random wait4 waitpid syscall getcwd\ dlopen sigprocmask sigaction _setjmp setsid do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3014: checking for $ac_func" >&5 +echo "configure:3016: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3044: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3063,12 +3065,12 @@ fi done echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 -echo "configure:3067: checking whether struct tm is in sys/time.h or time.h" >&5 +echo "configure:3069: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -3076,7 +3078,7 @@ int main() { struct tm *tp; tp->tm_sec; ; return 0; } EOF -if { (eval echo configure:3080: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3082: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h else @@ -3097,12 +3099,12 @@ EOF fi echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6 -echo "configure:3101: checking for tm_zone in struct tm" >&5 +echo "configure:3103: checking for tm_zone in struct tm" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include <$ac_cv_struct_tm> @@ -3110,7 +3112,7 @@ int main() { struct tm tm; tm.tm_zone; ; return 0; } EOF -if { (eval echo configure:3114: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3116: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm_zone=yes else @@ -3130,12 +3132,12 @@ EOF else echo $ac_n "checking for tzname""... $ac_c" 1>&6 -echo "configure:3134: checking for tzname" >&5 +echo "configure:3136: checking for tzname" >&5 if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #ifndef tzname /* For SGI. */ @@ -3145,7 +3147,7 @@ int main() { atoi(*tzname); ; return 0; } EOF -if { (eval echo configure:3149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_var_tzname=yes else @@ -3168,14 +3170,14 @@ fi if test "$ac_cv_func_strftime" = no; then cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_DAYLIGHT 1 @@ -3195,7 +3197,7 @@ EOF else echo $ac_n "checking for BSD signal semantics""... $ac_c" 1>&6 -echo "configure:3199: checking for BSD signal semantics" >&5 +echo "configure:3201: checking for BSD signal semantics" >&5 if eval "test \"`echo '$''{'rb_cv_bsd_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3203,7 +3205,7 @@ else rb_cv_bsd_signal=no else cat > conftest.$ac_ext < @@ -3225,7 +3227,7 @@ main() } EOF -if { (eval echo configure:3229: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3231: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_bsd_signal=yes else @@ -3249,7 +3251,7 @@ EOF fi echo $ac_n "checking whether getpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:3253: checking whether getpgrp takes no argument" >&5 +echo "configure:3255: checking whether getpgrp takes no argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_getpgrp_void'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3257,7 +3259,7 @@ else { echo "configure: error: cannot check getpgrp if cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_getpgrp_void=yes else @@ -3336,7 +3338,7 @@ EOF fi echo $ac_n "checking whether setpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:3340: checking whether setpgrp takes no argument" >&5 +echo "configure:3342: checking whether setpgrp takes no argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_setpgrp_void'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3344,7 +3346,7 @@ else { echo "configure: error: cannot check setpgrp if cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3370: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_setpgrp_void=no else @@ -3389,7 +3391,7 @@ fi echo $ac_n "checking for working strtod""... $ac_c" 1>&6 -echo "configure:3393: checking for working strtod" >&5 +echo "configure:3395: checking for working strtod" >&5 if eval "test \"`echo '$''{'rb_cv_func_strtod'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3397,7 +3399,7 @@ else rb_cv_func_strtod=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3433: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_func_strtod=yes else @@ -3445,14 +3447,14 @@ echo "$ac_t""$rb_cv_func_strtod" 1>&6 test $rb_cv_func_strtod = no && LIBOBJS="$LIBOBJS strtod.o" echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6 -echo "configure:3449: checking whether byte ordering is bigendian" >&5 +echo "configure:3451: checking whether byte ordering is bigendian" >&5 if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_bigendian=unknown # See if sys/param.h defines the BYTE_ORDER macro. cat > conftest.$ac_ext < #include @@ -3463,11 +3465,11 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:3467: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3469: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* # It does; now see whether it defined to BIG_ENDIAN or not. cat > conftest.$ac_ext < #include @@ -3478,7 +3480,7 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:3482: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3484: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_bigendian=yes else @@ -3498,7 +3500,7 @@ if test "$cross_compiling" = yes; then { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_bigendian=no else @@ -3535,12 +3537,12 @@ EOF fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:3539: checking for working const" >&5 +echo "configure:3541: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3595: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -3610,14 +3612,14 @@ EOF fi echo $ac_n "checking whether char is unsigned""... $ac_c" 1>&6 -echo "configure:3614: checking whether char is unsigned" >&5 +echo "configure:3616: checking whether char is unsigned" >&5 if eval "test \"`echo '$''{'ac_cv_c_char_unsigned'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test "$GCC" = yes; then # GCC predefines this symbol on systems where it applies. cat > conftest.$ac_ext <&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_char_unsigned=yes else @@ -3674,7 +3676,7 @@ fi echo $ac_n "checking whether right shift preserve sign bit""... $ac_c" 1>&6 -echo "configure:3678: checking whether right shift preserve sign bit" >&5 +echo "configure:3680: checking whether right shift preserve sign bit" >&5 if eval "test \"`echo '$''{'rb_cv_rshift_sign'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3682,7 +3684,7 @@ else rb_cv_rshift_sign=yes else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3700: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_rshift_sign=yes else @@ -3722,19 +3724,19 @@ EOF fi echo $ac_n "checking count field in FILE structures""... $ac_c" 1>&6 -echo "configure:3726: checking count field in FILE structures" >&5 +echo "configure:3728: checking count field in FILE structures" >&5 if eval "test \"`echo '$''{'rb_cv_fcnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { FILE *f = stdin; f->_cnt = 0; ; return 0; } EOF -if { (eval echo configure:3738: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3740: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_fcnt="_cnt" else @@ -3744,14 +3746,14 @@ fi rm -f conftest* if test "$rb_cv_fcnt" = ""; then cat > conftest.$ac_ext < int main() { FILE *f = stdin; f->__cnt = 0; ; return 0; } EOF -if { (eval echo configure:3755: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3757: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_fcnt="__cnt" else @@ -3762,14 +3764,14 @@ rm -f conftest* fi if test "$rb_cv_fcnt" = ""; then cat > conftest.$ac_ext < int main() { FILE *f = stdin; f->_r = 0; ; return 0; } EOF -if { (eval echo configure:3773: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_fcnt="_r" else @@ -3780,14 +3782,14 @@ rm -f conftest* fi if test "$rb_cv_fcnt" = ""; then cat > conftest.$ac_ext < int main() { FILE *f = stdin; f->readCount = 0; ; return 0; } EOF -if { (eval echo configure:3791: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3793: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_fcnt="readCount" else @@ -3798,14 +3800,14 @@ rm -f conftest* fi if test "$rb_cv_fcnt" = ""; then cat > conftest.$ac_ext < int main() { FILE *f = stdin; f->_rcount = 0; ; return 0; } EOF -if { (eval echo configure:3809: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3811: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_fcnt="_rcount" else @@ -3828,6 +3830,32 @@ EOF fi + +# Check whether --with-default-kcode or --without-default-kcode was given. +if test "${with_default_kcode+set}" = set; then + withval="$with_default_kcode" + case $withval in + utf8) cat >> confdefs.h <<\EOF +#define DEFAULT_KCODE KCODE_UTF8 +EOF +;; + euc) cat >> confdefs.h <<\EOF +#define DEFAULT_KCODE KCODE_EUC +EOF +;; + sjis) cat >> confdefs.h <<\EOF +#define DEFAULT_KCODE KCODE_SJIS +EOF +;; + none) cat >> confdefs.h <<\EOF +#define DEFAULT_KCODE KCODE_NONE +EOF +;; + *) echo "configure: warning: $withval is not valid kcode; ignored" 1>&2;; + esac +fi + + # Check whether --with-dln-a-out or --without-dln-a-out was given. if test "${with_dln_a_out+set}" = set; then withval="$with_dln_a_out" @@ -3841,10 +3869,11 @@ else fi + case "$host_os" in linux*) echo $ac_n "checking whether ELF binaries are produced""... $ac_c" 1>&6 -echo "configure:3848: checking whether ELF binaries are produced" >&5 +echo "configure:3877: checking whether ELF binaries are produced" >&5 if eval "test \"`echo '$''{'rb_cv_binary_elf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3852,7 +3881,7 @@ else rb_cv_binary_elf=yes else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3905: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_binary_elf=yes else @@ -3891,7 +3920,7 @@ echo "$ac_t""$rb_cv_binary_elf" 1>&6 with_dln_a_out=yes host_os=${host_os}-a_out else - LDFLAGS="-rdynamic" + XLDFLAGS="-rdynamic" fi;; esac @@ -3902,7 +3931,7 @@ STATIC= if test "$with_dln_a_out" != yes; then rb_cv_dlopen=unknown echo $ac_n "checking whether OS depend dynamic link works""... $ac_c" 1>&6 -echo "configure:3906: checking whether OS depend dynamic link works" >&5 +echo "configure:3935: checking whether OS depend dynamic link works" >&5 if test "$GCC" = yes; then case "$host_os" in nextstep*) ;; @@ -3925,11 +3954,11 @@ echo "configure:3906: checking whether OS depend dynamic link works" >&5 case "$host_os" in hpux*) DLDFLAGS="-E" LDSHARED='ld -b' - LDFLAGS="-Wl,-E" + XLDFLAGS="-Wl,-E" rb_cv_dlopen=yes;; solaris*) if test "$GCC" = yes; then LDSHARED='gcc -Wl,-G' - `$CC --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null && LDFLAGS="-Wl,-E" + `$CC --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null && XLDFLAGS="-Wl,-E" else LDSHARED='ld -G' fi @@ -3949,7 +3978,7 @@ echo "configure:3906: checking whether OS depend dynamic link works" >&5 freebsd*) LDSHARED="gcc -shared" if test -x /usr/bin/objformat && \ test `/usr/bin/objformat` = "elf" ; then - LDFLAGS="-rdynamic" + XLDFLAGS="-rdynamic" DLDFLAGS='-Wl,-soname,$(.TARGET)' rb_cv_freebsd_elf=yes else @@ -3959,7 +3988,7 @@ echo "configure:3906: checking whether OS depend dynamic link works" >&5 netbsd*) LDSHARED="ld -Bshareable" case "$host_cpu" in alpha|mips) - LDFLAGS="-export-dynamic" ;; + XLDFLAGS="-export-dynamic" ;; *) ;; esac @@ -3979,6 +4008,7 @@ echo "configure:3906: checking whether OS depend dynamic link works" >&5 DLDFLAGS="$ARCH_FLAG" rb_cv_dlopen=yes ;; aix*) LDSHARED='../../miniruby ../aix_ld.rb $(TARGET)' + XLDFLAGS="-Wl,-bE:ext/ruby.imp" rb_cv_dlopen=yes ;; human*) DLDFLAGS='' LDSHARED='' @@ -4009,12 +4039,12 @@ if test "$ac_cv_header_a_out_h" = yes; then if test "$with_dln_a_out" = yes || test "$rb_cv_dlopen" = unknown; then cat confdefs.h > config.h echo $ac_n "checking whether matz's dln works""... $ac_c" 1>&6 -echo "configure:4013: checking whether matz's dln works" >&5 +echo "configure:4043: checking whether matz's dln works" >&5 if eval "test \"`echo '$''{'rb_cv_dln_a_out'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4058: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* rb_cv_dln_a_out=yes else @@ -4131,7 +4161,7 @@ fi case "$host_os" in human*) echo $ac_n "checking for _harderr in -lsignal""... $ac_c" 1>&6 -echo "configure:4135: checking for _harderr in -lsignal" >&5 +echo "configure:4165: checking for _harderr in -lsignal" >&5 ac_lib_var=`echo signal'_'_harderr | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4139,7 +4169,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsignal $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4178,7 +4208,7 @@ else fi echo $ac_n "checking for hmemset in -lhmem""... $ac_c" 1>&6 -echo "configure:4182: checking for hmemset in -lhmem" >&5 +echo "configure:4212: checking for hmemset in -lhmem" >&5 ac_lib_var=`echo hmem'_'hmemset | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4186,7 +4216,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lhmem $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4231: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4227,12 +4257,12 @@ fi for ac_func in select do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4231: checking for $ac_func" >&5 +echo "configure:4261: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4289: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -4280,7 +4310,7 @@ fi done echo $ac_n "checking whether PD libc _dtos18 fail to convert big number""... $ac_c" 1>&6 -echo "configure:4284: checking whether PD libc _dtos18 fail to convert big number" >&5 +echo "configure:4314: checking whether PD libc _dtos18 fail to convert big number" >&5 if eval "test \"`echo '$''{'rb_cv_missing__dtos18'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4288,7 +4318,7 @@ else rb_cv_missing__dtos18=no else cat > conftest.$ac_ext < @@ -4300,7 +4330,7 @@ main () } EOF -if { (eval echo configure:4304: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:4334: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_missing__dtos18=yes else @@ -4322,7 +4352,7 @@ EOF fi echo $ac_n "checking whether PD libc fconvert fail to round""... $ac_c" 1>&6 -echo "configure:4326: checking whether PD libc fconvert fail to round" >&5 +echo "configure:4356: checking whether PD libc fconvert fail to round" >&5 if eval "test \"`echo '$''{'rb_cv_missing_fconvert'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4330,7 +4360,7 @@ else rb_cv_missing_fconvert=no else cat > conftest.$ac_ext < @@ -4343,7 +4373,7 @@ main () } EOF -if { (eval echo configure:4347: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:4377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then rb_cv_missing_fconvert=yes else @@ -4695,6 +4725,8 @@ s%@LN_S@%$LN_S%g s%@SET_MAKE@%$SET_MAKE%g s%@LIBOBJS@%$LIBOBJS%g s%@ALLOCA@%$ALLOCA%g +s%@DEFAULT_KCODE@%$DEFAULT_KCODE%g +s%@XLDFLAGS@%$XLDFLAGS%g s%@DLDFLAGS@%$DLDFLAGS%g s%@STATIC@%$STATIC%g s%@CCDLFLAGS@%$CCDLFLAGS%g diff --git a/configure.in b/configure.in index 8da240448e..187db5b225 100644 --- a/configure.in +++ b/configure.in @@ -308,13 +308,28 @@ else AC_DEFINE_UNQUOTED(FILE_COUNT, $rb_cv_fcnt) fi +dnl default value for $KANJI +AC_SUBST(DEFAULT_KCODE) +AC_ARG_WITH(default-kcode, + [--with-default-kcode=CODE speficy default value for \$KCODE (utf8|euc|sjis|none)], + [case $withval in + utf8) AC_DEFINE(DEFAULT_KCODE, KCODE_UTF8);; + euc) AC_DEFINE(DEFAULT_KCODE, KCODE_EUC);; + sjis) AC_DEFINE(DEFAULT_KCODE, KCODE_SJIS);; + none) AC_DEFINE(DEFAULT_KCODE, KCODE_NONE);; + *) AC_MSG_WARN($withval is not valid kcode; ignored);; + esac]) + dnl wheather use dln_a_out ot not -AC_ARG_WITH(dln-a-out, [--with-dln-a-out use dln_a_out if possible], [ +AC_ARG_WITH(dln-a-out, + [--with-dln-a-out use dln_a_out if possible], [ case $withval in yes) with_dln_a_out=yes;; *) with_dln_a_out=no;; esac], [with_dln_a_out=no]) +AC_SUBST(XLDFLAGS)dnl + case "$host_os" in linux*) AC_CACHE_CHECK(whether ELF binaries are produced, rb_cv_binary_elf, @@ -342,7 +357,7 @@ main() { with_dln_a_out=yes host_os=${host_os}-a_out else - LDFLAGS="-rdynamic" + XLDFLAGS="-rdynamic" fi;; esac @@ -380,11 +395,11 @@ if test "$with_dln_a_out" != yes; then case "$host_os" in hpux*) DLDFLAGS="-E" LDSHARED='ld -b' - LDFLAGS="-Wl,-E" + XLDFLAGS="-Wl,-E" rb_cv_dlopen=yes;; solaris*) if test "$GCC" = yes; then LDSHARED='gcc -Wl,-G' - `$CC --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null && LDFLAGS="-Wl,-E" + `$CC --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null && XLDFLAGS="-Wl,-E" else LDSHARED='ld -G' fi @@ -404,7 +419,7 @@ if test "$with_dln_a_out" != yes; then freebsd*) LDSHARED="gcc -shared" if test -x /usr/bin/objformat && \ test `/usr/bin/objformat` = "elf" ; then - LDFLAGS="-rdynamic" + XLDFLAGS="-rdynamic" DLDFLAGS='-Wl,-soname,$(.TARGET)' rb_cv_freebsd_elf=yes else @@ -414,7 +429,7 @@ if test "$with_dln_a_out" != yes; then netbsd*) LDSHARED="ld -Bshareable" case "$host_cpu" in alpha|mips) - LDFLAGS="-export-dynamic" ;; + XLDFLAGS="-export-dynamic" ;; *) ;; esac @@ -434,6 +449,7 @@ if test "$with_dln_a_out" != yes; then DLDFLAGS="$ARCH_FLAG" rb_cv_dlopen=yes ;; aix*) LDSHARED='../../miniruby ../aix_ld.rb $(TARGET)' + XLDFLAGS="-Wl,-bE:ext/ruby.imp" rb_cv_dlopen=yes ;; human*) DLDFLAGS='' LDSHARED='' diff --git a/defines.h b/defines.h index f28724dc45..21d589b55d 100644 --- a/defines.h +++ b/defines.h @@ -13,12 +13,12 @@ #define RUBY /* define RUBY_USE_EUC/SJIS for default kanji-code */ +#ifndef DEFAULT_KCODE #if defined(MSDOS) || defined(__CYGWIN32__) || defined(__human68k__) || defined(__MACOS__) || defined(__EMX__) || defined(OS2) -#undef RUBY_USE_EUC -#define RUBY_USE_SJIS +#define DEFAULT_KCODE KCODE_SJIS #else -#define RUBY_USE_EUC -#undef RUBY_USE_SJIS +#define DEFAULT_KCODE KCODE_EUC +#endif #endif #ifdef NeXT diff --git a/dln.c b/dln.c index 76e0785a58..3f96dd3199 100644 --- a/dln.c +++ b/dln.c @@ -56,9 +56,6 @@ void *xrealloc(); #endif #ifndef NT -# ifndef strdup -char *strdup(); -# endif char *getenv(); #endif @@ -1155,6 +1152,35 @@ dln_strerror() #if defined(_AIX) +static void * +aix_findmain() +{ + struct ld_info *lp; + char *buf; + int size = 4 * 1024; + int rc; + void *ret; + + if ((buf = xmalloc(size)) == NULL) { + return NULL; + } + while ((rc = loadquery(L_GETINFO, buf, size)) == -1 && errno == ENOMEM) { + free(buf); + size += 4 * 1024; + if ((buf = xmalloc(size)) == NULL) { + return NULL; + } + } + if (rc == -1) { + free(buf); + return NULL; + } + lp = (struct ld_info *)buf; + ret = lp->ldinfo_dataorg; + free(buf); + return ret; +} + static void aix_loaderror(const char *pathname) { @@ -1310,12 +1336,21 @@ dln_load(file) #if defined(_AIX) #define DLN_DEFINED { + static void *main_module = NULL; void (*init_fct)(); - init_fct = (void(*)())load(file, 1, 0); + if (main_module == NULL) { + if ((main_module = aix_findmain()) == NULL) { + aix_loaderror(file); + } + } + init_fct = (void(*)())load((char*)file, 1, 0); if (init_fct == NULL) { aix_loaderror(file); } + if (loadbind(0, main_module, init_fct) == -1) { + aix_loaderror(file); + } (*init_fct)(); return; } diff --git a/eval.c b/eval.c index 7530b3fbde..094296466d 100644 --- a/eval.c +++ b/eval.c @@ -450,12 +450,12 @@ static struct BLOCK *ruby_block; struct RVarmap *ruby_dyna_vars; #define PUSH_VARS() { \ - struct RVarmap * volatile _oldvmap; \ - _oldvmap = ruby_dyna_vars; \ + struct RVarmap * volatile _old; \ + _old = ruby_dyna_vars; \ ruby_dyna_vars = 0; #define POP_VARS() \ - ruby_dyna_vars = _oldvmap; \ + ruby_dyna_vars = _old; \ } static struct RVarmap* @@ -4198,6 +4198,7 @@ eval(self, src, scope, file, line) FL_SET(old_scope, SCOPE_DONT_RECYCLE); ruby_scope = old_scope; ruby_block = old_block; + ruby_dyna_vars = old_d_vars; data->vmode = scope_vmode; /* write back visibility mode */ scope_vmode = old_vmode; } diff --git a/ext/aix_ld.rb b/ext/aix_ld.rb index 42b2087a46..7dd5dbbb69 100644 --- a/ext/aix_ld.rb +++ b/ext/aix_ld.rb @@ -38,14 +38,15 @@ def extract(nm, out) data = nm.readlines.collect{|line| line = line.split case line[1] - when "B", "D", "T" - line[2] + when "B", "D" + line[0] else next end }.compact!.sort! uniq(data) exp = open(out, "w") + exp.printf "#!\n" for line in data exp.printf "%s\n", line end @@ -53,21 +54,14 @@ def extract(nm, out) nm.close end if older("../ruby.imp", "../../miniruby") -# nm = open("|/usr/ccs/bin/nm -Bex ../../*.o") -# nm = open("|/usr/ccs/bin/nm -Bex ../../*.o") - nm = open("|nm ../../*.o") + nm = open("|/usr/ccs/bin/nm -p ../../*.o") extract(nm, "../ruby.imp") end -objs = Dir["*.o"].join(" ") -#nm = open("|/usr/ccs/bin/nm -Bex #{objs}") -nm = open("|nm #{objs}") -extract(nm, "#{base}.exp") +#objs = Dir["*.o"].join(" ") +#nm = open("|/usr/ccs/bin/nm -p #{objs}") +#extract(nm, "#{base}.exp") -#system format("/usr/ccs/bin/ld %s %s ",ldargs,ARGV.join(' ')) -#system "/bin/rm -f #{base}.exp" -#system "chmod o-rwx ${base}.so" - -p format("/usr/ccs/bin/ld %s %s ",ldargs,ARGV.join(' ')) -p "/bin/rm -f #{base}.exp" -p "chmod o-rwx ${base}.so" +cmd = format("/usr/ccs/bin/ld %s %s ", ldargs, ARGV.join(' ')) +printf "\t%s\n", cmd +system cmd diff --git a/ext/extmk.rb.in b/ext/extmk.rb.in index 7f4087472f..3d77dd3b03 100644 --- a/ext/extmk.rb.in +++ b/ext/extmk.rb.in @@ -24,18 +24,12 @@ $hdr_cache = {} $top_srcdir = "@top_srcdir@" if $top_srcdir !~ "^/" # get absolute path - save = Dir.pwd - Dir.chdir $top_srcdir - $top_srcdir = Dir.pwd - Dir.chdir save + $top_srcdir = File.expand_path($top_srcdir) end $topdir = ".." if $topdir !~ "^/" # get absolute path - save = Dir.pwd - Dir.chdir $topdir - $topdir = Dir.pwd - Dir.chdir save + $topdir = File.expand_path($topdir) end ## drive letter @@ -78,7 +72,7 @@ CFLAGS = "@CFLAGS@".gsub(/-c..-stack=[0-9]+ */, '') else CFLAGS = "@CFLAGS@" end -LINK = "@CC@ -o conftest -I#$topdir -I#$top_srcdir -I@includedir@ #{CFLAGS} %s @LDFLAGS@ %s conftest.c @LIBS@ %s" +LINK = "@CC@ -o conftest -I#$topdir -I#$top_srcdir -I@includedir@ #{CFLAGS} %s %s conftest.c @LIBS@ %s" CPP = "@CPP@ @CPPFLAGS@ -I#$topdir -I#$top_srcdir -I@includedir@ #{CFLAGS} %s conftest.c" if /cygwin|mswin32|djgpp|mingw32|m68k-human|i386-os2_emx/i =~ PLATFORM diff --git a/ext/socket/socket.c b/ext/socket/socket.c index 197c8e79e8..07b9b2b411 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -64,10 +64,6 @@ void SOCKSinit(); int Rconnect(); #endif -#ifndef HAVE_STRDUP -char *strdup(); -#endif - #define INET_CLIENT 0 #define INET_SERVER 1 #define INET_SOCKS 2 diff --git a/io.c b/io.c index d65eff0948..0ac9a22ac5 100644 --- a/io.c +++ b/io.c @@ -1212,13 +1212,14 @@ rb_fdopen(fd, mode) return file; } -VALUE -rb_file_open(fname, mode) +static VALUE +rb_file_open_internal(klass, fname, mode) + VALUE klass; const char *fname, *mode; { OpenFile *fptr; NEWOBJ(port, struct RFile); - OBJSETUP(port, rb_cFile, T_FILE); + OBJSETUP(port, klass, T_FILE); MakeOpenFile(port, fptr); fptr->mode = rb_io_mode_flags(mode); @@ -1230,7 +1231,15 @@ rb_file_open(fname, mode) } VALUE -rb_file_sysopen(fname, flags, mode) +rb_file_open(fname, mode) + const char *fname, *mode; +{ + return rb_file_open_internal(rb_cFile, fname, mode); +} + +VALUE +rb_file_sysopen_internal(klass, fname, flags, mode) + VALUE klass; char *fname; int flags, mode; { @@ -1238,13 +1247,13 @@ rb_file_sysopen(fname, flags, mode) if (mode != 0666) { rb_warn("can't specify file mode on this platform"); } - return rb_file_open(fname, rb_io_flags_mode(flags)); + return rb_file_open_internal(klass, fname, rb_io_flags_mode(flags)); #else OpenFile *fptr; int fd; char *m; NEWOBJ(port, struct RFile); - OBJSETUP(port, rb_cFile, T_FILE); + OBJSETUP(port, klass, T_FILE); MakeOpenFile(port, fptr); fd = rb_open(fname, flags, mode); @@ -1258,6 +1267,14 @@ rb_file_sysopen(fname, flags, mode) #endif } +VALUE +rb_file_sysopen(fname, flags, mode) + char *fname; + int flags, mode; +{ + return rb_file_sysopen_internal(rb_cFile, flags, mode); +} + #if defined (NT) || defined(DJGPP) || defined(__CYGWIN32__) || defined(__human68k__) static struct pipe_list { OpenFile *fptr; @@ -1501,7 +1518,7 @@ rb_file_s_open(argc, argv, klass) int flags = FIX2INT(vmode); int fmode = NIL_P(perm) ? 0666 : FIX2INT(perm); - file = rb_file_sysopen(path, flags, fmode); + file = rb_file_sysopen_internal(klass, path, flags, fmode); } else { if (!NIL_P(vmode)) { @@ -1510,11 +1527,9 @@ rb_file_s_open(argc, argv, klass) else { mode = "r"; } - file = rb_file_open(RSTRING(fname)->ptr, mode); + file = rb_file_open_internal(klass, RSTRING(fname)->ptr, mode); } - RBASIC(file)->klass = klass; - rb_obj_call_init(file, 0, 0); if (rb_iterator_p()) { return rb_ensure(rb_yield, file, rb_io_close, file); } @@ -1553,6 +1568,7 @@ rb_f_open(argc, argv) } port = pipe_open(RSTRING(pname)->ptr+1, mode); + if (NIL_P(port)) return Qnil; if (rb_iterator_p()) { return rb_ensure(rb_yield, port, rb_io_close, port); } @@ -1982,7 +1998,7 @@ rb_io_defset(val, id) val = rb_io_open(RSTRING(val)->ptr, "w"); } if (!rb_respond_to(val, id_write)) { - rb_raise(rb_eTypeError, "$< must have write method, %s given", + rb_raise(rb_eTypeError, "$> must have write method, %s given", rb_class2name(CLASS_OF(val))); } rb_defout = val; @@ -2265,6 +2281,7 @@ rb_f_backquote(obj, str) Check_SafeStr(str); port = pipe_open(RSTRING(str)->ptr, "r"); + if (NIL_P(port)) return rb_str_new(0,0); result = read_all(port); rb_io_close(port); @@ -2687,6 +2704,7 @@ rb_io_s_foreach(argc, argv, io) arg.argc = argc - 1; arg.io = rb_io_open(RSTRING(fname)->ptr, "r"); + if (NIL_P(arg.io)) return Qnil; return rb_ensure(rb_io_foreach_line, (VALUE)&arg, rb_io_close, arg.io); } @@ -2718,6 +2736,7 @@ rb_io_s_readlines(argc, argv, io) arg.argc = argc - 1; arg.io = rb_io_open(RSTRING(fname)->ptr, "r"); + if (NIL_P(arg.io)) return Qnil; return rb_ensure(rb_io_readline_line, (VALUE)&arg, rb_io_close, arg.io); } diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 74de7beae3..4ed6398952 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -60,8 +60,8 @@ if /win32|djgpp|mingw32|m68k-human|i386-os2_emx/i =~ PLATFORM else $null = open("/dev/null", "w") end -LINK = "#{CONFIG['CC']} -o conftest -I#{$srcdir} -I#{CONFIG['includedir']} #{CFLAGS} %s #{CONFIG['LDFLAGS']} %s conftest.c #{CONFIG['LIBS']} %s" -CPP = "#{CONFIG['CPP']} -E -I#{$srcdir} -I#{CONFIG['includedir']} #{CFLAGS} %s conftest.c" +LINK = "#{CONFIG['CC']} -o conftest -I#{$hdrdir} -I#{CONFIG['includedir']} #{CFLAGS} %s #{CONFIG['LDFLAGS']} %s conftest.c #{CONFIG['LIBS']} %s" +CPP = "#{CONFIG['CPP']} -E -I#{$hdrdir} -I#{CONFIG['includedir']} #{CFLAGS} %s conftest.c" $orgerr = $stderr.dup $orgout = $stdout.dup diff --git a/mkconfig.rb b/mkconfig.rb index 903cddad3c..f7e049833c 100644 --- a/mkconfig.rb +++ b/mkconfig.rb @@ -55,14 +55,7 @@ File.foreach "config.status" do |$_| end end elsif /^ac_given_srcdir=(.*)/ - path = $1 - cwd = Dir.pwd - begin - Dir.chdir path - v_fast << " CONFIG[\"srcdir\"] = \"" + Dir.pwd + "\"\n" - ensure - Dir.chdir cwd - end + v_fast << " CONFIG[\"srcdir\"] = \"" + File.expand_path($1) + "\"\n" elsif /^ac_given_INSTALL=(.*)/ v_fast << " CONFIG[\"INSTALL\"] = " + $1 + "\n" end @@ -70,8 +63,7 @@ File.foreach "config.status" do |$_| end print v_fast, v_others -Dir.chdir File.dirname($0) -print " CONFIG[\"compile_dir\"] = \"#{Dir.pwd}\"\n" +print " CONFIG[\"compile_dir\"] = \"#{File.expand_path($0)}\"\n" print "end\n" config.close # vi:set sw=2: diff --git a/parse.c b/parse.c index 56b85fc384..3836fb5937 100644 --- a/parse.c +++ b/parse.c @@ -4567,10 +4567,6 @@ yyerrhandle: static char *tokenbuf = NULL; static int tokidx, toksiz = 0; -#ifndef HAVE_STRDUP -char *strdup(); -#endif - static NODE *rb_str_extend(); #define LEAVE_BS 1 @@ -5006,20 +5002,23 @@ parse_regx(term, paren) case 'x': options |= RE_OPTION_EXTENDED; break; + case 'p': + options |= RE_OPTION_POSIX; + break; case 'o': once = 1; break; case 'n': - kcode = 4; + kcode = 8; break; case 'e': - kcode = 8; + kcode = 16; break; case 's': - kcode = 12; + kcode = 24; break; case 'u': - kcode = 16; + kcode = 32; break; default: pushback(c); diff --git a/parse.y b/parse.y index f4f2772e98..8c545b4c17 100644 --- a/parse.y +++ b/parse.y @@ -1607,10 +1607,6 @@ none : /* none */ static char *tokenbuf = NULL; static int tokidx, toksiz = 0; -#ifndef HAVE_STRDUP -char *strdup(); -#endif - static NODE *rb_str_extend(); #define LEAVE_BS 1 @@ -2046,20 +2042,23 @@ parse_regx(term, paren) case 'x': options |= RE_OPTION_EXTENDED; break; + case 'p': + options |= RE_OPTION_POSIX; + break; case 'o': once = 1; break; case 'n': - kcode = 4; + kcode = 8; break; case 'e': - kcode = 8; + kcode = 16; break; case 's': - kcode = 12; + kcode = 24; break; case 'u': - kcode = 16; + kcode = 32; break; default: pushback(c); diff --git a/re.c b/re.c index 8ac61bf228..92cf09245e 100644 --- a/re.c +++ b/re.c @@ -87,30 +87,19 @@ rb_str_cicmp(str1, str2) return RSTRING(str1)->len - RSTRING(str2)->len; } -#define REG_IGNORECASE FL_USER0 -#define REG_CASESTATE FL_USER1 +#define REG_CASESTATE FL_USER0 +#define REG_IGNORECASE FL_USER1 +#define REG_EXTENDED FL_USER2 +#define REG_POSIX FL_USER3 #define KCODE_NONE 0 -#define KCODE_EUC FL_USER2 -#define KCODE_SJIS FL_USER3 -#define KCODE_UTF8 FL_USER4 -#define KCODE_FIXED FL_USER5 +#define KCODE_EUC FL_USER4 +#define KCODE_SJIS FL_USER5 +#define KCODE_UTF8 FL_USER6 +#define KCODE_FIXED FL_USER7 #define KCODE_MASK (KCODE_EUC|KCODE_SJIS|KCODE_UTF8) -static int reg_kcode = -#ifdef RUBY_USE_EUC - KCODE_EUC; -#else -# ifdef RUBY_USE_SJIS - KCODE_SJIS; -# else -# ifdef RUBY_USE_UTF8 - KCODE_UTF8 -# else - KCODE_NONE; -# endif -# endif -#endif +static int reg_kcode = DEFAULT_KCODE; static void kcode_euc(reg) @@ -243,6 +232,10 @@ rb_reg_desc(s, len, re) if (re) { if (FL_TEST(re, REG_IGNORECASE)) rb_str_cat(str, "i", 1); + if (FL_TEST(re, REG_EXTENDED)) + rb_str_cat(str, "x", 1); + if (FL_TEST(re, REG_POSIX)) + rb_str_cat(str, "p", 1); if (FL_TEST(re, KCODE_FIXED)) { switch ((RBASIC(re)->flags & KCODE_MASK)) { case KCODE_NONE: @@ -729,10 +722,11 @@ rb_reg_new_1(klass, s, len, options) int len; int options; /* CASEFOLD = 1 */ /* EXTENDED = 2 */ - /* CODE_NONE = 4 */ - /* CODE_EUC = 8 */ - /* CODE_SJIS = 12 */ - /* CODE_UTF8 = 16 */ + /* POSIX = 4 */ + /* CODE_NONE = 8 */ + /* CODE_EUC = 16 */ + /* CODE_SJIS = 24 */ + /* CODE_UTF8 = 32 */ { NEWOBJ(re, struct RRegexp); OBJSETUP(re, klass, T_REGEXP); @@ -742,38 +736,44 @@ rb_reg_new_1(klass, s, len, options) if (options & RE_OPTION_IGNORECASE) { FL_SET(re, REG_IGNORECASE); } - switch (options & ~0x3) { + if (options & RE_OPTION_EXTENDED) { + FL_SET(re, REG_EXTENDED); + } + if (options & RE_OPTION_POSIX) { + FL_SET(re, REG_POSIX); + } + switch (options & ~0x7) { case 0: default: FL_SET(re, reg_kcode); break; - case 4: + case 8: kcode_none(re); break; - case 8: + case 16: kcode_euc(re); break; - case 12: + case 24: kcode_sjis(re); break; - case 16: + case 32: kcode_utf8(re); break; } - if (options & ~0x3) { + if (options & ~0x7) { kcode_set_option((VALUE)re); } if (ruby_ignorecase) { options |= RE_OPTION_IGNORECASE; FL_SET(re, REG_CASESTATE); } - re->ptr = make_regexp(s, len, options & 0x3); + re->ptr = make_regexp(s, len, options & 0x7); re->str = ALLOC_N(char, len+1); memcpy(re->str, s, len); re->str[len] = '\0'; re->len = len; - if (options & ~0x3) { + if (options & ~0x7) { kcode_reset_option(); } rb_obj_call_init((VALUE)re, 0, 0); @@ -902,16 +902,16 @@ rb_reg_s_new(argc, argv, self) switch (kcode[0]) { case 'n': case 'N': - flag |= 4; + flag |= 8; break; case 'e': case 'E': - flag |= 8; + flag |= 16; break; case 's': case 'S': - flag |= 12; + flag |= 24; break; case 'u': case 'U': - flag |= 16; + flag |= 32; break; default: break; @@ -1259,6 +1259,7 @@ Init_Regexp() rb_define_const(rb_cRegexp, "IGNORECASE", INT2FIX(RE_OPTION_IGNORECASE)); rb_define_const(rb_cRegexp, "EXTENDED", INT2FIX(RE_OPTION_EXTENDED)); + rb_define_const(rb_cRegexp, "POSIX", INT2FIX(RE_OPTION_POSIX)); rb_global_variable(®_cache); rb_global_variable(&matchcache); diff --git a/regex.c b/regex.c index 17cf330d45..86db3fc8df 100644 --- a/regex.c +++ b/regex.c @@ -2638,15 +2638,12 @@ re_compile_fastmap(bufp) bufp->can_be_null = 1; fastmap['\n'] = 1; case anychar: - { - char ex = (options & RE_OPTION_POSIX)?'\0':'\n'; - - for (j = 0; j < (1 << BYTEWIDTH); j++) { - if (j != ex) fastmap[j] = 1; - } - if (bufp->can_be_null) { - FREE_AND_RETURN_VOID(stackb); - } + for (j = 0; j < (1 << BYTEWIDTH); j++) { + if (j != '\n' || (options & RE_OPTION_POSIX)) + fastmap[j] = 1; + } + if (bufp->can_be_null) { + FREE_AND_RETURN_VOID(stackb); } /* Don't return; check the alternative paths so we can set can_be_null if appropriate. */ @@ -3141,7 +3138,7 @@ typedef union #define IS_A_LETTER(d) (SYNTAX(*(d)) == Sword || \ (current_mbctype ? \ - re_mbctab[*(d)] : \ + (re_mbctab[*(d)] && ((d)+mbclen(*(d)))<=dend): \ SYNTAX(*(d)) == Sword2)) #define PREV_IS_A_LETTER(d) ((current_mbctype == MBCTYPE_SJIS)? \ @@ -3305,7 +3302,6 @@ re_match(bufp, string_arg, size, pos, regs) d = string + pos, dend = string + size; - /* This loops over pattern commands. It exits by returning from the function if match is complete, or it drops through if match fails at this starting point in the input data. */ @@ -3553,8 +3549,8 @@ re_match(bufp, string_arg, size, pos, regs) d += mbclen(*d); break; } - if (((TRANSLATE_P()) ? translate[*d] : *d) == - ((options&RE_OPTION_POSIX) ? '\0' : '\n')) + if (!(options&RE_OPTION_POSIX) && + (TRANSLATE_P() ? translate[*d] : *d) == '\n') goto fail; SET_REGS_MATCHED; d++; diff --git a/regex.h b/regex.h index a3c3c784b7..70ba23bd02 100644 --- a/regex.h +++ b/regex.h @@ -60,7 +60,7 @@ #define RE_CHAR_CLASSES (1L << 9) /* match will be done case insensetively */ -#define RE_OPTION_IGNORECASE (1L<<1) +#define RE_OPTION_IGNORECASE (1L) /* perl-style extended pattern available */ #define RE_OPTION_EXTENDED (RE_OPTION_IGNORECASE<<1) /* newline will be included for . and invert charclass matches */ diff --git a/string.c b/string.c index 4d7928ff40..43d603349c 100644 --- a/string.c +++ b/string.c @@ -1404,7 +1404,7 @@ rb_str_dump(str) switch (c) { case '"': case '\\': case '\n': case '\r': - case '\t': case '\f': + case '\t': case '\f': case '#': case '\013': case '\007': case '\033': len += 2; break; @@ -1432,6 +1432,10 @@ rb_str_dump(str) *q++ = '\\'; *q++ = c; } + else if (c == '#') { + *q++ = '\\'; + *q++ = '#'; + } else if (ISPRINT(c)) { *q++ = c; } diff --git a/variable.c b/variable.c index 966e4877ce..6d5659260c 100644 --- a/variable.c +++ b/variable.c @@ -923,6 +923,7 @@ rb_obj_instance_variables(obj) } return ary; default: + if (!generic_iv_tbl) return Qnil; if (FL_TEST(obj, FL_EXIVAR) || rb_special_const_p(obj)) { st_table *tbl; diff --git a/version.h b/version.h index 6edd0f6376..2a04aace62 100644 --- a/version.h +++ b/version.h @@ -1,2 +1,2 @@ -#define RUBY_VERSION "1.3.2" -#define RUBY_RELEASE_DATE "1999-04-13" +#define RUBY_VERSION "1.3.3" +#define RUBY_RELEASE_DATE "1999-04-20" -- cgit v1.2.3