diff options
author | Andrew Tkalia <anddt@yandex.ru> | 2013-04-27 20:48:07 -0300 |
---|---|---|
committer | Niels Horn <niels.horn@slackbuilds.org> | 2013-04-27 20:48:07 -0300 |
commit | 67f7f1a72829778bce9d646b0dac3e1cccceeaad (patch) | |
tree | d9c8259a7e096da093104cfd30b8bfb54e2c054f /libraries | |
parent | af22ac5723b5f473f5c6747bcedb417b3c867d48 (diff) |
libraries/luadbi: Added (database interface library for Lua)
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
Diffstat (limited to 'libraries')
-rw-r--r-- | libraries/luadbi/README | 20 | ||||
-rw-r--r-- | libraries/luadbi/luadbi.SlackBuild | 113 | ||||
-rw-r--r-- | libraries/luadbi/luadbi.info | 10 | ||||
-rw-r--r-- | libraries/luadbi/slack-desc | 19 |
4 files changed, 162 insertions, 0 deletions
diff --git a/libraries/luadbi/README b/libraries/luadbi/README new file mode 100644 index 0000000000000..ac0d4e4d98d43 --- /dev/null +++ b/libraries/luadbi/README @@ -0,0 +1,20 @@ +LuaDBI is a database interface library for Lua. It is designed to +provide a RDBMS agnostic API for handling database operations. LuaDBI +also provides support for prepared statement handles, placeholders +and bind parameters for all database operations. + +Currently LuaDBI supports DB2, Oracle, MySQL, PostgreSQL and SQLite +databases with native database drivers. + +Optitional requirements: +databases (at least one from mysql, psql, sqlite3, db2, oracle) +You can pass to slackbuild list of databases you want LuaDBI to work +with (e.g. DBs="psql sqline3 oracle" or DBs="free db2"). + +free - builds MySQL, PostgreSQL and SQLite3 drivers +all - as above, but also builds DB2 and Oracle drivers +mysql +psql +sqlite3 +db2 +oracle diff --git a/libraries/luadbi/luadbi.SlackBuild b/libraries/luadbi/luadbi.SlackBuild new file mode 100644 index 0000000000000..9748da20c0be7 --- /dev/null +++ b/libraries/luadbi/luadbi.SlackBuild @@ -0,0 +1,113 @@ +#!/bin/sh + +# Slackware build script for luadbi + +# Copyright 2013, Andrew Tkalia <anddt@yandex.ru>, Ukraine, Kyiv +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS 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 AUTHOR 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. + +PRGNAM=luadbi +VERSION=${VERSION:-0.5} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +# Targets for make that we are using in $DBs variable +# free - builds MySQL, PostgreSQL and SQLite3 drivers +# all - as above, but also builds DB2 and Oracle drivers +# mysql +# psql +# sqlite3 +# db2 +# oracle + +DBs=${DBs:-mysql sqlite3} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +mkdir $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM.$VERSION.tar.gz -C ./$PRGNAM-$VERSION +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Getting default cflags from makefile then append slkcflags to 'em and passing to make +_CFLAGS=`cat Makefile |grep ^CFLAGS |sed "s,CFLAGS\=,,g" |sed "s,\/usr\/include\/postgresql\/,\/usr\/include\/postgresql\/server\/,g"`" "${SLKCFLAGS} +make \ + $DBs \ + CFLAGS="$_CFLAGS" + +# Installing: +mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/lua/5.1 +mkdir -p $PKG/usr/share/lua/5.1/ +for i in dbdmysql.so dbdpostgresql.so dbdsqlite3.so dbddb2.so dbdoracle.so; do +if [ -f "$i" ]; then +cp $i $PKG/usr/lib${LIBDIRSUFFIX}/lua/5.1 +fi +done +cp DBI.lua $PKG/usr/share/lua/5.1 + +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + COPYING INSTALL README \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/libraries/luadbi/luadbi.info b/libraries/luadbi/luadbi.info new file mode 100644 index 0000000000000..304522fe45e37 --- /dev/null +++ b/libraries/luadbi/luadbi.info @@ -0,0 +1,10 @@ +PRGNAM="luadbi" +VERSION="0.5" +HOMEPAGE="http://code.google.com/p/luadbi/" +DOWNLOAD="http://luadbi.googlecode.com/files/luadbi.0.5.tar.gz" +MD5SUM="ede2b003aadddc151aac87050c3d926e" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="lua" +MAINTAINER="Andrew Tkalia" +EMAIL="anddt@yandex.ru" diff --git a/libraries/luadbi/slack-desc b/libraries/luadbi/slack-desc new file mode 100644 index 0000000000000..600fefc036c3e --- /dev/null +++ b/libraries/luadbi/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +luadbi: LuaDBI (database interface library for Lua) +luadbi: +luadbi: LuaDBI is a database interface library for Lua. It is designed to +luadbi: provide a RDBMS agnostic API for handling database operations. LuaDBI +luadbi: also provides support for prepared statement handles, placeholders +luadbi: and bind parameters for all database operations. +luadbi: +luadbi: Currently LuaDBI supports DB2, Oracle, MySQL, PostgreSQL and SQLite +luadbi: databases with native database drivers. +luadbi: +luadbi: |