development/Mk4tcl: Added (TCL binding).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Zbigniew Baniewski 2019-07-04 08:07:09 +07:00 committed by Willy Sudiarto Raharjo
parent 53073ccfdb
commit 6e7391595c
5 changed files with 162 additions and 0 deletions

View File

@ -0,0 +1,21 @@
diff -Nur metakit/tcl/Makefile.in metakit.new/tcl/Makefile.in
--- metakit/tcl/Makefile.in 2015-06-18 20:37:38.000000000 +0200
+++ metakit.new/tcl/Makefile.in 2019-07-03 23:02:52.180453468 +0200
@@ -57,7 +57,7 @@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
-CC = @CC@
+CC = g++
CFLAGS_DEFAULT = @CFLAGS_DEFAULT@
CFLAGS_WARNING = @CFLAGS_WARNING@
EXEEXT = @EXEEXT@
@@ -117,7 +117,7 @@
@echo " xml2nroff sample.xml > sample.n"
@echo " xml2html sample.xml > sample.html"
-install: all install-binaries install-libraries install-doc
+install: all install-binaries install-libraries
install-binaries: binaries install-lib-binaries install-bin-binaries

View File

@ -0,0 +1,97 @@
#!/bin/sh
# Slackware build script for Mk4tcl
# Written by Zbigniew Baniewski, <Zbigniew [dot] Baniewski [at] gmail [dot] com>
PRGNAM=Mk4tcl
VERSION=${VERSION:-2.4.9.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -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 metakit
tar xvf $CWD/${VERSION}.tar.gz
cd metakit/tcl
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
cat $CWD/01-Makefile.patch | patch -p2 || exit
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd ..
cp -a demos doc examples $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cd unix
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--build=$ARCH-slackware-linux
make all
make install DESTDIR=$PKG
cp demo dump myio $PKG/usr/bin
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
cd ..
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}

View File

@ -0,0 +1,10 @@
PRGNAM="Mk4tcl"
VERSION="2.4.9.8"
HOMEPAGE="https://equi4.com/metakit/"
DOWNLOAD="https://git.jeelabs.org/jcw/metakit/archive/2.4.9.8.tar.gz"
MD5SUM="272ccefc8efb1528377883753381589a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Zbigniew Baniewski"
EMAIL="Zbigniew.Baniewski [at] gmail [dot] com"

15
development/Mk4tcl/README Normal file
View File

@ -0,0 +1,15 @@
Mk4tcl - Tcl binding for Metakit embedded database library
Metakit is an efficient embedded database library with a small footprint.
It fills the gap between flat-file, relational, object-oriented, and
tree-structured databases, supporting relational joins, serialization,
nested structures, and instant schema evolution. There is a C++ API,
a Python binding called Mk4py, and a Tcl binding called Mk4tcl.
You can manipulate and exchange data between any of these.
Data files are portable. The library has been used on Unix, Windows,
Macintosh, VMS, and others, spanning a range of 16- to 64-bit architectures,
from PDA's to S390's.
Metakit is in use in various commercial projects and products on millions
of desktops.

View File

@ -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------------------------------------------------------|
Mk4tcl: Mk4tcl (TCL binding for Metakit embedded database library)
Mk4tcl:
Mk4tcl: Metakit is an efficient embedded database library with a small
Mk4tcl: footprint. It fills the gap between flat-file, relational,
Mk4tcl: object-oriented, and tree-structured databases, supporting relational
Mk4tcl: joins, serialization, nested structures, and instant schema evolution
Mk4tcl: This packages comprises metakit Tcl binding called Mk4tcl.
Mk4tcl: Data files are portable. The library has been used on Unix, Windows,
Mk4tcl: Macintosh, VMS, and others.
Mk4tcl:
Mk4tcl: Homepage: https://equi4.com/metakit/