summaryrefslogtreecommitdiffstats
path: root/doc/posix1003.1
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-03-16 22:43:37 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-03-16 22:43:37 +0000
commit2a087f30a4e5d2b72e0bc046865bb7f5c4c5c22f (patch)
tree13aeb2a51322618ccc986361ebf6e3d72d989eb7 /doc/posix1003.1
parentAdded function status and data types (diff)
downloadrtems-2a087f30a4e5d2b72e0bc046865bb7f5c4c5c22f.tar.bz2
Added types, status of functions, cleaned up output of summarize.
Diffstat (limited to 'doc/posix1003.1')
-rw-r--r--doc/posix1003.1/ch04.t10
-rw-r--r--doc/posix1003.1/ch05.t58
-rw-r--r--doc/posix1003.1/ch06.t41
-rw-r--r--doc/posix1003.1/ch07.t29
-rw-r--r--doc/posix1003.1/ch08.t259
-rw-r--r--doc/posix1003.1/ch09.t18
-rw-r--r--doc/posix1003.1/ch10.t8
-rw-r--r--doc/posix1003.1/ch11.t18
-rwxr-xr-xdoc/posix1003.1/summarize104
9 files changed, 316 insertions, 229 deletions
diff --git a/doc/posix1003.1/ch04.t b/doc/posix1003.1/ch04.t
index b5944a3492..bcd6c4a09e 100644
--- a/doc/posix1003.1/ch04.t
+++ b/doc/posix1003.1/ch04.t
@@ -13,8 +13,8 @@
@subsection Get Process and Parent Process IDs
@example
-getpid(), Function
-getppid(), Function
+getpid(), Function, Dummy Implementation
+getppid(), Function, Dummy Implementation
@end example
@section User Identification
@@ -92,7 +92,7 @@ struct tms, Type,
times(), Function, Implemented
@end example
-NOTE: times() always returns 0 for tms_stime, tms_cutime, and
+NOTE: @code{times} always returns 0 for tms_stime, tms_cutime, and
tms_cstime fields of the @code{struct tms} returned.
@section Environment Variables
@@ -115,8 +115,8 @@ ctermid(), Function, Unimplemented
@example
ttyname(), Function, Untested Implementation, assumes directory services
-ttyname_r(), Unimplemented
-isatty(), Function, Dummy Implementation
+ttyname_r(), Function, Unimplemented
+isatty(), Function, Partial Implementation
@end example
@section Configurable System Variables
diff --git a/doc/posix1003.1/ch05.t b/doc/posix1003.1/ch05.t
index eb46875d20..f6f4b8eefe 100644
--- a/doc/posix1003.1/ch05.t
+++ b/doc/posix1003.1/ch05.t
@@ -15,11 +15,12 @@
@subsection Directory Operations
@example
-opendir(), Function
-readdir(), Function
-readdir_r(), Function
-rewinddir(), Function
-closedir(), Function
+struct dirent, Type, Unimplemented
+opendir(), Function, Untested Implementation, assumes directory services
+readdir(), Function, Untested Implementation, assumes directory services
+readdir_r(), Function, Untested Implementation, assumes directory services
+rewinddir(), Function, Untested Implementation, assumes directory services
+closedir(), Function, Untested Implementation, assumes directory services
@end example
@section Working Directory
@@ -27,13 +28,13 @@ closedir(), Function
@subsection Change Current Working Directory
@example
-chdir(), Function
+chdir(), Function, Unimplemented
@end example
@subsection Get Working Directory Pathname
@example
-getcwd(), Function
+getcwd(), Function, Untested Implementation, assumes directory services
@end example
@section General File Creation
@@ -41,25 +42,25 @@ getcwd(), Function
@subsection Open a File
@example
-open(), Function
+open(), Function, Implemented, requires rework for directory services
@end example
@subsection Create a New File or Rewrite an Existing One
@example
-creat(), Function
+creat(), Function, Untested Implementation
@end example
@subsection Set File Creation Mask
@example
-umask(), Function
+umask(), Function, Unimplemented
@end example
@subsection Link to a File
@example
-link(), Function
+link(), Function, Dummy Implementation
@end example
@section Special File Creation
@@ -67,13 +68,13 @@ link(), Function
@subsection Make a Directory
@example
-mkdir(), Function
+mkdir(), Function, Unimplemented, assumes directory services
@end example
@subsection Make a FIFO Special File
@example
-mkfifo(), Function
+mkfifo(), Function, Unimplemented
@end example
@section File Removal
@@ -81,68 +82,73 @@ mkfifo(), Function
@subsection Remove Directory Entries
@example
-unlink(), Function
+unlink(), Function, Dummy Implementation
@end example
@subsection Remove a Directory
@example
-rmdir(), Function
+rmdir(), Function, Unimplemented
@end example
@subsection Rename a File
@example
-rename(), Function
+rename(), Function, Untested Implementation, assumes link/unlink
@end example
@section File Characteristics
@subsection File Characteristics Header and Data Structure
+@example
+struct stat, Type, Untested Implementation
+@end example
+
@subsection Get File Status
@example
-stat(), Function
-fstat(), Function
+stat(), Function, Partial Implementation
+fstat(), Function, Partial Implementation
@end example
@subsection Check File Accessibility
@example
-access(), Function
+access(), Function, Unimplemented
@end example
@subsection Change File Modes
@example
-chmod(), Function
-fchmod(), Function
+chmod(), Function, Unimplemented
+fchmod(), Function, Unimplemented
@end example
@subsection Change Owner and Group of a File
@example
-chown(), Function
+chown(), Function, Unimplemented
@end example
@subsection Set File Access and Modification Times
@example
-utime(), Function
+struct utimbuf, Type,
+utime(), Function, Unimplemented
@end example
@subsection Truncate a File to a Specified Length
@example
-ftruncate(), Function
+ftruncate(), Function, Unimplemented
@end example
@section Configurable Pathname Variable
@example
-pathconf(), Function
-fpathconf(), Function
+pathconf(), Function, Unimplemented
+fpathconf(), Function, Unimplemented
@end example
@subsection Get Configurable Pathname Variables
diff --git a/doc/posix1003.1/ch06.t b/doc/posix1003.1/ch06.t
index d7607fef7f..b18c101342 100644
--- a/doc/posix1003.1/ch06.t
+++ b/doc/posix1003.1/ch06.t
@@ -13,7 +13,7 @@
@subsection Create an Inter-Process Channel
@example
-pipe(), Function
+pipe(), Function, Unimplemented
@end example
@section File Descriptor Manipulation
@@ -21,8 +21,8 @@ pipe(), Function
@subsection Duplicate an Open File Descriptor
@example
-dup(), Function
-dup2(), Function
+dup(), Function, Unimplemented
+dup2(), Function, Unimplemented
@end example
@section File Descriptor Deassignment
@@ -30,7 +30,7 @@ dup2(), Function
@subsection Close a File
@example
-close(), Function
+close(), Function, Partial Implementation
@end example
@section Input and Output
@@ -38,13 +38,13 @@ close(), Function
@subsection Read from a File
@example
-read(), Function
+read(), Function, Partial Implementation
@end example
@subsection Write to a File
@example
-write(), Function
+write(), Function, Partial Implementation
@end example
@section Control Operations on Files
@@ -54,13 +54,14 @@ write(), Function
@subsection File Control
@example
-fcntl(), Function
+struct flock, Type, Unimplemented
+fcntl(), Function, Unimplemented
@end example
@subsection Reposition Read/Write File Offset
@example
-lseek(), Function
+lseek(), Function, Partial Implementation
@end example
@section File Synchronization
@@ -68,64 +69,68 @@ lseek(), Function
@subsection Synchronize the State of a File
@example
-fsync(), Function
+fsync(), Function, Unimplemented
@end example
@subsection Synchronize the Data of a File
@example
-fdatasync(), Function
+fdatasync(), Function, Unimplemented
@end example
@section Asynchronous Input and Output
@subsection Data Definitions for Asynchronous Input and Output
+@example
+struct aiocb, Type, Dummy Implementation
+@end example
+
@subsection Asynchronous Read
@example
-aio_read(), Function
+aio_read(), Function, Dummy Implementation
@end example
@subsection Asynchronous Write
@example
-aio_write(), Function
+aio_write(), Function, Dummy Implementation
@end example
@subsection List Directed I/O
@example
-aio_listio(), Function
+lio_listio(), Function, Dummy Implementation
@end example
@subsection Retrieve Error Status of Asynchronous I/O Operation
@example
-aio_error(), Function
+aio_error(), Function, Dummy Implementation
@end example
@subsection Retrieve Return Status of Asynchronous I/O Operation
@example
-aio_return(), Function
+aio_return(), Function, Dummy Implementation
@end example
@subsection Cancel Asynchronous I/O Request
@example
-aio_cancel(), Function
+aio_cancel(), Function, Dummy Implementation
@end example
@subsection Wait for Asynchronous I/O Request
@example
-aio_suspend(), Function
+aio_suspend(), Function, Dummy Implementation
@end example
@subsection Asynchronous File Synchronization
@example
-aio_fsync(), Function
+aio_fsync(), Function, Dummy Implementation
@end example
diff --git a/doc/posix1003.1/ch07.t b/doc/posix1003.1/ch07.t
index 164da01b93..1e6f797ce2 100644
--- a/doc/posix1003.1/ch07.t
+++ b/doc/posix1003.1/ch07.t
@@ -36,7 +36,11 @@
@subsection Parameters That Can Be Set
-@subsubsection termios Structure
+@subsubsection @code{termios} Structure
+
+@example
+struct termios, Type, Partial Implementation
+@end example
@subsubsection Input Modes
@@ -52,6 +56,13 @@
@subsubsection Baud Rate Functions
+@example
+cfgetospeed(), Function, Unimplemented
+cfsetospeed(), Function, Unimplemented
+cfgetispeed(), Function, Unimplemented
+cfsetispeed(), Function, Unimplemented
+@end example
+
@subsubsection Synopsis
@subsubsection Description
@@ -67,28 +78,28 @@
@subsection Get and Set State
@example
-tcgetattr(), Function
-tcsetattr(), Function
+tcgetattr(), Function, Implemented
+tcsetattr(), Function, Implemented
@end example
@subsection Line Control Functions
@example
-tcsendbreak(), Function
-tcdrain(), Function
-tcflush(), Function
-tcflow(), Function
+tcsendbreak(), Function, Unimplemented
+tcdrain(), Function, Unimplemented
+tcflush(), Function, Unimplemented
+tcflow(), Function, Unimplemented
@end example
@subsection Get Foreground Process Group ID
@example
-tcgetprgrp(), Function
+tcgetprgrp(), Function, Unimplemented
@end example
@subsection Set Foreground Process Group ID
@example
-tcsetprgrp(), Function
+tcsetprgrp(), Function, Unimplemented
@end example
diff --git a/doc/posix1003.1/ch08.t b/doc/posix1003.1/ch08.t
index 1ed5a33bd9..e65fa67380 100644
--- a/doc/posix1003.1/ch08.t
+++ b/doc/posix1003.1/ch08.t
@@ -13,158 +13,160 @@
ANSI C Section 4.2 --- Diagnostics
@example
-assert(), Function
+assert(), Function, Implemented
@end example
ANSI C Section 4.3 --- Character Handling
@example
-isalnum(), Function
-isalpha(), Function
-iscntrl(), Function
-isdigit(), Function
-isgraph(), Function
-islower(), Function
-isprint(), Function
-ispunct(), Function
-isspace(), Function
-isupper(), Function
-isxdigit(), Function
-tolower(), Function
-toupper(), Function
+isalnum(), Function, Implemented
+isalpha(), Function, Implemented
+iscntrl(), Function, Implemented
+isdigit(), Function, Implemented
+isgraph(), Function, Implemented
+islower(), Function, Implemented
+isprint(), Function, Implemented
+ispunct(), Function, Implemented
+isspace(), Function, Implemented
+isupper(), Function, Implemented
+isxdigit(), Function, Implemented
+tolower(), Function, Implemented
+toupper(), Function, Implemented
@end example
ANSI C Section 4.4 --- Localization
@example
-setlocale(), Function
+setlocale(), Function, Partial Implementation
@end example
ANSI C Section 4.5 --- Mathematics
@example
-acos(), Function
-asin(), Function
-atan(), Function
-atan2(), Function
-cos(), Function
-sin(), Function
-tan(), Function
-cosh(), Function
-sinh(), Function
-tanh(), Function
-exp(), Function
-frexp(), Function
-ldexp(), Function
-log(), Function
-log10(), Function
-modf(), Function
-pow(), Function
-sqrt(), Function
-ceil(), Function
-fabs(), Function
-floor(), Function
-fmod(), Function
+acos(), Function, Implemented
+asin(), Function, Implemented
+atan(), Function, Implemented
+atan2(), Function, Implemented
+cos(), Function, Implemented
+sin(), Function, Implemented
+tan(), Function, Implemented
+cosh(), Function, Implemented
+sinh(), Function, Implemented
+tanh(), Function, Implemented
+exp(), Function, Implemented
+frexp(), Function, Implemented
+ldexp(), Function, Implemented
+log(), Function, Implemented
+log10(), Function, Implemented
+modf(), Function, Implemented
+pow(), Function, Implemented
+sqrt(), Function, Implemented
+ceil(), Function, Implemented
+fabs(), Function, Implemented
+floor(), Function, Implemented
+fmod(), Function, Implemented
@end example
ANSI C Section 4.6 --- Non-Local Jumps
@example
-setjmp(), Function
-longjmp(), Function
+setjmp(), Function, Implemented
+longjmp(), Function, Implemented
@end example
ANSI C Section 4.9 --- Input/Output
@example
-clearerr(), Function
-fclose(), Function
-feof(), Function
-ferror(), Function
-fflush(), Function
-fgetc(), Function
-fgets(), Function
-fopen(), Function
-fputc(), Function
-fputs(), Function
-fread(), Function
-freopen(), Function
-fseek(), Function
-ftell(), Function
-fwrite(), Function
-getc(), Function
-getchar(), Function
-gets(), Function
-perror(), Function
-printf(), Function
-fprintf(), Function
-sprintf(), Function
-putc(), Function
-putchar(), Function
-puts(), Function
-remove(), Function
-rename(), Function
-rewind(), Function
-scanf(), Function
-fscanf(), Function
-sscanf(), Function
-setbuf(), Function
-tmpfile(), Function
-tmpnam(), Function
-ungetc(), Function
+clearerr(), Function, Implemented
+fclose(), Function, Implemented
+feof(), Function, Implemented
+ferror(), Function, Implemented
+fflush(), Function, Implemented
+fgetc(), Function, Implemented
+fgets(), Function, Implemented
+fopen(), Function, Implemented
+fputc(), Function, Implemented
+fputs(), Function, Implemented
+fread(), Function, Implemented
+freopen(), Function, Implemented
+fseek(), Function, Implemented
+ftell(), Function, Implemented
+fwrite(), Function, Implemented
+getc(), Function, Implemented
+getchar(), Function, Implemented
+gets(), Function, Implemented
+perror(), Function, Implemented
+printf(), Function, Implemented
+fprintf(), Function, Implemented
+sprintf(), Function, Implemented
+putc(), Function, Implemented
+putchar(), Function, Implemented
+puts(), Function, Implemented
+remove(), Function, Implemented
+rename(), Function, Implemented
+rewind(), Function, Implemented
+scanf(), Function, Implemented
+fscanf(), Function, Implemented
+sscanf(), Function, Implemented
+setbuf(), Function, Implemented
+tmpfile(), Function, Implemented
+tmpnam(), Function, Implemented
+ungetc(), Function, Implemented
@end example
ANSI C Section 4.10 --- General Utilities
@example
-abs(), Function
-atof(), Function
-atoi(), Function
-atol(), Function
-rand(), Function
-srand(), Function
-calloc(), Function
-free(), Function
-malloc(), Function
-realloc(), Function
-abort(), Function
-exit(), Function
-getenv(), Function
-bsearch(), Function
-qsort(), Function
+abs(), Function, Implemented
+atof(), Function, Implemented
+atoi(), Function, Implemented
+atol(), Function, Implemented
+rand(), Function, Implemented
+srand(), Function, Implemented
+calloc(), Function, Implemented
+free(), Function, Implemented
+malloc(), Function, Implemented
+realloc(), Function, Implemented
+abort(), Function, Implemented
+exit(), Function, Implemented
+getenv(), Function, Implemented
+bsearch(), Function, Implemented
+qsort(), Function, Implemented
@end example
ANSI C Section 4.11 --- String Handling
@example
-strcpy(), Function
-strncpy(), Function
-strcat(), Function
-strncat(), Function
-strcmp(), Function
-strncmp(), Function
-strchr(), Function
-strcspn(), Function
-strpbrk(), Function
-strrchr(), Function
-strspn(), Function
-strstr(), Function
-strtok(), Function
-strlen(), Function
+strcpy(), Function, Implemented
+strncpy(), Function, Implemented
+strcat(), Function, Implemented
+strncat(), Function, Implemented
+strcmp(), Function, Implemented
+strncmp(), Function, Implemented
+strchr(), Function, Implemented
+strcspn(), Function, Implemented
+strpbrk(), Function, Implemented
+strrchr(), Function, Implemented
+strspn(), Function, Implemented
+strstr(), Function, Implemented
+strtok(), Function, Implemented
+strlen(), Function, Implemented
@end example
ANSI C Section 4.12 --- Date and Time Handling
@example
-time(), Function
-asctime(), Function
-ctime(), Function
-gmtime(), Function
-localtime(), Function
-mktime(), Function
-strftime(), Function
+time(), Function, Implemented
+asctime(), Function, Implemented
+ctime(), Function, Implemented
+gmtime(), Function, Implemented
+localtime(), Function, Implemented
+mktime(), Function, Implemented
+strftime(), Function, Implemented
@end example
+NOTE: RTEMS has no notion of time zones.
+
@subsection Extensions to Time Functions
@subsection Extensions to @code{setlocale} Function
@@ -174,13 +176,13 @@ strftime(), Function
@subsection Map a Stream Pointer to a File Descriptor
@example
-fileno(), Function
+fileno(), Function, Implemented
@end example
@subsection Open a Stream on a File Descriptor
@example
-fdopen(), Function
+fdopen(), Function, Implemented
@end example
@subsection Interactions of Other FILE-Type C Functions
@@ -192,18 +194,18 @@ fdopen(), Function
@subsection Stdio Locking Functions
@example
-flockfile(), Function
-ftrylockfile(), Function
-funlockfile(), Function
+flockfile(), Function, Unimplemented
+ftrylockfile(), Function, Unimplemented
+funlockfile(), Function, Unimplemented
@end example
@subsection Stdio With Explicit Client Locking
@example
-getc_unlocked(), Function
-getchar_unlocked(), Function
-putc_unlocked(), Function
-putchar_unlocked(), Function
+getc_unlocked(), Function, Unimplemented
+getchar_unlocked(), Function, Unimplemented
+putc_unlocked(), Function, Unimplemented
+putchar_unlocked(), Function, Unimplemented
@end example
@section Other C Language Functions
@@ -211,50 +213,49 @@ putchar_unlocked(), Function
@subsection Nonlocal Jumps
@example
-sigsetjmp(), Function
-siglongjmp(), Function
+sigsetjmp(), Function, Unimplemented
+siglongjmp(), Function, Unimplemented
@end example
@subsection Set Time Zone
@example
-tzset(), Function
+tzset(), Function, Unimplemented
@end example
@subsection Find String Token
@example
-strtok_r(), Function
+strtok_r(), Function, Implemented
@end example
@subsection ASCII Time Representation
@example
-asctime_r(), Function
+asctime_r(), Function, Implemented
@end example
@subsection Current Time Representation
@example
-ctime_r(), Function
+ctime_r(), Function, Implemented
@end example
@subsection Coordinated Universal Time
@example
-gmtime_r(), Function
+gmtime_r(), Function, Implemented
@end example
@subsection Local Time
@example
-localtime_r(), Function
+localtime_r(), Function, Implemented
@end example
@subsection Pseudo-Random Sequence Generation Functions
@example
-rand_r(), Function
+rand_r(), Function, Implemented
@end example
-
diff --git a/doc/posix1003.1/ch09.t b/doc/posix1003.1/ch09.t
index 21eb3462c5..1ef42568c6 100644
--- a/doc/posix1003.1/ch09.t
+++ b/doc/posix1003.1/ch09.t
@@ -15,18 +15,20 @@
@subsection Group Database Access
@example
-getgrgid(), Function
-getgrgid_r(), Function
-getgrname(), Function
-getgrnam_r(), Function
+struct group, Type,
+getgrgid(), Function, Unimplemented
+getgrgid_r(), Function, Unimplemented
+getgrname(), Function, Unimplemented
+getgrnam_r(), Function, Unimplemented
@end example
@subsection User Database Access
@example
-getpwuid(), Function
-getpwuid_r(), Function
-getpwnam(), Function
-getpwnam_r(), Function
+struct passwd, Type,
+getpwuid(), Function, Untested Implemented, assumes /etc/passwd exists
+getpwuid_r(), Function, Unimplemented
+getpwnam(), Function, Untested Implemented, assumes /etc/passwd exists
+getpwnam_r(), Function, Unimplemented
@end example
diff --git a/doc/posix1003.1/ch10.t b/doc/posix1003.1/ch10.t
index b57adfdcd1..7368c46ecb 100644
--- a/doc/posix1003.1/ch10.t
+++ b/doc/posix1003.1/ch10.t
@@ -12,7 +12,15 @@
@subsection Extended tar Format
+@example
+tar format, Type,
+@end example
+
@subsection Extended cpio Format
+@example
+cpio format, Type,
+@end example
+
@subsection Multiple Volumes
diff --git a/doc/posix1003.1/ch11.t b/doc/posix1003.1/ch11.t
index 23cb2edfb0..fededd6ac5 100644
--- a/doc/posix1003.1/ch11.t
+++ b/doc/posix1003.1/ch11.t
@@ -15,50 +15,50 @@
@subsection Initialize an Unnamed Semaphore
@example
-sem_init(), Function
+sem_init(), Function, Untested Implementation
@end example
@subsection Destroy an Unnamed Semaphore
@example
-sem__destroy(), Function
+sem_destroy(), Function, Untested Implementation
@end example
@subsection Initialize/Open a Named Semaphore
@example
-sem_open(), Function
+sem_open(), Function, Untested Implementation
@end example
@subsection Close a Named Semaphore
@example
-sem_close(), Function
+sem_close(), Function, Untested Implementation
@end example
@subsection Remove a Named Semaphore
@example
-sem_unlink(), Function
+sem_unlink(), Function, Untested Implementation
@end example
@subsection Lock a Semaphore
@example
-sem_wait(), Function
-sem_trywait(), Function
+sem_wait(), Function, Untested Implementation
+sem_trywait(), Function, Untested Implementation
@end example
@subsection Unlock a Semaphore
@example
-sem_post(), Function
+sem_post(), Function, Untested Implementation
@end example
@subsection Get the Value of a Semaphore
@example
-sem_getvalue(), Function
+sem_getvalue(), Function, Untested Implementation
@end example
@section Mutexes
diff --git a/doc/posix1003.1/summarize b/doc/posix1003.1/summarize
index bbe954acd2..c60ce3a6d9 100755
--- a/doc/posix1003.1/summarize
+++ b/doc/posix1003.1/summarize
@@ -14,61 +14,115 @@ echo
wc2()
{
- grep "$1" $2 | wc -l
+ pattern=$1
+ shift
+ grep "${pattern}" $* | wc -l
}
wc3()
{
- grep "$1" $2 | grep "$3" | wc -l
+ pattern=$1
+ filter=$2
+ shift ; shift
+ grep "${pattern}" $* | grep "${filter}" | wc -l
+}
+
+# adds the numbers passed on the command line
+addit()
+{
+ sumx=0
+ for x in $*
+ do
+ sumx=`expr $sumx + $x`
+ done
+ echo $sumx
}
summarize_chapter()
{
- grep "^@chapter" $1 | \
- sed -e "s/^.chapter/@section/" \
- -e "s/$/ Chapter/"
+ echo
+ # takes at least 3.0 inches for each generated section
+ echo "@need 3000"
+ if [ $# -eq 1 ] ; then
+ grep "^@chapter" $1 | \
+ sed -e "s/^.chapter/@section/" \
+ -e "s/$/ Chapter/"
+ else
+ echo "@section Overall Summary"
+ fi
+
echo
- functions_total=`wc2 "()" $1 `
- functions_implemented=`wc3 "()" $1 "Implemented"`
- functions_unimplemented=`wc3 "()" $1 "Unimplemented"`
- functions_unmplementable=`wc3 "()" $1 "Unimplementable"`
- functions_dummy=`wc3 "()" $1 "Dummy Implementation"`
- functions_untested=`wc3 "()" $1 "Untested Implementation"`
+ functions_total=`wc2 "()" $*`
+ functions_implemented=` wc3 "()" "Implemented" $*`
+ functions_unimplemented=` wc3 "()" "Unimplemented" $*`
+ functions_unmplementable=`wc3 "()" "Unimplementable" $*`
+ functions_partial=` wc3 "()" "Partial Implementation" $*`
+ functions_dummy=` wc3 "()" "Dummy Implementation" $*`
+ functions_untested=` wc3 "()" "Untested Implementation" $*`
- datatypes_total=`grep "Type," $1 | wc -l`
- datatypes_implemented=`grep "Type," $1 | grep Implemented | wc -l`
- datatypes_unimplemented=`grep "Type," $1 | grep Unimplemented | wc -l`
- datatypes_unmplementable=`grep "Type," $1 | grep Unimplementable | wc -l`
+ functions_sum=`addit ${functions_implemented} \
+ ${functions_unimplemented} ${functions_unmplementable} \
+ ${functions_partial} ${functions_dummy} \
+ ${functions_untested}`
+
+ datatypes_total=`wc2 "Type," $*`
+ datatypes_implemented=` wc3 "Type," "Implemented" $*`
+ datatypes_unimplemented=` wc3 "Type," "Unimplemented" $*`
+ datatypes_unmplementable=`wc3 "Type," "Unimplementable" $*`
+ datatypes_partial=` wc3 "Type," "Partial Implementation" $*`
+ datatypes_dummy=` wc3 "Type," "Dummy Implementation" $*`
+
+ datatypes_sum=`addit ${datatypes_implemented} \
+ ${datatypes_unimplemented} ${datatypes_unmplementable} \
+ ${datatypes_partial} ${datatypes_dummy} \
+ ${datatypes_untested}`
echo "@example"
echo "Functions:"
- echo " Total Number : ${functions_total}"
- echo " Implemented : ${functions_implemented}"
- echo " Unimplemented : ${functions_unimplemented}"
- echo " Unimplementable: ${functions_unmplementable}"
- echo " Working Dummies: ${functions_dummy}"
- echo " Untested : ${functions_untested}"
+ echo " Total Number : ${functions_total}"
+ echo " Implemented : ${functions_implemented}"
+ echo " Unimplemented : ${functions_unimplemented}"
+ echo " Unimplementable : ${functions_unmplementable}"
+ echo " Partial : ${functions_partial}"
+ echo " Dummy : ${functions_dummy}"
+ echo " Untested : ${functions_untested}"
echo "@end example"
echo
+ if [ ${functions_sum} -ne ${functions_total} ] ; then
+ echo "@sp"
+ echo "@center{@b{FUNCTION COUNTS DO NOT ADD UP!!}}"
+ echo "@sp"
+ fi
echo "@example"
echo "Data Types:"
- echo " Total Number : ${datatypes_total}"
- echo " Implemented : ${datatypes_implemented}"
- echo " Unimplemented : ${datatypes_unimplemented}"
- echo " Unimplementable: ${datatypes_unmplementable}"
+ echo " Total Number : ${datatypes_total}"
+ echo " Implemented : ${datatypes_implemented}"
+ echo " Unimplemented : ${datatypes_unimplemented}"
+ echo " Unimplementable : ${datatypes_unmplementable}"
+ echo " Partial : ${datatypes_partial}"
+ echo " Dummy : ${datatypes_dummy}"
echo "@end example"
echo
+ if [ ${datatypes_sum} -ne ${datatypes_total} ] ; then
+ echo "@sp"
+ echo "@center{@b{DATA TYPE COUNTS DO NOT ADD UP!!}}"
+ echo "@sp"
+ fi
}
chapters="ch01.t ch02.t ch03.t ch04.t ch05.t ch06.t ch07.t ch08.t \
ch09.t ch10.t ch11.t ch12.t ch13.t ch14.t ch15.t ch16.t ch17.t ch18.t"
+
+# go through the chapters one at a time
for chapter in ${chapters}
do
summarize_chapter $chapter
done
+# now generate the overall summary
+summarize_chapter ${chapters}