diff options
Diffstat (limited to 'source/kde/kdebindings')
-rw-r--r-- | source/kde/kdebindings/kdebindings-len-ptr-rfloat.diff | 207 | ||||
-rw-r--r-- | source/kde/kdebindings/kdebindings-ruby-env.h.diff | 139 | ||||
-rw-r--r-- | source/kde/kdebindings/kdebindings-rubyconfig.h.diff | 20 | ||||
-rwxr-xr-x | source/kde/kdebindings/kdebindings.SlackBuild | 18 | ||||
-rw-r--r-- | source/kde/kdebindings/local.options | 1 | ||||
-rw-r--r-- | source/kde/kdebindings/slack-desc | 6 |
6 files changed, 381 insertions, 10 deletions
diff --git a/source/kde/kdebindings/kdebindings-len-ptr-rfloat.diff b/source/kde/kdebindings/kdebindings-len-ptr-rfloat.diff new file mode 100644 index 00000000..0f2edc12 --- /dev/null +++ b/source/kde/kdebindings/kdebindings-len-ptr-rfloat.diff @@ -0,0 +1,207 @@ +--- kdebindings-4.3.0/ruby/krossruby/rubyfunction.h.org 2008-07-29 05:47:40.000000000 -0600 ++++ kdebindings-4.3.0/ruby/krossruby/rubyfunction.h 2009-08-09 03:04:00.105143195 -0600 +@@ -88,11 +88,11 @@ + //#endif + VALUE info = rb_gv_get("$!"); + VALUE bt = rb_funcall(info, rb_intern("backtrace"), 0); +- VALUE message = RARRAY(bt)->ptr[0]; ++ VALUE message = RARRAY_PTR(bt)[0]; + fprintf(stderr,"%s: %s (%s)\n", STR2CSTR(message), STR2CSTR(rb_obj_as_string(info)), rb_class2name(CLASS_OF(info))); +- for(int i = 1; i < RARRAY(bt)->len; ++i) +- if( TYPE(RARRAY(bt)->ptr[i]) == T_STRING ) +- fprintf(stderr,"\tfrom %s\n", STR2CSTR(RARRAY(bt)->ptr[i])); ++ for(int i = 1; i < RARRAY_LEN(bt); ++i) ++ if( TYPE(RARRAY_PTR(bt)[i]) == T_STRING ) ++ fprintf(stderr,"\tfrom %s\n", STR2CSTR(RARRAY_PTR(bt)[i])); + //ruby_nerrs++; + return Qnil; + } +--- kdebindings-4.3.0/ruby/krossruby/rubyobject.cpp.org 2008-06-18 06:41:05.000000000 -0600 ++++ kdebindings-4.3.0/ruby/krossruby/rubyobject.cpp 2009-08-08 21:55:21.209147733 -0600 +@@ -34,7 +34,7 @@ + + VALUE info = rb_gv_get("$!"); + VALUE bt = rb_funcall(info, rb_intern("backtrace"), 0); +- VALUE message = RARRAY(bt)->ptr[0]; ++ VALUE message = RARRAY_PTR(bt)[0]; + + QString errormessage = QString("%1: %2 (%3)") + .arg( STR2CSTR(message) ) +@@ -43,9 +43,9 @@ + fprintf(stderr, "%s\n", errormessage.toLatin1().data()); + + QString tracemessage; +- for(int i = 1; i < RARRAY(bt)->len; ++i) { +- if( TYPE(RARRAY(bt)->ptr[i]) == T_STRING ) { +- QString s = QString("%1\n").arg( STR2CSTR(RARRAY(bt)->ptr[i]) ); ++ for(int i = 1; i < RARRAY_LEN(bt); ++i) { ++ if( TYPE(RARRAY_PTR(bt)[i]) == T_STRING ) { ++ QString s = QString("%1\n").arg( STR2CSTR(RARRAY_PTR(bt)[i]) ); + Q_ASSERT( ! s.isNull() ); + tracemessage += s; + fprintf(stderr, "\t%s", s.toLatin1().data()); +@@ -74,7 +74,7 @@ + ID functionId = rb_ary_entry(args, 1); + VALUE arguments = rb_ary_entry(args, 2); + Q_ASSERT( TYPE(arguments) == T_ARRAY ); +- return rb_funcall2(self, functionId, RARRAY(arguments)->len, RARRAY(arguments)->ptr); ++ return rb_funcall2(self, functionId, RARRAY_LEN(arguments), RARRAY_PTR(arguments)); + } + + class RubyObject::Private +@@ -112,8 +112,8 @@ + VALUE methods; + const char* method; + methods = rb_class_instance_methods(1, args, CLASS_OF(object)); +- for (int i = 0; i < RARRAY(methods)->len; i++) { +- method = StringValuePtr(RARRAY(methods)->ptr[i]); ++ for (int i = 0; i < RARRAY_LEN(methods); i++) { ++ method = StringValuePtr(RARRAY_PTR(methods)[i]); + krossdebug( QString("RubyObject::RubyObject() method=%1").arg( method )); + d->calls << method; + } +--- kdebindings-4.3.0/ruby/krossruby/rubyscript.cpp.org 2009-01-16 08:04:29.000000000 -0700 ++++ kdebindings-4.3.0/ruby/krossruby/rubyscript.cpp 2009-08-08 21:51:36.729148567 -0600 +@@ -47,7 +47,7 @@ + + VALUE info = rb_gv_get("$!"); + VALUE bt = rb_funcall(info, rb_intern("backtrace"), 0); +- VALUE message = RARRAY(bt)->ptr[0]; ++ VALUE message = RARRAY_PTR(bt)[0]; + + QString errormessage = QString("%1: %2 (%3)") + .arg( STR2CSTR(message) ) +@@ -56,9 +56,9 @@ + fprintf(stderr, "%s\n", errormessage.toLatin1().data()); + + QString tracemessage; +- for(int i = 1; i < RARRAY(bt)->len; ++i) { +- if( TYPE(RARRAY(bt)->ptr[i]) == T_STRING ) { +- QString s = QString("%1\n").arg( STR2CSTR(RARRAY(bt)->ptr[i]) ); ++ for(int i = 1; i < RARRAY_LEN(bt); ++i) { ++ if( TYPE(RARRAY_PTR(bt)[i]) == T_STRING ) { ++ QString s = QString("%1\n").arg( STR2CSTR(RARRAY_PTR(bt)[i]) ); + Q_ASSERT( ! s.isNull() ); + tracemessage += s; + fprintf(stderr, "\t%s", s.toLatin1().data()); +@@ -361,7 +361,7 @@ + ID functionId = rb_ary_entry(args, 1); + VALUE arguments = rb_ary_entry(args, 2); + Q_ASSERT( TYPE(arguments) == T_ARRAY ); +- return rb_funcall2(self, functionId, RARRAY(arguments)->len, RARRAY(arguments)->ptr); ++ return rb_funcall2(self, functionId, RARRAY_LEN(arguments), RARRAY_PTR(arguments)); + } + + QVariant RubyScript::callFunction(const QString& name, const QVariantList& args) +--- kdebindings-4.3.0/ruby/krossruby/rubyvariant.cpp.org 2008-11-19 03:17:32.000000000 -0700 ++++ kdebindings-4.3.0/ruby/krossruby/rubyvariant.cpp 2009-08-08 21:42:27.593112416 -0600 +@@ -487,7 +487,7 @@ + #endif + QList<void*> list; + if( TYPE(value) == T_ARRAY ) { +- for(int i = 0; i < RARRAY(value)->len; i++) ++ for(int i = 0; i < RARRAY_LEN(value); i++) + if( void *ptr = VoidList::extractVoidStar(rb_ary_entry(value, i)) ) + list << ptr; + } +--- kdebindings-4.3.0/ruby/krossruby/rubyvariant.h.org 2008-07-29 05:47:40.000000000 -0600 ++++ kdebindings-4.3.0/ruby/krossruby/rubyvariant.h 2009-08-09 02:51:01.845117051 -0600 +@@ -124,7 +124,7 @@ + case T_BIGNUM: + return rb_big2int(value); + case T_FLOAT: +- return (int)(RFLOAT(value)->value); ++ return (int)(RFLOAT_VALUE(value)); + default: + break; + } +@@ -147,7 +147,7 @@ + case T_BIGNUM: + return rb_big2uint(value); + case T_FLOAT: +- return (uint)(RFLOAT(value)->value); ++ return (uint)(RFLOAT_VALUE(value)); + default: + break; + } +@@ -226,7 +226,7 @@ + //return STR2CSTR( rb_inspect(value) ); + return QByteArray(""); + } +- long length = LONG2NUM( RSTRING(value)->len ); ++ long length = LONG2NUM( RSTRING_LEN(value) ); + if( length < 0 ) + return QByteArray(""); + char* ca = rb_str2cstr(value, &length); +@@ -261,7 +261,7 @@ + return l; + } + inline static QSize toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 2 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 2 ) { + rb_raise(rb_eTypeError, "QSize must be an array with 2 elements"); + return QSize(); + } +@@ -280,7 +280,7 @@ + return l; + } + inline static QSizeF toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 2 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 2 ) { + rb_raise(rb_eTypeError, "QSizeF must be an array with 2 elements"); + return QSizeF(); + } +@@ -300,7 +300,7 @@ + return l; + } + inline static QPoint toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 2 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 2 ) { + rb_raise(rb_eTypeError, "QPoint must be an array with 2 elements"); + return QPoint(); + } +@@ -319,7 +319,7 @@ + return l; + } + inline static QPointF toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 2 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 2 ) { + rb_raise(rb_eTypeError, "QPointF must be an array with 2 elements"); + return QPointF(); + } +@@ -340,7 +340,7 @@ + return l; + } + inline static QRect toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 4 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 4 ) { + rb_raise(rb_eTypeError, "QRect must be an array with 4 elements"); + return QRect(); + } +@@ -362,7 +362,7 @@ + return l; + } + inline static QRectF toVariant(VALUE value) { +- if( TYPE(value) != T_ARRAY || RARRAY(value)->len != 4 ) { ++ if( TYPE(value) != T_ARRAY || RARRAY_LEN(value) != 4 ) { + rb_raise(rb_eTypeError, "QRectF must be an array with 4 elements"); + return QRectF(); + } +@@ -447,7 +447,7 @@ + return QStringList(); + } + QStringList l; +- for(int i = 0; i < RARRAY(value)->len; i++) ++ for(int i = 0; i < RARRAY_LEN(value); i++) + l.append( RubyType<QString>::toVariant( rb_ary_entry(value, i) ) ); + return l; + } +@@ -469,7 +469,7 @@ + return QVariantList(); + } + QVariantList l; +- for(int i = 0; i < RARRAY(value)->len; i++) ++ for(int i = 0; i < RARRAY_LEN(value); i++) + l.append( RubyType<QVariant>::toVariant( rb_ary_entry(value, i) ) ); + return l; + } diff --git a/source/kde/kdebindings/kdebindings-ruby-env.h.diff b/source/kde/kdebindings/kdebindings-ruby-env.h.diff new file mode 100644 index 00000000..61f404c7 --- /dev/null +++ b/source/kde/kdebindings/kdebindings-ruby-env.h.diff @@ -0,0 +1,139 @@ +--- kdebindings-r1016551/ruby/krossruby/rubyextension.cpp.org 2009-08-26 07:50:12.000000000 -0600 ++++ kdebindings-r1016551/ruby/krossruby/rubyextension.cpp 2009-08-29 05:59:57.705834017 -0600 +@@ -278,7 +278,7 @@ + sendersignal = RubyType<QByteArray>::toVariant(argv[1]); + idx = 2; + if( argc <= idx ) { +- rb_raise(rb_eTypeError, ::QString("Expected at least %1 arguments.").arg(idx+1).toLatin1().constData()); ++ /*rb_raise(rb_eTypeError, ::QString("Expected at least %1 arguments.").arg(idx+1).toLatin1().constData());*/ + return Qfalse; + } + } break; +@@ -310,7 +310,7 @@ + */ + #if(!(RUBY_VERSION_MAJOR==1 && RUBY_VERSION_MINOR==8 && RUBY_VERSION_TEENY==4)) + else { +- rb_raise(rb_eTypeError, ::QString("The argument number %1 is invalid.").arg(idx).toLatin1().constData()); ++ /*rb_raise(rb_eTypeError, ::QString("The argument number %1 is invalid.").arg(idx).toLatin1().constData());*/ + return Qfalse; + } + #endif +--- kdebindings-r1016551/ruby/krossruby/rubyfunction.h.org 2009-08-26 07:50:12.000000000 -0600 ++++ kdebindings-r1016551/ruby/krossruby/rubyfunction.h 2009-08-29 06:27:56.393849016 -0600 +@@ -198,7 +198,7 @@ + //VALUE result = rb_funcall2(m_method, rb_intern("call"), argsize, args); + + //TODO optimize +- ruby_in_eval++; ++ /*ruby_in_eval++; + VALUE argarray = rb_ary_new2(3); + rb_ary_store(argarray, 0, m_method); //self + rb_ary_store(argarray, 1, INT2FIX(argsize)); +@@ -207,7 +207,7 @@ + ruby_in_eval--; + + // finally set the returnvalue +- m_tmpResult = RubyType<QVariant>::toVariant(result); ++ m_tmpResult = RubyType<QVariant>::toVariant(result);*/ + #ifdef KROSS_RUBY_FUNCTION_DEBUG + QObject* sender = QObject::sender(); + krossdebug( QString("RubyFunction::qt_metacall sender.objectName=%1 sender.className=%2 result=%3 variantresult=%4").arg(sender->objectName()).arg(sender->metaObject()->className()).arg(STR2CSTR(rb_inspect(result))).arg(m_tmpResult.toString()) ); +--- kdebindings-r1016551/ruby/krossruby/rubyobject.cpp.org 2009-08-28 04:05:33.356632000 -0600 ++++ kdebindings-r1016551/ruby/krossruby/rubyobject.cpp 2009-08-29 05:22:50.886344151 -0600 +@@ -52,7 +52,7 @@ + } + } + +- ruby_nerrs++; ++ /*ruby_nerrs++;*/ + /* + VALUE rubyscriptvalue = rb_funcall(self, rb_intern("const_get"), 1, ID2SYM(rb_intern("RUBYSCRIPTOBJ"))); + RubyScript* rubyscript; +--- kdebindings-r1016551/ruby/krossruby/rubyscript.cpp.org 2009-08-28 04:05:33.360633000 -0600 ++++ kdebindings-r1016551/ruby/krossruby/rubyscript.cpp 2009-08-29 05:21:52.226333617 -0600 +@@ -65,7 +65,7 @@ + } + } + +- ruby_nerrs++; ++/* ruby_nerrs++;*/ + + VALUE rubyscriptvalue = rb_funcall(self, rb_intern("const_get"), 1, ID2SYM(rb_intern("RUBYSCRIPTOBJ"))); + RubyScript* rubyscript; +@@ -173,11 +173,11 @@ + // needed to prevent infinitive loops ifour scripting call uses e.g. callFunction + m_hasBeenSuccessFullyExecuted = true; + +- const int critical = rb_thread_critical; +- rb_thread_critical = Qtrue; ++ /*const int critical = rb_thread_critical;*/ ++ /*rb_thread_critical = Qtrue; + + ruby_nerrs = 0; +- ruby_errinfo = Qnil; ++ ruby_errinfo = Qnil;*/ + + VALUE args = rb_ary_new2(3); + rb_ary_store(args, 0, m_script); //self +@@ -192,24 +192,24 @@ + } + */ + +- ruby_in_eval++; ++ /*ruby_in_eval++;*/ + VALUE result = rb_rescue2((VALUE(*)(...))callExecute, args, (VALUE(*)(...))callExecuteException, m_script, rb_eException, 0); +- ruby_in_eval--; ++ /*ruby_in_eval--;*/ + +- if (ruby_nerrs != 0) { ++ /*if (ruby_nerrs != 0) { + //#ifdef KROSS_RUBY_SCRIPT_EXECUTE_DEBUG + krossdebug( QString("Compilation has failed. errorMessage=%1 errorTrace=\n%2\n").arg(q->errorMessage()).arg(q->errorTrace()) ); + //#endif + m_hasBeenSuccessFullyExecuted = false; + } else { + m_hasBeenSuccessFullyExecuted = true; +- } ++ }*/ + + #ifdef KROSS_RUBY_EXPLICIT_GC + rb_gc(); + #endif + +- rb_thread_critical = critical; ++ /*rb_thread_critical = critical;*/ + return result; + } + +@@ -371,9 +371,9 @@ + krossdebug( QString("RubyScript::callFunction() name=%1").arg(name) ); + #endif + +- const int critical = rb_thread_critical; ++ /*const int critical = rb_thread_critical; + rb_thread_critical = Qtrue; +- ruby_in_eval++; ++ ruby_in_eval++;*/ + //ruby_current_node + + if( ! d->m_hasBeenSuccessFullyExecuted ) { +@@ -383,7 +383,7 @@ + #ifdef KROSS_RUBY_SCRIPT_CALLFUNCTION_DEBUG + krossdebug("RubyScript::callFunction failed"); + #endif +- setError( QString("Failed to call function \"%1\": %2").arg(name).arg(STR2CSTR( rb_obj_as_string(ruby_errinfo) )) ); // TODO: get the error ++ /*setError( QString("Failed to call function \"%1\": %2").arg(name).arg(STR2CSTR( rb_obj_as_string(ruby_errinfo) )) ); // TODO: get the error*/ + } + else { + //VALUE self = rb_eval_string("self"); +@@ -413,8 +413,8 @@ + // rb_gc(); // This one is plainly wrong, since there is a good deal of chance that it will delete the content of result before it is used + #endif + +- ruby_in_eval--; +- rb_thread_critical = critical; ++ /*ruby_in_eval--; ++ rb_thread_critical = critical;*/ + + return result; + } diff --git a/source/kde/kdebindings/kdebindings-rubyconfig.h.diff b/source/kde/kdebindings/kdebindings-rubyconfig.h.diff new file mode 100644 index 00000000..aa8b426d --- /dev/null +++ b/source/kde/kdebindings/kdebindings-rubyconfig.h.diff @@ -0,0 +1,20 @@ +--- kdebindings-4.3.0/ruby/krossruby/rubyconfig.h.org 2009-01-16 08:04:29.000000000 -0700 ++++ kdebindings-4.3.0/ruby/krossruby/rubyconfig.h 2009-08-08 23:14:59.917148261 -0600 +@@ -21,12 +21,12 @@ + #define KROSS_RUBY_CONFIG_H + + #include <ruby.h> +-#include <env.h> +-#include <rubysig.h> +-#include <node.h> +-#include <version.h> ++//#include <env.h> ++#include <ruby/backward/rubysig.h> ++#include <ruby/node.h> ++#include <ruby/version.h> + +-#include <st.h> ++#include <ruby/st.h> + //#include <typeinfo> + + #include <kross/core/krossconfig.h> diff --git a/source/kde/kdebindings/kdebindings.SlackBuild b/source/kde/kdebindings/kdebindings.SlackBuild index a31407b9..21df45de 100755 --- a/source/kde/kdebindings/kdebindings.SlackBuild +++ b/source/kde/kdebindings/kdebindings.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -46,6 +46,11 @@ cd $TMP echo "Building kdebindings-$VERSION..." tar xvf $CWD/../src/kdebindings-$VERSION.tar.?z* || exit 1 cd kdebindings-$VERSION + +zcat $CWD/kdebindings-len-ptr-rfloat.diff.gz | patch -p1 --verbose || exit 1 +zcat $CWD/kdebindings-ruby-env.h.diff.gz | patch -p1 --verbose || exit 1 +zcat $CWD/kdebindings-rubyconfig.h.diff.gz | patch -p1 --verbose || exit 1 + chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -58,6 +63,7 @@ mkdir -p build cd build #-DCMAKE_BACKWARDS_COMPATIBILITY:STRING="2.2" \ cmake \ + $KDE_OPT_ARGS \ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_BUILD_TYPE=Release \ @@ -65,17 +71,15 @@ cd build -DMAN_INSTALL_DIR=/usr/man \ -DSYSCONF_INSTALL_DIR=/etc/kde \ -DLIB_SUFFIX=${LIBDIRSUFFIX} \ - -DENABLE_PHONON:BOOL=OFF \ - -DENABLE_PHONON_SMOKE:BOOL=OFF \ -DENABLE_QYOTO:BOOL=OFF \ -DENABLE_QSCINTILLA_SHARP:BOOL=OFF \ -DENABLE_KIMONO:BOOL=OFF \ -DBUILD_csharp:BOOL=OFF \ - -DENABLE_KHTML:BOOL=OFF \ - -DENABLE_PHONON_RUBY:BOOL=OFF \ .. - # kdebindings has (in the past, on several occasions) barfed on multijobs, so no $NUMJOBS here: - make || exit 1 + # kdebindings has (in the past, on several occasions) barfed on multijobs, + # so no $NUMJOBS here. We run make twice because the first time is not + # 100% successful either...: + make || make || exit 1 make install DESTDIR=$PKG || exit 1 cd - diff --git a/source/kde/kdebindings/local.options b/source/kde/kdebindings/local.options new file mode 100644 index 00000000..aae3c765 --- /dev/null +++ b/source/kde/kdebindings/local.options @@ -0,0 +1 @@ +BUILD=2 diff --git a/source/kde/kdebindings/slack-desc b/source/kde/kdebindings/slack-desc index 753edde9..e927c76f 100644 --- a/source/kde/kdebindings/slack-desc +++ b/source/kde/kdebindings/slack-desc @@ -6,14 +6,14 @@ # leave one space after the ':'. |-----handy-ruler------------------------------------------------------| -kdebindings: kdebindings +kdebindings: kdebindings (KDE language bindings) kdebindings: kdebindings: KDE and most KDE applications are implemented using the C++ kdebindings: programming language, but that doesn't mean you don't have a choice. kdebindings: This package contains a number of bindings to other languages, kdebindings: including scripting languages and other systems' programming -kdebindings: languages. -kdebindings: +kdebindings: languages, allowing them to be used to create applications for the +kdebindings: KDE Platform. kdebindings: kdebindings: kdebindings: |