[30398] trunk/dports/lang/ruby

source_changes at macosforge.org source_changes at macosforge.org
Fri Oct 26 09:01:47 PDT 2007


Revision: 30398
          http://trac.macosforge.org/projects/macports/changeset/30398
Author:   epimenov at macports.org
Date:     2007-10-26 09:01:47 -0700 (Fri, 26 Oct 2007)

Log Message:
-----------
bump to 1.8.6-p110 + patches from apple (make it work on leopard)

Modified Paths:
--------------
    trunk/dports/lang/ruby/Portfile
    trunk/dports/lang/ruby/files/patch-configure.in
    trunk/dports/lang/ruby/files/patch-mkconfig.rb
    trunk/dports/lang/ruby/files/patch-mkmf.rb
    trunk/dports/lang/ruby/files/patch-ruby.c
    trunk/dports/lang/ruby/files/patch-thread-hooks

Added Paths:
-----------
    trunk/dports/lang/ruby/files/dot-darwin.diff
    trunk/dports/lang/ruby/files/etc-irbrc.diff
    trunk/dports/lang/ruby/files/ignore-gsetcontext.diff
    trunk/dports/lang/ruby/files/md5_sha1_commoncrypto.diff
    trunk/dports/lang/ruby/files/use-dyld.diff
    trunk/dports/lang/ruby/files/use-setreugid.diff
    trunk/dports/lang/ruby/files/words-bigendian-from-arch.diff

Modified: trunk/dports/lang/ruby/Portfile
===================================================================
--- trunk/dports/lang/ruby/Portfile	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/Portfile	2007-10-26 16:01:47 UTC (rev 30398)
@@ -2,7 +2,7 @@
 PortSystem		1.0
 
 name			ruby
-version			1.8.6
+version			1.8.6-p110
 
 categories		lang ruby
 maintainers		pguyot at kallisys.net
@@ -15,12 +15,13 @@
 					straight-forward, extensible, and portable.
 homepage		http://www.ruby-lang.org/
 master_sites	ruby:1.8
+				
 dist_subdir		ruby
-checksums		ruby-1.8.6.tar.gz \
-					md5 23d2494aa94e7ae1ecbbb8c5e1507683 \
-					sha1 c915f65e1e42dbedc43acabcbef2bbe03233bf20 \
-					rmd160 a1ad902bb1311233cd3cf9db52ab2ec076a709f5
-
+checksums		ruby-1.8.6-p110.tar.gz \
+					md5 5d9f903eae163cda2374ef8fdba5c0a5 \
+					sha1 0954a9d308d12393e2a6880743f752eb171bbe81 \
+					rmd160 6495c22a94149e4dbc3608f0bf2f0c75683060e0
+					
 platforms		darwin
 
 depends_lib		port:libiconv \
@@ -64,6 +65,16 @@
 	destroot.env	DYLD_LIBRARY_PATH=${destroot}${prefix}/lib
 }
 
