mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 17:53:37 +08:00
Update.
2003-05-09 Thorsten Kukuk <kukuk@suse.de> * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel headers, add defines from kernel header, move it from here... * inet/netinet/igmp.h: ... to here. * inet/Makefile (headers): Add netinet/igmp.h. * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h. * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h. 2003-05-10 Ulrich Drepper <drepper@redhat.com> * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL, use dummy sigevent structure with SIGEV_NONE [PR libc/5015]. 2003-05-09 Thorsten Kukuk <kukuk@suse.de> * libio/bits/stdio.h: Sync prototypes with libio/stdio.h (remove __THROW from possible cancellation points).
This commit is contained in:
parent
d067c97eb5
commit
d9997a45ee
19
ChangeLog
19
ChangeLog
@ -1,3 +1,22 @@
|
||||
2003-05-09 Thorsten Kukuk <kukuk@suse.de>
|
||||
|
||||
* sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
|
||||
headers, add defines from kernel header, move it from here...
|
||||
* inet/netinet/igmp.h: ... to here.
|
||||
* inet/Makefile (headers): Add netinet/igmp.h.
|
||||
* sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
|
||||
* sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
|
||||
|
||||
2003-05-10 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
|
||||
use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
|
||||
|
||||
2003-05-09 Thorsten Kukuk <kukuk@suse.de>
|
||||
|
||||
* libio/bits/stdio.h: Sync prototypes with libio/stdio.h
|
||||
(remove __THROW from possible cancellation points).
|
||||
|
||||
2003-05-10 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* posix/sched.h (CPU_SETSIZE): Define.
|
||||
|
@ -22,7 +22,7 @@
|
||||
subdir := inet
|
||||
|
||||
headers := netinet/ether.h netinet/in.h netinet/in_systm.h \
|
||||
netinet/if_ether.h \
|
||||
netinet/if_ether.h netinet/igmp.h \
|
||||
netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \
|
||||
aliases.h ifaddrs.h netinet/ip6.h netinet/icmp6.h bits/in.h
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1997, 1999, 2003 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -22,8 +22,43 @@
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <asm/types.h>
|
||||
#include <linux/igmp.h>
|
||||
#define IGMP_HOST_MEMBERSHIP_QUERY 0x11 /* From RFC1112 */
|
||||
#define IGMP_HOST_MEMBERSHIP_REPORT 0x12 /* Ditto */
|
||||
#define IGMP_DVMRP 0x13 /* DVMRP routing */
|
||||
#define IGMP_PIM 0x14 /* PIM routing */
|
||||
#define IGMP_TRACE 0x15
|
||||
#define IGMP_HOST_NEW_MEMBERSHIP_REPORT 0x16 /* New version of 0x11 */
|
||||
#define IGMP_HOST_LEAVE_MESSAGE 0x17
|
||||
|
||||
#define IGMP_MTRACE_RESP 0x1e
|
||||
#define IGMP_MTRACE 0x1f
|
||||
|
||||
/*
|
||||
* Use the BSD names for these for compatibility
|
||||
*/
|
||||
|
||||
#define IGMP_DELAYING_MEMBER 0x01
|
||||
#define IGMP_IDLE_MEMBER 0x02
|
||||
#define IGMP_LAZY_MEMBER 0x03
|
||||
#define IGMP_SLEEPING_MEMBER 0x04
|
||||
#define IGMP_AWAKENING_MEMBER 0x05
|
||||
|
||||
#define IGMP_MINLEN 8
|
||||
|
||||
#define IGMP_MAX_HOST_REPORT_DELAY 10 /* max delay for response to */
|
||||
/* query (in seconds) */
|
||||
|
||||
#define IGMP_TIMER_SCALE 10 /* denotes that the igmphdr->timer field */
|
||||
/* specifies time in 10th of seconds */
|
||||
|
||||
#define IGMP_AGE_THRESHOLD 400 /* If this host don't hear any IGMP V1 */
|
||||
/* message in this period of time, */
|
||||
/* revert to IGMP v2 router. */
|
||||
|
||||
#define IGMP_ALL_HOSTS htonl(0xE0000001L)
|
||||
#define IGMP_ALL_ROUTER htonl(0xE0000002L)
|
||||
#define IGMP_LOCAL_GROUP htonl(0xE0000000L)
|
||||
#define IGMP_LOCAL_GROUP_MASK htonl(0xFFFFFF00L)
|
||||
|
||||
#ifdef __USE_BSD
|
||||
|
@ -31,14 +31,14 @@
|
||||
#ifdef __USE_EXTERN_INLINES
|
||||
/* Write formatted output to stdout from argument list ARG. */
|
||||
__STDIO_INLINE int
|
||||
vprintf (__const char *__restrict __fmt, _G_va_list __arg) __THROW
|
||||
vprintf (__const char *__restrict __fmt, _G_va_list __arg)
|
||||
{
|
||||
return vfprintf (stdout, __fmt, __arg);
|
||||
}
|
||||
|
||||
/* Read a character from stdin. */
|
||||
__STDIO_INLINE int
|
||||
getchar (void) __THROW
|
||||
getchar (void)
|
||||
{
|
||||
return _IO_getc (stdin);
|
||||
}
|
||||
@ -47,14 +47,14 @@ getchar (void) __THROW
|
||||
# if defined __USE_POSIX || defined __USE_MISC
|
||||
/* This is defined in POSIX.1:1996. */
|
||||
__STDIO_INLINE int
|
||||
getc_unlocked (FILE *__fp) __THROW
|
||||
getc_unlocked (FILE *__fp)
|
||||
{
|
||||
return _IO_getc_unlocked (__fp);
|
||||
}
|
||||
|
||||
/* This is defined in POSIX.1:1996. */
|
||||
__STDIO_INLINE int
|
||||
getchar_unlocked (void) __THROW
|
||||
getchar_unlocked (void)
|
||||
{
|
||||
return _IO_getc_unlocked (stdin);
|
||||
}
|
||||
@ -63,7 +63,7 @@ getchar_unlocked (void) __THROW
|
||||
|
||||
/* Write a character to stdout. */
|
||||
__STDIO_INLINE int
|
||||
putchar (int __c) __THROW
|
||||
putchar (int __c)
|
||||
{
|
||||
return _IO_putc (__c, stdout);
|
||||
}
|
||||
@ -72,7 +72,7 @@ putchar (int __c) __THROW
|
||||
# ifdef __USE_MISC
|
||||
/* Faster version when locking is not necessary. */
|
||||
__STDIO_INLINE int
|
||||
fputc_unlocked (int __c, FILE *__stream) __THROW
|
||||
fputc_unlocked (int __c, FILE *__stream)
|
||||
{
|
||||
return _IO_putc_unlocked (__c, __stream);
|
||||
}
|
||||
@ -82,14 +82,14 @@ fputc_unlocked (int __c, FILE *__stream) __THROW
|
||||
# if defined __USE_POSIX || defined __USE_MISC
|
||||
/* This is defined in POSIX.1:1996. */
|
||||
__STDIO_INLINE int
|
||||
putc_unlocked (int __c, FILE *__stream) __THROW
|
||||
putc_unlocked (int __c, FILE *__stream)
|
||||
{
|
||||
return _IO_putc_unlocked (__c, __stream);
|
||||
}
|
||||
|
||||
/* This is defined in POSIX.1:1996. */
|
||||
__STDIO_INLINE int
|
||||
putchar_unlocked (int __c) __THROW
|
||||
putchar_unlocked (int __c)
|
||||
{
|
||||
return _IO_putc_unlocked (__c, stdout);
|
||||
}
|
||||
@ -99,7 +99,7 @@ putchar_unlocked (int __c) __THROW
|
||||
# ifdef __USE_GNU
|
||||
/* Like `getdelim', but reads up to a newline. */
|
||||
__STDIO_INLINE _IO_ssize_t
|
||||
getline (char **__lineptr, size_t *__n, FILE *__stream) __THROW
|
||||
getline (char **__lineptr, size_t *__n, FILE *__stream)
|
||||
{
|
||||
return __getdelim (__lineptr, __n, '\n', __stream);
|
||||
}
|
||||
|
@ -1,3 +1,10 @@
|
||||
2003-05-10 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* locales/st_ZA: New file.
|
||||
* locales/xh_ZA: New file.
|
||||
* locales/zu_ZA: New file.
|
||||
Contribued by Dwayne Bailey <dwayne@translate.org.za>.
|
||||
|
||||
2003-05-06 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* locales/de_DE: Use two-letter abday values.
|
||||
|
254
localedata/locales/st_ZA
Normal file
254
localedata/locales/st_ZA
Normal file
@ -0,0 +1,254 @@
|
||||
escape_char /
|
||||
comment_char %
|
||||
|
||||
% ChangeLog
|
||||
% 0.1 (2003-04-21):
|
||||
% - Initial Sotho locale for South Africa
|
||||
% by Zuza Software Foundation
|
||||
|
||||
LC_IDENTIFICATION
|
||||
title "Sotho locale for South Africa"
|
||||
source "Zuza Software Foundation"
|
||||
address "PO Box 13412, Mowbray, 7705, South Africa"
|
||||
contact "Dwayne Bailey"
|
||||
email "dwayne@translate.org.za"
|
||||
tel "+27 (0)21 448 9265"
|
||||
fax "+27 (0)21 448 9574"
|
||||
language "Sotho"
|
||||
territory "South Africa"
|
||||
revision "0.1"
|
||||
date "2003-04-21"
|
||||
%
|
||||
category "st_ZA:2003";LC_IDENTIFICATION
|
||||
category "st_ZA:2003";LC_CTYPE
|
||||
category "st_ZA:2003";LC_COLLATE
|
||||
category "st_ZA:2003";LC_TIME
|
||||
category "st_ZA:2003";LC_NUMERIC
|
||||
category "st_ZA:2003";LC_MONETARY
|
||||
category "st_ZA:2003";LC_MESSAGES
|
||||
category "st_ZA:2003";LC_PAPER
|
||||
category "st_ZA:2003";LC_NAME
|
||||
category "st_ZA:2003";LC_ADDRESS
|
||||
category "st_ZA:2003";LC_TELEPHONE
|
||||
category "st_ZA:2003";LC_MEASUREMENT
|
||||
|
||||
END LC_IDENTIFICATION
|
||||
|
||||
LC_CTYPE
|
||||
% Use the characters described in the charmap file "i18n.tgz"
|
||||
copy "i18n"
|
||||
END LC_CTYPE
|
||||
|
||||
LC_COLLATE
|
||||
% Copy the template from ISO/IEC 14651 i.e.
|
||||
% use the rules there when making ordered lists of words.
|
||||
copy "iso14651_t1"
|
||||
END LC_COLLATE
|
||||
|
||||
LC_MONETARY
|
||||
copy "en_ZA"
|
||||
END LC_MONETARY
|
||||
|
||||
LC_NUMERIC
|
||||
copy "en_ZA"
|
||||
END LC_NUMERIC
|
||||
|
||||
LC_TIME
|
||||
|
||||
% abday - The abbreviations for the week days:
|
||||
% - Son, Mma, Bed, Rar, Ne, Hla, Moq
|
||||
abday "<U0053><U006F><U006E>";/
|
||||
"<U004D><U006D><U0061>";/
|
||||
"<U0042><U0065><U0064>";/
|
||||
"<U0052><U0061><U0072>";/
|
||||
"<U004E><U0065>";/
|
||||
"<U0048><U006C><U0061>";/
|
||||
"<U004D><U006F><U0071>"
|
||||
|
||||
% day - The full names of the week days:
|
||||
% - Sontaha, Mmantaha, Labobedi, Laboraru, Labone, Labohlane, Moqebelo
|
||||
day "<U0053><U006F><U006E><U0074><U0061><U0068><U0061>";/
|
||||
"<U004D><U006D><U0061><U006E><U0074><U0061><U0068><U0061>";/
|
||||
"<U004C><U0061><U0062><U006F><U0062><U0065><U0064><U0069>";/
|
||||
"<U004C><U0061><U0062><U006F><U0072><U0061><U0072><U0075>";/
|
||||
"<U004C><U0061><U0062><U006F><U006E><U0065>";/
|
||||
"<U004C><U0061><U0062><U006F><U0068><U006C><U0061><U006E><U0065>";/
|
||||
"<U004D><U006F><U0071><U0065><U0062><U0065><U006C><U006F>"
|
||||
|
||||
% abmon - The abbreviations for the months
|
||||
% - Phe, Kol, Ube, Mme, Mot, Jan, Upu, Pha, Leo, Mph, Pun, Tsh
|
||||
abmon "<U0050><U0068><U0065>";"<U004B><U006F><U006C>";/
|
||||
"<U0055><U0062><U0065>";"<U004D><U006D><U0065>";/
|
||||
"<U004D><U006F><U0074>";"<U004A><U0061><U006E>";/
|
||||
"<U0055><U0070><U0075>";"<U0050><U0068><U0061>";/
|
||||
"<U004C><U0065><U006F>";"<U004D><U0070><U0068>";/
|
||||
"<U0050><U0075><U006E>";"<U0054><U0073><U0068>"
|
||||
|
||||
% mon - The full names of the months -
|
||||
% - Phesekgong, Hlakola, Hlakubele, Mmese, Motsheanong, Phupjane,
|
||||
% Phupu, Phata, Leotshe, Mphalane, Pundungwane, Tshitwe
|
||||
mon "<U0050><U0068><U0065><U0073><U0065><U006B><U0067><U006F><U006E><U0067>";/
|
||||
"<U0048><U006C><U0061><U006B><U006F><U006C><U0061>";/
|
||||
"<U0048><U006C><U0061><U006B><U0075><U0062><U0065><U006C><U0065>";/
|
||||
"<U004D><U006D><U0065><U0073><U0065>";/
|
||||
"<U004D><U006F><U0074><U0073><U0068><U0065><U0061><U006E><U006F><U006E><U0067>";/
|
||||
"<U0050><U0068><U0075><U0070><U006A><U0061><U006E><U0065>";/
|
||||
"<U0050><U0068><U0075><U0070><U0075>";/
|
||||
"<U0050><U0068><U0061><U0074><U0061>";/
|
||||
"<U004C><U0065><U006F><U0074><U0073><U0068><U0065>";/
|
||||
"<U004D><U0070><U0068><U0061><U006C><U0061><U006E><U0065>";/
|
||||
"<U0050><U0075><U006E><U0064><U0075><U006E><U0067><U0077><U0061><U006E><U0065>";/
|
||||
"<U0054><U0073><U0068><U0069><U0074><U0077><U0065>"
|
||||
|
||||
% Abreviated date and time representation to be referenced by the "%c" field descriptor -
|
||||
d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
|
||||
%
|
||||
% "%a" (short weekday name),
|
||||
% "%d" (day of month as a decimal number),
|
||||
% "%b" (short month name),
|
||||
% "%Y" (year with century as a decimal number),
|
||||
% "%T" (24-hour clock time in format HH:MM:SS),
|
||||
% "%Z" (Time zone name)
|
||||
|
||||
% Date representation to be referenced by the "%x" field descriptor -
|
||||
d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
|
||||
% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000).
|
||||
|
||||
% Time representation to be referenced by the "%X" field descriptor -
|
||||
t_fmt "<U0025><U0054>"
|
||||
% "%T" (24-hour clock time in format HH:MM:SS)
|
||||
|
||||
% Define representation of ante meridiem and post meridiem strings -
|
||||
am_pm "";""
|
||||
% The "" mean 'default to "AM" and "PM".
|
||||
|
||||
% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r"
|
||||
t_fmt_ampm ""
|
||||
% The "" means that this format is not supported.
|
||||
|
||||
% Date representation not described in ISO/IEC 14652. Comes out as -
|
||||
% "%a %b %e %H:%M:%S %Z %Y" which is default "date" command output
|
||||
date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
|
||||
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
|
||||
<U0025><U005A><U0020><U0025><U0059>"
|
||||
%
|
||||
% %a - abbreviated weekday name,
|
||||
% %b - abreviated month name,
|
||||
% %e - day of month as a decimal number with leading space (1 to 31),
|
||||
% %H - hour (24-hour clock) as a decimal number (00 to 23),
|
||||
% %M - minute as a decimal number (00 to 59),
|
||||
% %S - seconds as a decimal number (00 to 59),
|
||||
% %Z - time-zone name,
|
||||
% %Y - year with century as a decimal number,e.g. 2001.
|
||||
|
||||
END LC_TIME
|
||||
|
||||
LC_MESSAGES
|
||||
% FIXME: Check both of these
|
||||
% The affirmative response -
|
||||
% "^[yY].*"
|
||||
yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
|
||||
|
||||
% The negative response -
|
||||
% "^[nN].*"
|
||||
noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
|
||||
END LC_MESSAGES
|
||||
|
||||
LC_PAPER
|
||||
copy "en_ZA"
|
||||
END LC_PAPER
|
||||
|
||||
LC_TELEPHONE
|
||||
copy "en_ZA"
|
||||
END LC_TELEPHONE
|
||||
|
||||
LC_MEASUREMENT
|
||||
copy "en_ZA"
|
||||
END LC_MEASUREMENT
|
||||
|
||||
LC_NAME
|
||||
% Format for addressing a person.
|
||||
name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
|
||||
<U0025><U006D><U0025><U0074><U0025><U0066>"
|
||||
% "%d%t%g%t%m%t%f"
|
||||
% "Salutation",
|
||||
% "Empty string, or <Space>",
|
||||
% "First given name",
|
||||
% "Empty string, or <Space>",
|
||||
% "Middle names",
|
||||
% "Empty string, or <Space>",
|
||||
% "Clan names"
|
||||
|
||||
% FIXME - define all the following name_*
|
||||
% General salutation for any sex
|
||||
% name_gen ""
|
||||
|
||||
% Salutation for unmarried females - ""
|
||||
% name_miss ""
|
||||
|
||||
% Salutation for males - ""
|
||||
% name_mr ""
|
||||
|
||||
% Salutation for married females - ""
|
||||
% name_mrs ""
|
||||
|
||||
% Salutation valid for all females - "" (no term)
|
||||
% name_ms ""
|
||||
|
||||
END LC_NAME
|
||||
|
||||
LC_ADDRESS
|
||||
% Country name in Sotho - "Afrika Borwa"
|
||||
country_name "<U0041><U0066><U0072><U0069><U006B><U0061><U0020><U0042><U006F><U0072><U0077><U0061>"
|
||||
|
||||
% Abbreviated country postal name - "ZA"
|
||||
country_post "<U005A><U0041>"
|
||||
|
||||
% ISO 3166 two letter country abbreviation - "ZA"
|
||||
country_ab2 "<U005A><U0041>"
|
||||
|
||||
% FIXME define the following correctly
|
||||
% country_ab3 ""
|
||||
% country_car ""
|
||||
% country_isbn ""
|
||||
% country_num
|
||||
|
||||
% Language name in Sotho - "Sesotho"
|
||||
lang_name "<U0053><U0065><U0073><U006F><U0074><U0068><U006F>"
|
||||
|
||||
% FIXME define the following correctly
|
||||
% lang_ab ""
|
||||
% lang_term ""
|
||||
|
||||
% Representation of postal addresses (minus the addressee's name) in South
|
||||
% Africa. (Ignored for now)
|
||||
postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
|
||||
<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
|
||||
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
|
||||
<U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
|
||||
<U004E><U0025><U0063><U0025><U004E>"
|
||||
% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives -
|
||||
% "firm name",
|
||||
% "end of line",
|
||||
% "C/O address",
|
||||
% "end of line",
|
||||
% "department name",
|
||||
% "Building name",
|
||||
% "end of line",
|
||||
% "street or block name",
|
||||
% "space",
|
||||
% "house number or designation",
|
||||
% "space",
|
||||
% "floor number",
|
||||
% "space",
|
||||
% "room number, door designation",
|
||||
% "end of line",
|
||||
% "postal code",
|
||||
% "space",
|
||||
% "town, city",
|
||||
% "end of line",
|
||||
% "country designation for the <country_post> keyword",
|
||||
% "end of line
|
||||
%
|
||||
END LC_ADDRESS
|
||||
|
235
localedata/locales/xh_ZA
Normal file
235
localedata/locales/xh_ZA
Normal file
@ -0,0 +1,235 @@
|
||||
escape_char /
|
||||
comment_char %
|
||||
|
||||
% ChangeLog
|
||||
% 0.1 (2003-05-08):
|
||||
% - Initial Xhosa locale by Zuza Software Foundation
|
||||
|
||||
LC_IDENTIFICATION
|
||||
title "Xhosa locale for South Africa"
|
||||
source "Zuza Software Foundation"
|
||||
address "PO Box 13412, Mowbray, 7705, South Africa"
|
||||
contact "Dwayne Bailey"
|
||||
email "dwayne@translate.org.za"
|
||||
tel "+27 (0)21 448 9265"
|
||||
fax "+27 (0)21 448 9574"
|
||||
language "Xhosa"
|
||||
territory "South Africa"
|
||||
revision "0.1"
|
||||
date "2003-05-08"
|
||||
%
|
||||
category "xh_ZA:2003";LC_IDENTIFICATION
|
||||
category "xh_ZA:2003";LC_CTYPE
|
||||
category "xh_ZA:2003";LC_COLLATE
|
||||
category "xh_ZA:2003";LC_TIME
|
||||
category "xh_ZA:2003";LC_NUMERIC
|
||||
category "xh_ZA:2003";LC_MONETARY
|
||||
category "xh_ZA:2003";LC_MESSAGES
|
||||
category "xh_ZA:2003";LC_PAPER
|
||||
category "xh_ZA:2003";LC_NAME
|
||||
category "xh_ZA:2003";LC_ADDRESS
|
||||
category "xh_ZA:2003";LC_TELEPHONE
|
||||
category "xh_ZA:2003";LC_MEASUREMENT
|
||||
|
||||
END LC_IDENTIFICATION
|
||||
|
||||
LC_CTYPE
|
||||
% Use the characters described in the charmap file "i18n.tgz"
|
||||
copy "i18n"
|
||||
END LC_CTYPE
|
||||
|
||||
LC_COLLATE
|
||||
% Copy the template from ISO/IEC 14651 i.e.
|
||||
% use the rules there when making ordered lists of words.
|
||||
copy "iso14651_t1"
|
||||
END LC_COLLATE
|
||||
|
||||
LC_MONETARY
|
||||
copy "en_ZA"
|
||||
END LC_MONETARY
|
||||
|
||||
LC_NUMERIC
|
||||
copy "en_ZA"
|
||||
END LC_NUMERIC
|
||||
|
||||
LC_TIME
|
||||
% The abbreviations for the week days:
|
||||
% - Caw, Mvu, Bin, Tha, Sin, Hla, Mgq
|
||||
abday "<U0043><U0061><U0077>";/
|
||||
"<U004D><U0076><U0075>";/
|
||||
"<U0042><U0069><U006E>";/
|
||||
"<U0054><U0068><U0061>";/
|
||||
"<U0053><U0069><U006E>";/
|
||||
"<U0048><U006C><U0061>";/
|
||||
"<U004D><U0067><U0071>"
|
||||
%
|
||||
% The full names of the week days:
|
||||
% - Cawe, Mvulo, Lwesibini, Lwesithathu, Lwesine, Lwesihlanu, Mgqibelo
|
||||
day "<U0043><U0061><U0077><U0065>";/
|
||||
"<U004D><U0076><U0075><U006C><U006F>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0062><U0069><U006E><U0069>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0074><U0068><U0061><U0074><U0068><U0075>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U006E><U0065>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0068><U006C><U0061><U006E><U0075>";/
|
||||
"<U004D><U0067><U0071><U0069><U0062><U0065><U006C><U006F>"
|
||||
%
|
||||
% The abbreviations for the months
|
||||
% - Jan, Feb, Mat, Epr, Mey, Jun, Jul, Aga, Sep, Okt, Nov, Dis
|
||||
abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
|
||||
"<U004D><U0061><U0074>";"<U0045><U0070><U0072>";/
|
||||
"<U004D><U0065><U0079>";"<U004A><U0075><U006E>";/
|
||||
"<U004A><U0075><U006C>";"<U0041><U0067><U0061>";/
|
||||
"<U0053><U0065><U0070>";"<U004F><U006B><U0074>";/
|
||||
"<U004E><U006F><U0076>";"<U0044><U0069><U0073>"
|
||||
%
|
||||
% The full names of the months -
|
||||
% - Janyuwari, Februwari, Matshi, Epreli, Meyi, Juni, Julayi, Agasti, Septemba,
|
||||
% Okthoba, Novemba, Disemba
|
||||
mon "<U004A><U0061><U006E><U0079><U0075><U0077><U0061><U0072><U0069>";/
|
||||
"<U0046><U0065><U0062><U0072><U0075><U0077><U0061><U0072><U0069>";/
|
||||
"<U004D><U0061><U0074><U0073><U0068><U0069>";/
|
||||
"<U0045><U0070><U0072><U0065><U006C><U0069>";/
|
||||
"<U004D><U0065><U0079><U0069>";/
|
||||
"<U004A><U0075><U006E><U0069>";/
|
||||
"<U004A><U0075><U006C><U0061><U0079><U0069>";/
|
||||
"<U0041><U0067><U0061><U0073><U0074><U0069>";/
|
||||
"<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0061>";/
|
||||
"<U004F><U006B><U0074><U0068><U006F><U0062><U0061>";/
|
||||
"<U004E><U006F><U0076><U0065><U006D><U0062><U0061>";/
|
||||
"<U0044><U0069><U0073><U0065><U006D><U0062><U0061>"
|
||||
%
|
||||
% Abreviated date and time representation to be referenced by the "%c" field descriptor -
|
||||
d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
|
||||
% "%a" (weekday name),
|
||||
% "%d" (day of month as a decimal number),
|
||||
% "%b" (month name),
|
||||
% "%Y" (year with century as a decimal number),
|
||||
% "%T" (24-hour clock time in format HH:MM:SS),
|
||||
% "%Z" (Time zone name)
|
||||
%
|
||||
% Date representation to be referenced by the "%x" field % descriptor -
|
||||
% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000).
|
||||
d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
|
||||
%
|
||||
% Time representation to be referenced by the "%X" field descriptor -
|
||||
% "%T" (24-hour clock time in format HH:MM:SS)
|
||||
t_fmt "<U0025><U0054>"
|
||||
%
|
||||
% Define representation of ante meridiem and post meridiem strings -
|
||||
% The ""s means default to "AM" and "PM".
|
||||
am_pm "";""
|
||||
%
|
||||
% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r"
|
||||
% field descriptor -
|
||||
% The "" means that this format is not supported.
|
||||
t_fmt_ampm ""
|
||||
%
|
||||
% Date representation not described in ISO/IEC 14652.
|
||||
% Comes out as - "%a %b %e %H:%M:%S %Z %Y"
|
||||
date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
|
||||
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
|
||||
<U0025><U005A><U0020><U0025><U0059>"
|
||||
% which is:
|
||||
% abbreviated weekday name,
|
||||
% day of month as a decimal number (01 to 31),
|
||||
% day of month as a decimal number with leading space (1 to 31),
|
||||
% hour (24-hour clock) as a decimal number (00 to 23),
|
||||
% minute as a decimal number (00 to 59),
|
||||
% seconds as a decimal number (00 to 59),
|
||||
% time-zone name,
|
||||
% year with century as a decimal number,e.g. 2001.
|
||||
%
|
||||
END LC_TIME
|
||||
|
||||
LC_MESSAGES
|
||||
% The affirmative response -
|
||||
% "^[yYeE].*"
|
||||
yesexpr "<U005E><U005B><U0079><U0059><U0065><U0045><U005D><U002E><U002A>"
|
||||
%
|
||||
% The negative response -
|
||||
% "^[nNhH].*"
|
||||
noexpr "<U005E><U005B><U006E><U004E><U0068><U0048><U005D><U002E><U002A>"
|
||||
%
|
||||
END LC_MESSAGES
|
||||
|
||||
LC_PAPER
|
||||
copy "en_ZA"
|
||||
END LC_PAPER
|
||||
|
||||
LC_TELEPHONE
|
||||
copy "en_ZA"
|
||||
END LC_TELEPHONE
|
||||
|
||||
LC_MEASUREMENT
|
||||
copy "en_ZA"
|
||||
END LC_MEASUREMENT
|
||||
|
||||
LC_NAME
|
||||
% Format for addressing a person.
|
||||
name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
|
||||
<U0025><U006D><U0025><U0074><U0025><U0066>"
|
||||
% "%d%t%g%t%m%t%f"
|
||||
% "Salutation",
|
||||
% "Empty string, or <Space>",
|
||||
% "First given name",
|
||||
% "Empty string, or <Space>",
|
||||
% "Middle names",
|
||||
% "Empty string, or <Space>",
|
||||
% "Clan names"
|
||||
%
|
||||
% Salutation for unmarried females - "Nkosazana"
|
||||
name_miss "<U004E><U006B><U006F><U0073><U0061><U007A><U0061><U006E><U0061>"
|
||||
%
|
||||
% Salutation for males - "Mnumzana"
|
||||
name_mr "<U004D><U006E><U0075><U006D><U007A><U0061><U006E><U0061>"
|
||||
%
|
||||
% Salutation for married females - "Nkosikazi"
|
||||
name_mrs "<U004E><U006B><U006F><U0073><U0069><U006B><U0061><U007A><U0069>"
|
||||
%
|
||||
% Salutation valid for all females - "" (no term)
|
||||
name_ms ""
|
||||
END LC_NAME
|
||||
|
||||
LC_ADDRESS
|
||||
% Country name in Xhosa - "Mzantsi Afrika"
|
||||
country_name "<U004D><U007A><U0061><U006E><U0074><U0073><U0069><U0020>/
|
||||
<U0041><U0066><U0072><U0069><U006B><U0061>"
|
||||
%
|
||||
% Abbreviated country postal name - "ZA"
|
||||
country_post "<U005A><U0041>"
|
||||
%
|
||||
% ISO 3166 two letter country abbreviation - "ZA"
|
||||
country_ab2 "<U005A><U0041>"
|
||||
%
|
||||
% Representation of postal addresses (minus the addressee's name) in South
|
||||
% Africa. (Ignored for now)
|
||||
postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
|
||||
<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
|
||||
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
|
||||
<U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
|
||||
<U004E><U0025><U0063><U0025><U004E>"
|
||||
% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives -
|
||||
% "firm name",
|
||||
% "end of line",
|
||||
% "C/O address",
|
||||
% "end of line",
|
||||
% "department name",
|
||||
% "Building name",
|
||||
% "end of line",
|
||||
% "street or block name",
|
||||
% "space",
|
||||
% "house number or designation",
|
||||
% "space",
|
||||
% "floor number",
|
||||
% "space",
|
||||
% "room number, door designation",
|
||||
% "end of line",
|
||||
% "postal code",
|
||||
% "space",
|
||||
% "town, city",
|
||||
% "end of line",
|
||||
% "country designation for the <country_post> keyword",
|
||||
% "end of line
|
||||
%
|
||||
END LC_ADDRESS
|
||||
|
241
localedata/locales/zu_ZA
Normal file
241
localedata/locales/zu_ZA
Normal file
@ -0,0 +1,241 @@
|
||||
escape_char /
|
||||
comment_char %
|
||||
|
||||
% ChangeLog
|
||||
% 0.1 (2003-04-19):
|
||||
% - Initial Zulu locale by Zuza Software Foundation
|
||||
|
||||
LC_IDENTIFICATION
|
||||
title "Zulu locale for South Africa"
|
||||
source "Zuza Software Foundation"
|
||||
address "PO Box 13412, Mowbray, 7705, South Africa"
|
||||
contact "Dwayne Bailey"
|
||||
email "dwayne@translate.org.za"
|
||||
tel "+27 (0)21 448 9265"
|
||||
fax "+27 (0)21 448 9574"
|
||||
language "Zulu"
|
||||
territory "South Africa"
|
||||
revision "0.1"
|
||||
date "2003-04-19"
|
||||
%
|
||||
category "zu_ZA:2003";LC_IDENTIFICATION
|
||||
category "zu_ZA:2003";LC_CTYPE
|
||||
category "zu_ZA:2003";LC_COLLATE
|
||||
category "zu_ZA:2003";LC_TIME
|
||||
category "zu_ZA:2003";LC_NUMERIC
|
||||
category "zu_ZA:2003";LC_MONETARY
|
||||
category "zu_ZA:2003";LC_MESSAGES
|
||||
category "zu_ZA:2003";LC_PAPER
|
||||
category "zu_ZA:2003";LC_NAME
|
||||
category "zu_ZA:2003";LC_ADDRESS
|
||||
category "zu_ZA:2003";LC_TELEPHONE
|
||||
category "zu_ZA:2003";LC_MEASUREMENT
|
||||
|
||||
END LC_IDENTIFICATION
|
||||
|
||||
LC_CTYPE
|
||||
% Use the characters described in the charmap file "i18n.tgz"
|
||||
%
|
||||
copy "i18n"
|
||||
END LC_CTYPE
|
||||
|
||||
LC_COLLATE
|
||||
% Copy the template from ISO/IEC 14651 i.e.
|
||||
% use the rules there when making ordered lists of words.
|
||||
%
|
||||
copy "iso14651_t1"
|
||||
END LC_COLLATE
|
||||
|
||||
LC_MONETARY
|
||||
copy "en_ZA"
|
||||
END LC_MONETARY
|
||||
|
||||
LC_NUMERIC
|
||||
copy "en_ZA"
|
||||
END LC_NUMERIC
|
||||
|
||||
LC_TIME
|
||||
% abday - The abbreviations for the week days:
|
||||
% - Son, Mso, Bil, Tha, Sin, Hla, Mgq
|
||||
abday "<U0053><U006F><U006E>";/
|
||||
"<U004D><U0073><U006F>";/
|
||||
"<U0042><U0069><U006C>";/
|
||||
"<U0054><U0068><U0061>";/
|
||||
"<U0053><U0069><U006E>";/
|
||||
"<U0048><U006C><U0061>";/
|
||||
"<U004D><U0067><U0071>"
|
||||
|
||||
% day - The full names of the week days:
|
||||
% - Sonto, Msombuluko, Lwesibili, Lwesithathu, Lwesine, Lwesihlanu, Mgqibelo
|
||||
day "<U0053><U006F><U006E><U0074><U006F>";/
|
||||
"<U004D><U0073><U006F><U006D><U0062><U0075><U006C><U0075><U006B><U006F>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0062><U0069><U006C><U0069>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0074><U0068><U0061><U0074><U0068><U0075>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U006E><U0065>";/
|
||||
"<U004C><U0077><U0065><U0073><U0069><U0068><U006C><U0061><U006E><U0075>";/
|
||||
"<U004D><U0067><U0071><U0069><U0062><U0065><U006C><U006F>"
|
||||
|
||||
% abmon - The abbreviations for the months
|
||||
% - Jan, Feb, Mas, Apr, Mey, Jun, Jul, Aga, Sep, Okt, Nov, Dis
|
||||
abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
|
||||
"<U004D><U0061><U0073>";"<U0041><U0070><U0072>";/
|
||||
"<U004D><U0065><U0079>";"<U004A><U0075><U006E>";/
|
||||
"<U004A><U0075><U006C>";"<U0041><U0067><U0061>";/
|
||||
"<U0053><U0065><U0070>";"<U004F><U006B><U0074>";/
|
||||
"<U004E><U006F><U0076>";"<U0044><U0069><U0073>"
|
||||
|
||||
% mon - The full names of the months -
|
||||
% - Januwari, Februwari, Mashi, Apreli, Meyi, Juni, Julayi, Agasti, Septemba,
|
||||
% Okthoba, Novemba, Disemba
|
||||
mon "<U004A><U0061><U006E><U0075><U0077><U0061><U0072><U0069>";/
|
||||
"<U0046><U0065><U0062><U0072><U0075><U0077><U0061><U0072><U0069>";/
|
||||
"<U004D><U0061><U0073><U0068><U0069>";/
|
||||
"<U0041><U0070><U0072><U0065><U006C><U0069>";/
|
||||
"<U004D><U0065><U0079><U0069>";/
|
||||
"<U004A><U0075><U006E><U0069>";/
|
||||
"<U004A><U0075><U006C><U0061><U0079><U0069>";/
|
||||
"<U0041><U0067><U0061><U0073><U0074><U0069>";/
|
||||
"<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0061>";/
|
||||
"<U004F><U006B><U0074><U0068><U006F><U0062><U0061>";/
|
||||
"<U004E><U006F><U0076><U0065><U006D><U0062><U0061>";/
|
||||
"<U0044><U0069><U0073><U0065><U006D><U0062><U0061>"
|
||||
|
||||
% Abreviated date and time representation to be referenced by the "%c" field descriptor -
|
||||
d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
|
||||
%
|
||||
% "%a" (short weekday name),
|
||||
% "%d" (day of month as a decimal number),
|
||||
% "%b" (short month name),
|
||||
% "%Y" (year with century as a decimal number),
|
||||
% "%T" (24-hour clock time in format HH:MM:SS),
|
||||
% "%Z" (Time zone name)
|
||||
|
||||
% Date representation to be referenced by the "%x" field descriptor -
|
||||
% "%d/%m/%Y", day/month/year as decimal numbers (01/01/2000).
|
||||
d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
|
||||
|
||||
% Time representation to be referenced by the "%X" field descriptor -
|
||||
% "%T" (24-hour clock time in format HH:MM:SS)
|
||||
t_fmt "<U0025><U0054>"
|
||||
|
||||
% Define representation of ante meridiem and post meridiem strings -
|
||||
% The ""s mean default to "AM" and "PM".
|
||||
am_pm "";""
|
||||
|
||||
% Define time representation in 12-hour format with "am_pm", to be referenced by the "%r"
|
||||
% field descriptor -
|
||||
% The "" means that this format is not supported.
|
||||
t_fmt_ampm ""
|
||||
|
||||
% Date representation not described in ISO/IEC 14652. Comes out as -
|
||||
% "%a %b %e %H:%M:%S %Z %Y"
|
||||
date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
|
||||
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
|
||||
<U0025><U005A><U0020><U0025><U0059>"
|
||||
% which is
|
||||
% %a - abbreviated weekday name,
|
||||
% %b - abreviated month name,
|
||||
% %e - day of month as a decimal number with leading space (1 to 31),
|
||||
% %H - hour (24-hour clock) as a decimal number (00 to 23),
|
||||
% %M - minute as a decimal number (00 to 59),
|
||||
% %S - seconds as a decimal number (00 to 59),
|
||||
% %Z - time-zone name,
|
||||
% %Y - year with century as a decimal number,e.g. 2001.
|
||||
|
||||
END LC_TIME
|
||||
|
||||
LC_MESSAGES
|
||||
yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
|
||||
% The affirmative response -
|
||||
% "^[yY].*"
|
||||
%
|
||||
noexpr "<U005E><U005B><U006E><U004E><U0063><U0043><U005D><U002E><U002A>"
|
||||
% The negative response -
|
||||
% "^[nNcC].*"
|
||||
%
|
||||
END LC_MESSAGES
|
||||
|
||||
LC_PAPER
|
||||
copy "en_ZA"
|
||||
END LC_PAPER
|
||||
|
||||
LC_TELEPHONE
|
||||
copy "en_ZA"
|
||||
END LC_TELEPHONE
|
||||
|
||||
LC_MEASUREMENT
|
||||
copy "en_ZA"
|
||||
END LC_MEASUREMENT
|
||||
|
||||
LC_NAME
|
||||
name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
|
||||
<U0025><U006D><U0025><U0074><U0025><U0066>"
|
||||
% Format for addressing a person.
|
||||
% "%d%t%g%t%m%t%f"
|
||||
% "Salutation",
|
||||
% "Empty string, or <Space>",
|
||||
% "First given name",
|
||||
% "Empty string, or <Space>",
|
||||
% "Middle names",
|
||||
% "Empty string, or <Space>",
|
||||
% "Clan names"
|
||||
%
|
||||
name_miss "<U004E><U006B><U006F><U0073><U0061><U007A><U0061><U006E><U0065>"
|
||||
% Salutation for unmarried females - "Nkosazane"
|
||||
%
|
||||
name_mr "<U004D><U006E><U0075><U006D><U007A><U0061><U006E><U0065>"
|
||||
% Salutation for males - "Mnumzane"
|
||||
%
|
||||
name_mrs "<U004E><U006B><U006F><U0073><U0069><U006B><U0061><U007A><U0069>"
|
||||
% Salutation for married females - "Nkosikazi"
|
||||
%
|
||||
name_ms ""
|
||||
% Salutation valid for all females - "" (no term)
|
||||
END LC_NAME
|
||||
|
||||
LC_ADDRESS
|
||||
country_name "<U004D><U007A><U0061><U006E><U0073><U0069><U0020>/
|
||||
<U0041><U0066><U0072><U0069><U006B><U0061>"
|
||||
% Country name in Zulu - "Mzansi Afrika"
|
||||
%
|
||||
country_post "<U005A><U0041>"
|
||||
% Abbreviated country postal name - "ZA"
|
||||
%
|
||||
country_ab2 "<U005A><U0041>"
|
||||
% ISO 3166 two letter country abbreviation - "ZA"
|
||||
%
|
||||
lang_name "<U0049><U0073><U0069><U007A><U0075><U006C><U0075>"
|
||||
% Language name in Zulu - "Isizulu"
|
||||
%
|
||||
postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
|
||||
<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
|
||||
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
|
||||
<U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
|
||||
<U004E><U0025><U0063><U0025><U004E>"
|
||||
% Representation of postal addresses (minus the addressee's name) in South
|
||||
% Africa. (Ignored for now)
|
||||
% "%f%N%a%N%d%N%b%N%s %h %e %r%N%%z %T%N%c%N", which gives -
|
||||
% "firm name",
|
||||
% "end of line",
|
||||
% "C/O address",
|
||||
% "end of line",
|
||||
% "department name",
|
||||
% "Building name",
|
||||
% "end of line",
|
||||
% "street or block name",
|
||||
% "space",
|
||||
% "house number or designation",
|
||||
% "space",
|
||||
% "floor number",
|
||||
% "space",
|
||||
% "room number, door designation",
|
||||
% "end of line",
|
||||
% "postal code",
|
||||
% "space",
|
||||
% "town, city",
|
||||
% "end of line",
|
||||
% "country designation for the <country_post> keyword",
|
||||
% "end of line
|
||||
%
|
||||
END LC_ADDRESS
|
||||
|
@ -1542,19 +1542,28 @@ empty set.
|
||||
@comment BSD
|
||||
@deftypefn Macro void FD_SET (int @var{filedes}, fd_set *@var{set})
|
||||
This macro adds @var{filedes} to the file descriptor set @var{set}.
|
||||
|
||||
The @var{filedes} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
@end deftypefn
|
||||
|
||||
@comment sys/types.h
|
||||
@comment BSD
|
||||
@deftypefn Macro void FD_CLR (int @var{filedes}, fd_set *@var{set})
|
||||
This macro removes @var{filedes} from the file descriptor set @var{set}.
|
||||
|
||||
The @var{filedes} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
@end deftypefn
|
||||
|
||||
@comment sys/types.h
|
||||
@comment BSD
|
||||
@deftypefn Macro int FD_ISSET (int @var{filedes}, fd_set *@var{set})
|
||||
@deftypefn Macro int FD_ISSET (int @var{filedes}, const fd_set *@var{set})
|
||||
This macro returns a nonzero value (true) if @var{filedes} is a member
|
||||
of the file descriptor set @var{set}, and zero (false) otherwise.
|
||||
|
||||
The @var{filedes} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
@end deftypefn
|
||||
|
||||
Next, here is the description of the @code{select} function itself.
|
||||
|
@ -558,6 +558,7 @@ POSIX syntax had in mind.
|
||||
* Realtime Scheduling:: Scheduling among the process nobility
|
||||
* Basic Scheduling Functions:: Get/set scheduling policy, priority
|
||||
* Traditional Scheduling:: Scheduling among the vulgar masses
|
||||
* CPU Affinity:: Limiting execution to certain CPUs
|
||||
@end menu
|
||||
|
||||
|
||||
@ -1246,6 +1247,180 @@ nice (int increment)
|
||||
@end smallexample
|
||||
@end deftypefun
|
||||
|
||||
|
||||
@node CPU Affinity
|
||||
@subsection Limiting execution to certain CPUs
|
||||
|
||||
On a multi-processor system the operating system usually distributes
|
||||
the different processes which are runnable on all available CPUs in a
|
||||
way which allows the system to work most efficiently. Which processes
|
||||
and threads run can be to some extend be control with the scheduling
|
||||
functionality described in the last sections. But which CPU finally
|
||||
executes which process or thread is not covered.
|
||||
|
||||
There are a number of reasons why a program might want to have control
|
||||
over this aspect of the system as well:
|
||||
|
||||
@itemize @bullet
|
||||
@item
|
||||
One thread or process is responsible for absolutely critical work
|
||||
which under no circumstances must be interrupted or hindered from
|
||||
making process by other process or threads using CPU resources. In
|
||||
this case the special process would be confined to a CPU which no
|
||||
other process or thread is allowed to use.
|
||||
|
||||
@item
|
||||
The access to certain resources (RAM, I/O ports) has different costs
|
||||
from different CPUs. This is the case in NUMA (Non-Uniform Memory
|
||||
Architecture) machines. Preferrably memory should be accessed locally
|
||||
but this requirement is usually not visible to the scheduler.
|
||||
Therefore forcing a process or thread to the CPUs which have local
|
||||
access to the mostly used memory helps to significantly boost the
|
||||
performance.
|
||||
|
||||
@item
|
||||
In controlled runtimes resource allocation and book-keeping work (for
|
||||
instance garbage collection) is performance local to processors. This
|
||||
can help to reduce locking costs if the resources do not have to be
|
||||
protected from concurrent accesses from different processors.
|
||||
@end itemize
|
||||
|
||||
The POSIX standard up to this date is of not much help to solve this
|
||||
problem. The Linux kernel provides a set of interfaces to allow
|
||||
specifying @emph{affinity sets} for a process. The scheduler will
|
||||
schedule the thread or process on on CPUs specified by the affinity
|
||||
masks. The interfaces which the GNU C library define follow to some
|
||||
extend the Linux kernel interface.
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftp {Data Type} cpu_set_t
|
||||
This data set is a bitset where each bit represents a CPU. How the
|
||||
system's CPUs are mapped to bits in the bitset is system dependent.
|
||||
The data type has a fixed size; in the unlikely case that the number
|
||||
of bits are not sufficient to describe the CPUs of the system a
|
||||
different interface has to be used.
|
||||
|
||||
This type is a GNU extension and is defined in @file{sched.h}.
|
||||
@end deftp
|
||||
|
||||
To manipulate the bitset, to set and reset bits, a number of macros is
|
||||
defined. Some of the macros take a CPU number as a parameter. Here
|
||||
it is important to never exceed the size of the bitset. The following
|
||||
macro specifies the number of bits in the @code{cpu_set_t} bitset.
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypevr Macro int CPU_SETSIZE
|
||||
The value of this macro is the maximum number of CPUs which can be
|
||||
handled with a @code{cpu_set_t} object.
|
||||
@end deftypevr
|
||||
|
||||
The type @code{cpu_set_t} should be considered opaque; all
|
||||
manipulation should happen via the next four macros.
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefn Macro void CPU_ZERO (cpu_set_t *@var{set})
|
||||
This macro initializes the CPU set @var{set} to be the empty set.
|
||||
|
||||
This macro is a GNU extension and is defined in @file{sched.h}.
|
||||
@end deftypefn
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefn Macro void CPU_SET (int @var{cpu}, cpu_set_t *@var{set})
|
||||
This macro adds @var{cpu} to the CPU set @var{set}.
|
||||
|
||||
The @var{cpu} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
|
||||
This macro is a GNU extension and is defined in @file{sched.h}.
|
||||
@end deftypefn
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefn Macro void CPU_CLR (int @var{cpu}, cpu_set_t *@var{set})
|
||||
This macro removes @var{cpu} from the CPU set @var{set}.
|
||||
|
||||
The @var{cpu} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
|
||||
This macro is a GNU extension and is defined in @file{sched.h}.
|
||||
@end deftypefn
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefn Macro int CPU_ISSET (int @var{cpu}, const cpu_set_t *@var{set})
|
||||
This macro returns a nonzero value (true) if @var{cpu} is a member
|
||||
of the CPU set @var{set}, and zero (false) otherwise.
|
||||
|
||||
The @var{cpu} parameter must not have side effects since it is
|
||||
evaluated more than once.
|
||||
|
||||
This macro is a GNU extension and is defined in @file{sched.h}.
|
||||
@end deftypefn
|
||||
|
||||
|
||||
CPU bitsets can be constructed from scratch or the currently installed
|
||||
affinity mask can be retrieved from the system.
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefun int sched_getaffinity (pid_t @var{pid}, cpu_set_t *@var{cpuset})
|
||||
|
||||
This functions stores the CPU affinity mask for the process or thread
|
||||
with the ID @var{pid} in the memory pointed to by @var{cpuset}. If
|
||||
successful, the function always initializes all bits in the
|
||||
@code{cpu_set_t} object and returns zero.
|
||||
|
||||
If @var{pid} does not correspond to a process or thread on the system
|
||||
the or the function fails for some other reason, it returns @code{-1}
|
||||
and @code{errno} is set to represent the error condition.
|
||||
|
||||
@table @code
|
||||
@item ESRCH
|
||||
No process or thread with the given ID found.
|
||||
|
||||
@item EFAULT
|
||||
The pointer @var{cpuset} is does not point to a valid object.
|
||||
@end table
|
||||
|
||||
This function is a GNU extension and is declared in @file{sched.h}.
|
||||
@end deftypefun
|
||||
|
||||
Note that it is not portably possible to use this information to
|
||||
retrieve the information for different POSIX threads. A separate
|
||||
interface must be provided for that.
|
||||
|
||||
@comment sched.h
|
||||
@comment GNU
|
||||
@deftypefun int sched_setaffinity (pid_t @var{pid}, const cpu_set_t *@var{cpuset})
|
||||
|
||||
This function installs the affinity mask pointed to by @var{cpuset}
|
||||
for the process or thread with the ID @var{pid}. If successful the
|
||||
function returns zero and the scheduler will in future take the
|
||||
affinity information into account.
|
||||
|
||||
If the function fails it will return @code{-1} and @code{errno} is set
|
||||
to the error code:
|
||||
|
||||
@table @code
|
||||
@item ESRCH
|
||||
No process or thread with the given ID found.
|
||||
|
||||
@item EFAULT
|
||||
The pointer @var{cpuset} is does not point to a valid object.
|
||||
|
||||
@item EINVAL
|
||||
The bitset is not valid. This might mean that the affinity set might
|
||||
not leave a processor for the process or thread to run on.
|
||||
@end table
|
||||
|
||||
This function is a GNU extension and is declared in @file{sched.h}.
|
||||
@end deftypefun
|
||||
|
||||
|
||||
@node Memory Resources
|
||||
@section Querying memory available resources
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Enqueue and list of read or write requests, 64bit offset version.
|
||||
Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@ -42,6 +42,7 @@ lio_listio64 (mode, list, nent, sig)
|
||||
int nent;
|
||||
struct sigevent *sig;
|
||||
{
|
||||
struct sigevent defsigev;
|
||||
struct requestlist *requests[nent];
|
||||
int cnt;
|
||||
volatile int total = 0;
|
||||
@ -54,6 +55,12 @@ lio_listio64 (mode, list, nent, sig)
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (sig == NULL)
|
||||
{
|
||||
defsigev.sigev_notify = SIGEV_NONE;
|
||||
sig = &defsigev;
|
||||
}
|
||||
|
||||
/* Request the mutex. */
|
||||
pthread_mutex_lock (&__aio_requests_mutex);
|
||||
|
||||
|
@ -40,7 +40,6 @@ netax25/ax25.h
|
||||
neteconet/ec.h
|
||||
netinet/if_fddi.h
|
||||
netinet/if_tr.h
|
||||
netinet/igmp.h
|
||||
netpacket/packet.h
|
||||
netipx/ipx.h
|
||||
netrom/netrom.h
|
||||
|
@ -116,7 +116,7 @@ sysdep_routines += exit-thread
|
||||
endif
|
||||
|
||||
ifeq ($(subdir),inet)
|
||||
sysdep_headers += netinet/if_fddi.h netinet/if_tr.h netinet/igmp.h \
|
||||
sysdep_headers += netinet/if_fddi.h netinet/if_tr.h \
|
||||
netipx/ipx.h netash/ash.h netax25/ax25.h netatalk/at.h \
|
||||
netrom/netrom.h netpacket/packet.h netrose/rose.h \
|
||||
neteconet/ec.h
|
||||
|
Loading…
Reference in New Issue
Block a user