diff --git a/en/projects/c99/index.sgml b/en/projects/c99/index.sgml index 9c688eedb6..8bafef79d1 100644 --- a/en/projects/c99/index.sgml +++ b/en/projects/c99/index.sgml @@ -1,2005 +1,2002 @@ - + + %navincludes; %includes; %developers; "> "> "> "> "> assert(3)"> printf(3)"> scanf(3)"> strtod(3)"> printf(9)"> freebsd-standards-subscribe@FreeBSD.org"> freebsd-standards@FreeBSD.org"> ]> -
-
The FreeBSD C99 & &posix; Conformance Project aims to implement all requirements of the ISO 9899:1999 (C99) and IEEE 1003.1-2001 (POSIX) standards. In cases where aspects of these standards cannot be followed, those aspects will be documented in the c99(7) or posix(7) manuals. It is also an aim of this project to implement regression tests to ensure correctness whenever possible.
All of the initial development takes place in the 5-CURRENT branch and most changes are merged into the 4-STABLE branch. Since this is a rather large project and is being done on a volunteer basis, there is no set schedule.
The project is always looking for additional contributors. If you wish to participate, the best way to find out what is happening is to subscribe to the freebsd-standards mailing list. If you are working on a specific task relating to the project, you should contact mike@FreeBSD.org with a description of the task so that your task can be listed below.
ISO/IEC 9899:1999, also known as C99, is available for purchase in electronic form from the American National Standards Institute, or available from the International Organization for Standardization store in electronic and paper form.
IEEE Std 1003.1-2001 - The free (registration required), online version of POSIX.1-2001 and SUSv3 standard.
Are you Ready For C99? - This article discusses some of the new features in C99.
Most discussion relating to this project takes place on the &a.standards; mailing list. To subscribe to the list, send a message to &a.standards.subscribe;.
Jens Schweikhardt maintains a list with the current status of POSIX Utility Conformance in FreeBSD.
| Task | Responsible | Last Updated | Status | |
|---|---|---|---|---|
| 5.x | 4.x | |||
| Documentation | ||||
| Create stdint(7) manual to document <stdint.h>. | &a.mike; | 15 September 2002 | &status.done; | &status.n-a; |
| Document flockfile(3), ftrylockfile(3), funlockfile(3). | &a.tjr; | 22 January 2004 | &status.done; | &status.n-a; |
| Document new _SC options in sysconf(3) (PR: 20528). | &a.trhodes; | 13 January 2005 | &status.done; | &status.blank; |
| Document standards conformity level of the API. | 26 March 2002 | &status.wip; | &status.blank; | |
| Document thread safety and async-cancel safety. | 26 March 2002 | &status.wip; | &status.blank; | |
| Create c99(7) and posix(7) manuals. | 11 December 2001 | &status.new; | &status.blank; | |
| Document in posix(7) that the batch job management utilities are available in the port net/generic-nqs. | 11 December 2001 | &status.new; | &status.blank; | |
| Task | Responsible | Last Updated | Status | |
|---|---|---|---|---|
| 5.0 | 4.x | |||
| Functions and System Calls | ||||
| Add __func__ reporting to &man.assert.3;. | &a.asmodai; | 27 October 2001 | &status.done; | &status.n-a; |
| Implement imaxabs(), imaxdiv(), llabs(), lldiv(). | &a.mike; | 14 November 2001 | &status.done; | &status.n-a; |
| Implement atoll(), strtoimax(), strtoumax(). | &a.fenner; | 27 November 2001 | &status.done; | &status.n-a; |
| Implement new length modifiers (hh, j, t, z) and new flag (') in &man.printf.3;. | &a.wollman;, &a.fenner; |
30 November 2001 | &status.done; | &status.n-a; |
| Implement strerror_r(). | &a.wes; | 20 December 2001 | &status.done; | &status.done; |
| Implement tgamma() based on Lite1's gamma(). | &a.bde; | 27 March 2002 | &status.done; | &status.n-a; |
| Implement new length modifiers (hh, j, ll, t, z) in &man.scanf.3;. | &a.fenner; | 20 April 2002 | &status.done; | &status.n-a; |
| Add WCONTINUED to waitpid(2). | &a.mike; | 1 June 2002 | &status.done; | &status.n-a; |
| Implement new conversion specifiers (%j and %n) in &man.printf.9;. | &a.dd; &a.des; |
3 June 2002 | &status.done; | &status.n-a; |
| Implement fstatvfs() and statvfs() (trivial). | &a.wollman; | 14 June 2002 | &status.done; | &status.n-a; |
| Implement fmtmsg(). | &a.mike; | 8 August 2002 | &status.done; | &status.n-a; |
| Implement ulimit(). | &a.mkm; | 8 August 2002 | &status.done; | &status.n-a; |
| Implement C99's _Exit(). | &a.wollman; | 11 September 2002 | &status.done; | &status.n-a; |
| Add required options for POSIX.1-2001 to glob(). (partial MFC) | &a.mikeh; | 20 September 2002 | &status.done; | &status.done; |
| Update sysconf(3) for POSIX.1-2001. | &a.wollman; | 18 September 2002 | &status.done; | &status.n-a; |
| Restore insque(), lsearch(), remque() from libcompat. | &a.robert; | 16 November 2002 | &status.done; | &status.n-a; |
| Implement fpclassify(). | &a.das;, &a.mike; |
8 February 2003 | &status.done; | &status.n-a; |
| Implement isfinite(), isinf(), isnan(), isnormal(). | &a.das; | 17 February 2003 | &status.done; | &status.n-a; |
| Implement isgreater(), isgreaterequal(), isless(), islessequal(), islessgreater(). | &a.das; | 17 February 2003 | &status.done; | &status.n-a; |
| Implement signbit(). | &a.mike; | 17 February 2003 | &status.done; | &status.n-a; |
| Implement sockatmark(). | &a.fenner; | 23 December 2002 | &status.done; | &status.new; |
| Implement wordexp() and wordfree(). | &a.tjr; | 31 December 2002 | &status.done; | &status.new; |
| Implement grantpt(), posix_openpt(), ptsname(), unlockpt(). | &a.ryany; | 4 February 2003 | &status.done; | &status.new; |
| Add floating-point support for the (') modifier in &man.printf.3; | &a.das; | 22 January 2004 | &status.done; | &status.blank; |
| Add new conversion specifiers (%a and %A) to &man.printf.3;. | &a.das; | 22 January 2004 | &status.done; | &status.n-a; |
| Transition to vendor (Netlib) source for strtod.c. | &a.das; | 22 January 2004 | &status.done; | &status.n-a; |
| Import Netlib's gdtoa (strtof, strtold, etc.). | &a.das; | 22 January 2004 | &status.done; | &status.n-a; |
| Implement C99 macros fpclassify(), isfinite(), isinf(), isnan(), isnormal(), signbit(). | &a.mike;, &a.das; |
22 January 2004 | &status.done; | &status.n-a; |
| Implement C99 macros isgreater(), isgreaterequal(), isless(), islessequal(), islessgreater(), isunordered(). | &a.mike;, &a.das; |
22 January 2004 | &status.done; | &status.n-a; |
| Implement new hex floating-point format types (%a/%A) in &man.scanf.3;. | &a.das; | 22 January 2004 | &status.done; | &status.n-a; |
| Implement getpwnam_r(), getpwuid_r(). | &a.nectar; | 7 June 2004 | &status.done; | &status.n-a; |
| Implement posix_madvise(). | &a.bms; | 7 June 2004 | &status.done; | &status.n-a; |
| Implement new functions that appear in <fenv.h>. | &a.das; | 7 June 2004 | &status.done; | &status.n-a; |
| Implement ftw() and nftw() in terms of fts(). | &a.das; | 8 July 2004 | &status.done; | &status.blank; |
| Implement C99 rounding functions lrint(), lrintf(), lrintl(), llrint(), llrintf(), llrintl(). | &a.das; | 13 January 2005 | &status.done; | &status.blank; |
| Implement getgrgid_r(), getgrnam_r(). | &a.wes; | 19 August 2005 | &status.done; | &status.blank; |
| Implement new functions that appear in <complex.h>. | &a.markm; | 6 February 2002 | &status.wip; | &status.blank; |
| Implement waitid(2). | &a.mike; | 27 May 2002 | &status.wip; | &status.blank; |
| Implement the utmpx family of functions. | &a.robert; | 28 June 2002 | &status.wip; | &status.blank; |
| Add restrict type-qualifier to functions that require it. | &a.robert; | 16 August 2002 | &status.wip; | &status.blank; |
| Implement iconv(), iconv_close(), iconv_open(). | &a.tjr; | 8 October 2002 | &status.wip; | &status.blank; |
| Update fmtcheck(3) to recognize new printf(3) flags. | 16 October 2002 | &status.wip; | &status.n-a; | |
| Make non thread-safe functions thread-safe. | 22 October 2001 | &status.new; | &status.blank; | |
| Make functions async-cancel safe. | 22 October 2001 | &status.new; | &status.blank; | |
| Obtain a64l(), l64a(), and l64a_r() (extention) from NetBSD. | 9 September 2002 | &status.new; | &status.blank; | |
| Add SIG_HOLD support to signal(3)/sigaction(2). | 13 October 2002 | &status.new; | &status.blank; | |
| Implement RTS functions sigqueue(), sigtimedwait(), sigwaitinfo(). | 13 October 2002 | &status.new; | &status.blank; | |
| Implement posix_mem_offset(), posix_typed_mem_get_info(), posix_typed_mem_open(), posix_memalign(). | 7 June 2004 | &status.new; | &status.blank; | |
| Implement long double versions of libm routines. | 13 January 2005 | &status.new; | &status.blank; | |
| Implement exp2(), fma(), log2(), nan(), nexttoward(), and remquo() in libm. | 13 January 2005 | &status.new; | &status.blank; | |
| Task | Responsible | Last Updated | Status | |
|---|---|---|---|---|
| 5.0 | 4.x | |||
| Headers | ||||
| Fix prototypes and hide non-conforming portions of header <arpa/inet.h>. | &a.mike; | 19 February 2002 | &status.done; | &status.n-a; |
| Implement the <stdint.h> and <inttypes.h> headers. | &a.mike; | 1 March 2002 | &status.done; | &status.n-a; |
| Add exposure control primitives to <sys/cdefs.h> (originally developed by &a.wollman;). | &a.mike; | 1 April 2002 | &status.done; | &status.n-a; |
| Implement <sys/_types> to store shared MI types. | &a.mike; | 1 April 2002 | &status.done; | &status.n-a; |
| Implement header <strings.h>, and work out compatibility issues with header <string.h>. | &a.mike; | 4 April 2002 | &status.done; | &status.n-a; |
| Hide non-conforming portions, add missing types to <sys/un.h>. | &a.mike; | 19 April 2002 | &status.done; | &status.n-a; |
| Remove pollution and add missing macros to <netinet/in.h> and <netinet6/in6.h>. | &a.mike; | 23 May 2002 | &status.done; | &status.n-a; |
| Hide non-conforming portions of <sys/wait.h>. | &a.mike; | 3 June 2002 | &status.done; | &status.n-a; |
| Hide non-conforming portions of <pwd.h>. | &a.mike; | 9 June 2002 | &status.done; | &status.n-a; |
| Create <sys/statvfs.h> based on POSIX spec. | &a.wollman; | 14 June 2002 | &status.done; | &status.n-a; |
| Add nfds_t and resolve other issues in <poll.h> (actually <sys/poll.h>). | &a.mike; | 8 July 2002 | &status.done; | &status.n-a; |
| Implement the XSI header, <cpio.h>. | &a.mike; | 1 August 2002 | &status.done; | &status.n-a; |
| Implement <fmtmsg.h>. | &a.mike; | 8 August 2002 | &status.done; | &status.n-a; |
| Implement <ulimit.h>. | &a.mkm; | 8 August 2002 | &status.done; | &status.n-a; |
| Merge <machine/ansi.h> and <machine/types> into a new common header <machine/_types.h>. | &a.bde;, &a.mike; |
23 August 2002 | &status.done; | &status.n-a; |
| Fix namespaces, add missing types in <sys/mman.h>. | &a.mike; | 29 August 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <ctype.h>. | &a.mike; | 9 September 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <dlfcn.h>. | &a.wollman;, &a.mike; |
11 September 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <fcntl.h>. | &a.mike; | 18 September 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <fnmatch.h>. | &a.mike; | 18 September 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <grp.h>. | &a.mike; | 18 September 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <langinfo.h>. | &a.mike; | 18 September 2002 | &status.done; | &status.n-a; |
| Add va_copy() macro to <stdarg.h> (actually <machine/stdarg.h>). | &a.mike; | 20 September 2002 | &status.done; | &status.n-a; |
| Fix namespaces issues in <stdlib.h>. | &a.wollman; | 21 September 2002 | &status.done; | &status.n-a; |
| Add new pathname, system variable, and POSIX option constants to <unistd.h>. | &a.wollman; | 21 September 2002 | &status.done; | &status.n-a; |
| Merge two conflicting math.h headers into a single header. | &a.bde; | 2 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <net/if.h>. | &a.mike; | 2 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <netinet/tcp.h>. | &a.mike; | 2 October 2002 | &status.done; | &status.n-a; |
| Add size_t, fix regoff_t in <regex.h>. | &a.mike; | 2 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <sched.h> (actually <posix4/sched.h>). | &a.mike; | 5 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <semaphore.h> (actually <posix4/semaphore.h>). | &a.mike; | 5 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <setjmp.h> (actually <machine/setjmp.h>). | &a.mike; | 5 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <stdio.h>. | &a.wollman; | 7 October 2002 | &status.done; | &status.n-a; |
| Add missing members to struct lconv in <locale.h>. | &a.tjr; | 9 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues, add missing types in <sys/socket.h>. | &a.mike; | 13 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues, add missing types in <sys/uio.h>. | &a.mike; | 13 October 2002 | &status.done; | &status.n-a; |
| Fix namespace issues in <signal.h> (also <sys/signal.h> and <machine/signal.h>). | &a.mike; | 13 October 2002 | &status.done; | &status.n-a; |
| Eliminate <sys/_posix.h>. | &a.mike; | 16 October 2002 | &status.done; | &status.n-a; |
| Implement the header <wordexp.h>. | &a.tjr; | 31 December 2002 | &status.done; | &status.new; |
| Add missing constants FLT_EVAL_METHOD, DECIMAL_DIG to <float.h> (actually <machine/float.h>). | &a.mike;, &a.das; |
22 January 2004 | &status.done; | &status.n-a; |
| Implement the header <fenv.h>. | &a.das; | 7 June 2004 | &status.done; | &status.n-a; |
| Implement <ftw.h>. | &a.das; | 8 July 2004 | &status.done; | &status.blank; |
| Implement <tgmath.h>. | &a.stefanf; | 13 January 2005 | &status.done; | &status.blank; |
| Implement new types and prototypes in header <complex.h>. | &a.markm; | 6 February 2002 | &status.wip; | &status.blank; |
| Hide non-conforming portions, add missing types to <sys/types.h>. | &a.mike; | 1 April 2002 | &status.wip; | &status.blank; |
| Reduce namespace pollution and add missing typedefs in <unistd.h> | &a.mike; | 25 March 2002 | &status.wip; | &status.blank; |
| Implement <utmpx.h> to eventually replace <utmp.h>. | &a.robert; | 28 June 2002 | &status.wip; | &status.blank; |
| Add missing errnos to <errno.h> (actually <sys/errno.h>). | &a.mike; | 11 September 2002 | &status.wip; | &status.blank; |
| Implement the header <iconv.h>. | &a.tjr; | 7 October 2002 | &status.wip; | &status.blank; |
| Hide non-conforming portions, add missing types to <sys/stat.h>. | &a.mike; | 27 February 2003 | &status.wip; | &status.blank; |
| Fix sizes of members in glob_t, add restrict type-qualifiers in <glob.h>. | 20 September 2002 | &status.new; | &status.blank; | |
| Decide whether to remove const type-qualifiers in <libgen.h>. | 20 September 2002 | &status.new; | &status.blank; | |
| Add missing constants in <limits.h>. | 20 September 2002 | &status.new; | &status.blank; | |
| Fix sizes of members in datum, add missing types, fix namespace issues in <ndbm.h>. | 2 October 2002 | &status.new; | &status.blank; | |
| Fix size of si_addrlen in struct addrinfo, add missing types, fix namespace issues in <netdb.h>. | 2 October 2002 | &status.new; | &status.blank; | |
| Evaluate missing features of <pthread.h>. | 2 October 2002 | &status.new; | &status.blank; | |
| Add missing members to struct sigevent, fix type of ss_sp in struct sigstack, add SIGEV_THREAD constant, add ucontext_t and mcontext_t in <sys/signal.h>. | 13 October 2002 | &status.new; | &status.blank; | |
| Fix types for members of struct ipc_perm in <sys/ipc.h>. | 16 October 2002 | &status.new; | &status.blank; | |
| Task | Responsible | Last Updated | Status | |
|---|---|---|---|---|
| 5.0 | 4.x | |||
| Miscellaneous | ||||
| Obtain a copy of Proc. ACM SIGPLAN '90 (required for &man.printf.3; %'f). | &a.fenner; | 9 November 2001 | &status.done; | &status.n-a; |
| Upgrade system compiler to GCC 3.1. | &a.obrien; | 15 May 2002 | &status.done; | &status.n-a; |
| Add regression test for each function. | 17 November 2001 | &status.new; | &status.blank; | |
| Merge sys/posix4/* into regular kernel hierarchy, and remove sys/posix4. | 21 September 2002 | &status.new; | &status.blank; | |
| Open an Aardvark on how to deal with no newline on the last line of a file in diff(1). | 25 November 2002 | &status.new; | &status.blank; | |
| Globally rename the `lint' macro to something in the implementation namespace so it can safely modify the implementation (reference). | 25 November 2002 | &status.new; | &status.blank; | |
| Globally rename the `LOCORE' macro to something in the implementation namespace so it can safely modify the implementation (reference). | 25 November 2002 | &status.new; | &status.blank; | |
| Task | Responsible | Last Updated | Status | ||
|---|---|---|---|---|---|
| 5.0 | 4.x | ||||
| Utility Conformance | |||||
| Add -o option and base64 decoding to the uudecode utility. | &a.jmallett; | 26 March 2002 | &status.done; | &status.done; | |
| Add -m option and base64 encoding to the uuencode utility. | &a.jmallett; | 26 March 2002 | &status.done; | &status.done; | |
| Require at least one file argument in paste(1). (PR: 36074) | &a.tjr; | 1 April 2002 | &status.done; | &status.done; | |
| Add the -i option to the patch utility. | &a.jmallett; | 9 April 2002 | &status.done; | &status.done; | |
| Add -r and -t options to the at utility. | &a.joe.halpin; | 16 April 2002 | &status.done; | &status.n-a; | |
| Add the -f and -p options to the pr utility. (PR: 36243) | &a.tjr; | 16 April 2002 | &status.done; | &status.done; | |
| Add the -s option to the m4 utility. (PR: 36075) | &a.tjr; | 24 April 2002 | &status.done; | &status.done; | |
| Make printf(1) utility conform to POSIX.2 (1992). (PR: 35616) | &a.tjr; | 2 May 2002 | &status.done; | &status.done; | |
| Correct output stream and exit status of the mesg(1) utility. | &a.tjr; | 6 May 2002 | &status.done; | &status.n-a; | |
| Implement the asa utility. (PR: 36130) | &a.tjr; | 15 May 2002 | &status.done; | &status.n-a; | |
| Add the tabs utility. (PR: 36126) | &a.tjr; | 20 May 2002 | &status.done; | &status.n-a; | |
| Restore sccs utility from CVS attic. | &a.jmallett; | 22 May 2002 | &status.done; | &status.n-a; | |
| Make expr(1) conform to POSIX.1-2001. | &a.wollman; | 22 May 2002 | &status.done; | &status.n-a; | |
| Add the newgrp utility. (PR: 36190) | &a.tjr; | 28 May 2002 | &status.done; | &status.n-a; | |
| Fix ctags(1)'s -t option; fix ordering with -x. | &a.tjr; | 2 June 2002 | &status.done; | &status.n-a; | |
| Add -L option to the pwd utility. | &a.tjr; | 20 June 2002 | &status.done; | &status.done; | |
| Fix exit status of the env(1) utility. | &a.tjr; | 20 June 2002 | &status.done; | &status.done; | |
| Add the -b and -s option to the fold utility. (PR: 36245) | &a.tjr; | 20 June 2002 | &status.done; | &status.done; | |
| Add -I and -L options to the xargs utility. | &a.jmallett; | 20 June 2002 | &status.done; | &status.done; | |
| Implement the csplit utility. (PR: 36191) | &a.tjr; | 20 June 2002 | &status.done; | &status.n-a; | |
| Fix exit status of the nice(1) utility. | &a.tjr; | 20 June 2002 | &status.done; | &status.done; | |
| Add -n option to the nice utility. | &a.pavalos; | 20 June 2002 | &status.done; | &status.done; | |
| Add -n option and resolve other issues in the renice utility. (PR: 36950) | &a.pavalos;, &a.maxim; |
20 June 2002 | &status.done; | &status.done; | |
| Add -t option to unexpand(1) utility. (PR: 35621) | &a.tjr; | 20 June 2002 | &status.done; | &status.done; | |
| Make the uniq(1) utility accept `-' as a stdin specifier. | &a.tjr; | 28 June 2002 | &status.done; | &status.done; | |
| Improve join(1)'s POSIX.1-2001 conformance. (PR: 36072) | &a.tjr; | 28 June 2002 | &status.done; | &status.done; | |
| Add -C option to the tr utility. | &a.tjr; | 28 June 2002 | &status.done; | &status.n-a; | |
| Implement the -m, -p, and -x options in the ls utility. | &a.mkm; | 8 July 2002 | &status.done; | &status.done; | |
| Reimplement the who utility. (PR: 36128) | &a.tjr; | 14 July 2002 | &status.done; | &status.done; | |
| Fix exit status, stdout/stderr confusion, and add `-' stdin support to the compress(1) utility. | &a.tjr; | 17 July 2002 | &status.done; | &status.done; | |
| Add the -s, -A, -j, -N, and -t options to the od utility. (PR: 36783) | &a.tjr; | 24 July 2002 | &status.done; | &status.done; | |
| Add -a option to the split utility. | &a.tjr; | 30 July 2002 | &status.done; | &status.done; | |
| Add -m option to the wc utility. | &a.tjr; | 29 August 2002 | &status.done; | &status.done; | |
| Add -L and -P options to the cd utility (shell built-in). | &a.tjr; | 7 October 2002 | &status.done; | &status.done; | |
| Reimplement command(1) (shell built-in). | &a.tjr; | 7 October 2002 | &status.done; | &status.done; | |
| Add the c99 utility (similar to c89). (PR: 36087) | &a.tjr; | 8 October 2002 | &status.done; | &status.n-a; | |
| Update getconf(1) for POSIX.1-2001. | &a.wollman; | 12 November 2002 | &status.done; | &status.done; | |
| Add the pathchk utility. | &a.tjr; | 12 November 2002 | &status.done; | &status.done; | |
| Document the -n option in the echo utility as being implementation-defined. | &a.schweikh; | 8 May 2003 | &status.done; | &status.done; | |
| Add missing options to the mailx utility. | &a.mikeh; | 22 December 2001 | &status.wip; | &status.blank; | |
| Add missing components to the jobs utility. | &a.mkm; | 5 March 2002 | &status.wip; | &status.blank; | |
| Work out conflicting -t option in the df utility. | &a.tjr; | 22 April 2002 | &status.wip; | &status.blank; | |
| Add unimplemented features to the sh utility. | &a.tjr; | 20 May 2002 | &status.wip; | &status.blank; | |
| Implement the -m, -w, and -t options in the lp utility. | &a.gad; | 23 May 2002 | &status.wip; | &status.blank; | |
| Implement/import the SCCS development utilities: + | Implement/import the SCCS development utilities: admin, delta, get, prs, rmdel, sact, unget, val | &a.jmallett; | 23 May 2002 | &status.wip; | &status.blank; |
| Investigate adopting some of the POSIX options in the ps utility. | &a.jmallett; | 6 June 2002 | &status.wip; | &status.blank; | |
| Add missing options and resolve conflicting options in the nm utility. | &a.robert; | 2 August 2002 | &status.wip; | &status.blank; | |
| Implement the iconv utility. | &a.tjr; | 9 October 2002 | &status.wip; | &status.blank; | |
| Implement the locale and localedef utilities. | &a.phantom; | 16 October 2002 | &status.wip; | &status.blank; | |
| Add -C and -T options to the ar utility. | 30 November 2001 | &status.new; | &status.blank; | ||
| Investigate importing the cflow utility from the ports collection. | 30 November 2001 | &status.new; | &status.blank; | ||
| Add -p, -v, and -V options to the command utility (shell built-in). | 30 November 2001 | &status.new; | &status.blank; | ||
| Bring the cp utility up to conformance. | 30 November 2001 | &status.new; | &status.blank; | ||
| Implement the cxref utility. | 30 November 2001 | &status.new; | &status.blank; | ||
| Add the -d, -h, and -M options and fix conflicting -i option in the file utility. | 30 November 2001 | &status.new; | &status.blank; | ||
| Bring the make utility up to conformance. | 30 November 2001 | &status.new; | &status.blank; | ||
| Add -p option to the more utility. | 30 November 2001 | &status.new; | &status.blank; | ||
| Add the qsub utility. | 30 November 2001 | &status.new; | &status.blank; | ||
| Make printf(1) utility conform to SUSv3. | 23 April 2002 | &status.new; | &status.blank; | ||
| Implement the fuser utility. (PR: 36076) | 4 February 2003 | &status.new; | &status.blank; | ||
| Task | Responsible | Last Updated | Status | |
|---|---|---|---|---|
| 5.0 | 4.x | |||
| Wide Character/String Support | ||||
| Implement basic support for wide character I/O: getwc(), fgetwc(), getwchar(), putwc(), fputwc(), putwchar(), ungetwc(), fwide(). | &a.tjr; | 16 August 2002 | &status.done; | &status.n-a; |
| Add stubs for reentrant wc handling functions btowc(), mbrlen(), mbrtowc(), mbsrtowcs(), wcrtomb(), wcsrtombs(), wctob(), wctype(). | &a.tjr; | 23 August 2002 | &status.done; | &status.n-a; |
| Add stubs for reentrant wc handling functions iswalnum(), iswalpha(), iswcntrl(), iswctype(), iswdigit(), iswgraph(), iswlower(), iswprint(), iswpunct(), iswspace(), iswupper(), iswxdigit(). | &a.tjr; | 23 August 2002 | &status.done; | &status.n-a; |
| Implement wcwidth(). | &a.keichii; | 23 August 2002 | &status.done; | &status.n-a; |
| Implement wcswidth(). | &a.ache; | 23 August 2002 | &status.done; | &status.n-a; |
| Implement wcstok(). | &a.tjr; | 9 September 2002 | &status.done; | &status.n-a; |
| Implement wcstod(), wcstol(), wcstoul(). | &a.tjr; | 15 September 2002 | &status.done; | &status.n-a; |
| Implement wcsftime(). | &a.tjr; | 15 September 2002 | &status.done; | &status.n-a; |
| Implement fwprintf(), swprintf(), vfwprintf(), vswprintf(), vwprintf(), wprintf(). | &a.tjr; | 23 September 2002 | &status.done; | &status.n-a; |
| Implement fwscanf(), swscanf(), vfwscanf(), vswscanf(), vwscanf(), wscanf(). | &a.tjr; | 23 September 2002 | &status.done; | &status.n-a; |
| Implement wcstoimax(), wcstoll(), wcstoumax(), wcstoull(). | &a.tjr; | 23 September 2002 | &status.done; | &status.n-a; |
| Implement wide character format types (%C, %S, %lc, %ls) in &man.printf.3;. | &a.tjr; | 16 October 2002 | &status.done; | &status.n-a; |
| Implement wcscoll(), wcsxfrm(). | &a.tjr; | 7 June 2004 | &status.done; | &status.n-a; |
| Implement wide character format types (%C, %S, %lc, %ls) in &man.scanf.3;. | &a.tjr; | 7 June 2004 | &status.done; | &status.n-a; |
| Legend | |
|---|---|
| &status.new; | Not yet started |
| &status.blocked; | Blocked awaiting completion of another task |
| &status.wip; | Work in progress |
| &status.done; | Task completed |
| &status.n-a; | Not planned |
![]()
The remainder of this page is structured as a reverse-chronological log.
31 December 2002Jens Schweikhardt has updated his POSIX Utility Conformance in FreeBSD list. Not much works remains to complete utility conformance.
A new status report on the state of the project, covering September through October, has been produced.
A new status report on the state of the project, covering July through August, has been produced.
A new status report on the state of the project, covering May through June, has been produced.
The Open Group has generously donated several copies of the Authorized Guide to Single &unix; Specification, Version 3, books and CD-ROMs to the project. We are greatly appreciative of their gift.
A new status report on the state of the project, covering February through April, has been produced.
A new status report on the state of the project, covering December and January, has been produced.
The Open Group has announced the completion of SUSv3 and POSIX.1-2001 and the availability of a free, online version of the specification.
A new status report on the current state of the project has been produced.
The IEEE Standards Board has approved the Austin Group Specification as IEEE Std 1003.1.
The project mailing list has been moved from freebsd-standards@bostonradio.org to &a.standards;.
A status report on the current state of the project has been produced.
This web page was created.
The original layout for this web page was borrowed from - the FreeBSD SMPng Project. BSD Daemon Copyright 1988 by Marshall + the FreeBSD SMPng Project. BSD Daemon Copyright 1988 by Marshall Kirk McKusick. All Rights Reserved.
&footer; diff --git a/en/projects/gnats4/index.sgml b/en/projects/gnats4/index.sgml index 60a0d944a8..48b05ae640 100644 --- a/en/projects/gnats4/index.sgml +++ b/en/projects/gnats4/index.sgml @@ -1,316 +1,312 @@ - + + %navincludes; %includes; %developers; "> "> "> "> "> freebsd-bugbusters-subscribe@FreeBSD.org"> freebsd-bugbusters@FreeBSD.org"> ]> - -The aim of this project is to get the FreeBSD bug tracking system upgraded from GNATS3 to GNATS4 with the minimum outage, disruption and breakage.
This turns out to be reasonably easy, as long as the interdependencies on the FreeBSD project's machines are understood. The main aim of this page is to provide a place for documentation of these dependencies, along with the steps required for a successful upgrade and the order in which they should be taken. A secondary aim is to assure interested parties that work on this is ongoing, but is non-trivial.
Initially, development is being done on the bugmeister's local machine, but pertinent patches will be made available at &projectbase; as they are deemed ready.
The vast majority of the work involved will require direct access to the FreeBSD cluster of machines, with elevated privileges. However, there are some patches that need to be written, so check the table below to see what still needs to be done. If you have specific queries or patches to contribute, then please contact bugmeister@FreeBSD.org with details of how you can help.
If you notice that a task is missing from the list, then please do get in touch with the Bugmeister and let me know!
Documentation for GNATS3 is available at http://www.gnu.org/software/gnats/doc/3_113_1/index.html.
Documentation for GNATS4 is available at http://www.gnu.org/software/gnats/doc/4_0_beta_snapshot/index.html.
Discussion relating to this project should be directed to the &a.bugbusters; mailing list. To subscribe to the list, send a message to &a.bugbusters.subscribe;.
These tasks need to be completed before the upgrade can be started.
-| Task | Responsible | Last Updated | Status | Notes |
|---|---|---|---|---|
| Patch the databases/gnats4 port for WANT_FREEFALL_CFG. | &a.ceri; | 14 January 2004 | &status.done; | Patches |
| Commit the database/gnats4 patches. | &a.eik; | 29 January 2004 | &status.done; | At least one month for shakeout will be given. |
| Produce patches for www/en/cgi/query-pr.cgi and www/en/cgi/query-pr-summary.cgi to work with GNATS 4. | &a.ceri; | 16 February 2004 | &status.wip; | |
| Produce configuration files for the new database. | &a.ceri; | 14 January 2004 | &status.done; | |
| Set a date! | &a.ceri; | &status.blocked; | Blocked on the CGI patches | |
| Create /c/gnats/README.GNATS4 on freefall | &a.ceri; | &status.blocked; | This is intended to notify users who cvsup the gnats database that an upgrade is forthcoming. Should be created one month before the upgrade happens. Blocked on setting of the date. | |
| Arrange resource from admins@, or root access to freefall, www and hub. | &a.ceri; | &status.new; |
These tasks list the steps that must be taken during the upgrade itself.
-| Task | Machines | Notes |
|---|---|---|
| Pre-build databases/gnats4. | freefall, hub and www. | freefall must have WANT_FREEFALL_CFG defined in /etc/make.conf. |
| Stop mail coming into the gnats account. | hub | It's desirable to have incoming mail written to a temporary file while the upgrade is in progress so that submissions can be re-queued once it's complete. |
| Comment out all the jobs in the gnats crontab. | freefall | |
| Chmod 000 /c/gnats/gnats-adm/locks to stop further edits. | freefall | |
| Make a backup of /c/gnats. | freefall | |
| Commit the cgi patches. | N/A | |
| pkg_delete the gnats3 port | freefall | |
| Install the gnats4 port, install the new config | freefall | |
| Submit test PRs with queue-pr. Make test edits, etc. | freefall | |
| pkg_delete the gnats3 port | hub | |
| Install the gnats4 port | hub | |
| Queue a test PR on hub, and force file it on freefall | hub, freefall | |
| pkg_delete the gnats3 port | www | |
| Install the gnats4 port | www | |
| Re-enable email submission | hub | |
| Re-enable cronjobs | freefall | |
| Re-queue backed up submissions | freefall |
| Legend | |
|---|---|
| &status.new; | Not yet started |
| &status.blocked; | Blocked awaiting completion of another task |
| &status.wip; | Work in progress |
| &status.done; | Task completed |
| &status.n-a; | Not planned |
The original layout for this web page was borrowed from the FreeBSD C99 Project.
&footer; diff --git a/en/projects/mips/index.sgml b/en/projects/mips/index.sgml index c4c48abcdb..3041a47316 100644 --- a/en/projects/mips/index.sgml +++ b/en/projects/mips/index.sgml @@ -1,204 +1,200 @@ - + + %navincludes; %includes; %developers; "> "> "> "> "> freebsd-mips-subscribe@FreeBSD.org"> freebsd-mips@FreeBSD.org"> ]> - -The FreeBSD/MIPS Project aims to port FreeBSD to MIPS R4000 and newer processors, with support for both desktop platforms (e.g. SGI MIPS) and embedded systems. The ideal is for it to be as clean of a port as possible, with as few historical mistakes as are required, and to provide ports to major platforms where it makes sense for FreeBSD to maintain them, while providing a good "working base" for any third-party vendors to build their own platforms on top of FreeBSD/MIPS.
Initially, development is being done in the FreeBSD Perforce repository, but once the port has reached a relatively working state, it will be merged into the FreeBSD CURRENT branch. Changes made which are not MIPS specific but which are required for the port should be merged in gradually over time.
The project is always looking for additional contributors. If you wish to participate, the best way to find out what is happening is to subscribe to the freebsd-mips mailing list. If you are working on a specific task relating to the project, you should contact jmallett@FreeBSD.org with a description of the task so that your task can be listed below.
General MIPS information is available from MIPS Technologies, Inc.
Most discussion relating to this project takes place on the &a.mips; mailing list. To subscribe to the list, send a message to &a.mips.subscribe;.
| Task | Responsible | Last Updated | Status |
|---|---|---|---|
| Update contrib bits for toolchain. | &a.jmallett; | 08 November 2002 | &status.done; |
| Add toolchain glue for FreeBSD/MIPS. | &a.jmallett; | 08 November 2002 | &status.done; |
| Merge ARCBIOS kernel driver from NetBSD. | &a.jwojdacki; | 08 November 2002 | &status.done; |
| Write a GEOM module for SGI fx-labelled disks. | &a.jmallett; | 08 February 2003 | &status.done; |
| Fill in stub kernel headers. | &a.jmallett; | 13 February 2003 | &status.done; |
| Fill in stubs for all MD functions. | &a.jmallett; | 14 February 2003 | &status.done; |
| Get a kernel booting on real hardware. | &a.jmallett; | 14 February 2003 | &status.wip; |
| Merge FreeBSD/MIPS configuration into FSF GCC tree. | 08 November 2002 | &status.new; | |
| Flesh out loader(8)'s ARC support. | 08 November 2002 | &status.new; |
| Legend | |
|---|---|
| &status.new; | Not yet started |
| &status.blocked; | Blocked awaiting completion of another task |
| &status.wip; | Work in progress |
| &status.done; | Task completed |
| &status.n-a; | Not planned |
![]()
The remainder of this page is structured as a reverse-chronological log.
08 November 2002This web page was created.
The original layout for this web page was borrowed from - the FreeBSD C99 Project. BSD Daemon Copyright 1988 by Marshall + the FreeBSD C99 Project. BSD Daemon Copyright 1988 by Marshall Kirk McKusick. All Rights Reserved.
&footer;