+platform darwin 9 {
+	patchfiles-append      	dot-darwin.diff \
+							etc-irbrc.diff \
+							ignore-gsetcontext.diff \
+							md5_sha1_commoncrypto.diff \
+							use-dyld.diff \
+							use-setreugid.diff \
+							words-bigendian-from-arch.diff
+}
+
 variant tk conflicts mactk {
 	configure.args-delete	--without-tk 
 	configure.args-append	--with-tk 

Added: trunk/dports/lang/ruby/files/dot-darwin.diff
===================================================================
--- trunk/dports/lang/ruby/files/dot-darwin.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/dot-darwin.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,11 @@
+--- lib/rdoc/options.rb.orig	2007-10-23 17:36:41.000000000 +0200
++++ lib/rdoc/options.rb	2007-10-23 17:37:12.000000000 +0200
+@@ -544,7 +544,7 @@
+   # so we'll bypass the test under Windows
+ 
+   def check_diagram
+-    return if RUBY_PLATFORM =~ /win/
++    return if RUBY_PLATFORM =~ /mswin32|cygwin|mingw|bccwin/
+ 
+     ok = false
+     ver = nil

Added: trunk/dports/lang/ruby/files/etc-irbrc.diff
===================================================================
--- trunk/dports/lang/ruby/files/etc-irbrc.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/etc-irbrc.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,12 @@
+--- lib/irb/init.rb.orig	2007-10-23 17:43:49.000000000 +0200
++++ lib/irb/init.rb	2007-10-23 17:43:03.000000000 +0200
+@@ -243,6 +243,9 @@
+     yield proc{|rc| home+"/irb#{rc.sub(/\A_?/, '.')}"}
+     yield proc{|rc| home+"/_irb#{rc}"}
+     yield proc{|rc| home+"/$irb#{rc}"}
++    unless RUBY_PLATFORM =~ /mswin32|cygwin|mingw|bccwin/
++      yield proc{|rc| "/etc/irb#{rc}"}
++    end
+   end
+ 
+   # loading modules

Added: trunk/dports/lang/ruby/files/ignore-gsetcontext.diff
===================================================================
--- trunk/dports/lang/ruby/files/ignore-gsetcontext.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/ignore-gsetcontext.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,23 @@
+--- node.h.orig	2007-10-23 17:09:10.000000000 +0200
++++ node.h	2007-10-23 17:08:19.000000000 +0200
+@@ -374,9 +374,17 @@
+ void rb_add_event_hook _((rb_event_hook_func_t,rb_event_t));
+ int rb_remove_event_hook _((rb_event_hook_func_t));
+ 
+-#if defined(HAVE_GETCONTEXT) && defined(HAVE_SETCONTEXT)
+-#include <ucontext.h>
+-#define USE_CONTEXT
++#if defined(HAVE_GETCONTEXT) && defined(HAVE_SETCONTEXT) 
++# if defined(__APPLE__)
++#   include <AvailabilityMacros.h>
++#   if MAC_OS_X_VERSION_MAX_ALLOWED <= 1040
++#     include <ucontext.h>
++#     define USE_CONTEXT
++#   endif
++# else
++#   include <ucontext.h>
++#   define USE_CONTEXT
++# endif
+ #endif
+ #include <setjmp.h>
+ #include "st.h"

Added: trunk/dports/lang/ruby/files/md5_sha1_commoncrypto.diff
===================================================================
--- trunk/dports/lang/ruby/files/md5_sha1_commoncrypto.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/md5_sha1_commoncrypto.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,46 @@
+--- ext/digest/md5/extconf.rb.orig	2007-10-23 18:31:40.000000000 +0200
++++ ext/digest/md5/extconf.rb	2007-10-23 18:26:33.000000000 +0200
+@@ -11,6 +11,7 @@
+ dir_config("openssl")
+ 
+ if !with_config("bundled-md5") &&
++   !have_header("CommonCrypto/CommonDigest.h") &&
+     have_library("crypto") && have_header("openssl/md5.h")
+   $objs << "md5ossl.#{$OBJEXT}"
+ 
+--- ext/digest/md5/md5.h.orig	2007-10-23 18:31:52.000000000 +0200
++++ ext/digest/md5/md5.h	2007-10-23 18:28:19.000000000 +0200
+@@ -48,6 +48,10 @@
+ 
+ #include "defs.h"
+ 
++#if defined(HAVE_COMMONCRYPTO_COMMONDIGEST_H)
++# include <CommonCrypto/CommonDigest.h>
++#endif
++
+ /*
+  * This code has some adaptations for the Ghostscript environment, but it
+  * will compile and run correctly in any environment with 8-bit chars and
+--- ext/digest/sha1/extconf.rb.orig	2007-10-23 18:42:07.000000000 +0200
++++ ext/digest/sha1/extconf.rb	2007-10-23 18:43:01.000000000 +0200
+@@ -11,6 +11,7 @@
+ dir_config("openssl")
+ 
+ if !with_config("bundled-sha1") &&
++   !have_header("CommonCrypto/CommonDigest.h") &&
+     have_library("crypto") && have_header("openssl/sha.h")
+   $objs << "sha1ossl.#{$OBJEXT}"
+ else
+--- ext/digest/sha1/sha1.h.orig	2007-10-23 18:42:14.000000000 +0200
++++ ext/digest/sha1/sha1.h	2007-10-23 18:43:23.000000000 +0200
+@@ -13,6 +13,10 @@
+ 
+ #include "defs.h"
+ 
++#if defined(HAVE_COMMONCRYPTO_COMMONDIGEST_H)
++# include <CommonCrypto/CommonDigest.h>
++#endif
++
+ typedef struct {
+ 	uint32_t state[5];
+ 	uint32_t count[2];  

Modified: trunk/dports/lang/ruby/files/patch-configure.in
===================================================================
--- trunk/dports/lang/ruby/files/patch-configure.in	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/files/patch-configure.in	2007-10-26 16:01:47 UTC (rev 30398)
@@ -1,6 +1,6 @@
 --- configure.in.orig	2006-08-07 19:37:43.000000000 -0700
 +++ configure.in	2006-09-20 16:57:30.000000000 -0700
-@@ -1533,9 +1533,28 @@
+@@ -1575,9 +1575,28 @@
  AC_DEFINE_UNQUOTED(RUBY_SITE_LIB, "${RUBY_SITE_LIB_PATH}")
  AC_DEFINE_UNQUOTED(RUBY_SITE_LIB2, "${RUBY_SITE_LIB_PATH2}")
  
@@ -29,7 +29,7 @@
  
  configure_args=$ac_configure_args
  AC_SUBST(configure_args)dnl
-@@ -1548,6 +1567,8 @@
+@@ -1590,6 +1609,8 @@
  
      AC_DEFINE_UNQUOTED(RUBY_SITE_THIN_ARCHLIB,
                   "${RUBY_SITE_LIB_PATH}/" __ARCHITECTURE__ "-${target_os}")
@@ -38,7 +38,7 @@
      AC_DEFINE_UNQUOTED(RUBY_PLATFORM, __ARCHITECTURE__ "-${target_os}")
  else
      arch="${target_cpu}-${target_os}"
-@@ -1555,12 +1576,15 @@
+@@ -1597,12 +1618,15 @@
  fi
  
  case "$target_os" in

Modified: trunk/dports/lang/ruby/files/patch-mkconfig.rb
===================================================================
--- trunk/dports/lang/ruby/files/patch-mkconfig.rb	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/files/patch-mkconfig.rb	2007-10-26 16:01:47 UTC (rev 30398)
@@ -1,6 +1,6 @@
 --- mkconfig.rb.orig	2005-11-10 15:22:03.000000000 -0800
 +++ mkconfig.rb	2006-01-08 08:36:13.000000000 -0800
-@@ -112,6 +112,14 @@
+@@ -143,6 +143,14 @@
    CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
    CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
    CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"

Modified: trunk/dports/lang/ruby/files/patch-mkmf.rb
===================================================================
--- trunk/dports/lang/ruby/files/patch-mkmf.rb	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/files/patch-mkmf.rb	2007-10-26 16:01:47 UTC (rev 30398)
@@ -10,7 +10,7 @@
  
  $mswin = /mswin/ =~ RUBY_PLATFORM
  $bccwin = /bccwin/ =~ RUBY_PLATFORM
-@@ -410,7 +413,7 @@
+@@ -417,7 +420,7 @@
  
  def try_func(func, libs, headers = nil, &b)
    headers = cpp_include(headers)
@@ -19,7 +19,7 @@
  #{COMMON_HEADERS}
  #{headers}
  /*top*/
-@@ -422,6 +425,11 @@
+@@ -429,6 +435,11 @@
  int main() { return 0; }
  int t() { #{func}(); return 0; }
  SRC
@@ -31,7 +31,7 @@
  end
  
  def try_var(var, headers = nil, &b)
-@@ -1087,6 +1095,7 @@
+@@ -1097,6 +1105,7 @@
  RUBY_SO_NAME = #{CONFIG['RUBY_SO_NAME']}
  arch = #{CONFIG['arch']}
  sitearch = #{CONFIG['sitearch']}

Modified: trunk/dports/lang/ruby/files/patch-ruby.c
===================================================================
--- trunk/dports/lang/ruby/files/patch-ruby.c	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/files/patch-ruby.c	2007-10-26 16:01:47 UTC (rev 30398)
@@ -1,16 +1,16 @@
 --- ruby.c.orig	2006-08-15 19:11:21.000000000 -0700
 +++ ruby.c	2006-09-20 17:32:18.000000000 -0700
-@@ -298,6 +298,13 @@
-     ruby_incpush(RUBY_RELATIVE(RUBY_SITE_ARCHLIB));
-     ruby_incpush(RUBY_RELATIVE(RUBY_SITE_LIB));
+@@ -322,6 +32,13 @@
+     incpush(RUBY_RELATIVE(RUBY_SITE_ARCHLIB));
+     incpush(RUBY_RELATIVE(RUBY_SITE_LIB));
  
-+    ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB2));
++    incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB2));
 +#ifdef RUBY_VENDOR_THIN_ARCHLIB
