summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authoragc <agc>2007-04-15 21:39:52 +0000
committeragc <agc>2007-04-15 21:39:52 +0000
commit24d0e14f2cf0255aaf8450cb4d1959d2567e69b0 (patch)
treeddfa29fa05cbe91dab5a490297838050f32ef34f /devel
parentfcca22973303d44a31522a2c2fefcb2c8c5af11a (diff)
downloadpkgsrc-24d0e14f2cf0255aaf8450cb4d1959d2567e69b0.tar.gz
Initial import of rscode-1.0 into the Packages Collection.
The Reed-Solomon Code is an algebraic code belonging to the class of BCH (Bose-Chaudry-Hocquehen) multiple burst correcting cyclic codes. The Reed Solomon code operates on bytes of fixed length. Given m parity bytes, a Reed-Solomon code can correct up to m byte errors in known positions (erasures), or detect and correct up to m/2 byte errors in unknown positions. This is an implementation of a Reed-Solomon code with 8 bit bytes, and a configurable number of parity bytes. The maximum sequence length (codeword) that can be generated is 255 bytes, including parity bytes. In practice, shorter sequences are used. The more general error-location algorithm is the Berlekamp-Massey algorithm, which will locate up to four errors, by iteratively solving for the error-locator polynomial. The Modified Berlekamp Massey algorithm takes as initial conditions any known suspicious bytes (erasure flags) which you may have (such as might be flagged by a laser demodulator, or deduced from a failure in a cross-interleaved block code row or column). Once the location of errors is known, error correction is done using the error-evaluator polynomial.
Diffstat (limited to 'devel')
-rw-r--r--devel/rscode/DESCR23
-rw-r--r--devel/rscode/Makefile18
-rw-r--r--devel/rscode/PLIST5
-rw-r--r--devel/rscode/distinfo6
-rw-r--r--devel/rscode/patches/patch-aa12
5 files changed, 64 insertions, 0 deletions
diff --git a/devel/rscode/DESCR b/devel/rscode/DESCR
new file mode 100644
index 00000000000..fc0fa0a9023
--- /dev/null
+++ b/devel/rscode/DESCR
@@ -0,0 +1,23 @@
+The Reed-Solomon Code is an algebraic code belonging to the class of
+BCH (Bose-Chaudry-Hocquehen) multiple burst correcting cyclic codes.
+The Reed Solomon code operates on bytes of fixed length.
+
+Given m parity bytes, a Reed-Solomon code can correct up to m byte
+errors in known positions (erasures), or detect and correct up to m/2
+byte errors in unknown positions.
+
+This is an implementation of a Reed-Solomon code with 8 bit bytes, and
+a configurable number of parity bytes. The maximum sequence length
+(codeword) that can be generated is 255 bytes, including parity bytes.
+In practice, shorter sequences are used.
+
+The more general error-location algorithm is the Berlekamp-Massey
+algorithm, which will locate up to four errors, by iteratively solving
+for the error-locator polynomial. The Modified Berlekamp Massey
+algorithm takes as initial conditions any known suspicious bytes
+(erasure flags) which you may have (such as might be flagged by a
+laser demodulator, or deduced from a failure in a cross-interleaved
+block code row or column).
+
+Once the location of errors is known, error correction is done using
+the error-evaluator polynomial.
diff --git a/devel/rscode/Makefile b/devel/rscode/Makefile
new file mode 100644
index 00000000000..5f21bc4504a
--- /dev/null
+++ b/devel/rscode/Makefile
@@ -0,0 +1,18 @@
+# $NetBSD: Makefile,v 1.1.1.1 2007/04/15 21:39:52 agc Exp $
+#
+
+DISTNAME= rscode-1.0
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=rscode/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://rscode.sourceforge.net/
+COMMENT= Reed Solomon error correction code library
+
+do-install:
+ ${INSTALL_LIB} ${WRKSRC}/libecc.a ${PREFIX}/lib/
+ ${INSTALL_PROGRAM} ${WRKSRC}/example ${PREFIX}/bin/rscode
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/rscode
+ ${INSTALL_DATA} ${WRKSRC}/rs.doc ${PREFIX}/share/doc/rscode/
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/rscode/PLIST b/devel/rscode/PLIST
new file mode 100644
index 00000000000..e732639dbbb
--- /dev/null
+++ b/devel/rscode/PLIST
@@ -0,0 +1,5 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2007/04/15 21:39:52 agc Exp $
+bin/rscode
+lib/libecc.a
+share/doc/rscode/rs.doc
+@dirrm share/doc/rscode
diff --git a/devel/rscode/distinfo b/devel/rscode/distinfo
new file mode 100644
index 00000000000..8af9c44bb6b
--- /dev/null
+++ b/devel/rscode/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2007/04/15 21:39:52 agc Exp $
+
+SHA1 (rscode-1.0.tar.gz) = b143b3794de81f73154e6452a213c8c85d501264
+RMD160 (rscode-1.0.tar.gz) = 3659c9bd0e9aa000691e214ca07d8722e83811c4
+Size (rscode-1.0.tar.gz) = 9516 bytes
+SHA1 (patch-aa) = a191c8a12329f46d0f5873d882d7927947ab5d03
diff --git a/devel/rscode/patches/patch-aa b/devel/rscode/patches/patch-aa
new file mode 100644
index 00000000000..1ace7950d20
--- /dev/null
+++ b/devel/rscode/patches/patch-aa
@@ -0,0 +1,12 @@
+$NetBSD: patch-aa,v 1.1.1.1 2007/04/15 21:39:52 agc Exp $
+
+--- Makefile 2007/03/31 19:04:28 1.1
++++ Makefile 2007/03/31 19:04:58
+@@ -5,6 +5,7 @@
+
+ RANLIB = ranlib
+ AR = ar
++RM = rm -f
+
+
+ VERSION = 1.0