[#7102] Ruby 1.3.4-990611 — Yukihiro Matsumoto <matz@...>

Ruby 1.3.4-990611 is out, check out:

20 messages 1999/06/11

[#7223] Ruby 1.3.4-990625 — Yukihiro Matsumoto <matz@...>

Ruby 1.3.4-990625 is out, check out:

14 messages 1999/06/25
[#7224] -Wl,-rpath on Linux (Re: Ruby 1.3.4-990625) — Ryo HAYASAKA <hayasaka@...21.u-aizu.ac.jp> 1999/06/25

早坂@会津大学です。

[ruby-dev:7124] Re: --enable-shared support

From: Katsuyuki Komatsu <komatsu@...>
Date: 1999-06-16 03:53:27 UTC
List: ruby-dev #7124
小松です。

In the message of [ruby-dev:7119] Re: --enable-shared support
    on 1999/6/15 19:09:21 Katsuyuki Komatsu <komatsu@sarion.co.jp> wrote:
|拡張ライブラリの方は……ext/extmk.rb.inとlib/mkmf.rbに
|    INSTALL_DLLIB = $(INSTALL) -m 0555
|とかを足してそちらを使うか、configure.inに追加して、
|@INSTALL_DLLIB@を参照する形かな。

定義する位置が適当かどうかわかりませんが、configure.inから
変更してみました。

[ruby-dev:7110]のconfigure.inの変更分も入っています。

Index: configure.in
===================================================================
RCS file: /home/cvs/ruby/configure.in,v
retrieving revision 1.1.1.2.2.21
diff -u -r1.1.1.2.2.21 configure.in
--- configure.in	1999/06/09 09:21:05	1.1.1.2.2.21
+++ configure.in	1999/06/16 00:38:23
@@ -86,6 +86,9 @@
 AC_PROG_LN_S
 AC_PROG_MAKE_SET
 
+INSTALL_DLLIB='${INSTALL} -m 0555'
+AC_SUBST(INSTALL_DLLIB)
+
 # checks for UNIX variants that set C preprocessor variables
 AC_MINIX
 
@@ -667,7 +670,7 @@
        [enable_shared=$enableval])
 if test "$enable_shared" = 'yes'; then
   LIBRUBY='$(LIBRUBY_SO)'
-  LIBRUBYARG='-L./ -l$(RUBY_INSTALL_NAME)'
+  LIBRUBYARG='-L. -l$(RUBY_INSTALL_NAME)'
   CFLAGS="$CFLAGS $CCDLFLAGS"
   case "$host_os" in
     sunos4*|linux*)
@@ -688,7 +691,11 @@
  	*) LIBRUBY_ALIASES= ;;  # a.out platforms
 	esac
  	;;
+    solaris*)
+	XLDFLAGS='-R${prefix}/lib'
+ 	;;
     hpux*)
+	XLDFLAGS='-Wl,+s,+b,$(prefix)/lib'
 	LIBRUBY_SO='lib$(RUBY_INSTALL_NAME).sl.$(MAJOR).$(MINOR).$(TEENY)'
 	LIBRUBY_ALIASES='lib$(RUBY_INSTALL_NAME).sl.$(MAJOR).$(MINOR) lib$(RUBY_INSTALL_NAME).sl'
 	;;
@@ -700,7 +707,7 @@
 	    LIBRUBY_LDSHARED='/usr/ccs/bin/ld'
 	    LIBRUBY_DLDFLAGS='-bE:ruby.imp -bM:SRE -bnoentry'
 	fi
-	LIBRUBYARG='-L./ -Wl,lib$(RUBY_INSTALL_NAME).so'
+	LIBRUBYARG='-L${prefix}/lib -Wl,lib$(RUBY_INSTALL_NAME).so'
 	SOLIBS='-lm -lc'
 	;;
     cygwin*)
Index: ext/extmk.rb.in
===================================================================
RCS file: /home/cvs/ruby/ext/extmk.rb.in,v
retrieving revision 1.1.1.3.2.21
diff -u -r1.1.1.3.2.21 extmk.rb.in
--- ext/extmk.rb.in	1999/06/09 09:21:34	1.1.1.3.2.21
+++ ext/extmk.rb.in	1999/06/16 00:38:23
@@ -392,6 +392,7 @@
 DLLIB = $(TARGET).#{$static ? "a" : "@DLEXT@"}
 
 INSTALL = #{$dots}@INSTALL@
+INSTALL_DLLIB = @INSTALL_DLLIB@
 INSTALL_DATA = @INSTALL_DATA@
 
 binsuffix = @binsuffix@
@@ -414,7 +415,7 @@
 EOS
   if !$static
     mfile.printf "\
-	$(INSTALL) $(DLLIB) $(DESTDIR)$(archdir)/$(DLLIB)
+	$(INSTALL_DLLIB) $(DLLIB) $(DESTDIR)$(archdir)/$(DLLIB)
 "
   end
   install_rb(mfile)
Index: lib/mkmf.rb
===================================================================
RCS file: /home/cvs/ruby/lib/mkmf.rb,v
retrieving revision 1.1.1.2.2.17
diff -u -r1.1.1.2.2.17 mkmf.rb
--- lib/mkmf.rb	1999/05/25 08:26:20	1.1.1.2.2.17
+++ lib/mkmf.rb	1999/06/16 00:38:24
@@ -34,9 +34,11 @@
 $libdir = CONFIG["libdir"]+"/ruby/"+CONFIG["MAJOR"]+"."+CONFIG["MINOR"]
 $archdir = $libdir+"/"+CONFIG["arch"]
 $install = CONFIG["INSTALL_PROGRAM"]
+$install_dllib = CONFIG["INSTALL_DLLIB"]
 $install_data = CONFIG["INSTALL_DATA"]
 if $install =~ %r!^[^\s/]+/! then
   $install = CONFIG["compile_dir"]+"/"+$install
+  $install_dllib = CONFIG["compile_dir"]+"/"+$install_dllib
   $install_data = CONFIG["compile_dir"]+"/"+$install_data
 end
 
@@ -371,6 +373,7 @@
 DLLIB = $(TARGET).#{CONFIG["DLEXT"]}
 
 INSTALL = #{$install}
+INSTALL_DLLIB = #{$install_dllib}
 INSTALL_DATA = #{$install_data}
 
 binsuffix = #{CONFIG["binsuffix"]}
@@ -388,7 +391,7 @@
 $(archdir)/$(DLLIB): $(DLLIB)
 	@test -d $(libdir) || mkdir $(libdir)
 	@test -d $(archdir) || mkdir $(archdir)
-	$(INSTALL) $(DLLIB) $(archdir)/$(DLLIB)
+	$(INSTALL_DLLIB) $(DLLIB) $(archdir)/$(DLLIB)
 EOMF
   install_rb(mfile)
   mfile.printf "\n"

--
小松克行 / Katsuyuki Komatsu <komatsu@sarion.co.jp>

In This Thread