From 7a65a910b77ad191d69881098c47f9b0c852d92e Mon Sep 17 00:00:00 2001 From: root Date: Tue, 13 Aug 2013 01:33:19 -0700 Subject: Tue Aug 13 01:31:08 PDT 2013 --- community/clearsilver/PKGBUILD | 55 +++++ community/clearsilver/clearsilver-ruby-1.9.patch | 244 +++++++++++++++++++++++ 2 files changed, 299 insertions(+) create mode 100644 community/clearsilver/PKGBUILD create mode 100644 community/clearsilver/clearsilver-ruby-1.9.patch (limited to 'community/clearsilver') diff --git a/community/clearsilver/PKGBUILD b/community/clearsilver/PKGBUILD new file mode 100644 index 000000000..963483b52 --- /dev/null +++ b/community/clearsilver/PKGBUILD @@ -0,0 +1,55 @@ +# $Id: PKGBUILD 86874 2013-03-23 23:10:33Z td123 $ +# Maintainer: Sergej Pupykin +# Maintainer : Aaron Griffin +# Contributor: William Rea + +pkgname=clearsilver +pkgver=0.10.5 +pkgrel=9 +pkgdesc="clearsilver is a fast, powerful, and language-neutral HTML template system" +arch=('i686' 'x86_64') +url='http://www.clearsilver.net' +license=('custom') +depends=('python2' 'perl' 'ruby' 'java-runtime') +options=('!emptydirs') +source=("http://www.clearsilver.net/downloads/$pkgname-$pkgver.tar.gz" + "clearsilver-ruby-1.9.patch") +md5sums=('b8c0c7fbe0ef5e06e0c935f134304d44' + 'd9db4e5985254e1b0d63e9ff042773f4') + +build() +{ + cd $srcdir/$pkgname-$pkgver + + ./configure --disable-csharp --prefix=/usr --with-python=/usr/bin/python2 + + sed -i "s@/usr/local/bin/python@/usr/bin/env python2@g" scripts/document.py + sed -i "s@install.rb install@install.rb install --prefix=$pkgdir@g" ruby/Makefile + patch -p1 <$srcdir/clearsilver-ruby-1.9.patch + patch -p0 ruby/install.rb < siteruby = subprefix.call(c['vendordir']) +> versite = subprefix.call(c['vendorlibdir']) +> sodir = subprefix.call(c['vendorarchdir']) +EOF + + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make PREFIX=$pkgdir DESTDIR=$pkgdir install + + install -Dm644 CS_LICENSE $pkgdir/usr/share/licenses/clearsilver/license.txt + rm -rf $pkgdir/usr/lib/perl5/5.8.8/ + + mv $pkgdir/usr/man/man3/* $pkgdir/usr/share/man/man3/ + rm -rf $pkgdir/usr/man + + find $pkgdir -name '.packlist' -delete + find $pkgdir -name '*.pod' -delete +} diff --git a/community/clearsilver/clearsilver-ruby-1.9.patch b/community/clearsilver/clearsilver-ruby-1.9.patch new file mode 100644 index 000000000..4a1a83f99 --- /dev/null +++ b/community/clearsilver/clearsilver-ruby-1.9.patch @@ -0,0 +1,244 @@ +diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c +--- clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c 2007-02-16 01:31:39.000000000 +0100 ++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c 2010-09-18 18:20:40.088619662 +0200 +@@ -19,7 +19,7 @@ + + VALUE r_neo_error(NEOERR *err); + +-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d %s",__FILE__,__LINE__,RSTRING(val)->ptr) ++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d %s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val))) + + static void c_free (CSPARSE *csd) { + if (csd) { +@@ -57,7 +57,7 @@ + char *path; + + Data_Get_Struct(self, CSPARSE, cs); +- path = STR2CSTR(oPath); ++ path = StringValuePtr(oPath); + + err = cs_parse_file (cs, path); + if (err) Srb_raise(r_neo_error(err)); +@@ -73,7 +73,8 @@ + long l; + + Data_Get_Struct(self, CSPARSE, cs); +- s = rb_str2cstr(oString, &l); ++ s = StringValuePtr(oString); ++ l = RSTRING_LEN(oString); + + /* This should be changed to use memory from the gc */ + ms = strdup(s); +diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_util.c clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c +--- clearsilver-0.10.5/ruby/ext/hdf/neo_util.c 2007-02-16 01:32:03.000000000 +0100 ++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c 2010-09-18 18:24:05.928058973 +0200 +@@ -10,7 +10,7 @@ + */ + + #include +-#include ++//#include + #include "ClearSilver.h" + #include "neo_ruby.h" + +@@ -19,7 +19,7 @@ + VALUE eHdfError; + static ID id_to_s; + +-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d %s",__FILE__,__LINE__,RSTRING(val)->ptr) ++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d %s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val))) + + VALUE r_neo_error (NEOERR *err) + { +@@ -96,7 +96,7 @@ + VALUE rv; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name = STR2CSTR(oName); ++ name = StringValuePtr(oName); + + rv = rb_hash_new(); + +@@ -118,12 +118,12 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- name = STR2CSTR(oName); +- key = STR2CSTR(oKey); ++ name = StringValuePtr(oName); ++ key = StringValuePtr(oKey); + if ( NIL_P(oValue) ) + value = NULL; + else +- value = STR2CSTR(oValue); ++ value = StringValuePtr(oValue); + + err = hdf_set_attr(hdfh->hdf, name, key, value); + if (err) Srb_raise(r_neo_error(err)); +@@ -134,22 +134,22 @@ + static VALUE h_set_value (VALUE self, VALUE oName, VALUE oValue) + { + t_hdfh *hdfh; +- char *name, *value; ++ VALUE name, value; + NEOERR *err; + + Data_Get_Struct(self, t_hdfh, hdfh); + + if ( TYPE(oName) == T_STRING ) +- name=STR2CSTR(oName); ++ name=oName; + else +- name=STR2CSTR(rb_funcall(oName,id_to_s,0)); ++ name=rb_funcall(oName,id_to_s,0); + + if ( TYPE(oValue) == T_STRING ) +- value=STR2CSTR(oValue); ++ value=oValue; + else +- value=STR2CSTR(rb_funcall(oValue,id_to_s,0)); ++ value=rb_funcall(oValue,id_to_s,0); + +- err = hdf_set_value (hdfh->hdf, name, value); ++ err = hdf_set_value (hdfh->hdf, StringValuePtr(name), StringValuePtr(value)); + + if (err) Srb_raise(r_neo_error(err)); + +@@ -165,7 +165,7 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- name=STR2CSTR(oName); ++ name=StringValuePtr(oName); + d=NUM2INT(oDefault); + + r = hdf_get_int_value (hdfh->hdf, name, d); +@@ -181,8 +181,8 @@ + VALUE rv; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name=STR2CSTR(oName); +- d=STR2CSTR(oDefault); ++ name=StringValuePtr(oName); ++ d=StringValuePtr(oDefault); + + r = hdf_get_value (hdfh->hdf, name, d); + rv = rb_str_new2(r); +@@ -197,7 +197,7 @@ + char *name; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name=STR2CSTR(oName); ++ name=StringValuePtr(oName); + + r = hdf_get_child (hdfh->hdf, name); + if (r == NULL) { +@@ -219,7 +219,7 @@ + char *name; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name=STR2CSTR(oName); ++ name=StringValuePtr(oName); + + r = hdf_get_obj (hdfh->hdf, name); + if (r == NULL) { +@@ -243,7 +243,7 @@ + NEOERR *err; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name=STR2CSTR(oName); ++ name=StringValuePtr(oName); + + err = hdf_get_node (hdfh->hdf, name, &r); + if (err) +@@ -384,7 +384,7 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- path=STR2CSTR(oPath); ++ path=StringValuePtr(oPath); + + err = hdf_read_file (hdfh->hdf, path); + if (err) Srb_raise(r_neo_error(err)); +@@ -400,7 +400,7 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- path=STR2CSTR(oPath); ++ path=StringValuePtr(oPath); + + err = hdf_write_file (hdfh->hdf, path); + +@@ -417,7 +417,7 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- path=STR2CSTR(oPath); ++ path=StringValuePtr(oPath); + + err = hdf_write_file_atomic (hdfh->hdf, path); + if (err) Srb_raise(r_neo_error(err)); +@@ -432,7 +432,7 @@ + NEOERR *err; + + Data_Get_Struct(self, t_hdfh, hdfh); +- name = STR2CSTR(oName); ++ name = StringValuePtr(oName); + + err = hdf_remove_tree (hdfh->hdf, name); + if (err) Srb_raise(r_neo_error(err)); +@@ -489,7 +489,7 @@ + + Data_Get_Struct(self, t_hdfh, hdfh); + +- s = STR2CSTR(oString); ++ s = StringValuePtr(oString); + ignore = NUM2INT(oIgnore); + + err = hdf_read_string_ignore (hdfh->hdf, s, ignore); +@@ -508,7 +508,7 @@ + Data_Get_Struct(self, t_hdfh, hdfh); + Data_Get_Struct(oHdfSrc, t_hdfh, hdfh_src); + +- name = STR2CSTR(oName); ++ name = StringValuePtr(oName); + + if (hdfh_src == NULL) rb_raise(eHdfError, "second argument must be an Hdf object"); + +@@ -526,8 +526,8 @@ + NEOERR *err; + + Data_Get_Struct(self, t_hdfh, hdfh); +- src = STR2CSTR(oSrc); +- dest = STR2CSTR(oDest); ++ src = StringValuePtr(oSrc); ++ dest = StringValuePtr(oDest); + + err = hdf_set_symlink (hdfh->hdf, src, dest); + if (err) Srb_raise(r_neo_error(err)); +@@ -545,9 +545,10 @@ + char *ret = NULL; + NEOERR *err; + +- s = rb_str2cstr(oString,&buflen); +- esc_char = STR2CSTR(oEsc_char); +- escape = STR2CSTR(oEsc); ++ s = StringValuePtr(oString); ++ buflen = RSTRING_LEN(oString); ++ esc_char = StringValuePtr(oEsc_char); ++ escape = StringValuePtr(oEsc); + + err = neos_escape((UINT8*)s, buflen, esc_char[0], escape, &ret); + +@@ -566,8 +567,9 @@ + char *esc_char; + long buflen; + +- s = rb_str2cstr(oString,&buflen); +- esc_char = STR2CSTR(oEsc_char); ++ s = StringValuePtr(oString); ++ buflen = RSTRING_LEN(oString); ++ esc_char = StringValuePtr(oEsc_char); + + /* This should be changed to use memory from the gc */ + copy = strdup(s); -- cgit v1.2.3-54-g00ecf