From d8f0a09e9f454cd6ea779d15985202a43bebf74d Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Thu, 14 Feb 2019 22:39:46 +0100 Subject: Add text-to-speech support to Slackware Compile order: pcaudiolib, espeak-ng, pyxdg, dotconf, flite, speech-dispatcher, qt5-speech These are the stock configurations, no additional voices were added. I'd like to hear about anything that's missing or incorrectly configured. --- deps/alldeps.SlackBuild | 9 ++ deps/dotconf/.url | 1 + deps/dotconf/dotconf.SlackBuild | 117 +++++++++++++++++ deps/dotconf/slack-desc | 19 +++ deps/espeak-ng/.deps | 1 + deps/espeak-ng/.url | 1 + deps/espeak-ng/espeak-ng.SlackBuild | 118 +++++++++++++++++ deps/espeak-ng/slack-desc | 19 +++ deps/flite/.url | 1 + deps/flite/flite.SlackBuild | 117 +++++++++++++++++ deps/flite/slack-desc | 19 +++ deps/pcaudiolib/.url | 1 + deps/pcaudiolib/pcaudiolib.SlackBuild | 117 +++++++++++++++++ deps/pcaudiolib/slack-desc | 19 +++ deps/pyxdg/.url | 1 + deps/pyxdg/pyxdg.SlackBuild | 97 ++++++++++++++ deps/pyxdg/slack-desc | 19 +++ deps/qt5-speech/.deps | 3 + deps/qt5-speech/.url | 1 + deps/qt5-speech/qt5-speech.SlackBuild | 128 ++++++++++++++++++ deps/qt5-speech/slack-desc | 19 +++ deps/speech-dispatcher/.deps | 5 + deps/speech-dispatcher/.url | 1 + deps/speech-dispatcher/slack-desc | 19 +++ .../speech-dispatcher/speech-dispatcher.SlackBuild | 144 +++++++++++++++++++++ deps/updates.SlackBuild | 9 ++ 26 files changed, 1005 insertions(+) create mode 100644 deps/dotconf/.url create mode 100755 deps/dotconf/dotconf.SlackBuild create mode 100644 deps/dotconf/slack-desc create mode 100644 deps/espeak-ng/.deps create mode 100644 deps/espeak-ng/.url create mode 100755 deps/espeak-ng/espeak-ng.SlackBuild create mode 100644 deps/espeak-ng/slack-desc create mode 100644 deps/flite/.url create mode 100755 deps/flite/flite.SlackBuild create mode 100644 deps/flite/slack-desc create mode 100644 deps/pcaudiolib/.url create mode 100755 deps/pcaudiolib/pcaudiolib.SlackBuild create mode 100644 deps/pcaudiolib/slack-desc create mode 100644 deps/pyxdg/.url create mode 100755 deps/pyxdg/pyxdg.SlackBuild create mode 100644 deps/pyxdg/slack-desc create mode 100644 deps/qt5-speech/.deps create mode 100644 deps/qt5-speech/.url create mode 100755 deps/qt5-speech/qt5-speech.SlackBuild create mode 100644 deps/qt5-speech/slack-desc create mode 100644 deps/speech-dispatcher/.deps create mode 100644 deps/speech-dispatcher/.url create mode 100644 deps/speech-dispatcher/slack-desc create mode 100755 deps/speech-dispatcher/speech-dispatcher.SlackBuild (limited to 'deps') diff --git a/deps/alldeps.SlackBuild b/deps/alldeps.SlackBuild index 1cc6ca6..29afcf6 100755 --- a/deps/alldeps.SlackBuild +++ b/deps/alldeps.SlackBuild @@ -31,6 +31,13 @@ ALLDEPS=" \ phonon \ phonon-gstreamer \ python-enum34 \ + pyxdg \ + pcaudiolib \ + espeak-ng \ + dotconf \ + flite \ + speech-dispatcher \ + qt5-speech \ sip \ PyQt \ PyQt5 \ @@ -76,6 +83,8 @@ ALLDEPS=" \ perl-template-toolkit \ freecell-solver \ drumstick \ + libsass \ + sassc \ " # Only needed when adding support for Wayland: #elogind \ diff --git a/deps/dotconf/.url b/deps/dotconf/.url new file mode 100644 index 0000000..6464397 --- /dev/null +++ b/deps/dotconf/.url @@ -0,0 +1 @@ +https://github.com/williamh/dotconf/archive/v1.3/dotconf-1.3.tar.gz diff --git a/deps/dotconf/dotconf.SlackBuild b/deps/dotconf/dotconf.SlackBuild new file mode 100755 index 0000000..0b18470 --- /dev/null +++ b/deps/dotconf/dotconf.SlackBuild @@ -0,0 +1,117 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=dotconf +VERSION=${VERSION:-1.3} +BUILD=${BUILD:-1} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv5te" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz" + exit 0 +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.gz || exit 1 +cd $PKGNAM-$VERSION || exit 1 +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 {} \; + +[ ! -x configure ] && autoreconf -vif + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --disable-static \ + --build=$TARGET || exit 1 + +make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + AUTHORS COPYING INSTALL README \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries (if any): +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/dotconf/slack-desc b/deps/dotconf/slack-desc new file mode 100644 index 0000000..5795242 --- /dev/null +++ b/deps/dotconf/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------------------------------------------------------| +dotconf: dotconf (configuration file parser) +dotconf: +dotconf: Dot.conf is a lightweight and simple configuration file parser that +dotconf: contains many features. +dotconf: +dotconf: +dotconf: +dotconf: +dotconf: +dotconf: Homepage: https://github.com/williamh/dotconf/ +dotconf: diff --git a/deps/espeak-ng/.deps b/deps/espeak-ng/.deps new file mode 100644 index 0000000..60c2f98 --- /dev/null +++ b/deps/espeak-ng/.deps @@ -0,0 +1 @@ +pcaudiolib diff --git a/deps/espeak-ng/.url b/deps/espeak-ng/.url new file mode 100644 index 0000000..a1127ef --- /dev/null +++ b/deps/espeak-ng/.url @@ -0,0 +1 @@ +https://github.com/espeak-ng/espeak-ng/releases/download/1.49.2/espeak-ng-1.49.2.tar.gz diff --git a/deps/espeak-ng/espeak-ng.SlackBuild b/deps/espeak-ng/espeak-ng.SlackBuild new file mode 100755 index 0000000..5a530da --- /dev/null +++ b/deps/espeak-ng/espeak-ng.SlackBuild @@ -0,0 +1,118 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=espeak-ng +VERSION=${VERSION:-1.49.2} +BUILD=${BUILD:-1} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv5te" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz" + exit 0 +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.gz || exit 1 +cd $PKGNAM-$VERSION || exit 1 +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 {} \; + +[ ! -x configure ] && ./autogen.sh + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --disable-static \ + --build=$TARGET || exit 1 + +make src/espeak-ng src/speak-ng || exit 1 +make -j1 || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + AUTHORS CHANGELOG.md COPYING* ChangeLog README.md \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries (if any): +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/espeak-ng/slack-desc b/deps/espeak-ng/slack-desc new file mode 100644 index 0000000..a4308ab --- /dev/null +++ b/deps/espeak-ng/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------------------------------------------------------| +espeak-ng: espeak-ng (multi-lingual software speech synthesizer) +espeak-ng: +espeak-ng: espeak-ng is a multi-lingual software speech synthesizer. +espeak-ng: It is a fork of the unmaintained espeak code. +espeak-ng: +espeak-ng: +espeak-ng: +espeak-ng: +espeak-ng: +espeak-ng: Homepage: https://github.com/espeak-ng/espeak-ng +espeak-ng: diff --git a/deps/flite/.url b/deps/flite/.url new file mode 100644 index 0000000..bf3e1c8 --- /dev/null +++ b/deps/flite/.url @@ -0,0 +1 @@ +http://festvox.org/flite/packed/flite-2.1/flite-2.1-release.tar.bz2 diff --git a/deps/flite/flite.SlackBuild b/deps/flite/flite.SlackBuild new file mode 100755 index 0000000..aba913e --- /dev/null +++ b/deps/flite/flite.SlackBuild @@ -0,0 +1,117 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=flite +VERSION=${VERSION:-2.1} +BUILD=${BUILD:-1} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv5te" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz" + exit 0 +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION-release +tar xvf $CWD/$PKGNAM-$VERSION-release.tar.?z* || exit 1 +cd $PKGNAM-$VERSION-release || exit 1 +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 {} \; + +[ ! -x configure ] && ./autogen.sh + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --with-audio=alsa \ + --build=$TARGET || exit 1 + +make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + ACKNOWLEDGEMENTS COPYING README* \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries (if any): +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/flite/slack-desc b/deps/flite/slack-desc new file mode 100644 index 0000000..e2990b7 --- /dev/null +++ b/deps/flite/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------------------------------------------------------| +flite: flite (lightweight speech synthesis engine) +flite: +flite: Flite (or Festival Lite) is a small and fast run-time synthesis engine +flite: designed for embedded systems and servers. +flite: Flite is able to load extra voice files at runtime, in its own +flite: .flitevox format and installed in /usr/share/flite/, +flite: +flite: +flite: +flite: Homepage: https://www.festvox.org/flite/ +flite: diff --git a/deps/pcaudiolib/.url b/deps/pcaudiolib/.url new file mode 100644 index 0000000..0244645 --- /dev/null +++ b/deps/pcaudiolib/.url @@ -0,0 +1 @@ +https://github.com/espeak-ng/pcaudiolib/archive/1.1.tar.gz diff --git a/deps/pcaudiolib/pcaudiolib.SlackBuild b/deps/pcaudiolib/pcaudiolib.SlackBuild new file mode 100755 index 0000000..272e58c --- /dev/null +++ b/deps/pcaudiolib/pcaudiolib.SlackBuild @@ -0,0 +1,117 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=pcaudiolib +VERSION=${VERSION:-1.1} +BUILD=${BUILD:-1} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv5te" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz" + exit 0 +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.gz || exit 1 +cd $PKGNAM-$VERSION || exit 1 +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 {} \; + +[ ! -x configure ] && ./autogen.sh + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --disable-static \ + --build=$TARGET || exit 1 + +make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + AUTHORS CHANGELOG.md COPYING README.md \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries (if any): +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/pcaudiolib/slack-desc b/deps/pcaudiolib/slack-desc new file mode 100644 index 0000000..91f2646 --- /dev/null +++ b/deps/pcaudiolib/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------------------------------------------------------| +pcaudiolib: pcaudiolib (Portable C Audio Library) +pcaudiolib: +pcaudiolib: pcaudiolib is a portable C Audio Library. +pcaudiolib: +pcaudiolib: +pcaudiolib: +pcaudiolib: +pcaudiolib: +pcaudiolib: +pcaudiolib: Homepage: https://github.com/espeak-ng/pcaudiolib +pcaudiolib: diff --git a/deps/pyxdg/.url b/deps/pyxdg/.url new file mode 100644 index 0000000..22d0e08 --- /dev/null +++ b/deps/pyxdg/.url @@ -0,0 +1 @@ +https://pypi.python.org/packages/source/p/pyxdg/pyxdg-0.26.tar.gz diff --git a/deps/pyxdg/pyxdg.SlackBuild b/deps/pyxdg/pyxdg.SlackBuild new file mode 100755 index 0000000..dd8b130 --- /dev/null +++ b/deps/pyxdg/pyxdg.SlackBuild @@ -0,0 +1,97 @@ +#!/bin/sh + +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# 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. + + +PKGNAM=pyxdg +VERSION=${VERSION:-0.26} +BUILD=${BUILD:-1} + +NUMJOBS=${NUMJOBS:-"-j$(nproc)"} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" +elif [ "$ARCH" = "armv7hl" ]; then + SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16" +else + SLKCFLAGS="-O2" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1 +cd $PKGNAM-$VERSION || exit 1 +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 {} \; + +# Support both Python 2 and 3: +python2 setup.py install --root=$PKG --prefix=/usr +python3 setup.py install --root=$PKG --prefix=/usr --skip-build --optimize=1 + +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + AUTHORS COPYING INSTALL PKG-INFO README TODO \ + $PKG/usr/doc/$PKGNAM-$VERSION +chown -R root:root $PKG/usr/doc + +# If there's a ChangeLog, installing at least part of the recent history +# is useful, but don't let it get totally out of control: +if [ -r ChangeLog ]; then + DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION) + cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog + touch -r ChangeLog $DOCSDIR/ChangeLog +fi + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz + diff --git a/deps/pyxdg/slack-desc b/deps/pyxdg/slack-desc new file mode 100644 index 0000000..53ba3d3 --- /dev/null +++ b/deps/pyxdg/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------------------------------------------------------| +pyxdg: pyxdg (Python XDG Library) +pyxdg: +pyxdg: PyXDG implements freedesktop.org standards in python (2 and 3). +pyxdg: +pyxdg: +pyxdg: +pyxdg: +pyxdg: +pyxdg: +pyxdg: Homepage: http://freedesktop.org/wiki/Software/pyxdg +pyxdg: diff --git a/deps/qt5-speech/.deps b/deps/qt5-speech/.deps new file mode 100644 index 0000000..a2505db --- /dev/null +++ b/deps/qt5-speech/.deps @@ -0,0 +1,3 @@ +flite +qt5 +speech-dispatcher diff --git a/deps/qt5-speech/.url b/deps/qt5-speech/.url new file mode 100644 index 0000000..a7b90df --- /dev/null +++ b/deps/qt5-speech/.url @@ -0,0 +1 @@ +https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qtspeech-everywhere-src-5.12.1.tar.xz diff --git a/deps/qt5-speech/qt5-speech.SlackBuild b/deps/qt5-speech/qt5-speech.SlackBuild new file mode 100755 index 0000000..6f909a6 --- /dev/null +++ b/deps/qt5-speech/qt5-speech.SlackBuild @@ -0,0 +1,128 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=qt5-speech +SRCVER=${SRCVER:-"5.12.1"} +VERSION=$(echo $SRCVER | tr - _) +BUILD=${BUILD:-1} + +NUMJOBS=${NUMJOBS:-" -j$(nproc) "} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + SLKLDFLAGS="" + SLKLDFLAGS="-L/usr/lib64" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + SLKLDFLAGS="" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +TMP=${TMP:-/tmp} +PKG=$TMP/package-${PKGNAM} + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf qtspeech-everywhere-src-$SRCVER +echo "Extracting qtspeech-everywhere-src-$SRCVER.tar.xz" +tar xf $CWD/qtspeech-everywhere-src-$SRCVER.tar.xz || exit 1 +cd qtspeech-everywhere-src-$SRCVER || exit 1 + +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 {} \; + +export CFLAGS="$SLKCFLAGS" +export CXXFLAGS="$SLKCFLAGS -fpermissive" +export OPENSOURCE_CXXFLAGS="$SLKCFLAGS -fpermissive" +export QTDIR="/usr/lib$LIBDIRSUFFIX/qt5" +export LD_LIBRARY_PATH="${QTDIR}/qtbase/lib:${QTDIR}/qttools/lib:${LD_LIBRARY_PATH}" + +mkdir build +cd build + qmake-qt5 .. + make ${NUMJOBS} || make || exit 1 + make install INSTALL_ROOT=$PKG || exit 1 +cd .. + +# Strip binaries the Slackware way: +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Fix the path in prl files: +find "$PKG/usr/lib${LIBDIRSUFFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; + +# Add a documentation directory: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + LICENSE* \ + $PKG/usr/doc/$PKGNAM-$VERSION +if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/qt5/doc/html ]; then + ( cd $PKG/usr/doc/$PKGNAM-$VERSION + ln -sf /usr/lib${LIBDIRSUFFIX}/qt5/doc/html . + ) +fi + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/qt5-speech/slack-desc b/deps/qt5-speech/slack-desc new file mode 100644 index 0000000..16cc1d4 --- /dev/null +++ b/deps/qt5-speech/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------------------------------------------------------| +qt5-speech: qt5-speech (Qt module text to speech and speech recognition) +qt5-speech: +qt5-speech: QtSpeech is a Qt module to make text to speech and speech +qt5-speech: recognition easy. +qt5-speech: +qt5-speech: +qt5-speech: +qt5-speech: +qt5-speech: +qt5-speech: Homepage: https://www.qt.io/ +qt5-speech: diff --git a/deps/speech-dispatcher/.deps b/deps/speech-dispatcher/.deps new file mode 100644 index 0000000..3bca6a4 --- /dev/null +++ b/deps/speech-dispatcher/.deps @@ -0,0 +1,5 @@ +dotconf +espeak-ng +flite +pyxdg + diff --git a/deps/speech-dispatcher/.url b/deps/speech-dispatcher/.url new file mode 100644 index 0000000..f30452e --- /dev/null +++ b/deps/speech-dispatcher/.url @@ -0,0 +1 @@ +http://devel.freebsoft.org/pub/projects/speechd/speech-dispatcher-0.8.8.tar.gz diff --git a/deps/speech-dispatcher/slack-desc b/deps/speech-dispatcher/slack-desc new file mode 100644 index 0000000..845f335 --- /dev/null +++ b/deps/speech-dispatcher/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------------------------------------------------------| +speech-dispatcher: speech-dispatcher (device independent speech synthesizer) +speech-dispatcher: +speech-dispatcher: Speech Dispatcher project provides a high-level +speech-dispatcher: device independent layer for access to speech synthesis +speech-dispatcher: through a simple, stable and well documented interface. +speech-dispatcher: +speech-dispatcher: +speech-dispatcher: +speech-dispatcher: +speech-dispatcher: Homepage: http://devel.freebsoft.org/speechd/ +speech-dispatcher: diff --git a/deps/speech-dispatcher/speech-dispatcher.SlackBuild b/deps/speech-dispatcher/speech-dispatcher.SlackBuild new file mode 100755 index 0000000..93071f4 --- /dev/null +++ b/deps/speech-dispatcher/speech-dispatcher.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/sh + +# Copyright 2019 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2019 Eric Hameleers, Eindhoven, NL +# 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. + + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=speech-dispatcher +VERSION=${VERSION:-0.8.8} +BUILD=${BUILD:-1} + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=${ARCH} -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv5te" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "${PKGNAM}-${VERSION}-${ARCH}-${BUILD}.txz" + exit 0 +fi + +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.gz || exit 1 +cd $PKGNAM-$VERSION || exit 1 +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 {} \; + +# Disabled due to bug: https://bugs.archlinux.org/task/35700 +sed -i "s/cicero //g" configure.ac +sed -i "s/sd_cicero//g" src/modules/Makefile.am + +autoreconf -vif || exit 1 + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --disable-static \ + --build=$TARGET || exit 1 + #--without-flite \ + +make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Add documentation: +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + ANNOUNCE AUTHORS BUGS COPYING* README* TODO \ + $PKG/usr/doc/$PKGNAM-$VERSION + +# Strip binaries (if any): +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +# Ensure that custom .conf files are not overwritten: +mkdir -p $PKG/install +cat << "EOT" > $PKG/install/doinst.sh +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then + rm $NEW + fi +} + +EOT + +cd $PKG + for CONFF in $(find etc/${PKGNAM} -type f) ; do + mv ${CONFF} ${CONFF}.new + echo "config ${CONFF}.new" >> $PKG/install/doinst.sh + done +cd - + +# Add a package description: +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/deps/updates.SlackBuild b/deps/updates.SlackBuild index 98c15de..a88bdc9 100755 --- a/deps/updates.SlackBuild +++ b/deps/updates.SlackBuild @@ -32,6 +32,13 @@ ALLDEPS=" \ phonon \ phonon-gstreamer \ python-enum34 \ + pyxdg \ + pcaudiolib \ + espeak-ng \ + dotconf \ + flite \ + speech-dispatcher \ + qt5-speech \ sip \ PyQt \ PyQt5 \ @@ -74,6 +81,8 @@ ALLDEPS=" \ perl-template-toolkit \ freecell-solver \ drumstick \ + libsass \ + sassc \ " # Only needed when adding support for Wayland: #elogind \ -- cgit v1.2.3