summaryrefslogtreecommitdiff
path: root/community/clearsilver
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
committerroot <root@rshg054.dnsready.net>2013-08-13 01:33:19 -0700
commit7a65a910b77ad191d69881098c47f9b0c852d92e (patch)
tree9564e611af1442f8952a8cbddb3b0ad25ed71aab /community/clearsilver
parent60da6abff6c9577a783d72865f11de7a585e912e (diff)
Tue Aug 13 01:31:08 PDT 2013
Diffstat (limited to 'community/clearsilver')
-rw-r--r--community/clearsilver/PKGBUILD55
-rw-r--r--community/clearsilver/clearsilver-ruby-1.9.patch244
2 files changed, 299 insertions, 0 deletions
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 <pupykin.s+arch@gmail.com>
+# Maintainer : Aaron Griffin <aaron@archlinux.org>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+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 <<EOF
+71,73c71,73
+< siteruby = subprefix.call(c['sitedir'])
+< versite = subprefix.call(c['sitelibdir'])
+< sodir = subprefix.call(c['sitearchdir'])
+---
+> 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 <ruby.h>
+-#include <version.h>
++//#include <version.h>
+ #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);