diff options
author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-12-12 10:21:41 +0000 |
---|---|---|
committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-12-12 10:21:41 +0000 |
commit | b60172917f0403a4ac83d4862530509b3935ad7b (patch) | |
tree | b4b0d72412389ed93418b3b2bb358b66f0f79fef | |
parent | f744cfd8d7cc51d90ae863589ded64c60030b220 (diff) |
* configure.in (RUBY_PROG_GNU_LD): add $CFLAGS, $CPPFLAGS, $LDFLAGS
to the option of $CC.
* configure.in: set LIBRUBYARG to '-l$(RUBY_SO_NAME)' if the
target os is cygwin and --disable-shared option is supplied.
* lib/mkmf.rb (init_mkmf): expand config["LIBRUBY"] and
config["LIBRUBY_A"]. don't link $LIBRUBYARG_STATIC if
--disable-shared option is supplied.
* configure.in (RUBY_CPPOUTFILE): should be a better message.
* ext/Win32API/extconf.rb: join with a space.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 16 | ||||
-rw-r--r-- | configure.in | 21 | ||||
-rw-r--r-- | ext/Win32API/extconf.rb | 2 | ||||
-rw-r--r-- | lib/mkmf.rb | 6 |
4 files changed, 35 insertions, 10 deletions
@@ -1,3 +1,19 @@ +Thu Dec 12 18:19:14 2002 WATANABE Hirofumi <eban@ruby-lang.org> + + * configure.in (RUBY_PROG_GNU_LD): add $CFLAGS, $CPPFLAGS, $LDFLAGS + to the option of $CC. + + * configure.in: set LIBRUBYARG to '-l$(RUBY_SO_NAME)' if the + target os is cygwin and --disable-shared option is supplied. + + * lib/mkmf.rb (init_mkmf): expand config["LIBRUBY"] and + config["LIBRUBY_A"]. don't link $LIBRUBYARG_STATIC if + --disable-shared option is supplied. + + * configure.in (RUBY_CPPOUTFILE): should be a better message. + + * ext/Win32API/extconf.rb: join with a space. + Thu Dec 12 17:27:19 2002 Yukihiro Matsumoto <matz@ruby-lang.org> * re.c (rb_reg_hash): define Regexp#hash to make regexps to be diff --git a/configure.in b/configure.in index df9a331e62..2765072790 100644 --- a/configure.in +++ b/configure.in @@ -18,18 +18,24 @@ test "$rb_cv_mingw32" = yes && target_os="mingw32" esac]) AC_DEFUN(RUBY_CPPOUTFILE, +[AC_CACHE_CHECK(whether ${CPP} accepts -o, rb_cv_cppoutfile, [cppflags=$CPPFLAGS -AC_CACHE_CHECK(whether ${CPP} accepts -o, rb_cv_cppoutfile, -[CPPFLAGS='-o conftest.i' -AC_TRY_CPP([], rb_cv_cppoutfile="$CPPFLAGS", rb_cv_cppoutfile=' >conftest.i') +CPPFLAGS='-o conftest.i' +AC_TRY_CPP([], rb_cv_cppoutfile=yes, rb_cv_cppoutfile=no) +CPPFLAGS=$cppflags rm -f conftest*]) -CPPOUTFILE="$rb_cv_cppoutfile" -AC_SUBST(CPPOUTFILE) -CPPFLAGS=$cppflags]) +if test "$rb_cv_cppoutfile" = yes; then + CPPOUTFILE='-o conftest.i' +elif test "$rb_cv_cppoutfile" = no; then + CPPOUTFILE='> conftest.i' +elif test -n "$rb_cv_cppoutfile"; then + CPPOUTFILE="$rb_cv_cppoutfile" +fi +AC_SUBST(CPPOUTFILE)]) AC_DEFUN(RUBY_PROG_GNU_LD, [AC_CACHE_CHECK(whether the linker is GNU ld, rb_cv_prog_gnu_ld, -[if `$CC --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null; then +[if `$CC $CFLAGS $CPPFLAGS $LDFLAGS --print-prog-name=ld` -v 2>&1 | grep "GNU ld" > /dev/null; then rb_cv_prog_gnu_ld=yes else rb_cv_prog_gnu_ld=no @@ -1161,6 +1167,7 @@ case "$target_os" in LIBRUBY_SO=dummy LIBRUBY_DLDFLAGS='' LIBRUBY='lib$(RUBY_SO_NAME).a' + LIBRUBYARG='-l$(RUBY_SO_NAME)' fi LIBRUBY_ALIASES='' FIRSTMAKEFILE=GNUmakefile:cygwin/GNUmakefile.in diff --git a/ext/Win32API/extconf.rb b/ext/Win32API/extconf.rb index d7658cfff8..8117a38720 100644 --- a/ext/Win32API/extconf.rb +++ b/ext/Win32API/extconf.rb @@ -2,7 +2,7 @@ require 'mkmf' if have_header("windows.h") and have_library("kernel32") if Config::CONFIG["CC"] =~ /gcc/ - $CFLAGS += "-fno-defer-pop -fno-omit-frame-pointer" + $CFLAGS += " -fno-defer-pop -fno-omit-frame-pointer" end create_makefile("Win32API") end diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 42d96ef590..bf661346bf 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -767,6 +767,7 @@ all: $(DLLIB) end def init_mkmf(config = CONFIG) + $enable_shared = config['ENABLE_SHARED'] == 'yes' $defs = [] $CFLAGS = with_config("cflags", arg_config("CFLAGS", config["CFLAGS"])).dup $CPPFLAGS = with_config("cppflags", arg_config("CPPFLAGS", config["CPPFLAGS"])).dup @@ -776,16 +777,17 @@ def init_mkmf(config = CONFIG) $LIBEXT = config['LIBEXT'].dup $OBJEXT = config["OBJEXT"].dup $LIBS = "#{config['LIBS']} #{config['DLDLIBS']}" - $LIBRUBYARG = config['LIBRUBYARG'] + $LIBRUBYARG = "" $LIBRUBYARG_STATIC = config['LIBRUBYARG_STATIC'] $LIBRUBYARG_SHARED = config['LIBRUBYARG_SHARED'] $LIBPATH = [] $objs = nil $libs = "" - if config['ENABLE_SHARED'] == 'yes' or config["LIBRUBY"] != config["LIBRUBY_A"] + if $enable_shared or Config.expand(config["LIBRUBY"].dup) != Config.expand(config["LIBRUBY_A"].dup) $LIBPATH = ["$(topdir)"] $LIBPATH.unshift("$(libdir)") unless $extmk or defined? CROSS_COMPILING + $LIBRUBYARG = config['LIBRUBYARG'] end $LIBPATH << "$(archdir)" |