OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 30-May-2008 13:51:05
Branch: HEAD Handle: 2008053012510400
Added files:
openpkg-src/neko neko.patch neko.sh neko.spec
Log:
new package: neko 1.7.0 (Neko Programming Language and Virtual
Machine)
Summary:
Revision Changes Path
1.1 +124 -0 openpkg-src/neko/neko.patch
1.1 +4 -0 openpkg-src/neko/neko.sh
1.1 +112 -0 openpkg-src/neko/neko.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/neko/neko.patch
============================================================================
$ cvs diff -u -r0 -r1.1 neko.patch
--- /dev/null 2008-05-30 13:49:39 +0200
+++ neko.patch 2008-05-30 13:51:04 +0200
@@ -0,0 +1,124 @@
+Index: libs/std/process.c
+--- libs/std/process.c.orig 2008-03-16 14:59:15 +0100
++++ libs/std/process.c 2008-05-30 13:23:36 +0200
+@@ -23,7 +23,7 @@
+ # include <unistd.h>
+ # include <errno.h>
+ # ifndef NEKO_MAC
+-# include <wait.h>
++# include <sys/wait.h>
+ # endif
+ #endif
+
+Index: src/tools/install.neko
+--- src/tools/install.neko.orig 2008-03-16 14:59:25 +0100
++++ src/tools/install.neko 2008-05-30 13:26:33 +0200
+@@ -39,24 +39,6 @@
+ // LIBS DATAS
+
+ libs = {
+- mod_neko => {
+- src =>
$array("mod_neko","cgi","../../vm/context","../../vm/stats"),
+- inc => "httpd.h",
+- incname => "Apache 1.3.x"
+- },
+- mod_neko2 => {
+- src =>
$array("mod_neko","cgi","../../vm/context","../../vm/stats"),
+- inc => $array("httpd.h","apr.h"),
+- incname => "Apache 2.2.x",
+- cflags => "-D_LARGEFILE64_SOURCE",
+- },
+- mysql => {
+- src => $array("mysql"),
+- inc => "mysql.h",
+- incname => "MySQL 4.+"
+- lib => "libmysqlclient.a",
+- lparams => "-lz -lssl"
+- },
+ regexp => {
+ src => $array("regexp"),
+ inc => "pcre.h",
+@@ -69,24 +51,11 @@
+ incname => "LibZ",
+ lparams => "-lz",
+ },
+- sqlite => {
+- src => $array("sqlite"),
+- inc => "sqlite3.h",
+- incname => "Sqlite 3",
+- lparams => "-lsqlite3",
+- },
+- ui => {
+- src => $array("ui"),
+- inc => switch system { "Mac" => "Carbon.h" default =>
"gtk/gtk.h" },
+- incname => switch system { "Mac" => "Carbon" default =>
"GTK+2.0" },
+- cflags => switch system { "Mac" => "" default => "`pkg-config
--cflags gtk+-2.0`" },
+- lparams => switch system { "Mac" => "-framework Carbon" default
=> "`pkg-config --libs gtk+-2.0` -lgthread-2.0" },
+- }
+ }
+
+ // PLATFORM
+
+-cflags = "-O3 -fPIC";
++cflags = "-O2 -fPIC";
+ cc = getenv("CC");
+ if( cc == null ) cc = "gcc";
+ linkcmd = switch system { "BSD" => "ld" default => cc };
+@@ -112,37 +81,13 @@
+
+ search_includes = function(ism2) {
+ return $array(
+- "/usr/include",
+- if( ism2 ) "/usr/local/apache2/include" else
"/usr/local/apache/include",
+- if( ism2 ) "/usr/include/apache2" else "/usr/apache/include",
+- if( ism2 ) "/opt/local/apache2/include" else
"/opt/local/include/apache",
+- if( ism2 ) "" else "/usr/include/apache-1.3",
+- "/usr/local/include/mysql",
+- "/usr/include/mysql",
+- "/usr/local/include",
+- "/usr/include/apr-1",
+- "/usr/include/apr-1.0",
+- "/usr/include/apr-0",
+- "/usr/include/gtk-2.0",
+- "/usr/local/include/apr-1",
+- "/usr/local/include/apr-1.0",
+- "/usr/local/include/apr-0",
+- "/opt/local/include",
+- "/opt/local/include/apr-1",
+- "/opt/local/include/apr-1.0",
+- "/opt/local/include/apr-0",
+- "/opt/local/include/mysql",
+- "/Developer/Headers/FlatCarbon",
++ "@l_prefix@/include"
+ );
+ }
+
+ libraries = $array(
+ "../../libs/include",
+- "/usr/lib",
+- "/usr/local/lib",
+- "/usr/local/lib/mysql",
+- "/opt/local/lib",
+- "/opt/local/lib/mysql",
++ "@l_prefix@/lib"
+ );
+
+ exec = function(cmd) {
+Index: vm/alloc.c
+--- vm/alloc.c.orig 2008-03-16 14:59:25 +0100
++++ vm/alloc.c 2008-05-30 13:23:36 +0200
+@@ -168,9 +168,14 @@
+ # else
+ pthread_mutex_init(&p.lock,NULL);
+ pthread_mutex_lock(&p.lock);
++#if 0 && defined(GC_PTHREADS)
+ // force the use of a the GC method to capture created threads
+ // this function should be defined in gc/gc.h
+ if( GC_pthread_create((pthread_t*)handle,NULL,&ThreadMain,&p) != 0 ) {
++#else
++#undef pthread_create
++ if( pthread_create((pthread_t*)handle,NULL,&ThreadMain,&p) != 0 ) {
++#endif
+ pthread_mutex_destroy(&p.lock);
+ return 0;
+ }
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/neko/neko.sh
============================================================================
$ cvs diff -u -r0 -r1.1 neko.sh
--- /dev/null 2008-05-30 13:49:39 +0200
+++ neko.sh 2008-05-30 13:51:04 +0200
@@ -0,0 +1,4 @@
+#!/bin/sh
+LD_LIBRARY_PATH="@l_prefix@/lib/neko:/usr/lib:/lib"
+export LD_LIBRARY_PATH
+exec @l_prefix@/libexec/neko/@tool@ ${1+"$@"}
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/neko/neko.spec
============================================================================
$ cvs diff -u -r0 -r1.1 neko.spec
--- /dev/null 2008-05-30 13:49:39 +0200
+++ neko.spec 2008-05-30 13:51:04 +0200
@@ -0,0 +1,112 @@
+##
+## neko.spec -- OpenPKG RPM Package Specification
+## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
+##
+## Permission to use, copy, modify, and distribute this software for
+## any purpose with or without fee is hereby granted, provided that
+## the above copyright notice and this permission notice appear in all
+## copies.
+##
+## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+## SUCH DAMAGE.
+##
+
+# package information
+Name: neko
+Summary: Neko Programming Language and Virtual Machine
+URL: http://nekovm.org/
+Vendor: Motion Twin
+Packager: OpenPKG Foundation e.V.
+Distribution: OpenPKG Community
+Class: EVAL
+Group: Language
+License: LGPL
+Version: 1.7.0
+Release: 20080530
+
+# list of sources
+Source0: http://nekovm.org/_media/neko-%{version}.tar.gz
+Source1: neko.sh
+Patch0: neko.patch
+
+# build information
+Prefix: %{l_prefix}
+BuildRoot: %{l_buildroot}
+BuildPreReq: OpenPKG, openpkg >= 20060823, gcc
+PreReq: OpenPKG, openpkg >= 20060823
+BuildPreReq: gc, zlib, pcre
+PreReq: gc, zlib, pcre
+AutoReq: no
+AutoReqProv: no
+
+%description
+ Neko is a high-level dynamically typed programming language
+ which can also be used as an embedded scripting language. It has
+ been designed to provide a common runtime for several different
+ languages. Neko has a compiler and virtual machine. The virtual
+ machine is both very lightweight and extremely well optimised so
+ that it can run very quickly. The VM can be easily embedded into any
+ application and your libraries are directly accessable using the C
+ foreign function interface.
+
+%track
+ prog neko = {
+ version = %{version}
+ url = http://nekovm.org/download
+ regex = neko-(__VER__)\.tar\.gz
+ }
+
+%prep
+ %setup -q
+ %patch -p0
+
+%build
+ %{l_shtool} subst %{l_value -s -a} \
+ src/tools/install.neko
+ %{l_make} %{l_mflags} \
+ INSTALL_PREFIX=%{l_prefix} \
+ CC="%{l_cc}" \
+ CFLAGS="%{l_cflags -O} %{l_cppflags} -fPIC -Ivm -DNEKO_NO_THREADS" \
+ EXTFLAGS="%{l_cppflags} %{l_ldflags} -pthread" \
+ MAKESO="\$(CC) -shared" \
+ LIBNEKO_LIBS="%{l_ldflags} -lgc -lm" \
+ NEKOVM_FLAGS="-Lbin -lneko \$(LIBNEKO_LIBS)"
+
+%install
+ rm -rf $RPM_BUILD_ROOT
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/bin \
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/neko \
+ $RPM_BUILD_ROOT%{l_prefix}/lib/neko \
+ $RPM_BUILD_ROOT%{l_prefix}/include \
+ $RPM_BUILD_ROOT%{l_prefix}/lib
+ for tool in neko nekoc nekotools; do
+ %{l_shtool} install -c -m 755 %{l_value -s -a} \
+ -e "s;@tool@;$tool;" \
+ %{SOURCE neko.sh} $RPM_BUILD_ROOT%{l_prefix}/bin/$tool
+ done
+ %{l_shtool} install -c -s -m 755 \
+ bin/neko bin/nekoc bin/nekotools
$RPM_BUILD_ROOT%{l_prefix}/libexec/neko/
+ %{l_shtool} install -c -m 644 \
+ bin/*.ndll $RPM_BUILD_ROOT%{l_prefix}/lib/neko/
+ %{l_shtool} install -c -m 644 \
+ vm/neko*.h $RPM_BUILD_ROOT%{l_prefix}/include/
+ %{l_shtool} install -c -m 644 \
+ bin/libneko* $RPM_BUILD_ROOT%{l_prefix}/lib/neko/
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
+
+%files -f files
+
+%clean
+ rm -rf $RPM_BUILD_ROOT
+
@@ .
______________________________________________________________________
OpenPKG http://openpkg.org
CVS Repository Commit List [email protected]