aboutsummaryrefslogtreecommitdiff
path: root/development/textadept/textadept.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'development/textadept/textadept.SlackBuild')
-rw-r--r--development/textadept/textadept.SlackBuild81
1 files changed, 59 insertions, 22 deletions
diff --git a/development/textadept/textadept.SlackBuild b/development/textadept/textadept.SlackBuild
index 90bfcd616c..483cb5fa38 100644
--- a/development/textadept/textadept.SlackBuild
+++ b/development/textadept/textadept.SlackBuild
@@ -1,6 +1,7 @@
#!/bin/bash
# Slackware build script for textadept
+# Copyright 2023 Yth | Pont-en-Royans, France | yth@ythogtha.org
# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
# Copyright 2018, 2019 Brenton Earl <brent@exitstatusone.com>
@@ -25,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=textadept
-VERSION=${VERSION:-10.8}
+VERSION=${VERSION:-12.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -53,19 +54,15 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
- SRCARCH=i386
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
- SRCARCH=i386
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
- SRCARCH=x86_64
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
- SRCARCH=i386
fi
DOCS="CHANGELOG.md FAQ.md LICENSE MEDIA.md README.md TECHNOLOGY.md THANKS.md"
@@ -75,9 +72,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM\_$VERSION.$SRCARCH
-tar xvf $CWD/$PRGNAM\_$VERSION.$SRCARCH.tgz
-cd $PRGNAM\_$VERSION.$SRCARCH/
+rm -rf $PRGNAM-$PRGNAM\_$VERSION
+tar xvf $CWD/$PRGNAM-$PRGNAM\_$VERSION.tar.gz
+cd $PRGNAM-$PRGNAM\_$VERSION/
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -85,29 +82,69 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir -p $PKG/opt/$PRGNAM/
-cp -a * $PKG/opt/$PRGNAM/
+mkdir -p build/_deps
+ln -s $CWD/*t20200923.tar.gz build/_deps/t20200923.tar.gz
+ln -s $CWD/*libiconv-1.17.tar.gz build/_deps/libiconv-1.17.tar.gz
+ln -s $CWD/*lexilla510.tgz build/_deps/lexilla510.tgz
+ln -s $CWD/*1_8_0.zip build/_deps/v1_8_0.zip
+ln -s $CWD/*lpeg-1.1.0.tar.gz build/_deps/lpeg-1.1.0.tar.gz
+ln -s $CWD/*lua-5.4.6.tar.gz build/_deps/lua-5.4.6.tar.gz
+ln -s $CWD/*PDCurses-3.9.zip build/_deps/PDCurses-3.9.zip
+ln -s $CWD/*1.0.zip build/_deps/1.0.zip
+ln -s $CWD/*scinterm_5.0.zip build/_deps/scinterm_5.0.zip
+ln -s $CWD/*scintilla536.tgz build/_deps/scintilla536.tgz
+ln -s $CWD/*e88bbcfecae46b48b79d8156ea7129411b5c847d.zip build/_deps/e88bbcfecae46b48b79d8156ea7129411b5c847d.zip
+ln -s $CWD/*libtermkey-0.22.tar.gz build/_deps/libtermkey-0.22.tar.gz
+cd build
+ cmake \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+# Generate HTML documentation if markdown-it is available.
+if [ -e /usr/bin/markdown-it ]; then
+ pushd build/_deps/lua-src; make; popd
+ LUA=$(pwd)/build/_deps/lua-src/src/lua
+ # Copied from textadept's github workflow, and adapted to our environment
+ FILL_LAYOUT=$(pwd)/scripts/fill_layout.lua
+ sed -i 's/markdown -f toc -T/markdown-it/;s/read\(..\)a/read\1*a/;s/:match.*ul.*//' $FILL_LAYOUT
+
+ pushd $PKG/usr/share/$PRGNAM/docs
+ for file in `ls *.md`; do
+ cat _layouts/default.html | $LUA $FILL_LAYOUT $file > `basename -s .md $file`.html
+ done
+ rm _layouts/default.html
+ rmdir _layouts
+ popd
+fi
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/bin/
-ln -sf /opt/$PRGNAM/"${PRGNAM}" $PKG/usr/bin/
-ln -sf /opt/$PRGNAM/"${PRGNAM}"-curses $PKG/usr/bin/
-ln -sf /opt/$PRGNAM/"${PRGNAM}"jit $PKG/usr/bin/
-ln -sf /opt/$PRGNAM/"${PRGNAM}"jit-curses $PKG/usr/bin/
-ln -sf /opt/$PRGNAM/"${PRGNAM}" $PKG/usr/bin/tad
-ln -sf /opt/$PRGNAM/"${PRGNAM}"-curses $PKG/usr/bin/tadc
-
-mkdir -p $PKG/usr/share/pixmaps/
-ln -sf /opt/$PRGNAM/core/images/${PRGNAM}.png $PKG/usr/share/pixmaps/
-ln -sf /opt/$PRGNAM/core/images/${PRGNAM}-curses.png $PKG/usr/share/pixmaps/
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}" $PKG/usr/bin/
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-curses $PKG/usr/bin/
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-gtk $PKG/usr/bin/
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}" $PKG/usr/bin/tad
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-gtk $PKG/usr/bin/tadg
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-curses $PKG/usr/bin/tadc
mkdir -p $PKG/usr/share/applications
-install -m644 src/$PRGNAM.desktop $PKG/usr/share/applications
-install -m644 src/$PRGNAM-curses.desktop $PKG/usr/share/applications
+sed -i 's/Name=Textadept/Name=Textadept (Qt)/' $PKG/usr/share/$PRGNAM/"${PRGNAM}".desktop
+sed -i 's/Name=Textadept/Name=Textadept (Gtk)/' $PKG/usr/share/$PRGNAM/"${PRGNAM}"-gtk.desktop
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}".desktop $PKG/usr/share/applications
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-curses.desktop $PKG/usr/share/applications
+ln -sf /usr/share/$PRGNAM/"${PRGNAM}"-gtk.desktop $PKG/usr/share/applications
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
+cp -a README* LICENSE* $PKG/usr/doc/$PRGNAM-$VERSION/
+# Doc in /usr/share/$PRGNAM/docs is used for help inside program
+ln -sf /usr/share/$PRGNAM/docs $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install