aboutsummaryrefslogtreecommitdiff
path: root/system/csv2sql/csv2sql.SlackBuild
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2022-07-10 22:26:54 +0100
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2022-07-17 06:40:06 +0700
commited102aeab8ac4e4e4d00aa4975dd873bbec407ad (patch)
tree15e9ca0653452a81bef38be03dc8794879c4bcfb /system/csv2sql/csv2sql.SlackBuild
parentdd7cab606606997bbda5874465ff90a6351c7d61 (diff)
system/csv2sql: Added (create sqlite database from a CSV file)
Signed-off-by: Dave Woodfall <dave@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'system/csv2sql/csv2sql.SlackBuild')
-rw-r--r--system/csv2sql/csv2sql.SlackBuild68
1 files changed, 68 insertions, 0 deletions
diff --git a/system/csv2sql/csv2sql.SlackBuild b/system/csv2sql/csv2sql.SlackBuild
new file mode 100644
index 0000000000000..3fd9a532e0427
--- /dev/null
+++ b/system/csv2sql/csv2sql.SlackBuild
@@ -0,0 +1,68 @@
+#!/bin/bash
+
+# Slackware build script for csv2sql
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=csv2sql
+VERSION=${VERSION:-0.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+chmod 644 *
+
+# As shipped, csv2sql refuses to read stdin if it's a redirect from a file.
+# This works:
+# cat file.csv | csv2sql
+# This doesn't work:
+# csv2sql < file.csv
+# ...which violates the principle of least surprise. The patch makes
+# it read from stdin unconditionally, if no filename given (so the 2nd
+# example will work). This is how standard UNIX utilities like cat,
+# grep, sed have worked for decades.
+# For those of you who don't like me patching the code, don't bother
+# complaining via email/etc. I consider this a bugfix that enhances
+# usability. Feel free to comment out the next line, if it bothers you:
+patch -p1 < $CWD/stdin.diff
+
+mkdir -p $PKG/usr/bin
+install -oroot -groot -m0755 $PRGNAM $PKG/usr/bin/$PRGNAM
+
+# man page by SlackBuild author.
+mkdir -p $PKG/usr/man/man1
+gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a README* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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