-+    ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_THIN_ARCHLIB));
++    incpush(RUBY_RELATIVE(RUBY_VENDOR_THIN_ARCHLIB));
 +#endif
-+    ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_ARCHLIB));
-+    ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB));
-+
-     ruby_incpush(RUBY_RELATIVE(RUBY_LIB));
++    incpush(RUBY_RELATIVE(RUBY_VENDOR_ARCHLIB));
++    incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB));
++    
+     incpush(RUBY_RELATIVE(RUBY_LIB));
  #ifdef RUBY_THIN_ARCHLIB
-     ruby_incpush(RUBY_RELATIVE(RUBY_THIN_ARCHLIB));
+     incpush(RUBY_RELATIVE(RUBY_THIN_ARCHLIB));

Modified: trunk/dports/lang/ruby/files/patch-thread-hooks
===================================================================
--- trunk/dports/lang/ruby/files/patch-thread-hooks	2007-10-26 15:55:49 UTC (rev 30397)
+++ trunk/dports/lang/ruby/files/patch-thread-hooks	2007-10-26 16:01:47 UTC (rev 30398)
@@ -2,7 +2,7 @@
 ==================================================================
 --- ruby.h	(/trunk)	(revision 16)
 +++ ruby.h	(/branches/thread-hooks)	(revision 16)
