diff --git a/audio/amarok/Makefile b/audio/amarok/Makefile index 2a30d7df5cdb..4592333edf8a 100644 --- a/audio/amarok/Makefile +++ b/audio/amarok/Makefile @@ -43,14 +43,12 @@ OPTIONS= GPOD "iPod support" on \ .include -.if ${RUBY_VER} == 1.9 -BROKEN= does not build with ruby 1.9 -.endif - CONFIGURE_ARGS+=--without-exscalibar \ --with-mp4v2 \ --with-mp4v2-dir=${PREFIX} +CFLAGS+= -I${LOCALBASE}/include/ruby-${RUBY_VER} -I${LOCALBASE}/include/ruby-${RUBY_VER}/${RUBY_ARCH} + .if !defined(WITH_GPOD) PLIST_SUB+= GPOD="@comment " CONFIGURE_ARGS+=--without-libgpod diff --git a/audio/amarok/files/patch-amarok_src_mediadevice_daap_mongrel_http11_http11.c b/audio/amarok/files/patch-amarok_src_mediadevice_daap_mongrel_http11_http11.c new file mode 100644 index 000000000000..a11d2029bce5 --- /dev/null +++ b/audio/amarok/files/patch-amarok_src_mediadevice_daap_mongrel_http11_http11.c @@ -0,0 +1,48 @@ +--- ./amarok/src/mediadevice/daap/mongrel/http11/http11.c.orig 2011-08-27 14:56:26.000000000 +0000 ++++ ./amarok/src/mediadevice/daap/mongrel/http11/http11.c 2011-08-27 14:58:15.000000000 +0000 +@@ -74,7 +74,7 @@ + f = rb_str_dup(global_http_prefix); + f = rb_str_buf_cat(f, field, flen); + +- for(ch = RSTRING(f)->ptr, end = ch + RSTRING(f)->len; ch < end; ch++) { ++ for(ch = RSTRING_PTR(f), end = ch + RSTRING_LEN(f); ch < end; ch++) { + if(*ch == '-') { + *ch = '_'; + } else { +@@ -157,12 +157,12 @@ + + rb_hash_aset(req, global_gateway_interface, global_gateway_interface_value); + if((temp = rb_hash_aref(req, global_http_host)) != Qnil) { +- colon = strchr(RSTRING(temp)->ptr, ':'); ++ colon = strchr(RSTRING_PTR(temp), ':'); + if(colon != NULL) { +- rb_hash_aset(req, global_server_name, rb_str_substr(temp, 0, colon - RSTRING(temp)->ptr)); ++ rb_hash_aset(req, global_server_name, rb_str_substr(temp, 0, colon - RSTRING_PTR(temp))); + rb_hash_aset(req, global_server_port, +- rb_str_substr(temp, colon - RSTRING(temp)->ptr+1, +- RSTRING(temp)->len)); ++ rb_str_substr(temp, colon - RSTRING_PTR(temp)+1, ++ RSTRING_LEN(temp))); + } else { + rb_hash_aset(req, global_server_name, temp); + rb_hash_aset(req, global_server_port, global_port_80); +@@ -281,8 +281,8 @@ + DATA_GET(self, http_parser, http); + + from = FIX2INT(start); +- dptr = RSTRING(data)->ptr; +- dlen = RSTRING(data)->len; ++ dptr = RSTRING_PTR(data); ++ dlen = RSTRING_LEN(data); + + if(from >= dlen) { + rb_raise(eHttpParserError, "Requested start is after data buffer end."); +@@ -512,7 +512,7 @@ + if(pref_len == 1 && uri_str[0] == '/') { + rb_ary_push(result, uri); + } else { +- rb_ary_push(result, rb_str_substr(uri, pref_len, RSTRING(uri)->len)); ++ rb_ary_push(result, rb_str_substr(uri, pref_len, RSTRING_LEN(uri))); + } + + rb_ary_push(result, (VALUE)handler); diff --git a/audio/amarok/files/patch-configure b/audio/amarok/files/patch-configure index 45a89f01ae5b..3d709a8a99cf 100644 --- a/audio/amarok/files/patch-configure +++ b/audio/amarok/files/patch-configure @@ -32,3 +32,12 @@ $FreeBSD$ succeeded=no +@@ -40872,7 +40872,7 @@ + + + OLDCFLAGS="$CFLAGS" +-CFLAGS="-I$ruby_includes -Wall" ++CFLAGS+="-I$ruby_includes -Wall" + OLDCPPFLAGS="$CPPFLAGS" + CPPFLAGS="-I$ruby_includes" #no I don't know why CPPFLAGS is used +