From 371472d9fb6a936149b105a6563a0550d35bdf1a Mon Sep 17 00:00:00 2001 From: Manoj Srivastava Date: Mon, 1 Dec 2003 17:11:15 +0000 Subject: Initial import of upstream branch Initial import of upstream branch git-archimport-id: srivasta@debian.org--2003-primary/dist--upstream--3.70--base-0 --- mcon/U/d_shmat.U | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 mcon/U/d_shmat.U (limited to 'mcon/U/d_shmat.U') diff --git a/mcon/U/d_shmat.U b/mcon/U/d_shmat.U new file mode 100644 index 0000000..8ae2729 --- /dev/null +++ b/mcon/U/d_shmat.U @@ -0,0 +1,93 @@ +?RCS: $Id: d_shmat.U,v 3.0.1.3 1995/07/25 14:04:23 ram Exp $ +?RCS: +?RCS: Copyright (c) 1991-1993, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 3.0. +?RCS: +?RCS: $Log: d_shmat.U,v $ +?RCS: Revision 3.0.1.3 1995/07/25 14:04:23 ram +?RCS: patch56: use findhdr to find , to get the right one (ADO) +?RCS: +?RCS: Revision 3.0.1.2 1994/05/13 15:18:56 ram +?RCS: patch27: added new symbol HAS_SHMAT_PROTOTYPE (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:54:18 ram +?RCS: patch23: new Shmat_t symbol to declare return type of shmat() +?RCS: +?RCS: Revision 3.0 1993/08/18 12:07:18 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_shmat shmattype d_shmatprototype: Inlibc cat +cc +ccflags \ + rm cppstdin cppflags cppminus Findhdr Setvar contains +?MAKE: -pick add $@ %< +?S:d_shmat: +?S: This variable conditionally defines the HAS_SHMAT symbol, which +?S: indicates to the C program that the shmat() routine is available. +?S:. +?S:shmattype: +?S: This symbol contains the type of pointer returned by shmat(). +?S: It can be 'void *' or 'char *'. +?S:. +?S:d_shmatprototype: +?S: This variable conditionally defines the HAS_SHMAT_PROTOTYPE +?S: symbol, which indicates that sys/shm.h has a prototype for +?S: shmat. +?S:. +?C:HAS_SHMAT: +?C: This symbol, if defined, indicates that the shmat() routine is +?C: available to attach a shared memory segment to the process space. +?C:. +?C:Shmat_t: +?C: This symbol holds the return type of the shmat() system call. +?C: Usually set to 'void *' or 'char *'. +?C:. +?C:HAS_SHMAT_PROTOTYPE: +?C: This symbol, if defined, indicates that the sys/shm.h includes +?C: a prototype for shmat(). Otherwise, it is up to the program to +?C: guess one. Shmat_t shmat _((int, Shmat_t, int)) is a good guess, +?C: but not always right so it should be emitted by the program only +?C: when HAS_SHMAT_PROTOTYPE is not defined to avoid conflicting defs. +?C:. +?H:#$d_shmat HAS_SHMAT /**/ +?H:#define Shmat_t $shmattype /**/ +?H:#$d_shmatprototype HAS_SHMAT_PROTOTYPE /**/ +?H:. +?LINT:set d_shmat d_shmatprototype +?T:xxx +: see if shmat exists +set shmat d_shmat +eval $inlibc +: see what shmat returns +case "$d_shmat" in +"$define") + $cat >shmat.c <<'END' +#include +void *shmat(); +END + if $cc $ccflags -c shmat.c >/dev/null 2>&1; then + shmattype='void *' + else + shmattype='char *' + fi + echo "and it returns ($shmattype)." >&4 + : see if a prototype for shmat is available + xxx=`./findhdr sys/shm.h` + $cppstdin $cppflags $cppminus < $xxx > shmat.c 2>/dev/null + if $contains 'shmat.*(' shmat.c >/dev/null 2>&1; then + val="$define" + else + val="$undef" + fi + $rm -f shmat.[co] + ;; +*) + val="$undef" + ;; +esac +set d_shmatprototype +eval $setvar + -- cgit v1.2.3