summaryrefslogtreecommitdiffstats
path: root/development/atasm
diff options
context:
space:
mode:
Diffstat (limited to 'development/atasm')
-rw-r--r--development/atasm/0001-Fix-the-compiling-under-Linux-Mac.patch34
-rw-r--r--development/atasm/README5
-rw-r--r--development/atasm/atasm.SlackBuild58
-rw-r--r--development/atasm/atasm.info10
-rw-r--r--development/atasm/gcc11fix.diff26
5 files changed, 98 insertions, 35 deletions
diff --git a/development/atasm/0001-Fix-the-compiling-under-Linux-Mac.patch b/development/atasm/0001-Fix-the-compiling-under-Linux-Mac.patch
new file mode 100644
index 0000000000..ec9a977b92
--- /dev/null
+++ b/development/atasm/0001-Fix-the-compiling-under-Linux-Mac.patch
@@ -0,0 +1,34 @@
+From 08296d7cc2697696f2e6098e619f316baaebc626 Mon Sep 17 00:00:00 2001
+From: CycoZA <peter@cerebus.co.za>
+Date: Sun, 5 May 2024 16:29:52 +0200
+Subject: [PATCH] Fix the compiling under Linux/Mac
+
+---
+ src/Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 74971d1..d0b5cff 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -19,7 +19,7 @@ UNIX = -DUNIX
+ #CFLAGS = -g -Wall $(USEZ) $(DOS) $(UNIX) $(ARCH)
+ CFLAGS = -Wall $(USEZ) $(DOS) $(UNIX) -O3 -fomit-frame-pointer $(ARCH)
+
+-L = $(ZLIB)
++L = $(ZLIB) -lm
+ CC = gcc
+ DESTDIR = /usr/local/bin
+ MANDIR = /usr/local/man/man1
+@@ -30,7 +30,7 @@ DOCDIR = /usr/local/doc/atasm
+
+ all: prog
+
+-OBJS = asm.o symbol.o parser.o setparse.o state.o dimage.o inc_path.o crc32.o atasm_err.o state2.o
++OBJS = asm.o symbol.o parser.o setparse.o state.o dimage.o inc_path.o crc32.o atasm_err.o state2.o parse_float.o setfloatparse.o
+
+ asm.o: ops.h directive.h symbol.h inc_path.h atasm_err.h
+ atasm_err.o: atasm_err.h symbol.h
+--
+2.35.8
+
diff --git a/development/atasm/README b/development/atasm/README
index 5a818ce548..92865c4ed1 100644
--- a/development/atasm/README
+++ b/development/atasm/README
@@ -4,8 +4,3 @@ ATasm is a 6502 command-line cross-assembler that is compatible with
the original Mac/65 macroassembler released by OSS software. Code
development can now be performed using modern editors and compiles with
lightning speed.
-
-This build has been updated for version 1.07d (the last beta
-release), but it's still possible to build 1.06 (last stable release)
-by downloading the 1.06 source and setting VERSION=1.06 in the
-environment.
diff --git a/development/atasm/atasm.SlackBuild b/development/atasm/atasm.SlackBuild
index 0539d60675..3079667d35 100644
--- a/development/atasm/atasm.SlackBuild
+++ b/development/atasm/atasm.SlackBuild
@@ -2,14 +2,25 @@
# Slackware build script for atasm
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240505 bkw: update for v1.25.
+
+# 20240207 bkw:
+# - update for v1.23, which is a maintained fork from a new dev.
+
+# 20221230 bkw:
+# - update for v1.09.
+# - install binary with standard permissions (0755).
+# - mention atari.txt in man page.
+# - run test suite (add "test" to make targets).
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=atasm
-VERSION=${VERSION:-1.07d}
+VERSION=${VERSION:-1.25}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -22,9 +33,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# 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 "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -36,53 +44,53 @@ 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
-SRCNAM="${PRGNAM}${VERSION/./}"
-ZIPFILE="$SRCNAM.zip"
-SRCDIR="$( echo "$SRCNAM" | sed 's,[a-z]$,,' )"
-
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCDIR
-unzip $CWD/$ZIPFILE
-cd $SRCDIR
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz \
+ --exclude='*.exe' --exclude='*.sln' --exclude="*.vcx*"
+cd $PRGNAM-$VERSION
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 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# this patch is from upstream git.
+patch -p1 < $CWD/0001-Fix-the-compiling-under-Linux-Mac.patch
+
+# this patch has been submitted to upstream, should be in the next
+# release.
+patch -p1 < $CWD/gcc11fix.diff
DOCDIR=/usr/doc/$PRGNAM-$VERSION
# fix reference to full documentation.
sed -i \
- -e "s,$PRGNAM\.txt,$PRGNAM.pdf," \
+ -e "s,$PRGNAM\.txt,& (or $PRGNAM.pdf in the same directory)," \
-e "s,%%DOCDIR%%,$DOCDIR," \
src/$PRGNAM.1.in
-sed -i "s,-O3.*,$SLKCFLAGS," src/Makefile
+sed -i \
+ -e "s,-O3.*,$SLKCFLAGS," \
+ -e 's,\(chmod \)711,\1755,' \
+ src/Makefile
mkdir -p $PKG/usr/bin $PKG/usr/man/man1 $PKG/usr/doc/$PRGNAM-$VERSION
# 'make install' chokes because this file's missing:
touch $PRGNAM.txt
# N.B. nonstandard use of DESTDIR and MANDIR here.
-make -C src all install \
+make -C src all test install \
DESTDIR=$PKG/usr/bin \
MANDIR=$PKG/usr/man/man1 \
DOCDIR=$PKG/$DOCDIR
@@ -91,7 +99,7 @@ strip $PKG/usr/bin/$PRGNAM
gzip $PKG/usr/man/man1/$PRGNAM.1
rm -f $PKG/$DOCDIR/$PRGNAM.txt
-cp -a LICENSE *.TXT docs/* examples $PKG/$DOCDIR
+cp -a README* LICENSE* *.TXT docs/* examples $PKG/$DOCDIR
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/development/atasm/atasm.info b/development/atasm/atasm.info
index 6ed3a76672..66fac87aa8 100644
--- a/development/atasm/atasm.info
+++ b/development/atasm/atasm.info
@@ -1,10 +1,10 @@
PRGNAM="atasm"
-VERSION="1.07d"
-HOMEPAGE="http://atari.miribilist.com/atasm/"
-DOWNLOAD="http://atari.miribilist.com/atasm/atasm107d.zip"
-MD5SUM="02c2ad750cdff8b38038ca13894b1f3c"
+VERSION="1.25"
+HOMEPAGE="https://github.com/CycoPH/atasm/"
+DOWNLOAD="https://github.com/CycoPH/atasm/archive/V1.25/atasm-1.25.tar.gz"
+MD5SUM="566b3c902941210966dc02ee0606b853"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/development/atasm/gcc11fix.diff b/development/atasm/gcc11fix.diff
new file mode 100644
index 0000000000..e3f7946d75
--- /dev/null
+++ b/development/atasm/gcc11fix.diff
@@ -0,0 +1,26 @@
+diff --git a/src/setfloatparse.c b/src/setfloatparse.c
+index 3bf78b8..61c1569 100644
+--- a/src/setfloatparse.c
++++ b/src/setfloatparse.c
+@@ -41,7 +41,7 @@ float fnums[64];
+ extern int get_dotname(char* src, char* dst);
+ extern symbol* validate_symbol(char* str);
+
+-char* parse_string;
++static char* parse_string;
+ /*=========================================================================*
+ function floatlex()
+
+diff --git a/src/setparse.c b/src/setparse.c
+index 07904c5..fb4fc66 100644
+--- a/src/setparse.c
++++ b/src/setparse.c
+@@ -36,7 +36,7 @@ int yyparse();
+ extern int rval;
+ int vnum, nums[64];
+
+-char *parse_string;
++static char *parse_string;
+ /*=========================================================================*
+ function yylex()
+