aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog13
-rw-r--r--NAMESPACE2
-rwxr-xr-xconfigure2
-rw-r--r--conform/conformtest.pl3
-rw-r--r--conform/data/pthread.h-data134
-rw-r--r--conform/data/pwd.h-data23
-rw-r--r--conform/data/regex.h-data41
-rw-r--r--conform/data/sched.h-data22
-rw-r--r--conform/data/search.h-data28
-rw-r--r--locale/langinfo.h10
10 files changed, 271 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 54bcb59940..d775d23299 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,18 @@
1999-08-25 Ulrich Drepper <drepper@cygnus.com>
+ * conform/conformtest.pl (@headers): Add search.h, sched.h, regex.h,
+ pwd.h, and pthread.h.
+ * conform/data/pthread.h-data: New file.
+ * conform/data/pwd.h-data: New file.
+ * conform/data/regex.h-data: New file.
+ * conform/data/sched.h-data: New file.
+ * conform/data/search.h-data: New file.
+
+ * NAMESPACE: Add REG_ for regex.h.
+
+ * locale/langinfo.h: Don't define YESSTR and NOSTR for XPG6 since
+ they are removed.
+
* configure.in (libc_cv_asm_global_directive): Indent .text in
test code so that the lame HPUX compiler recognizes it.
* sysdeps/hppa/bits/endian.h: New file.
diff --git a/NAMESPACE b/NAMESPACE
index 4d43a5deba..326972d13c 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -18,7 +18,7 @@ ndbm.h dbm_
poll.h pd_, ph_, ps_
pthread.h pthread_, PTHREAD_
pwd.h pw_
-regex.h re_, rm_
+regex.h re_, rm_, REG_
sched.h sched_, SCHED_
semaphore.h sem_, SEM_
signal.h sa_, uc_, SIG[A-Z], SIG_[A-Z],
diff --git a/configure b/configure
index b31be2a978..30aa4d530f 100755
--- a/configure
+++ b/configure
@@ -2302,7 +2302,7 @@ else
libc_cv_asm_global_directive=UNKNOWN
for ac_globl in .globl .global .EXPORT; do
cat > conftest.s <<EOF
-.text
+ .text
${ac_globl} foo
foo:
EOF
diff --git a/conform/conformtest.pl b/conform/conformtest.pl
index 80114dd822..8a4947443a 100644
--- a/conform/conformtest.pl
+++ b/conform/conformtest.pl
@@ -4,7 +4,8 @@ $CC = "gcc";
$CFLAGS = "-I. '-D__attribute__(x)=' -D_XOPEN_SOURCE=500";
# List of the headers we are testing.
-@headers = ("poll.h", "nl_types.h", "ndbm.h", "mqueue.h", "monetary.h",
+@headers = ("search.h", "sched.h", "regex.h", "pwd.h", "pthread.h",
+ "poll.h", "nl_types.h", "ndbm.h", "mqueue.h", "monetary.h",
"math.h", "locale.h", "libgen.h", "langinfo.h", "iso646.h",
"inttypes.h", "iconv.h", "grp.h", "glob.h", "ftw.h", "fnmatch.h",
"fmtmsg.h", "float.h", "fcntl.h", "errno.h", "dlfcn.h", "dirent.h",
diff --git a/conform/data/pthread.h-data b/conform/data/pthread.h-data
new file mode 100644
index 0000000000..63091dbe65
--- /dev/null
+++ b/conform/data/pthread.h-data
@@ -0,0 +1,134 @@
+#ifdef ISO
+constant PTHREAD_CANCEL_ASYNCHRONOUS
+constant PTHREAD_CANCEL_ENABLE
+constant PTHREAD_CANCEL_DEFERRED
+constant PTHREAD_CANCEL_DISABLE
+constant PTHREAD_CANCELED
+constant PTHREAD_COND_INITIALIZER
+constant PTHREAD_CREATE_DETACHED
+constant PTHREAD_CREATE_JOINABLE
+constant PTHREAD_EXPLICIT_SCHED
+constant PTHREAD_INHERIT_SCHED
+constant PTHREAD_ONCE_INIT
+constant PTHREAD_PRIO_INHERIT
+constant PTHREAD_PRIO_NONE
+constant PTHREAD_PRIO_PROTECT
+constant PTHREAD_PROCESS_SHARED
+constant PTHREAD_PROCESS_PRIVATE
+constant PTHREAD_SCOPE_PROCESS
+constant PTHREAD_SCOPE_SYSTEM
+# ifndef POSIX
+constant PTHREAD_MUTEX_DEFAULT
+constant PTHREAD_MUTEX_ERRORCHECK
+constant PTHREAD_MUTEX_NORMAL
+constant PTHREAD_MUTEX_INITIALIZER
+constant PTHREAD_MUTEX_RECURSIVE
+constant PTHREAD_RWLOCK_INITILIZER
+# endif
+
+type pthread_attr_t
+type pthread_cond_t
+type pthread_condattr_t
+type pthread_key_t
+type pthread_mutex_t
+type pthread_mutexattr_t
+type pthread_once_t
+type pthread_rwlock_t
+type pthread_rwlockattr_t
+type pthread_t
+
+function int pthread_attr_destroy (pthread_attr_t*)
+function int pthread_attr_getdetachstate (const pthread_attr_t*, int*)
+# ifndef POSIX
+function int pthread_attr_getguardsize (const pthread_attr_t*, size_t*)
+# endif
+function int pthread_attr_getinheritsched (const pthread_attr_t*, int*)
+function int pthread_attr_getschedparam (const pthread_attr_t*, struct sched_param*)
+function int pthread_attr_getschedpolicy (const pthread_attr_t*, int*)
+function int pthread_attr_getscope (const pthread_attr_t*, int*)
+function int pthread_attr_getstackaddr (const pthread_attr_t*, void**)
+function int pthread_attr_getstacksize (const pthread_attr_t*, size_t*)
+function int pthread_attr_init (pthread_attr_t*)
+function int pthread_attr_setdetachstate (pthread_attr_t*, int)
+# ifndef POSIX
+function int pthread_attr_setguardsize (pthread_attr_t*, size_t)
+# endif
+function int pthread_attr_setinheritsched (pthread_attr_t*, int)
+function int pthread_attr_setschedparam (pthread_attr_t*, const struct sched_param*)
+function int pthread_attr_setschedpolicy (pthread_attr_t*, int)
+function int pthread_attr_setscope (pthread_attr_t*, int)
+function int pthread_attr_setstackaddr (pthread_attr_t*, void*)
+function int pthread_attr_setstacksize (pthread_attr_t*, size_t)
+function int pthread_cancel (pthread_t)
+# function int pthread_cleanup_push (void (*) (void*), void*)
+macro pthread_cleanup_push
+# function int pthread_cleanup_pop (int)
+macro pthread_cleanup_pop
+function int pthread_cond_broadcast (pthread_cond_t*)
+function int pthread_cond_destroy (pthread_cond_t*)
+function int pthread_cond_init (pthread_cond_t, const pthread_condattr_t*)
+function int pthread_cond_signal (pthread_cond_t*)
+function int pthread_cond_timedwait (pthread_cond_t*, pthread_mutex_t*, const struct timespec*)
+function int pthread_cond_wait (pthread_cond_t*, pthread_mutex_t*)
+function int pthread_condattr_destroy (pthread_condattr_t*)
+function int pthread_condattr_getpshared (const pthread_condattr_t*, int*)
+function int pthread_condattr_init (pthread_condattr_t*)
+function int pthread_condattr_setpshared (pthread_condattr_t*, int)
+function int pthread_create (pthread_t*, const pthread_attr_t*, void *(*) (void*), void*)
+function int pthread_deteach (pthread_t)
+function int pthread_equal (pthread_t, pthread_t)
+function int pthread_exit (void*)
+# ifndef POSIX
+function int pthread_getconcurrency (void)
+# endif
+function int pthread_getschedparam (pthread_t, int*, struct sched_param*)
+function {void*} pthread_getspecific (pthread_key_t)
+function int pthread_join (pthread_t, void**)
+function int pthread_key_create (pthread_key_t*, void (*)(void*))
+function int pthread_key_delete (pthread_key_t)
+function int pthread_mutex_destroy (pthread_mutex_t*)
+function int pthread_mutex_getprioceiling (const pthread_mutex_t*, int*)
+function int pthread_mutex_init (pthread_mutex_t*, const pthread_mutexattr_t*)
+function int pthread_mutex_lock (pthread_mutex_t*)
+function int pthread_mutex_setprioceiling (pthread_mutex_t*, int, int*)
+function int pthread_mutex_trylock (pthread_mutex_t*)
+function int pthread_mutex_unlock (pthread_mutex_t*)
+function int pthread_mutexattr_destroy (pthread_mutexattr_t*)
+function int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t*, int*)
+function int pthread_mutexattr_getprotocol (const pthread_mutexattr_t*, int*)
+function int pthread_mutexattr_getpshared (const pthread_mutexattr_t*, int*)
+function int pthread_mutexattr_gettype (const pthread_mutexattr_t*, int*)
+function int pthread_mutexattr_init (pthread_mutexattr_t*)
+function int pthread_mutexattr_setprioceiling (pthread_mutexattr_t*, int)
+function int pthread_mutexattr_setprotocol (pthread_mutexattr_t*, int)
+function int pthread_mutexattr_setpshared (pthread_mutexattr_t*, int)
+function int pthread_mutexattr_settype (pthread_mutexattr_t*, int)
+function int pthread_once (pthread_once_t*, void (*) (void))
+# ifndef POSIX
+function int pthread_rwlock_init (pthread_rwlock_t*, const pthread_rwlockattr_t*)
+function int pthread_rwlock_rdlock (pthread_rwlock_t*)
+function int pthread_rwlock_tryrdlock (pthread_rwlock_t*)
+function int pthread_rwlock_trywrlock (pthread_rwlock_t*)
+function int pthread_rwlock_unlock (pthread_rwlock_t*)
+function int pthread_rwlock_wrlock (pthread_rwlock_t*)
+function int pthread_rwlockattr_destroy (pthread_rwlockattr_t*)
+function int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t*, int*)
+function int pthread_rwlockattr_init (pthread_rwlockatttr*)
+function int pthread_rwlockattr_setpsahred (pthread_rwlockattr_t*, int)
+#endif
+function pthread_t pthread_self (void)
+function int pthread_setcancelstate (int, int*)
+function int pthread_setcanceltype (int, int*)
+#ifndef POSIX
+function int pthread_setconcurrency (int)
+# endif
+function int pthread_setschedparam (pthread_t, int, const struct sched_param*)
+function int pthread_setspecific (pthread_key_t, const void*)
+function void pthread_testcancel (void)
+
+allow-header sched.h
+allow-header time.h
+
+allow PTHREAD_*
+allow pthread_*
+#endif
diff --git a/conform/data/pwd.h-data b/conform/data/pwd.h-data
new file mode 100644
index 0000000000..1c8c7bea75
--- /dev/null
+++ b/conform/data/pwd.h-data
@@ -0,0 +1,23 @@
+#ifndef ISO
+type {struct passwd}
+element {struct passwd} {char*} pw_name
+element {struct passwd} uid_t pw_uid
+element {struct passwd} gid_t pw_gid
+element {struct passwd} {char*} pw_dir
+element {struct passwd} {char*} pw_shell
+
+# ifndef POSIX
+type uid_t
+type gid_t
+# endif
+
+function {struct passwd*} getpwnam (const char*)
+function {struct passwd*} getpwuid (uid_t)
+function int getpwnam_r (const char*, struct passwd*, char*, size_t, struct passwd**)
+function int getpwuid_r (uid_t, struct passwd*, char*, size_t, struct passwd**)
+function void endpwent (void)
+function {struct passwd*} getpwent (void)
+funciton void setpwent (void)
+
+allow pw_*
+#endif
diff --git a/conform/data/regex.h-data b/conform/data/regex.h-data
new file mode 100644
index 0000000000..b6e7f45032
--- /dev/null
+++ b/conform/data/regex.h-data
@@ -0,0 +1,41 @@
+#ifndef ISO
+type regex_t
+element regex_t re_nsub
+
+type regoff_t
+
+type regmatch_t
+element regmatch_t regoff_t rm_so
+element regmatch_t regoff_t rm_eo
+
+constant REG_EXTENDED
+constant REG_ICASE
+constant REG_NOSUB
+constant REG_NEWLINE
+
+constant REG_NOTBOL
+constant REG_NOTEOL
+
+constant REG_NOMATCH
+constant REG_BADPAT
+constant REG_ECOLLATE
+constant REG_ECTYPE
+constant REG_EESCAPE
+constant REG_ESUBREG
+constant REG_EBRACK
+constant REG_EPAREN
+constant REG_EBRACE
+constant REG_BADBR
+constant REG_ESPACE
+constant REG_BADRPT
+constant REG_ENOSYS
+
+function int regcomp (regex_t*, const char*, int)
+function int regexec (const regex_t*, const char*, size_t, regmatch_t[], int)
+function size_t regerror (int, const regex_t*, char*, size_t)
+function void regfree (regex_t*)
+
+allow REG_*
+allow re_*
+allow rm_*
+#endif
diff --git a/conform/data/sched.h-data b/conform/data/sched.h-data
new file mode 100644
index 0000000000..8194bcb2c2
--- /dev/null
+++ b/conform/data/sched.h-data
@@ -0,0 +1,22 @@
+#ifndef ISO
+type {struct sched_param}
+element {struct sched_param} int sched_priority
+
+constant SCHED_FIFO
+constant SCHED_RR
+constant SCHED_OTHER
+
+function int sched_get_priority_max (int)
+function int sched_get_priority_min (int)
+function int sched_getparam (pid_t, struct sched_param*)
+function int sched_getscheduler (pid_t)
+function int sched_rr_get_interval (pid_t, struct timespec*)
+function int sched_setparam (pid_t, const struct sched_param*)
+function int sched_setscheduler (pid_t, int, const struct sched_param*)
+function int sched_yield (void)
+
+allow-header time.h
+
+allow sched_*
+allow SCHED_*
+#endif
diff --git a/conform/data/search.h-data b/conform/data/search.h-data
new file mode 100644
index 0000000000..e7c81d31a7
--- /dev/null
+++ b/conform/data/search.h-data
@@ -0,0 +1,28 @@
+#if !defined ISO && !defined POSIX
+type ENTRY
+type {struct entry}
+element {struct entry} {char*} key
+element {struct entry} {void*} data
+
+type ACTION
+constant FIND
+constant ENTER
+
+type VISIT
+constant preorder
+constant postorder
+constant endorder
+constant leaf
+
+function int hcreate (size_t)
+function void hdestroy (void)
+function {ENTRY*} hsearch (ENTRY, ACTION)
+function void insque (void*, void*)
+function {void*} lfind (const void*, const void*, size_t*, size_t, int (*)(const void*, const void*))
+function {void*} lsearch (const void*, void*, size_t*, size_t, int (*)(const void*, const void*))
+function void remque (void*)
+function {void*} tdelete (const void*, void**, int(*)(const void*, const void*))
+function {void*} tfind (const void*, void*const*, int(*)(const void*, const void*)) tfind (const void*, void*const*, int(*)(const void*, const void*))
+function {void*} tsearch (const void*, void**, int(*)(const void*, const void*))
+function void twalk (const void*, void (*) (const void*, VISIT, int))
+#endif
diff --git a/locale/langinfo.h b/locale/langinfo.h
index 935a3818bf..cfcf7c75fa 100644
--- a/locale/langinfo.h
+++ b/locale/langinfo.h
@@ -333,10 +333,12 @@ enum
#define YESEXPR YESEXPR
NOEXPR, /* Regex matching ``no'' input. */
#define NOEXPR NOEXPR
- YESSTR, /* Output string for ``yes''. */
-#define YESSTR YESSTR
- NOSTR, /* Output string for ``no''. */
-#define NOSTR NOSTR
+ __YESSTR, /* Output string for ``yes''. */
+ __NOSTR, /* Output string for ``no''. */
+#ifndef __USE_XOPEN2K
+# define YESSTR __YESSTR
+# define NOSTR __NOSTR
+#endif
_NL_NUM_LC_MESSAGES,
/* This marks the highest value used. */