DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T u

⟦481a1829f⟧ TextFile

    Length: 7763 (0x1e53)
    Types: TextFile
    Names: »unixpc3.5«

Derivation

└─⟦9ae75bfbd⟧ Bits:30007242 EUUGD3: Starter Kit
    └─⟦2fafebccf⟧ »EurOpenD3/mail/smail3.1.19.tar.Z« 
        └─⟦bcd2bc73f⟧ 
            └─⟦this⟧ »conf/os/unixpc3.5« 

TextFile

# @(#)unixpc3.5	1.5 11/12/88 08:11:48
#
# unixpc3.5 - define the characteristics of AT&T Unix PC (3b1) release 3.5
#
# This file was written by Mark H. Colburn <mark@clout.chi.il.us>

# OS_DEFINES - Names defining this operating system
#
# This is a colon-separated list of names which generally, or specifically
# define the operating system that smail will be executed under.
#
# The following names should be used where applicable:
#
#	UNIX_BSD4_1	- the 4.1 release of Berkeley UNIX
#	UNIX_BSD4_2	- the 4.2 or 4.3 release of Berkeley UNIX
#	UNIX_BSD4_3	- the 4.3 release of Berkeley UNIX
#	UNIX_BSD	- any release of Berkeley UNIX after 4.1
#	UNIX_SYS5_2	- release two of AT&T System V
#	UNIX_SYS5_3	- release three of AT&T System V
#	UNIX_SYS5	- any release of AT&T System V
#	UNIX_SUN_OS_3	- SunOS 3.x, greater than 3.2 (also set 4.2BSD)
#	UNIX_SUN_OS_4	- SunOS 4.x (also set 4.2 and 4.3BSD)
#	UNIX_SUN_OS	- any release of SunOS
#	UNIX_UTS_1	- Amdahl UTS/580 1.x
#	UNIX_UTS_2	- Amdahl UTS/580 2.x
#	UNIX_UTS	- Any release of UTS/580
#	UNIX_V7		- Bell Labs UNIX Release 7
#	UNIX		- Any release of UNIX

OS_DEFINES="UNIX_SYS5_3:UNIX_SYS5:UNIX"


# LOCKING_PROTOCOL - macros for efficient file locking
#
# Define macros for performing high-performance locking on files
# These should include the following macros:
#
#	lock_fd		- given a file descriptor, either lock the
#			  file for exclusive access without blocking
#			  and return SUCCEED or fail to lock and
#			  return FAIL.  This is used for locking spool
#			  files.
#
#	lock_fd_wait	- given a file descriptor, lock it for
#			  exclusive access and return SUCCEED or
#			  return FAIL.  Blocking is permitted.  This
#			  may be used for locking mailbox files.
#
#	unlock_fd	- given the file descriptor of a file locked
#			  with the lock_fd macro, unlock that file.
#			  This can be an expression cast to void.
#
#	unlock_fd_wait	- given the file descriptor of a file locked
#			  with the lock_fd_wait macro, unlock that
#			  file.  This can be an expression cast to
#			  void.
#
#	lock_fd_rd_wait	- given a file descriptor, lock it for shared
#			  access.  Blocking is permitted.  This is
#			  used when reading forward files or mailing
#			  list files.  Closing the file shoud be
#			  sufficient for releasing the lock.  This
#			  should return SUCCEED or FAIL.
#
# If no reasonable high-efficiency locking method is available for
# your system, then do not define this macro, or set it to a null
# string.
#
# If the locking protocol requires that the file being locked be
# writable, define LOCK_REQUIRES_WRITE.
#
# To use the System V shared lock fcntl(), define USE_FCNTL_RD_LOCK,
# and define lock_fd_rd_wait() to be (fcntl_rd_lock(fd)), and declare
# fcntl_rd_lock() to be extern int.

LOCKING_PROTOCOL="\
#define LOCK_REQUIRES_WRITE
#define lock_fd(fd)		(locking((fd), 2, 0L) < 0? FAIL: SUCCEED)
#define lock_fd_wait(fd)	(locking((fd), 1, 0L) < 0? FAIL: SUCCEED)
#define unlock_fd(fd)		((void) locking((fd), 0, 0L))
#define unlock_fd_wait(fd)	((void) locking((fd), 0, 0L))
#define USE_FCNTL_RD_LOCK
#define lock_fd_rd_wait(fd)	(fcntl_rd_lock(fd))
extern int fcntl_rd_lock();
"


# LOCK_BY_NAME - should spool files use named lock-files for locking
#
# If no locking protocol is defined, or a site prefers to use named
# lock files for locking spool files, LOCK_BY_NAME should be defined
# to be "yes", otherwise it should not be defined.

#LOCK_BY_NAME=yes


