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: 15-Nov-2006 14:58:14
Branch: HEAD Handle: 2006111513581400
Added files:
openpkg-src/sqlitedbms sqlitedbms.conf sqlitedbms.patch sqlitedbms.spec
Log:
new package: sqlitedbms 0.5.1 (SQLite Database Management System)
Summary:
Revision Changes Path
1.1 +23 -0 openpkg-src/sqlitedbms/sqlitedbms.conf
1.1 +142 -0 openpkg-src/sqlitedbms/sqlitedbms.patch
1.1 +160 -0 openpkg-src/sqlitedbms/sqlitedbms.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/sqlitedbms/sqlitedbms.conf
============================================================================
$ cvs diff -u -r0 -r1.1 sqlitedbms.conf
--- /dev/null 2006-11-15 14:58:07 +0100
+++ sqlitedbms.conf 2006-11-15 14:58:14 +0100
@@ -0,0 +1,23 @@
+##
+## sqlitedbms.conf -- SQLiteDBMS server configuration
+##
+
+port = 6543
+server user = @l_rusr@
+timeout = 60
+access control = false
+
+data dir = "@l_prefix@/var/sqlitedbms/db"
+repl dir = "@l_prefix@/var/sqlitedbms/rep"
+log dir = "@l_prefix@/var/sqlitedbms/log"
+
+http use = true
+webdav use = true
+http document root = "@l_prefix@/share/sqlitedbms"
+
+#max session = 1000
+#poll timer = 10
+#header buf size = 4096
+#recv buf size = 262144
+#send buf size = 1048576
+
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/sqlitedbms/sqlitedbms.patch
============================================================================
$ cvs diff -u -r0 -r1.1 sqlitedbms.patch
--- /dev/null 2006-11-15 14:58:07 +0100
+++ sqlitedbms.patch 2006-11-15 14:58:14 +0100
@@ -0,0 +1,142 @@
+Index: configure
+--- configure.orig 2006-10-25 14:42:31 +0200
++++ configure 2006-11-15 13:29:23 +0100
+@@ -22650,9 +22650,7 @@
+ LIBS="-ldl $LIBS"
+
+ else
+- { { echo "$as_me:$LINENO: error: dl library is required by SQLiteDBMS" >&5
+-echo "$as_me: error: dl library is required by SQLiteDBMS" >&2;}
+- { (exit 1); exit 1; }; }
++ :
+ fi
+
+ echo "$as_me:$LINENO: checking for main in -lssl" >&5
+@@ -22714,7 +22712,7 @@
+ echo "$as_me:$LINENO: result: $ac_cv_lib_ssl_main" >&5
+ echo "${ECHO_T}$ac_cv_lib_ssl_main" >&6
+ if test $ac_cv_lib_ssl_main = yes; then
+- CPPFLAGS="$CPPFLAGS -DENABLE_SSL" LIBS="$LIBS -lssl"
++ CPPFLAGS="$CPPFLAGS -DENABLE_SSL" LIBS="$LIBS -lssl -lcrypto"
+ fi
+
+
+Index: src/backend/Makefile.in
+--- src/backend/Makefile.in.orig 2006-10-25 14:42:34 +0200
++++ src/backend/Makefile.in 2006-11-15 14:36:07 +0100
+@@ -496,7 +496,7 @@
+ install-data:
+ mkdir -p $(prefix)/data
+ mkdir -p $(prefix)/logs
+- mkdir -p $(prefix)/var/replication
++ mkdir -p $(prefix)/var/sqlitedbms/rep
+ touch $(prefix)/data/TEST
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+Index: src/backend/config.c
+--- src/backend/config.c.orig 2006-11-09 08:23:53 +0100
++++ src/backend/config.c 2006-11-15 13:29:23 +0100
+@@ -118,7 +118,7 @@
+ }
+ }
+
+- regcomp( ®_node, "([^=]*)\\s*=\\s*((\"[^\"]*\")|(.*))",
REG_EXTENDED | REG_ICASE );
++ regcomp( ®_node, "([^=]*?)\\s*=\\s*((\"[^\"]*\")|(.*))",
REG_EXTENDED | REG_ICASE );
+ while ( feof( conf ) == 0 && found > 0 )
+ {
+ fgets( line, 1024, conf );
+@@ -132,7 +132,7 @@
+ //printf("(%lld, %lld, %lld, %lld, %lld, %lld, %lld,
%lld, %lld, %lld)%s", node[0].rm_so, node[0].rm_eo, node[1].rm_so,
node[1].rm_eo, node[2].rm_so, node[2].rm_eo, node[3].rm_so, node[3].rm_eo,
node[4].rm_so, node[4].rm_eo, line);
+
+ set[set_len].buf = malloc( node[0].rm_eo+8 );
+- snprintf( set[set_len].buf, node[0].rm_eo, "%s", line );
++ snprintf( set[set_len].buf, node[0].rm_eo+1, "%s", line
);
+
+ set[set_len].field = &(set[set_len].buf[0]);
+ set[set_len].buf[node[1].rm_eo] = '\0';
+Index: src/backend/http.c
+--- src/backend/http.c.orig 2006-11-09 07:43:35 +0100
++++ src/backend/http.c 2006-11-15 13:29:23 +0100
+@@ -129,7 +129,7 @@
+ return -1;
+
+ gmtime_r( &time, &time_s );
+- return strftime( dst, 48, "%a, %d %b %G %H:%M:%S GMT", &time_s );
++ return strftime( dst, 48+1, "%a, %d %b %G %H:%M:%S GMT", &time_s );
+
+ dst[0] = '\0';
+
+Index: src/backend/include/common.h
+--- src/backend/include/common.h.orig 2006-11-09 07:43:49 +0100
++++ src/backend/include/common.h 2006-11-15 13:29:23 +0100
+@@ -22,7 +22,7 @@
+ #include <pthread.h>
+ #include <getopt.h>
+ #include <string.h>
+-#include <regex.h>
++#include <pcreposix.h>
+ #include <ctype.h>
+ #include <dirent.h>
+ #include <errno.h>
+Index: src/backend/libnetwork.c
+--- src/backend/libnetwork.c.orig 2006-11-09 07:43:35 +0100
++++ src/backend/libnetwork.c 2006-11-15 13:29:23 +0100
+@@ -193,7 +193,11 @@
+ return SQLITE_ERROR;
+
+ len = size - sended;
++#ifdef __FreeBSD__
++ res = sendfile( sock, filefd, offset, len, NULL, NULL, 0);
++#else
+ res = sendfile( sock, filefd, &offset, len );
++#endif
+ if ( res <= 0 )
+ return SQLITE_ERROR;
+ sended += res;
+Index: src/backend/repl_master.c
+--- src/backend/repl_master.c.orig 2006-11-09 09:10:51 +0100
++++ src/backend/repl_master.c 2006-11-15 14:34:57 +0100
+@@ -9,7 +9,7 @@
+ FILE *test;
+ char filename[512];
+
+- snprintf( filename, 512, "var/replication/.init" );
++ snprintf( filename, 512, "var/sqlitedbms/rep/.init" );
+ test = fopen( filename, "w" );
+ if ( test == NULL )
+ return SQLITE_ERROR;
+@@ -238,7 +238,7 @@
+ memset( file, 0, sizeof(struct repl_master_file_t) );
+
+ file->id = ++id;
+- snprintf( file->filename, 1024, "var/replication/binlog%d",
file->id );
++ snprintf( file->filename, 1024, "var/sqlitedbms/rep/binlog%d",
file->id );
+
+ file->file = fopen( file->filename, "w" );
+ file->offset = ftell( file->file );
+Index: src/backend/response.c
+--- src/backend/response.c.orig 2006-11-09 08:55:25 +0100
++++ src/backend/response.c 2006-11-15 13:29:23 +0100
+@@ -101,7 +101,7 @@
+ {
+ extern struct config_t config;
+ int len;
+- char date_822[48];
++ char date_822[48+1];
+ int ret;
+
+ if ( self->response.header_sent != TRUE )
+Index: src/lib/sqlited_internal.h
+--- src/lib/sqlited_internal.h.orig 2006-11-10 11:02:17 +0100
++++ src/lib/sqlited_internal.h 2006-11-15 13:29:23 +0100
+@@ -1,6 +1,10 @@
+ #ifndef _SQLITED_INTERNAL_H_
+ #define _SQLITED_INTERNAL_H_
+
++#include <sys/types.h>
++#include <sys/socket.h>
++#include <netinet/in.h>
++
+ #define DEBUG printf("----- DEBUG: %s: %d\n",
__FILE__, __LINE__);
+ #define MAXVAL(x,y) (x>y?x:y)
+ #define MINVAL(x,y) (x<y?x:y)
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/sqlitedbms/sqlitedbms.spec
============================================================================
$ cvs diff -u -r0 -r1.1 sqlitedbms.spec
--- /dev/null 2006-11-15 14:58:07 +0100
+++ sqlitedbms.spec 2006-11-15 14:58:14 +0100
@@ -0,0 +1,160 @@
+##
+## sqlitedbms.spec -- OpenPKG RPM Package Specification
+## Copyright (c) 2000-2006 OpenPKG Foundation e.V. <http://openpkg.net/>
+## Copyright (c) 2000-2006 Ralf S. Engelschall <http://engelschall.com/>
+##
+## 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.
+##
+
+# FIXME: rse: rc.sqlitedbms still missing
+# FIXME: rse: the sqlitedbmsd is still a little bit buggy under run-time!?
+
+# package information
+Name: sqlitedbms
+Summary: SQLite Database Management System
+URL: http://sqlitedbms.sourceforge.net/
+Vendor: Kibae Shin
+Packager: OpenPKG Foundation e.V.
+Distribution: OpenPKG Community
+Class: EVAL
+Group: Database
+License: MIT-style
+Version: 0.5.1
+Release: 20061115
+
+# list of sources
+Source0:
http://switch.dl.sourceforge.net/sqlitedbms/sqlitedbms-%{version}.tar.gz
+Source1: sqlitedbms.conf
+Patch0: sqlitedbms.patch
+
+# build information
+Prefix: %{l_prefix}
+BuildRoot: %{l_buildroot}
+BuildPreReq: OpenPKG, openpkg >= 20040130, gcc
+PreReq: OpenPKG, openpkg >= 20040130
+BuildPreReq: sqlite >= 3.3, pcre, openssl
+PreReq: sqlite >= 3.3, pcre, openssl
+AutoReq: no
+AutoReqProv: no
+
+%description
+ SQLiteDBMS is a client/server Relational Database Management System
+ (RDBMS) based on the SQLite SQL and storage engine.
+
+%track
+ prog sqlitedbms = {
+ version = %{version}
+ url = http://prdownloads.sourceforge.net/sqlitedbms/
+ regex = sqlitedbms-(__VER__)\.tar\.gz
+ }
+
+%prep
+ %setup -q
+ %patch -p0
+
+%build
+ # configure program
+ %{l_shtool} subst \
+ -e
's;conf/sqlitedbms.conf;%{l_prefix}/etc/sqlitedbms/sqlitedbms.conf;' \
+ src/backend/include/define.h
+ CC="%{l_cc}" \
+ CFLAGS="%{l_cflags -O}" \
+ CPPFLAGS="%{l_cppflags}" \
+ LDFLAGS="%{l_ldflags}" \
+ LIBS="-lpcreposix -lpcre" \
+ ./configure \
+ --prefix=%{l_prefix} \
+ --with-sqlite3=%{l_prefix} \
+ --with-openssl=%{l_prefix} \
+ --disable-shared
+
+ # build program
+ %{l_make} %{l_mflags -O}
+
+%install
+ # install program
+ rm -rf $RPM_BUILD_ROOT
+ %{l_make} %{l_mflags} install \
+ prefix=$RPM_BUILD_ROOT%{l_prefix} \
+ exec_prefix=$RPM_BUILD_ROOT%{l_prefix}
+
+ # adjust installation
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/share
+ mv $RPM_BUILD_ROOT%{l_prefix}/htdocs \
+ $RPM_BUILD_ROOT%{l_prefix}/share/sqlitedbms
+
+ # strip down installation
+ strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/conf
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/data
+
+ # install default configuration
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/sqlitedbms
+ %{l_shtool} install -c -m 644 %{l_value -s -a} \
+ %{SOURCE sqlitedbms.conf} \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/sqlitedbms/
+
+ # create run-time directories
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/var/sqlitedbms/db \
+ $RPM_BUILD_ROOT%{l_prefix}/var/sqlitedbms/rep \
+ $RPM_BUILD_ROOT%{l_prefix}/var/sqlitedbms/log
+
+ # determine installation files
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+ %{l_files_std} \
+ '%config %{l_prefix}/etc/sqlitedbms/*' \
+ '%attr(-,%{l_rusr},%{l_rgrp}) %{l_prefix}/var/sqlitedbms/*'
+
+%files -f files
+
+%clean
+ rm -rf $RPM_BUILD_ROOT
+
+%post
+ if [ $1 -eq 1 ]; then
+ # create initial database in batch
+ if [ ! -f $RPM_INSTALL_PREFIX/var/sqlitedbms/db/catalog.user.superdb
]; then
+ ( echo "CREATE TABLE USER (id text PRIMARY KEY, pass text, super
int);"
+ echo "CREATE TABLE GRANT_DB (id text, db text, grant text,
PRIMARY KEY(id, db));"
+ echo "CREATE TABLE GRANT_OBJECT (id text, db text, object
text, grant text, PRIMARY KEY(id, db, object));"
+ echo "INSERT INTO USER VALUES('admin', 'admin', 1);"
+ ) | su - %{l_rusr} -c \
+ $RPM_INSTALL_PREFIX/bin/sqlite3 \
+ $RPM_INSTALL_PREFIX/var/sqlitedbms/db/catalog.user.superdb
+ fi
+ fi
+ if [ $1 -eq 2 ]; then
+ # after upgrade, restart service
+ eval `%{l_rc} sqlitedbms status 2>/dev/null`
+ [ ".$sqlitedbms_active" = .yes ] && %{l_rc} sqlitedbms restart
+ fi
+ exit 0
+
+%preun
+ if [ $1 -eq 0 ]; then
+ # before erase, stop service and remove log files
+ %{l_rc} sqlitedbms stop 2>/dev/null
+ rm -f $RPM_INSTALL_PREFIX/var/sqlitedbms/rep/* >/dev/null 2>&1 ||
true
+ rm -f $RPM_INSTALL_PREFIX/var/sqlitedbms/log/* >/dev/null 2>&1 ||
true
+ fi
+ exit 0
+
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]