summaryrefslogtreecommitdiffstats
path: root/network/syncterm
diff options
context:
space:
mode:
Diffstat (limited to 'network/syncterm')
-rw-r--r--network/syncterm/0002-use-sched-yield-53264f2b.diff38
-rw-r--r--network/syncterm/README22
-rw-r--r--network/syncterm/doinst.sh9
-rw-r--r--network/syncterm/extract-icns.sh55
-rw-r--r--network/syncterm/icons/128.pngbin0 -> 18515 bytes
-rw-r--r--network/syncterm/icons/16.pngbin0 -> 686 bytes
-rw-r--r--network/syncterm/icons/32.pngbin0 -> 1882 bytes
-rw-r--r--network/syncterm/icons/48.pngbin0 -> 3482 bytes
-rw-r--r--network/syncterm/manpage.diff55
-rw-r--r--network/syncterm/slack-desc19
-rw-r--r--network/syncterm/syncterm.SlackBuild159
-rw-r--r--network/syncterm/syncterm.info10
12 files changed, 367 insertions, 0 deletions
diff --git a/network/syncterm/0002-use-sched-yield-53264f2b.diff b/network/syncterm/0002-use-sched-yield-53264f2b.diff
new file mode 100644
index 0000000000..7b18f3659e
--- /dev/null
+++ b/network/syncterm/0002-use-sched-yield-53264f2b.diff
@@ -0,0 +1,38 @@
+diff --git a/3rdp/build/GNUmakefile b/3rdp/build/GNUmakefile
+index fdf54565834a6a418f7267f4f8bf2269b80eab41..804dd76feb1a2d3b0278686f5326f7c2302e5fde 100644
+--- a/3rdp/build/GNUmakefile
++++ b/3rdp/build/GNUmakefile
+@@ -67,7 +67,7 @@
+ $(CRYPT_IDIR): | $(3RDPODIR)
+ $(QUIET)$(IFNOTEXIST) mkdir $(CRYPT_IDIR)
+
+-$(CRYPTLIB_BUILD): $(3RDP_ROOT)$(DIRSEP)dist/cryptlib.zip $(3RDP_ROOT)$(DIRSEP)build/terminal-params.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw32-static.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ranlib.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-noasm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zz-country.patch $(3RDP_ROOT)$(DIRSEP)build/cl-algorithms.patch $(3RDP_ROOT)$(DIRSEP)build/cl-allow-duplicate-ext.patch $(3RDP_ROOT)$(DIRSEP)build/cl-macosx-minver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-endian.patch $(3RDP_ROOT)$(DIRSEP)build/cl-cryptodev.patch $(3RDP_ROOT)$(DIRSEP)build/cl-posix-me-gently.patch $(3RDP_ROOT)$(DIRSEP)build/cl-tpm-linux.patch $(3RDP_ROOT)$(DIRSEP)build/cl-PAM-noprompts.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zlib.patch $(3RDP_ROOT)$(DIRSEP)build/Dynamic-linked-static-lib.patch $(3RDP_ROOT)$(DIRSEP)build/SSL-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bigger-maxattribute.patch $(3RDP_ROOT)$(DIRSEP)build/cl-vcxproj.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw-vcver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-build-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-gcc-non-const-time-val.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-odbc.patch $(3RDP_ROOT)$(DIRSEP)build/cl-noasm-defines.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bn-noasm64-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-RSA-suites.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ECC-RSA.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC-harder.patch $(3RDP_ROOT)$(DIRSEP)build/cl-more-RSA-ECC-fixes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-DH-key-init.patch $(3RDP_ROOT)$(DIRSEP)build/cl-clear-GCM-flag.patch $(3RDP_ROOT)$(DIRSEP)build/cl-use-ssh-ctr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-list-ctr-modes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-incCtr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssl-suite-blocksizes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-tpm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-via-aes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ssh-ecc-ephemeral.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-just-use-cc.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-learn-numbers.patch | $(CRYPT_SRC) $(CRYPT_IDIR)
++$(CRYPTLIB_BUILD): $(3RDP_ROOT)$(DIRSEP)dist/cryptlib.zip $(3RDP_ROOT)$(DIRSEP)build/terminal-params.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw32-static.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ranlib.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-noasm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zz-country.patch $(3RDP_ROOT)$(DIRSEP)build/cl-algorithms.patch $(3RDP_ROOT)$(DIRSEP)build/cl-allow-duplicate-ext.patch $(3RDP_ROOT)$(DIRSEP)build/cl-macosx-minver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-endian.patch $(3RDP_ROOT)$(DIRSEP)build/cl-cryptodev.patch $(3RDP_ROOT)$(DIRSEP)build/cl-posix-me-gently.patch $(3RDP_ROOT)$(DIRSEP)build/cl-tpm-linux.patch $(3RDP_ROOT)$(DIRSEP)build/cl-PAM-noprompts.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zlib.patch $(3RDP_ROOT)$(DIRSEP)build/Dynamic-linked-static-lib.patch $(3RDP_ROOT)$(DIRSEP)build/SSL-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bigger-maxattribute.patch $(3RDP_ROOT)$(DIRSEP)build/cl-vcxproj.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw-vcver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-build-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-gcc-non-const-time-val.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-odbc.patch $(3RDP_ROOT)$(DIRSEP)build/cl-noasm-defines.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bn-noasm64-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-RSA-suites.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ECC-RSA.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC-harder.patch $(3RDP_ROOT)$(DIRSEP)build/cl-more-RSA-ECC-fixes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-DH-key-init.patch $(3RDP_ROOT)$(DIRSEP)build/cl-clear-GCM-flag.patch $(3RDP_ROOT)$(DIRSEP)build/cl-use-ssh-ctr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-list-ctr-modes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-incCtr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssl-suite-blocksizes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-tpm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-via-aes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ssh-ecc-ephemeral.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-just-use-cc.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-learn-numbers.patch $(3RDP_ROOT)/build/cl-linux-yield.patch | $(CRYPT_SRC) $(CRYPT_IDIR)
+ @echo Creating $@ ...
+ $(QUIET)-rm -rf $(CRYPT_SRC)/*
+ $(QUIET)unzip -oa $(3RDPDISTDIR)$(DIRSEP)cryptlib.zip -d $(CRYPT_SRC)
+@@ -112,6 +112,7 @@
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-fix-ssh-ecc-ephemeral.patch
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-just-use-cc.patch
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-learn-numbers.patch
++ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-linux-yield.patch
+ ifeq ($(CC),mingw32-gcc)
+ $(QUIET)cd $(CRYPT_SRC) && env - PATH="$(PATH)" CC="$(CC)" AR="$(AR)" RANLIB="$(RANLIB)" make directories
+ $(QUIET)cd $(CRYPT_SRC) && env - PATH="$(PATH)" CC="$(CC)" AR="$(AR)" RANLIB="$(RANLIB)" make toolscripts
+diff --git a/3rdp/build/cl-linux-yield.patch b/3rdp/build/cl-linux-yield.patch
+new file mode 100644
+index 0000000000000000000000000000000000000000..8cdfc8eafd3fd85f39bf0f8b519f25a31078fee4
+--- /dev/null
++++ b/3rdp/build/cl-linux-yield.patch
+@@ -0,0 +1,11 @@
++--- old/thread.h 2021-10-19 12:34:08.766649958 -0700
+++++ kernel/thread.h 2021-10-19 12:34:43.794072316 -0700
++@@ -3005,7 +3005,7 @@
++ #endif /* Slowaris 5.7 / 7.x or newer */
++ #elif defined( _AIX ) || defined( __Android__ ) || defined( __CYGWIN__ ) || \
++ ( defined( __hpux ) && ( OSVERSION >= 11 ) ) || \
++- defined( __NetBSD__ ) || defined( __QNX__ ) || defined( __UCLIBC__ )
+++ defined( __NetBSD__ ) || defined( __QNX__ ) || defined( __UCLIBC__ ) || defined(__linux__)
++ #define THREAD_YIELD() sched_yield()
++ #elif defined( __XMK__ )
++ /* The XMK underlying scheduling object is the process context, for which
diff --git a/network/syncterm/README b/network/syncterm/README
new file mode 100644
index 0000000000..1a86f0e9f7
--- /dev/null
+++ b/network/syncterm/README
@@ -0,0 +1,22 @@
+syncterm (BBS-oriented terminal emulator)
+
+syncterm is a terminal emulator that connects to a host via
+dialup modem, raw TCP, telnet, ssh, or rsync. Its user interface is
+similar to ProComm. It's intended for use with BBSes (bulletin board
+systems), and includes support for nonstandard ASCII variants such as
+Atari 8-bit (ATASCII), Commodore 8-bit (PETSCII), and "IBM ANSI" as
+used by MS-DOS.
+
+syncterm can also be used as a local terminal (e.g. like xterm),
+by creating a dialing list entry with address "shell:", command
+"/bin/bash -login" or similar.
+
+Some of the documentation is found only on the website:
+http://syncterm.bbsdev.net/
+
+More information on BBSes can be found here, along with an up-to-date
+list of telnet BBSes:
+https://www.telnetbbsguide.com/
+
+Atari users can download a sycterm.lst full of Atari BBSes here:
+http://sfhqbbs.org/ataribbslist.php
diff --git a/network/syncterm/doinst.sh b/network/syncterm/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/syncterm/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/syncterm/extract-icns.sh b/network/syncterm/extract-icns.sh
new file mode 100644
index 0000000000..07c3f41873
--- /dev/null
+++ b/network/syncterm/extract-icns.sh
@@ -0,0 +1,55 @@
+#!/bin/sh
+
+# 20230728 bkw: Extract PNG icons from a mac .icns file, for use
+# with a SlackBuilds.org script.
+
+# They get written to a directory called icons/, with filenames like
+# 32.png, 64.png, etc (the pixel size). After extracting them, you
+# should 'git add icons/*' if you're using git (otherwise, include
+# icons/ in your submission tarball).
+
+# The SlackBuild should include code to install them; see
+# syncterm.SlackBuild for an example. Don't forget to include a
+# doinst.sh.
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Feel free to use this as part of your own SlackBuild.
+
+# Note that this script shouldn't be included in the package!
+
+die() {
+ echo "$( basename $0 ): $@" 1>&2
+ exit 1
+}
+
+if [ "$1" = "" -o "$2" != "" ]; then
+ die "one argument required, path to *.icns file."
+fi
+
+if ! which icns2png &>/dev/null; then
+ die "icns2png not found in \$PATH. Install libicns."
+fi
+
+if [ -e icons ]; then
+ die "icons/ already exists, not overwriting."
+fi
+
+mkdir -p icons
+cd icons || die "can't create or cd to icons/ dir."
+
+icns2png -x -d 32 "$1" || die "can't extract any icons."
+count=0
+for png in *x32.png; do
+ [ -e $png ] || break
+ size="$( echo $png | cut -d_ -f2 | cut -dx -f1 )"
+ mv $png $size.png
+ : $(( count++ ))
+done
+
+if [ "$count" = "0" ]; then
+ rm -rf ../icons
+ die "failed to extract any icons."
+fi
+
+echo "extracted $count icons:"
+ls
diff --git a/network/syncterm/icons/128.png b/network/syncterm/icons/128.png
new file mode 100644
index 0000000000..eacbee1f6f
--- /dev/null
+++ b/network/syncterm/icons/128.png
Binary files differ
diff --git a/network/syncterm/icons/16.png b/network/syncterm/icons/16.png
new file mode 100644
index 0000000000..0be1847afa
--- /dev/null
+++ b/network/syncterm/icons/16.png
Binary files differ
diff --git a/network/syncterm/icons/32.png b/network/syncterm/icons/32.png
new file mode 100644
index 0000000000..887b027dfd
--- /dev/null
+++ b/network/syncterm/icons/32.png
Binary files differ
diff --git a/network/syncterm/icons/48.png b/network/syncterm/icons/48.png
new file mode 100644
index 0000000000..df9d91f83c
--- /dev/null
+++ b/network/syncterm/icons/48.png
Binary files differ
diff --git a/network/syncterm/manpage.diff b/network/syncterm/manpage.diff
new file mode 100644
index 0000000000..7bffad39db
--- /dev/null
+++ b/network/syncterm/manpage.diff
@@ -0,0 +1,55 @@
+diff -Naur syncterm-1.1/src/syncterm/syncterm.man.in syncterm-1.1.patched/src/syncterm/syncterm.man.in
+--- syncterm-1.1/src/syncterm/syncterm.man.in 2020-06-26 19:40:21.000000000 -0400
++++ syncterm-1.1.patched/src/syncterm/syncterm.man.in 2023-07-27 16:48:25.575523339 -0400
+@@ -1,11 +1,14 @@
+-.TH SYNCTERM 1 "27 May 2007"
++.TH SYNCTERM 1 "27 Jul 2023"
+ .SH NAME
+ syncterm \- BBS terminal program
+ .SH SYNOPSIS
+ \fBsyncterm\fP [\-e\fIdly\fP] [\-i\fIifc\fP] [\-l\fIlns\fP] [\-t|\-r|\-h] [\-s] [\fIURL\fP]
+ .SH DESCRIPTION
+ \fBSyncTERM\fP is a terminal program designed specifically for connecting to
+-a Bulletin Board System (\fBBBS\fP)
++a Bulletin Board System (\fBBBS\fP).
++.LP
++[\fIURL\fP] may be an actual URL, a hostname, or the name of
++an entry from the dialing list.
+ .SS Options
+ .IP \fB\-e\fIdly\fR
+ Specify the "escape delay" in milliseconds for curses(3) mode. Since curses
+@@ -96,7 +99,7 @@
+ Specifies the default scheme for \fIURL\fP to be telnet://
+ .IP \fB\-r\fP
+ Specifies the default scheme for \fIURL\fP to be rlogin://
+-.IP \fB\-r\fP
++.IP \fB\-h\fP
+ Specifies the default scheme for \fIURL\fP to be ssh://
+ .IP \fB\-4\fP
+ Only resolve IPv4 addresses
+@@ -112,7 +115,7 @@
+ run-time linking is employed using dlopen(). Using this, it is possible to
+ build a version which will use SDL, and X11 if they are present, but
+ not fail to run if they are not.
+-.SH TEXT MODE CAVAETS
++.SH TEXT MODE CAVEATS
+ When running in one of the text modes such as curses or ANSI, many of the
+ control functions are modified since there is no reliable way to use extra
+ modifier keys. As a result, CTRL-S and CTRL-Q can not be sent to the remote
+@@ -130,12 +133,12 @@
+ a traditional screen mode. As such, filler will be added around the terminal
+ screen. For some display sizes, unpredictable results may occur.
+ .SH FILES
+-.IP \fC%%DESTDIR%%%%PREFIX%%/etc/syncterm.lst\fR
+-The system wide dialing directory.
++.IP /etc/syncterm.lst\fR
++The system wide dialing directory [note: doesn't seem to be used in SyncTERM 1.1].
+ .IP \fC~/.syncterm/syncterm.lst\fR
+-The users dialing directory
++The user's dialing directory
+ .IP \fC~/.syncterm/syncterm.ini\fR
+-The users SyncTERM configuration file
++The user's SyncTERM configuration file
+ .IP \fClibSDL.so\fR
+ When this file exists in the library path, SyncTERM will support the use of SDL
+ for input and output. This file is part of the Simple Directmedia Layer
diff --git a/network/syncterm/slack-desc b/network/syncterm/slack-desc
new file mode 100644
index 0000000000..d0822aa581
--- /dev/null
+++ b/network/syncterm/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------------------------------------------------------|
+syncterm: syncterm (BBS-oriented terminal emulator)
+syncterm:
+syncterm: syncterm is a terminal emulator that connects to a host via
+syncterm: dialup modem, raw TCP, telnet, ssh, or rsync. Its user interface is
+syncterm: similar to ProComm. It's intended for use with BBSes (bulletin board
+syncterm: systems), and includes support for nonstandard ASCII variants such as
+syncterm: Atari 8-bit (ATASCII), Commodore 8-bit (PETSCII), and "IBM ANSI" as
+syncterm: used by MS-DOS.
+syncterm:
+syncterm:
+syncterm:
diff --git a/network/syncterm/syncterm.SlackBuild b/network/syncterm/syncterm.SlackBuild
new file mode 100644
index 0000000000..4f746b2568
--- /dev/null
+++ b/network/syncterm/syncterm.SlackBuild
@@ -0,0 +1,159 @@
+#!/bin/bash
+
+# Slackware build script for syncterm
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Issues:
+# 1. Figure out why shell: doesn't work on the command line (though
+# it does, with the ^D "quick connect" option, or by adding it to
+# the dialing list).
+# 2. How do we use /etc/syncterm.lst? strace shows that syncterm reads it,
+# but entries there don't show up in the dialing list (not even if there's
+# no user list). If I could get the system list to work, I'd include an
+# entry there for a local shell (to work around issue #1). But probably
+# nobody much cares about using this as an xterm or konsole replacement...
+# Neither of these issues are going to prevent me from submitting this.
+
+# Note: phigan on #atari tells me they're "almost ready" to release 1.2,
+# so this may get updated soon.
+
+# 20240218 bkw: BUILD=2
+# - add compile fix for -current.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=syncterm
+VERSION=${VERSION:-1.1}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+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}
+
+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"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-src.tgz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# Man page: Fix path to dialing list and a couple typos. The path
+# baked into the binary really is /etc/syncterm.lst (not /usr/etc)...
+# although I don't see a way to make syncterm actually use the
+# system-wide dialing list.
+patch -p1 < $CWD/manpage.diff
+
+# 20240218 bkw: fix compilation on -current (or so I am assured). Doesn't
+# hurt anything on 15.0. Patch originally from:
+# https://raw.github.com/nullman/config/master/common/.nixos/pkgs/syncterm/0002-use-sched-yield-53264f2b.diff
+# ...brought to my attention by Joshua E. Roybal via email.
+patch -p1 < $CWD/0002-use-sched-yield-53264f2b.diff
+
+# This is a big hassle: -O3 is hardcoded in a makefile... which is
+# inside a zip file. To force our flags, we have to extract the zip
+# file, mod the makefile, then re-zip it. Using -0 with zip means
+# "store" (for speed).
+cd 3rdp/dist
+unzip -oa cryptlib.zip
+rm -f cryptlib.zip
+sed -i "s,-O3,$SLKCFLAGS," makefile
+zip -0r cryptlib.zip *
+cd -
+
+# Rest of the flags:
+sed -i "s,-O2,$SLKCFLAGS," src/build/Common.gmake
+sed -i "s,-O3,\"$SLKCFLAGS\"," 3rdp/build/GNUmakefile
+
+# Top-level source directory:
+cd src/$PRGNAM
+
+# Lots of make options here:
+# - RELEASE=1 means binary already stripped, man page already gzipped.
+# - WITHOUT_PORTAUDIO=1 to avoid a hidden dependency on portaudio. I
+# see no advantage to using portaudio anyway (SDL audio works fine).
+# - INSTALL_DATA: install man page with usual Slackware permissions.
+# - SRC_ROOT has to be set because the makefile is dumb...
+# - Use -j1 as the compile always fails if -jN where N>1.
+make -j1 \
+ PREFIX=/usr \
+ MANPREFIX=/usr \
+ SYSTEM_LIST_DIR=/etc \
+ SRC_ROOT="$( realpath .. )" \
+ USE_SDL=1 \
+ USE_SDL_AUDIO=1 \
+ WITHOUT_PORTAUDIO=1 \
+ VERBOSE=1 \
+ RELEASE=1 \
+ DESTDIR=$PKG \
+ INSTALL_DATA="install -m 0644" \
+ all install
+
+# Compile the terminfo entries. Have to run the binary we just built,
+# let's not do it as root.
+su nobody -s /bin/sh -c "$PKG/usr/bin/$PRGNAM -T" | \
+ tic -o $PKG/usr/share/terminfo -
+
+# The 64x64 icon was installed by 'make install', above.
+# Other icons extracted from the Mac .icns file:
+# sh extract-icns.sh /tmp/SBo/syncterm-1.1/src/syncterm/SyncTERM.icns
+# If you're copying this code for use in your own SlackBuild, please
+# don't change the "cat" to "cp -a", below: files copied from $CWD
+# might be owned by anybody (not necessarily root), and have wrong
+# permissions; using "cat >" takes care of both.
+# Also, please don't rewrite this to call icns2png in your script.
+# Otherwise you'd have to add libicns to REQUIRES.
+for png in $CWD/icons/*.png; do
+ px="$( basename $png | cut -d. -f1 )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $png > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a Install-Mozilla.txt CHANGES LICENCE gpl.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/syncterm/syncterm.info b/network/syncterm/syncterm.info
new file mode 100644
index 0000000000..188f5794d3
--- /dev/null
+++ b/network/syncterm/syncterm.info
@@ -0,0 +1,10 @@
+PRGNAM="syncterm"
+VERSION="1.1"
+HOMEPAGE="http://syncterm.bbsdev.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/syncterm/syncterm/syncterm-1.1/syncterm-1.1-src.tgz"
+MD5SUM="f528a1fdbe87a69a52582582d99e4032"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"