-@@ -724,6 +724,19 @@
+@@ -749,6 +749,19 @@
  void ruby_native_thread_kill _((int));
  #endif
  
@@ -26,7 +26,7 @@
 ==================================================================
 --- eval.c	(/trunk)	(revision 16)
 +++ eval.c	(/branches/thread-hooks)	(revision 16)
-@@ -227,6 +227,25 @@
+@@ -218,6 +218,25 @@
  
  #include <sys/stat.h>
  
@@ -52,7 +52,7 @@
  VALUE rb_cProc;
  VALUE rb_cBinding;
  static VALUE proc_invoke _((VALUE,VALUE,VALUE,VALUE));
-@@ -10131,6 +10150,8 @@
+@@ -10167,6 +10186,8 @@
  thread_free(th)
      rb_thread_t th;
  {
@@ -61,7 +61,7 @@
      if (th->stk_ptr) free(th->stk_ptr);
      th->stk_ptr = 0;
  #ifdef __ia64__
-@@ -10181,6 +10202,8 @@
+@@ -10219,6 +10240,8 @@
      VALUE *pos;
      int len;
      static VALUE tval;
@@ -70,7 +70,7 @@
  
      len = ruby_stack_length(&pos);
      th->stk_len = 0;
-@@ -10313,6 +10336,8 @@
+@@ -10418,6 +10441,8 @@
  
      if (!th->stk_ptr) rb_bug("unsaved context");
  
@@ -79,7 +79,7 @@
  #if STACK_GROW_DIRECTION < 0
      if (&v > th->stk_pos) stack_extend(th, exit);
  #elif STACK_GROW_DIRECTION > 0
-@@ -10452,6 +10477,41 @@
+@@ -10534,6 +10559,41 @@
      rb_thread_main_jump(e, RESTORE_RAISE);
  }
  
@@ -121,7 +121,7 @@
  static void
  copy_fds(dst, src, max)
      fd_set *dst, *src;
-@@ -11631,6 +11691,8 @@
+@@ -11770,6 +11830,8 @@
      THREAD_ALLOC(th);
      th->thread = Data_Wrap_Struct(klass, thread_mark, thread_free, th);
  

