From f304af81b635347b9b26f9bfdda70705f5a13313 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 29 Sep 1998 23:18:16 +0000 Subject: [PATCH] Update. 1998-09-27 Geoff Keating * sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: New file, use correct struct ipc_perm definition. --- ChangeLog | 5 ++ FAQ.in | 13 ++-- localedata/ChangeLog | 4 ++ sysdeps/unix/sysv/linux/powerpc/bits/ipc.h | 72 ++++++++++++++++++++++ 4 files changed, 87 insertions(+), 7 deletions(-) create mode 100644 sysdeps/unix/sysv/linux/powerpc/bits/ipc.h diff --git a/ChangeLog b/ChangeLog index ff0aed3741..902171656f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +1998-09-27 Geoff Keating + + * sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: New file, use + correct struct ipc_perm definition. + 1998-09-29 Thorsten Kukuk * nis/ypclnt.c (yp_all): Close UDP socket und give CLIENT handle free. diff --git a/FAQ.in b/FAQ.in index 36228ea765..197d5a6fba 100644 --- a/FAQ.in +++ b/FAQ.in @@ -96,17 +96,16 @@ to them. ??powerpc Which compiler should I use for powerpc? -{GK} You want to use egcs 1.0.1 or later (together with the right versions +{GK} You want to use egcs 1.1 or later (together with the right versions of all the other tools, of course). -In fact, egcs 1.0.1 has a serious bug that prevents a clean make, relating -to switch statement folding. It also causes the resulting shared libraries -to use more memory than they should. There is a patch at: +In fact, egcs 1.1 has a bug that causes linuxthreads to be +miscompiled, resulting in segmentation faults when using condition +variables. There is a temporary patch at: - - -Later versions of egcs may fix these problems. + +Later versions of egcs may fix this problem. ?? Do I need some more things to compile GNU C Library? diff --git a/localedata/ChangeLog b/localedata/ChangeLog index de28b04124..0ad3378a2f 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,7 @@ +1998-09-25 Andreas Schwab + + * locales/sr_YU: Add repertoiremap. + 1998-09-23 Cristian Gafton * locales/sr_YU: New file. diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h new file mode 100644 index 0000000000..1c1ae80273 --- /dev/null +++ b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h @@ -0,0 +1,72 @@ +/* Copyright (C) 1995, 1996, 1997, 1998 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 + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifndef _SYS_IPC_H +# error "Never use directly; include instead." +#endif + +#include + +/* Mode bits for `msgget', `semget', and `shmget'. */ +#define IPC_CREAT 01000 /* Create key if key does not exist. */ +#define IPC_EXCL 02000 /* Fail if key exists. */ +#define IPC_NOWAIT 04000 /* Return error on wait. */ + +/* Control commands for `msgctl', `semctl', and `shmctl'. */ +#define IPC_RMID 0 /* Remove identifier. */ +#define IPC_SET 1 /* Set `ipc_perm' options. */ +#define IPC_STAT 2 /* Get `ipc_perm' options. */ +#define IPC_INFO 3 /* See ipcs. */ + +/* Special key values. */ +#define IPC_PRIVATE ((__key_t) 0) /* Private key. */ + + +/* Data structure used to pass permission information to IPC operations. */ +struct ipc_perm + { + __key_t __key; /* Key. */ + __uid_t uid; /* Owner's user ID. */ + __gid_t gid; /* Owner's group ID. */ + __uid_t cuid; /* Creator's user ID. */ + __gid_t cgid; /* Creator's group ID. */ + __mode_t mode; /* Read/write permission. */ + unsigned short int __seq; /* Sequence number. */ + }; + + +__BEGIN_DECLS + +/* The actual system call: all functions are multiplexed by this. */ +extern int __ipc __P ((int __call, int __first, int __second, int __third, + void *__ptr)); + +__END_DECLS + +/* The codes for the functions to use the multiplexer `__ipc'. */ +#define IPCOP_semop 1 +#define IPCOP_semget 2 +#define IPCOP_semctl 3 +#define IPCOP_msgsnd 11 +#define IPCOP_msgrcv 12 +#define IPCOP_msgget 13 +#define IPCOP_msgctl 14 +#define IPCOP_shmat 21 +#define IPCOP_shmdt 22 +#define IPCOP_shmget 23 +#define IPCOP_shmctl 24