Patch-ID# 100672-01
Keywords: libc, static, libc.a, i/o, _aiocancel, _aioread, _aiowait, _aiowrite
Synopsis: 4.1.1, 4.1.2: static libc.a missing asynchronous I/O _aiocancel _aioread _aiowait
Date: 08/Jul/92

SunOS release: 4.1.1, 4.1.2

Unbundled Product: 

Unbundled Release: 

Topic: libc.a missing asynchronous I/O _aiocancel _aioread _aiowait

BugId's fixed with this patch: 1044886, 1086417

Architectures for which this patch is available: sun3, sun4

Patches which may conflict with this patch: 

Obsoleted by: SYS_V Rel 4

Files included with this patch: aiolib.a

Problem Description: 

The static version of libc (/lib/libc.a) doesn't include the aio system
calls.  There are several workarounds for this that *don't* require this
patch:

	(1) extract the aio*.o modules from /usr/lib/shlib.etc/libc_pic.a 
	    and link with these statically if you must link statically.


	(2) link with shlib.etc/libc_pic.a:

		cc p.c -Bstatic -lc /usr/lib/shlib.etc/libc_pic.a

If, for some reason, these workarounds don't do the trick (e.g., using
a non-Sun linker), this patch provides a static library that includes 
non-PIC versions of aioread(), aiowrite(), aiocancel(), and aiowait().
The library can be statically linked into any application that uses these
system calls:

	cc -Bstatic -o app app.c ... aiolib.a

Install Instructions: 

	Put the aiolib.a file for the appropriate architecture (sun3 or
	sun4) where ever an applications Makefile expects to find it.
	The same versions of the library will work for all 4.x SunOS
	releases.