Added: trunk/dports/lang/ruby/files/use-dyld.diff
===================================================================
--- trunk/dports/lang/ruby/files/use-dyld.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/use-dyld.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,35 @@
+--- dln.c.orig	2007-10-23 19:59:39.000000000 +0200
++++ dln.c	2007-10-23 20:06:45.000000000 +0200
+@@ -87,13 +87,21 @@
+ 
+ #ifndef NO_DLN_LOAD
+ 
+-#if defined(HAVE_DLOPEN) && !defined(USE_DLN_A_OUT) && !defined(_AIX) && !defined(__APPLE__) && !defined(_UNICOSMP)
++#if defined(HAVE_DLOPEN) && !defined(USE_DLN_A_OUT) && !defined(_AIX) && !defined(_UNICOSMP)
+ /* dynamic load with dlopen() */
+ # define USE_DLN_DLOPEN
+ #endif
+ 
++#if defined(USE_DLN_DLOPEN) && defined(__APPLE__)
++/* Mac OS X system lesser than 10.4 should use the NSSymbol APIs instead of dlopen/dlsym. */
++# include <AvailabilityMacros.h>
++# if MAC_OS_X_VERSION_MAX_ALLOWED < 1040
++#  undef USE_DLN_DLOPEN
++# endif
++#endif
++
+ #ifndef FUNCNAME_PATTERN
+-# if defined(__hp9000s300) ||  (defined(__NetBSD__) && !defined(__ELF__)) || defined(__BORLANDC__) || (defined(__FreeBSD__) && !defined(__ELF__)) || (defined(__OpenBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__WATCOMC__) || defined(__APPLE__)
++# if defined(__hp9000s300) ||  (defined(__NetBSD__) && !defined(__ELF__)) || defined(__BORLANDC__) || (defined(__FreeBSD__) && !defined(__ELF__)) || (defined(__OpenBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__WATCOMC__) || (defined(__APPLE__) && !defined(USE_DLN_DLOPEN))
+ #  define FUNCNAME_PATTERN "_Init_%s"
+ # else
+ #  define FUNCNAME_PATTERN "Init_%s"
+@@ -1403,7 +1411,7 @@
+     }
+ #endif /* _AIX */
+ 
+-#if defined(NeXT) || defined(__APPLE__)
++#if defined(NeXT) || (defined(__APPLE__) && !defined(USE_DLN_DLOPEN))
+ #define DLN_DEFINED
+ /*----------------------------------------------------
+    By SHIROYAMA Takayuki Psi at fortune.nest.or.jp

Added: trunk/dports/lang/ruby/files/use-setreugid.diff
===================================================================
--- trunk/dports/lang/ruby/files/use-setreugid.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/use-setreugid.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,22 @@
+--- process.c.orig	2007-10-23 18:50:29.000000000 +0200
++++ process.c	2007-10-23 19:08:01.000000000 +0200
+@@ -96,9 +96,16 @@
+ #undef HAVE_SETRGID
+ #endif
+ 
+-#if defined(__MacOS_X__) || defined(__bsdi__)
+-#define BROKEN_SETREUID 1
+-#define BROKEN_SETREGID 1
++#if defined(__APPLE__)
++# include <AvailabilityMacros.h>
++/* setreuid/setregid were broken in Mac OS X <= 10.4, but were fixed since. */
++# if MAC_OS_X_VERSION_MAX_ALLOWED <= 1040
++#  define BROKEN_SETREUID 1
++#  define BROKEN_SETREGID 1
++# endif
++#elif defined(__bsdi__)
++# define BROKEN_SETREUID 1
++# define BROKEN_SETREGID 1
+ #endif
+ 
+ #if defined(HAVE_44BSD_SETUID) || defined(__MacOS_X__)

Added: trunk/dports/lang/ruby/files/words-bigendian-from-arch.diff
===================================================================
--- trunk/dports/lang/ruby/files/words-bigendian-from-arch.diff	                        (rev 0)
+++ trunk/dports/lang/ruby/files/words-bigendian-from-arch.diff	2007-10-26 16:01:47 UTC (rev 30398)
@@ -0,0 +1,33 @@
+--- defines.h.orig	2007-10-23 19:48:41.000000000 +0200
++++ defines.h	2007-10-23 19:49:23.000000000 +0200
+@@ -102,6 +102,16 @@
+ #endif
+ #endif
+ 
++#if defined(__NeXT__) || defined(__APPLE__)
++/* Do not trust WORDS_BIGENDIAN from configure since -arch compiler flag may
++   result in a different endian.  Instead trust __BIG_ENDIAN__ and
++   __LITTLE_ENDIAN__ which are set correctly by -arch. */
++#undef WORDS_BIGENDIAN
++#ifdef __BIG_ENDIAN__
++#define WORDS_BIGENDIAN
++#endif
++#endif
++
+ #ifdef __NeXT__
+ /* NextStep, OpenStep, Rhapsody */
+ #ifndef S_IRUSR
+@@ -155,13 +165,6 @@
+ #ifndef S_ISREG
+ #define S_ISREG(mode)  (((mode) & (0170000)) == (0100000))
+ #endif
+-/* Do not trust WORDS_BIGENDIAN from configure since -arch compiler flag may
+-   result in a different endian.  Instead trust __BIG_ENDIAN__ and
+-   __LITTLE_ENDIAN__ which are set correctly by -arch. */
+-#undef WORDS_BIGENDIAN
+-#ifdef __BIG_ENDIAN__
+-#define WORDS_BIGENDIAN
+-#endif
+ #ifndef __APPLE__
+ /* NextStep, OpenStep (but not Rhapsody) */
+ #ifndef GETPGRP_VOID

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20071026/f6968f9e/attachment.html


More information about the macports-changes mailing list