|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T b
Length: 7537 (0x1d71) Types: TextFile Names: »bsd4.2«
└─⟦9ae75bfbd⟧ Bits:30007242 EUUGD3: Starter Kit └─⟦2fafebccf⟧ »EurOpenD3/mail/smail3.1.19.tar.Z« └─⟦bcd2bc73f⟧ └─⟦this⟧ »conf/os/bsd4.2«
# @(#)bsd4.2 1.16 11/12/88 08:14:17 # # bsd4.2 - define the characteristics of Berkeley UNIX Release 4.2 # 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_BSD4_2:UNIX_BSD: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_fd(fd) (flock((fd), LOCK_EX|LOCK_NB) < 0? FAIL: SUCCEED) #define lock_fd_wait(fd) (flock((fd), LOCK_EX) < 0? FAIL: SUCCEED) #define unlock_fd(fd) ((void) flock((fd), LOCK_UN)) #define unlock_fd_wait(fd) ((void) flock((fd), LOCK_UN)) #define lock_fd_rd_wait(fd) (flock((fd), LOCK_SH) < 0? FAIL: SUCCEED) " # 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/spool/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 <strings.h> #define memcpy(s1,s2,n) (bcopy((s2),(s1),(n))) #define memcmp(s1,s2,n) (bcmp((s1),(s2),(n))) /* the following are defined in string.c */ extern char *strpbrk(); extern int strspn(); " # 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=-ldbm # 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=bsd-network # 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=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=/etc/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_RANLIB=yes # does this system use ranlib on object archives #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