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]

Reply via email to