diff options
author | Yukihiro Matsumoto <matz@ruby-lang.org> | 1995-05-19 15:33:23 +0900 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2019-08-17 22:09:32 +0900 |
commit | 8bf1c909dc31fd4bcdc1488cda9fe89a62bc2830 (patch) | |
tree | 6899d116a280ba8f99f65e21fe9259706474c0aa /configure.in | |
parent | b2420d8ffa4d347a75efbbdc376f4ce65c0eb172 (diff) |
version 0.76v0_76
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.76.tar.gz
Fri May 19 15:33:23 1995 Yukihiro Matsumoto <matz@ix-02>
* version 0.76
Fri May 19 00:48:08 1995 Yukihiro Matsumoto (matz@dyna)
* string.c (Fstr_each): イテレータブロック中で文字列の変更が行われ
たかどうかをチェック.ポインタの値が変わっていれば例外を発生する.
* ruby-mode.el: ruby-electric-braceの新設.
Thu May 18 12:27:23 1995 Yukihiro Matsumoto <matz@ix-02>
* string.c (Fstr_tr): trの置換対象に`\0'を含む時に正しく置換を行わ
ないバグがあった.更に置換文字列をASCII順に指定しないと動作しな
い問題もあった.結果としてtrを書き換えたので,copyrightの問題は
無くなった(と思う).
* gc.c (gc): the_scopeをマークしていなかったので,ローカル変数が間
違って開放される場合があった.
* gc.c (mark_locations_array): 若干の高速化.
Mon May 15 11:43:49 1995 Yukihiro Matsumoto <matz@ix-02>
* ext/extmk.rb.in: Dynamic Loadモジュールのコンパイル用チェックを
行うruby script.autoconfに近い感覚で使える.新しいモジュールを
提供したい人はextの下にディレクトリを作るだけで良い.必須のファ
イルはファイル名の一覧を記録した`MANIFEST'というファイルのみ.必
要に応じて`depend'(ファイルの依存関係を記述するファイル gcc -MM
の出力),`extconf.rb'(コンパイル用にライブラリと関数の存在チェッ
クするファイル)を用意できる.
* eval.c (rb_call): rubyメソッドの引数チェック時に未初期化の
jmp_bufを使用していた.
* parse.y: `or'と`and'の優先順位を同じにした.
Wed May 3 18:21:36 1995 Yukihiro Matsumoto (matz@dyna)
* dln.c: Linuxでは`__.SYMDEF/'であった.
* dln.c: system callのエラーチェックを忘れていた.
Wed Apr 26 09:50:56 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y: イテレータブロックの変数宣言を`|'で括るようにした.これ
でイテレータ変数がない時は宣言そのものを省略できる.文法の変更は
久しぶりだ.
Tue Apr 25 12:04:17 1995 Yukihiro Matsumoto (matz@ix-02)
* eval.c(require): loadからダイナミックロードの機能を移してきた.
さらに拡張子の補完機能を追加してユーザがdln/dlopenの差を意識する
必要のないようにした.
* string.c(sub,sub): イテレータとしても動作するように.
* object.c: init_object -> initialize.
Mon Apr 24 14:22:39 1995 Yukihiro Matsumoto (matz@ix-02)
* NEWS-OS 3.4対応
* io.c: Solarisのstdioの動作が違うようだ.signalでEOFを返してしま
う….perlでも同様の問題がある.
Fri Apr 21 20:04:39 1995 Yukihiro Matsumoto (matz@ix-02)
* version 0.75
* signal.c: trapがなくなっていた.うーむ.
* configure: Solaris 2.3対応.
* io.c: #elifのないcppもある.
* dir.c: autoconf 2.xへの対応が不十分
Thu Apr 20 12:31:24 1995 Yukihiro Matsumoto (matz@ix-02)
* version 0.74
* env.h, gc.c, regex.c: IRIXへの移植対応
* configure: picを生成するoptionの検出のため,システムタイプをチェッ
クするように.
Tue Apr 18 19:08:17 1995 Yukihiro Matsumoto (matz@ix-02)
* gc.c(xrealloc): ptr=nilの時,malloc()と同じ働きを
* array.c(astore): 空の配列の0番目の要素に代入するとsize=0で
realloc()を呼んでいた.
* configure, glob.c: Solaris 2.xでコンパイルできるように
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 104 |
1 files changed, 68 insertions, 36 deletions
diff --git a/configure.in b/configure.in index 13468317ba..77153b6ed0 100644 --- a/configure.in +++ b/configure.in @@ -1,38 +1,52 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(ruby.h) + PROGS="ruby" AC_SUBST(PROGS)dnl + +dnl Checks for programs. AC_PROG_CC AC_PROG_GCC_TRADITIONAL AC_PROG_YACC AC_PROG_INSTALL -AC_CHECK_HEADERS(unistd.h stdlib.h syscall.h a.out.h dirent.h\ - string.h utime.h) +AC_PROG_MAKE_SET + +dnl Checks for libraries. +AC_CHECK_LIB(m, pow) +AC_CHECK_LIB(crypt, crypt) +AC_CHECK_LIB(dl, dlopen, [:]) + +dnl Checks for header files. AC_HEADER_DIRENT +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h limits.h sys/file.h sys/ioctl.h sys/time.h unistd.h\ + stdlib.h syscall.h a.out.h string.h utime.h) + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_TYPE_UID_T +AC_TYPE_SIZE_T +AC_STRUCT_ST_BLKSIZE +AC_STRUCT_ST_BLOCKS +AC_STRUCT_ST_RDEV + +dnl Checks for library functions. AC_TYPE_GETGROUPS AC_TYPE_SIGNAL -AC_CHECK_LIB(m, pow, [LIBS="$LIBS -lm"]) -AC_CHECK_LIB(dbm, dbm_open, AC_DEFINE(HAVE_LIBDBM)) -AC_CHECK_LIB(socket, socket, AC_DEFINE(HAVE_LIBSOKCET)) -AC_CHECK_LIB(crypt, crypt, [LIBS="$LIBS -lcrypt"]) +AC_FUNC_ALLOCA AC_FUNC_VFORK AC_REPLACE_FUNCS(memmove mkdir strerror strftime\ strstr strtoul strdup) -AC_CHECK_FUNCS(fmod killpg socket random wait4 waitpid syscall getcwd\ +AC_CHECK_FUNCS(fmod killpg random wait4 waitpid syscall getcwd\ setruid seteuid setreuid setrgid setegid setregid\ getpriority sigprocmask dlopen utimes) AC_CHECK_FUNC(setenv, [], AC_CHECK_FUNCS(putenv)) -if test $ac_cv_func strftime = no; then +if test "$ac_cv_func strftime" = no; then AC_STRUCT_TIMEZONE AC_TRY_LINK([], [extern int daylight; int i = daylight;], AC_DEFINE(HAVE_DAYLIGHT)) fi -AC_FUNC_ALLOCA AC_C_BIGENDIAN -AC_STRUCT_ST_BLKSIZE -AC_STRUCT_ST_BLOCKS -AC_STRUCT_ST_RDEV AC_MSG_CHECKING(std stdio) AC_CACHE_VAL(rb_cv_stdstdio, [AC_TRY_COMPILE([#include <stdio.h>], @@ -40,7 +54,7 @@ AC_CACHE_VAL(rb_cv_stdstdio, rb_cv_stdstdio=yes, rb_cv_stdstdio=no)]) AC_MSG_RESULT($rb_cv_stdstdio) -if test $rb_cv_stdstdio = yes; then +if test "$rb_cv_stdstdio" = yes; then AC_DEFINE(STDSTDIO) fi AC_MSG_CHECKING(struct passwd) @@ -51,9 +65,10 @@ AC_EGREP_HEADER(pw_class, pwd.h, AC_DEFINE(PW_CLASS)) AC_EGREP_HEADER(pw_comment, pwd.h, AC_DEFINE(PW_COMMENT)) AC_EGREP_HEADER(pw_expire, pwd.h, AC_DEFINE(PW_EXPIRE)) AC_MSG_RESULT(done) -AC_MSG_CHECKING(whether matz's dln works) -cp confdefs.h config.h -if test $ac_cv_header_a_out_h = yes; then + +if test "$ac_cv_header_a_out_h" = yes; then + AC_MSG_CHECKING(whether matz's dln works) + cp confdefs.h config.h AC_CACHE_VAL(rb_cv_mydln, [AC_TRY_COMPILE([ #define USE_MY_DLN @@ -63,41 +78,58 @@ if test $ac_cv_header_a_out_h = yes; then rb_cv_mydln=yes, rb_cv_mydln=no)]) AC_MSG_RESULT($rb_cv_mydln) - if test $rb_cv_mydln = yes; then + if test "$rb_cv_mydln" = yes; then AC_DEFINE(USE_MY_DLN) fi fi AC_SUBST(STATIC)dnl AC_SUBST(CCDLFLAGS)dnl -AC_SUBST(EXT)dnl +AC_SUBST(LDDLFLAGS)dnl +AC_SUBST(DLEXT)dnl AC_SUBST(EXTMAKE)dnl EXTMAKE= STATIC= -if test $ac_cv_func_dlopen = yes -o $rb_cv_mydln = yes; then +if test "$rb_cv_mydln" = yes; then EXTMAKE=extmake - if test "$rb_cv_mydln" = yes; then - if test "$HOSTTYPE" = sparc; then - if test $ac_cv_prog_CC = gcc; then - STATIC=-static - else - STATIC=-Bstatic - fi - fi - EXT=o - CCDLFLAGS= - LDCMD= - else - EXT=so - if test $ac_cv_prog_CC = gcc; then - CCDLFLAGS=-fpic + if test "$HOSTTYPE" = sparc; then + if test "$ac_cv_prog_CC" = gcc; then + STATIC=-static else - CCDLFLAGS=-pic + STATIC=-Bstatic fi fi + DLEXT=o + AC_DEFINE(DLEXT, ".o") + CCDLFLAGS= + LDCMD= +elif test "$ac_cv_lib_dl" = yes || test "$ac_cv_func_dlopen" = yes; then + AC_CANONICAL_HOST + echo "please mail this value to matz -- $host_os" + EXTMAKE=extmake + DLEXT=so + AC_DEFINE(DLEXT, ".so") + if test "$ac_cv_prog_CC" = gcc; then + CCDLFLAGS=-fpic + else + case "$host_os" in + hpux*) CCDLFLAGS='+z' ;; + solaris*|irix*) CCDLFLAGS='-K pic' ;; + sunos*) CCDLFLAGS='-pic' ;; + svr4*|esix*) CCDLFLAGS='-Kpic' ;; + *) CCDLFLAGS='' ;; + esac + fi + case "$host_os" in + hpux*) LDDLFLAGS='-b' ;; + solaris*) LDDLFLAGS='-G' ;; + sunos*) LDDLFLAGS='-assert nodefinitions' ;; + svr4*|esix*) LDDLFLAGS="-G $LDFLAGS" ;; + *) LDDLFLAGS="" ;; + esac fi cp confdefs.h config.h -AC_OUTPUT(Makefile ext/Makefile) +AC_OUTPUT(Makefile ext/extmk.rb) |