From 6e7391595c29ec0007cea2c779f4114d6a6a70a3 Mon Sep 17 00:00:00 2001 From: Zbigniew Baniewski Date: Thu, 4 Jul 2019 08:07:09 +0700 Subject: development/Mk4tcl: Added (TCL binding). Signed-off-by: Willy Sudiarto Raharjo --- development/Mk4tcl/01-Makefile.patch | 21 ++++++++ development/Mk4tcl/Mk4tcl.SlackBuild | 97 ++++++++++++++++++++++++++++++++++++ development/Mk4tcl/Mk4tcl.info | 10 ++++ development/Mk4tcl/README | 15 ++++++ development/Mk4tcl/slack-desc | 19 +++++++ 5 files changed, 162 insertions(+) create mode 100644 development/Mk4tcl/01-Makefile.patch create mode 100644 development/Mk4tcl/Mk4tcl.SlackBuild create mode 100644 development/Mk4tcl/Mk4tcl.info create mode 100644 development/Mk4tcl/README create mode 100644 development/Mk4tcl/slack-desc diff --git a/development/Mk4tcl/01-Makefile.patch b/development/Mk4tcl/01-Makefile.patch new file mode 100644 index 0000000000..3e2cde4ed6 --- /dev/null +++ b/development/Mk4tcl/01-Makefile.patch @@ -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 + diff --git a/development/Mk4tcl/Mk4tcl.SlackBuild b/development/Mk4tcl/Mk4tcl.SlackBuild new file mode 100644 index 0000000000..0ca8017faa --- /dev/null +++ b/development/Mk4tcl/Mk4tcl.SlackBuild @@ -0,0 +1,97 @@ +#!/bin/sh + +# Slackware build script for Mk4tcl + +# Written by Zbigniew Baniewski, + +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} diff --git a/development/Mk4tcl/Mk4tcl.info b/development/Mk4tcl/Mk4tcl.info new file mode 100644 index 0000000000..2c3a703b10 --- /dev/null +++ b/development/Mk4tcl/Mk4tcl.info @@ -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" diff --git a/development/Mk4tcl/README b/development/Mk4tcl/README new file mode 100644 index 0000000000..9945ee68e2 --- /dev/null +++ b/development/Mk4tcl/README @@ -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. diff --git a/development/Mk4tcl/slack-desc b/development/Mk4tcl/slack-desc new file mode 100644 index 0000000000..c8cc45bd68 --- /dev/null +++ b/development/Mk4tcl/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------------------------------------------------------| +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/ -- cgit v1.2.3