summaryrefslogtreecommitdiff
path: root/devel/sfio
diff options
context:
space:
mode:
authoragc <agc@pkgsrc.org>1998-11-02 14:43:17 +0000
committeragc <agc@pkgsrc.org>1998-11-02 14:43:17 +0000
commit6e9d97ee5e2398259e7e6fced5371cd6f374eb01 (patch)
treeeb1f17f141e4f05abecdf4f6433d6f96375ab226 /devel/sfio
parent1af4afef7f94f9d98ccb4b65a081fc3f18caa98d (diff)
downloadpkgsrc-6e9d97ee5e2398259e7e6fced5371cd6f374eb01.tar.gz
Initial import of sfio-1998, the Safe and Fast IO library from AT&T,
into the NetBSD packages collection. This package includes a stdio-compatible library.
Diffstat (limited to 'devel/sfio')
-rw-r--r--devel/sfio/Makefile19
-rw-r--r--devel/sfio/files/md53
-rw-r--r--devel/sfio/patches/patch-aa22
-rw-r--r--devel/sfio/patches/patch-ab20
-rw-r--r--devel/sfio/patches/patch-ac44
-rw-r--r--devel/sfio/pkg/COMMENT1
-rw-r--r--devel/sfio/pkg/DESCR45
-rw-r--r--devel/sfio/pkg/PLIST9
8 files changed, 163 insertions, 0 deletions
diff --git a/devel/sfio/Makefile b/devel/sfio/Makefile
new file mode 100644
index 00000000000..fcd1d762ae3
--- /dev/null
+++ b/devel/sfio/Makefile
@@ -0,0 +1,19 @@
+# $NetBSD: Makefile,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+#
+
+DISTNAME= sfio_1998.src.unix
+PKGNAME= sfio-1998
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_LOCAL}
+EXTRACT_SUFX= .cpio
+
+MAINTAINER= packages@netbsd.org
+HOMEPAGE= http://akpublic.research.att.com/sw/tools/sfio/
+
+NO_WRKSUBDIR= yes
+
+do-extract:
+ @${MKDIR} ${WRKDIR}
+ cd ${WRKDIR} ; pax -r < ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/sfio/files/md5 b/devel/sfio/files/md5
new file mode 100644
index 00000000000..63460c5caca
--- /dev/null
+++ b/devel/sfio/files/md5
@@ -0,0 +1,3 @@
+$NetBSD: md5,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+
+MD5 (sfio_1998.src.unix.cpio) = 937a5bdafda8603d12b11341eebf6f49
diff --git a/devel/sfio/patches/patch-aa b/devel/sfio/patches/patch-aa
new file mode 100644
index 00000000000..ce9f95e63db
--- /dev/null
+++ b/devel/sfio/patches/patch-aa
@@ -0,0 +1,22 @@
+$NetBSD: patch-aa,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+
+--- src/lib/sfio/Makefile 1998/10/27 17:01:58 1.1
++++ src/lib/sfio/Makefile 1998/10/27 17:03:57
+@@ -9,6 +9,8 @@
+
+ CCFLAGS = -O
+
++BINDIR= ../../../bin
++
+ SFIO= sfexit.c sfclose.c sfclrlock.c sfcvt.c sfdlen.c sfexcept.c sfextern.c \
+ sffilbuf.c sfflsbuf.c sfprints.c sfgetd.c sfgetl.c sfgetr.c sfgetu.c \
+ sfllen.c sfmode.c sfmove.c sfnew.c sfnputc.c sfopen.c sfpeek.c \
+@@ -41,7 +43,7 @@
+ stdio $(VERSION) :LIBRARY: $(STDIO_B)
+
+ ast_common.h : features/common
+- iffe - run features/common > ast_common.h
++ ${BINDIR}/iffe - run features/common > ast_common.h
+ sfstdgen : sfstdio.c
+ $(CC) -I. $(*) -o sfstdgen
+ sfstdhdr.h :
diff --git a/devel/sfio/patches/patch-ab b/devel/sfio/patches/patch-ab
new file mode 100644
index 00000000000..7c33e6034eb
--- /dev/null
+++ b/devel/sfio/patches/patch-ab
@@ -0,0 +1,20 @@
+$NetBSD: patch-ab,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+
+Installation commands, mainly.
+
+--- /dev/null Tue Oct 27 17:12:04 1998
++++ Makefile Tue Oct 27 17:16:13 1998
+@@ -0,0 +1,13 @@
++all:
++ cd src/lib/sfio; make
++
++install:
++ ${INSTALL} -c -m 0644 lib/libsfio.a ${PREFIX}/lib
++ ${RANLIB} ${PREFIX}/lib/libsfio.a
++ ${INSTALL} -c -m 0644 lib/libstdio.a ${PREFIX}/lib
++ ${RANLIB} ${PREFIX}/lib/libstdio.a
++ ${INSTALL} -c -m 0644 man/man3/sfio.3 ${PREFIX}/man/man3
++ -mkdir ${PREFIX}/include/sfio
++ for f in ast_common.h sfio.h sfio_t.h stdio.h; do \
++ ${INSTALL} -c -m 0644 include/$$f ${PREFIX}/include/sfio; \
++ done
diff --git a/devel/sfio/patches/patch-ac b/devel/sfio/patches/patch-ac
new file mode 100644
index 00000000000..82c1001cbf7
--- /dev/null
+++ b/devel/sfio/patches/patch-ac
@@ -0,0 +1,44 @@
+$NetBSD: patch-ac,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+
+We install the sfio header files into their own directory, to protect
+any casual compilation which includes the standard include/ directory,
+and so update the documentation to reflect this.
+
+--- man/man3/sfio.3 1998/11/02 14:29:31 1.1
++++ man/man3/sfio.3 1998/11/02 14:29:57
+@@ -15,7 +15,7 @@
+ .ta 1.0i 2.0i 3.0i 4.0i 5.0i
+ .nf
+ .ft 5
+-#include <sfio.h>
++#include <sfio/sfio.h>
+ .ft 1
+ .fi
+ .Ss "DATA TYPES"
+@@ -175,7 +175,7 @@
+ .Ss "FULL STRUCTURE SFIO_T"
+ .nf
+ .ft 5
+-#include <sfio_t.h>
++#include <sfio/sfio_t.h>
+ #define SFNEW(buf,size,file,flags,disc)
+ .ft 1
+ .fi
+@@ -197,7 +197,7 @@
+ .Ss "STDIO-COMPATIBILITY"
+ .nf
+ .ft 5
+-#include <stdio.h>
++#include <sfio/stdio.h>
+ cc ... -lstdio -lsfio
+ .ft 1
+ .fi
+@@ -1642,7 +1642,7 @@
+ .PP
+ .Ss "FULL STRUCTURE SFIO_T"
+ .PP
+-.Ss " #include <sfio_t.h>"
++.Ss " #include <sfio/sfio_t.h>"
+ Most applications based on \fISfio\fP only need to include
+ the header file \f5sfio.h\fP which defines an abbreviated \f5Sfio_t\fP
+ structure without certain fields private to \fISfio\fP.
diff --git a/devel/sfio/pkg/COMMENT b/devel/sfio/pkg/COMMENT
new file mode 100644
index 00000000000..f55f4951ff5
--- /dev/null
+++ b/devel/sfio/pkg/COMMENT
@@ -0,0 +1 @@
+Safe and Fast IO library.
diff --git a/devel/sfio/pkg/DESCR b/devel/sfio/pkg/DESCR
new file mode 100644
index 00000000000..f4dc40dcfa7
--- /dev/null
+++ b/devel/sfio/pkg/DESCR
@@ -0,0 +1,45 @@
+Sfio is a portable library for managing I/O streams. It provides
+similar functionality to the ANSI C Standard I/O functions known
+collectively as Stdio. However, it has a distinct interface and is
+generally faster and more robust than most Stdio implementations.
+Sfio also introduces a number of new features and concepts beyond
+Stdio stream I/O processing:
+
++ Automatic locking to avoid concurrent stream accesses,
++ I/O disciplines to pre/post-process read/write data from/to streams,
++ Stream stacking for recursive processing of nested streams,
++ Stream pooling for automatic stream synchronization when I/O
+ operations are performed on different streams,
++ Buffer reservation for safe access to the internal buffers of streams,
++ Robust handling of variable-sized records, and
++ Extensible printf/scanf-like formatting I/O operations.
+
+For backward compatibility, Sfio provides two Stdio emulation
+packages. An application with source code can include the header file
+stdio.h provided by Sfio instead of the native one to translate Stdio
+calls to Sfio calls. An application already compiled with the native
+header file stdio.h can make use of Sfio functionality by linking with
+the library libstdio.a which emulates Stdio functions. In fact, it is
+safe to mix and match modules that are compiled with either
+Sfio-provided or native stdio.h.
+
+The current distribution of Sfio is Sfio1998. This version of the
+library is portable to all known UNIX platforms including various
+flavors of IRIX, SUNOS, Solaris, Ultrix, MVS/OpenEdition, Linux and
+BSDI. The library handles 64-bit streams on platforms that support
+64-bit files. The formatting family of functions (e.g., sfprintf()
+and sfscanf()) have been extended so that applications can redefine
+the meanings of predefined patterns as well as define new patterns.
+The manual page has more details on recent changes.
+
+Below are papers related to Sfio:
+
+David G. Korn and Kiem-Phong Vo, ``Sfio: Safe/Fast String/File IO'',
+Proceedings of the Summer '91 Usenix Conference, pp. 235-256, 1991.
+
+Glenn S. Fowler, David G. Korn and Kiem-Phong Vo,
+``Feature-Based Portability'', Proceedings of the Usenix VHLL
+Conference, pp. 197-207, 1994.
+
+Kiem-Phong Vo, ``An Architecture for Reusable Libraries'',
+Proc. of the IEEE Fifth Int. Conf. on Software Reuse, 1998.
diff --git a/devel/sfio/pkg/PLIST b/devel/sfio/pkg/PLIST
new file mode 100644
index 00000000000..8cafdb0f630
--- /dev/null
+++ b/devel/sfio/pkg/PLIST
@@ -0,0 +1,9 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 1998/11/02 14:43:17 agc Exp $
+lib/libsfio.a
+lib/libstdio.a
+include/sfio/ast_common.h
+include/sfio/sfio.h
+include/sfio/sfio_t.h
+include/sfio/stdio.h
+man/man3/sfio.3
+@dirrm include/sfio