summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysutils/dmsdos/DESCR7
-rw-r--r--sysutils/dmsdos/Makefile32
-rw-r--r--sysutils/dmsdos/PLIST2
-rw-r--r--sysutils/dmsdos/distinfo7
-rw-r--r--sysutils/dmsdos/patches/patch-aa15
-rw-r--r--sysutils/dmsdos/patches/patch-ab15
6 files changed, 78 insertions, 0 deletions
diff --git a/sysutils/dmsdos/DESCR b/sysutils/dmsdos/DESCR
new file mode 100644
index 00000000000..1368b85c3ae
--- /dev/null
+++ b/sysutils/dmsdos/DESCR
@@ -0,0 +1,7 @@
+DMSDOS reads and writes compressed DOS filesystems (CVF-FAT).
+The following configurations are supported:
+ DoubleSpace / DriveSpace (MS-DOS 6.x)
+ DoubleSpace / DriveSpace (Windows 95)
+ DriveSpace 3 (Windows 95 with Plus! pack)
+ Stacker 3
+ Stacker 4
diff --git a/sysutils/dmsdos/Makefile b/sysutils/dmsdos/Makefile
new file mode 100644
index 00000000000..783e280ed73
--- /dev/null
+++ b/sysutils/dmsdos/Makefile
@@ -0,0 +1,32 @@
+# $NetBSD: Makefile,v 1.1.1.1 2008/02/08 21:18:44 drochner Exp $
+#
+
+DISTNAME= dmsdos-0.9.2.3-pre2
+PKGNAME= dmsdos-0.9.2.3pre2
+CATEGORIES= sysutils
+MASTER_SITES= http://cmp.felk.cvut.cz/~pisa/dmsdos/sources/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://cmp.felk.cvut.cz/~pisa/dmsdos/
+COMMENT= Program to access DBLSPACE/DRVSPACE containers
+
+WRKSRC= ${WRKDIR}/dmsdos-0.9.2.3-pre2/src
+
+F= mcdmsdos.c dblspace_dec.c lib_interface.c dblspace_interface.c \
+ dblspace_chk.c dblspace_tables.c dstacker_alloc.c dblspace_alloc.c \
+ dblspace_compr.c dstacker_compr.c dstacker_dec.c dblspace_methsq.c
+
+post-extract:
+ find ${WRKDIR}/dmsdos-0.9.2.3-pre2 -type d -exec chmod +x {} \;
+
+do-configure:
+ ${CP} ${WRKSRC}/dmsdos-config.h.default ${WRKSRC}/dmsdos-config.h
+
+do-build:
+ cd ${WRKSRC} && ${CC} -D__DMSDOS_LIB__ ${F} -o mcdmsdos
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/mcdmsdos ${PREFIX}/bin
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/sysutils/dmsdos/PLIST b/sysutils/dmsdos/PLIST
new file mode 100644
index 00000000000..e3220da7737
--- /dev/null
+++ b/sysutils/dmsdos/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2008/02/08 21:18:44 drochner Exp $
+bin/mcdmsdos
diff --git a/sysutils/dmsdos/distinfo b/sysutils/dmsdos/distinfo
new file mode 100644
index 00000000000..e7ae180599b
--- /dev/null
+++ b/sysutils/dmsdos/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2008/02/08 21:18:44 drochner Exp $
+
+SHA1 (dmsdos-0.9.2.3-pre2.tgz) = d967cc70aac39d8cff66e78dfcf2632ac36275dc
+RMD160 (dmsdos-0.9.2.3-pre2.tgz) = 19cc815452270460ea1382615a312289820bd39e
+Size (dmsdos-0.9.2.3-pre2.tgz) = 280421 bytes
+SHA1 (patch-aa) = 408981c4e21feaee3865f0f8bfa90ca26b795360
+SHA1 (patch-ab) = 5560a52438cedc5c52e77ed4e4b0ccd16f682a9e
diff --git a/sysutils/dmsdos/patches/patch-aa b/sysutils/dmsdos/patches/patch-aa
new file mode 100644
index 00000000000..a6d1281aa52
--- /dev/null
+++ b/sysutils/dmsdos/patches/patch-aa
@@ -0,0 +1,15 @@
+$NetBSD: patch-aa,v 1.1.1.1 2008/02/08 21:18:44 drochner Exp $
+
+--- dstacker_compr.c.orig 2008-02-08 20:30:49.000000000 +0100
++++ dstacker_compr.c
+@@ -139,8 +139,8 @@ INLINE __u16 swap_bytes_in_word(__u16 x)
+ /* this is problematic on architectures, */
+ /* which cannot do __u16 access to odd address. */
+ /* used for temporary storage of LZ intercode. */
+-#define C_ST_u16(p,v) {put_unaligned(v,((__u16*)p)++);}
+-#define C_LD_u16(p,v) {v=get_unaligned(((__u16*)p)++);}
++#define C_ST_u16(p,v) {put_unaligned(v,p);p=(__u16*)p+1;}
++#define C_LD_u16(p,v) {v=get_unaligned(p);p=(__u16*)p+1;}
+
+ /* for reading and writting from/to bitstream */
+ typedef
diff --git a/sysutils/dmsdos/patches/patch-ab b/sysutils/dmsdos/patches/patch-ab
new file mode 100644
index 00000000000..7276b4af989
--- /dev/null
+++ b/sysutils/dmsdos/patches/patch-ab
@@ -0,0 +1,15 @@
+$NetBSD: patch-ab,v 1.1.1.1 2008/02/08 21:18:44 drochner Exp $
+
+--- dblspace_methsq.c.orig 2008-02-08 20:40:57.000000000 +0100
++++ dblspace_methsq.c
+@@ -69,8 +69,8 @@ extern int debug;
+ /* this is problematic on architectures, */
+ /* which cannot do __u16 access to odd address. */
+ /* used for temporary storage of LZ intercode. */
+-#define C_ST_u16(p,v) {put_unaligned(v,((__u16*)p)++);}
+-#define C_LD_u16(p,v) {v=get_unaligned(((__u16*)p)++);}
++#define C_ST_u16(p,v) {put_unaligned(v,p);p=(__u16*)p+1;}
++#define C_LD_u16(p,v) {v=get_unaligned(p);p=(__u16*)p+1;}
+
+ /* high speed compare and move routines */
+ #if defined(__GNUC__) && defined(__i386__) && defined(USE_ASM)