# FLOCK_MAILBOX - should mailbox files be locked with lock_fd_wait
#
# Set this to "yes" if the lock_fd_wait macro should be used to lock
# mailbox files.  This should be used only with cooperation from all
# mail user agents.  Otherwise, do not set this.

#FLOCK_MAILBOX=yes


# MAILBOX_DIR - in which directory are user mailbox files
#
# Normally this is either /usr/spool/mail for a V7/BSD-derived system
# or /usr/mail for a System V derived system.

MAILBOX_DIR=/usr/mail


# CONSOLE - name of the console device file
#
# This pathname is used as a last resort in writing panic messages from
# smail.  Normally, it is /dev/console.

CONSOLE=/dev/console


# DECLARE_STRINGS - declare string routines, using macros as needed
#
# The following function names are used by smail and should be
# declared using the C code below:
#
#	strcat(s1,s2)	- concatenate string s2 onto the end of s1
#	strncat(s1,s2,n)- concatenate s2 onto s1 with length constraint n
#	strcmp(s1,s2)	- compare strings s1 and s2
#	strncmp(s1,s2,n)- compare s1 and s2 with length constraint n
#	strcpy(s1,s2)	- copy string s2 to s1
#	strncpy(s1,s2,n)- copy string s2 to s1 for at most n bytes
#	strlen(s1)	- return the length of string s1
#	index(s,c)	- point to first occurance of c in string s
#	rindex(s,c)	- point to last occurance of c in string s
#	bzero(b,n)	- zero n bytes starting at location b
#	bcopy(b1,b2,n)	- copy b1 to b2 for n bytes
#	bcmp(b1,b2,n)	- compree n bytes of b1 and b2, returning 0 if equal
#	memcpy(b1,b2,n)	- copy b2 to b1 for n bytes
#	memcmp(b1,b2,n)	- compare n bytes of b1 and b2, returning 0 if equal
#	strpbrk(s1,s2)	- point to first occurance in s1 of any char in s2
#	strspn(s1,s2)	- count of chars at beginning of s1 not in s2

DECLARE_STRINGS="\
#include <string.h>
#define bzero(b,n)	(memset((b),'\0',(n)))
#define bcopy(b1,b2,n)	(memcpy((b2),(b1),(n)))
#define bcmp(b1,b2,n)	(memcmp((b1),(b2),(n)))
#define index	strchr
#define rindex	strrchr
"


# LIBS - name any object libraries containing routines we will need
#
# In particular, if networking routines and dbm routines are in libraries
# other than libc, these libraries should be named here.

LIBS="-lPW"


# DRIVER_CONFIGURATION - configuration file describing smail drivers
#
# Name the configuration file in the conf/driver directory which defines
# a suitable set of smail director, router and transport drivers for
# this operating system.

DRIVER_CONFIGURATION=unix-generic


# RANLIB - how do we organize an existing object archive library
#
# RANLIB should define the base for a shell command which, given an
# object file archive, will organize that library for the loader.
# If no such command is appropriate, set RANLIB to ":", to prevent
# it from doing anything interesting.

RANLIB=:


# CHOWN - command to use for accessing the chown program
#
# Under Berkeley UNIX, chown is under /etc.  On most other computer systems
# chown is in a normal PATH.  The CHOWN variable should be set appropriately
# for this operating system.

CHOWN=chown


# HAVE_xxx - tell what is available under this operating system
#
# Set any of the following macros to "yes" if they apply to your
# operating system.  Otherwise do not define them.

#HAVE_RENAME=yes	# does the rename(2) system call exist
#HAVE_MKDIR=yes		# does mkdir exist in libc
#HAVE_BSD_NETWORKING=yes# does this system support BSD-style networking
#HAVE_SYSEXITS=yes	# does this system have /usr/include/sysexits.h
#HAVE_DBM=yes		# does this system have the dbm(3x) library
#HAVE_NDBM=yes		# does this system have the new ndbm(3) functions
#HAVE_YP=yes		# does this system use the SunOS YP service
#HAVE_BSTRING=yes	# does this system have bstring or similar routines
HAVE_SYS5_STRLIB=yes	# does this system have strspn and strpbrk
HAVE_GETOPT=yes		# does this system have getopt(3) in libc
#HAVE_GETHOSTNAME=yes	# does this system have gethostname(2), as in BSD
HAVE_UNAME=yes		# does this system have uname(2), as in System V
#HAVE_HASH_BANG=yes	# does this system use #!/bin/sh in shell scripts
#HAVE_DUP2=yes		# does this system have dup2(2)
#HAVE_READDIR=yes	# does this system have readdir(3) functions
#GETHOSTNAME_USE_PTR=yes# use this for Genix 4.1bsd
#INET_ADDR_USE_STRUCT=yes# use this if inet_addr() returns struct in_addr
HAVE_VFPRINTF=yes	# does this system have vfprintf(3)