summaryrefslogtreecommitdiff
path: root/dmake/unix/sysvr3
diff options
context:
space:
mode:
Diffstat (limited to 'dmake/unix/sysvr3')
-rw-r--r--dmake/unix/sysvr3/config.mk27
-rw-r--r--dmake/unix/sysvr3/gnu/public.h165
-rw-r--r--dmake/unix/sysvr3/make.sh60
-rw-r--r--dmake/unix/sysvr3/public.h167
-rw-r--r--dmake/unix/sysvr3/pwd/config.mk20
-rw-r--r--dmake/unix/sysvr3/pwd/getcwd.c231
-rw-r--r--dmake/unix/sysvr3/pwd/make.sh62
-rw-r--r--dmake/unix/sysvr3/pwd/public.h167
-rw-r--r--dmake/unix/sysvr3/pwd/template.mk7
-rw-r--r--dmake/unix/sysvr3/stdlib.h55
-rw-r--r--dmake/unix/sysvr3/template.mk7
-rw-r--r--dmake/unix/sysvr3/time.h32
12 files changed, 0 insertions, 1000 deletions
diff --git a/dmake/unix/sysvr3/config.mk b/dmake/unix/sysvr3/config.mk
deleted file mode 100644
index 75bcf3c2a..000000000
--- a/dmake/unix/sysvr3/config.mk
+++ /dev/null
@@ -1,27 +0,0 @@
-# This is the SysV R3 UNIX configuration file for DMAKE
-# It simply modifies the values of SRC, and checks to see if
-# OSENVIRONMENT is defined. If so it includes the appropriate
-# config.mk file.
-#
-# It also sets the values of .SOURCE.c and .SOURCE.h to include the local
-# directory.
-#
-osrdir := $(OS)$(DIRSEPSTR)$(OSRELEASE)
-
-# The following are required sources
-OSDSRC :=
-.IF $(OSDSRC)
- SRC += $(OSDSRC)
- .SETDIR=$(osrdir) : $(OSDSRC)
-.END
-
-.SOURCE.h : $(osrdir)
-
-# Local configuration modifications for CFLAGS, there's local SysV includes
-# too.
-CFLAGS += -I$(osrdir)
-
-# See if we modify anything in the lower levels.
-.IF $(OSENVIRONMENT) != $(NULL)
- .INCLUDE .IGNORE : $(osrdir)$(DIRSEPSTR)$(OSENVIRONMENT)$(DIRSEPSTR)config.mk
-.END
diff --git a/dmake/unix/sysvr3/gnu/public.h b/dmake/unix/sysvr3/gnu/public.h
deleted file mode 100644
index d0e98913f..000000000
--- a/dmake/unix/sysvr3/gnu/public.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/* RCS $Id: public.h,v 1.9 2007-10-15 15:56:54 ihi Exp $
--- WARNING -- This file is AUTOMATICALLY GENERATED DO NOT EDIT IT
---
---
--- SYNOPSIS
--- Local functions exported to be visible by others.
---
--- DESCRIPTION
--- This file is generated by 'genpub'. Function declarations
--- that appear in this file are extracted by 'genpub' from
--- source files. Any function in the source file whose definition
--- appears like:
---
--- PUBLIC return_type
--- function( arg_list );
--- type_expr1 arg1;
--- ...
---
--- has its definition extracted and a line of the form:
---
--- return_type function ANSI((type_expr1,type_expr2,...));
---
--- entered into the output file.
---
--- AUTHOR
--- Dennis Vadura, dvadura@dmake.wticorp.com
---
--- WWW
--- http://dmake.wticorp.com/
---
--- COPYRIGHT
--- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
---
--- This program is NOT free software; you can redistribute it and/or
--- modify it under the terms of the Software License Agreement Provided
--- in the file <distribution-root>/readme/license.txt.
---
--- LOG
--- Use cvs log to obtain detailed change logs.
-*/
-
-#ifndef _DMAKE_PUBLIC_h
-#define _DMAKE_PUBLIC_h
-
-#ifdef EXTERN
-#undef EXTERN
-#endif
-#if defined(DEFINE_DMAKE_VARIABLES)
-#define EXTERN
-#else
-#define EXTERN extern
-#endif
-
-/***** genpub: Begin list of generated function headers */
-void Infer_recipe ANSI((CELLPTR, CELLPTR));
-int Make_targets ANSI(());
-int Exec_commands ANSI((CELLPTR));
-void Print_cmnd ANSI((char *, int, int));
-void Pop_dir ANSI((int));
-void Append_line ANSI((char *, int, FILE *, char *, int, int));
-void Stat_target ANSI((CELLPTR, int, int));
-char *Expand ANSI((char *));
-char *Apply_edit ANSI((char *, char *, char *, int, int));
-void Map_esc ANSI((char *));
-char* Apply_modifiers ANSI((int, char *));
-char* Tokenize ANSI((char *, char *, char, int));
-char* ScanToken ANSI((char *, char **, int));
-char *DmStrJoin ANSI((char *, char *, int, int));
-char *DmStrAdd ANSI((char *, char *, int));
-char *DmStrApp ANSI((char *, char *));
-char *DmStrDup ANSI((char *));
-char *DmStrDup2 ANSI((char *));
-char *DmStrPbrk ANSI((char *, char *));
-char *DmStrSpn ANSI((char *, char *));
-char *DmStrStr ANSI((char *, char *));
-char *DmSubStr ANSI((char *, char *));
-uint16 Hash ANSI((char *, uint32 *));
-HASHPTR Get_name ANSI((char *, HASHPTR *, int));
-HASHPTR Search_table ANSI((HASHPTR *, char *, uint16 *, uint32 *));
-HASHPTR Push_macro ANSI((HASHPTR));
-HASHPTR Pop_macro ANSI((HASHPTR));
-HASHPTR Def_macro ANSI((char *, char *, int));
-CELLPTR Def_cell ANSI((char *));
-LINKPTR Add_prerequisite ANSI((CELLPTR, CELLPTR, int, int));
-void Clear_prerequisites ANSI((CELLPTR));
-int Test_circle ANSI((CELLPTR, int));
-STRINGPTR Def_recipe ANSI((char *, STRINGPTR, int, int));
-t_attr Rcp_attribute ANSI((char *));
-int main ANSI((int, char **));
-FILE *Openfile ANSI((char *, int, int));
-FILE *Closefile ANSI(());
-FILE *Search_file ANSI((char *, char **));
-char *Filename ANSI(());
-int Nestlevel ANSI(());
-FILE *TryFiles ANSI((LINKPTR));
-void Fatal ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-int Error ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-int Warning ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void No_ram ANSI(());
-void Usage ANSI((int));
-void Version ANSI(());
-char *Get_suffix ANSI((char *));
-char *Basename ANSI((char *));
-char *Filedir ANSI((char *));
-char *Build_path ANSI((char *, char *));
-void Make_rules ANSI(());
-void Create_macro_vars ANSI(());
-time_t Do_stat ANSI((char *, char *, char **, int));
-int Do_touch ANSI((char *, char *, char **));
-void Void_lib_cache ANSI((char *, char *));
-time_t Do_time ANSI(());
-void Do_profile_output ANSI((char *, uint16, CELLPTR));
-int Do_cmnd ANSI((char **, int, int, CELLPTR, t_attr, int));
-char ** Pack_argv ANSI((int, int, char **));
-char *Read_env_string ANSI((char *));
-int Write_env_string ANSI((char *, char *));
-void ReadEnvironment ANSI(());
-void Catch_signals ANSI((void (*)(int)));
-void Clear_signals ANSI(());
-void Prolog ANSI((int, char* []));
-void Epilog ANSI((int));
-char *Get_current_dir ANSI(());
-int Set_dir ANSI((char*));
-char Get_switch_char ANSI(());
-FILE* Get_temp ANSI((char **, char *));
-FILE *Start_temp ANSI((char *, CELLPTR, char **));
-void Open_temp_error ANSI((char *, char *));
-void Link_temp ANSI((CELLPTR, FILE *, char *));
-void Close_temp ANSI((CELLPTR, FILE *));
-void Unlink_temp_files ANSI((CELLPTR));
-void Handle_result ANSI((int, int, int, CELLPTR));
-void Update_time_stamp ANSI((CELLPTR));
-int Remove_file ANSI((char *));
-void Parse ANSI((FILE *));
-int Get_line ANSI((char *, FILE *));
-char *Do_comment ANSI((char *, char **, int));
-char *Get_token ANSI((TKSTRPTR, char *, int));
-void Quit ANSI((int));
-void Read_state ANSI(());
-void Write_state ANSI(());
-int Check_state ANSI((CELLPTR, STRINGPTR *, int));
-void Dump ANSI(());
-void Dump_recipe ANSI((STRINGPTR));
-int Parse_macro ANSI((char *, int));
-int Macro_op ANSI((char *));
-int Parse_rule_def ANSI((int *));
-int Rule_op ANSI((char *));
-void Add_recipe_to_list ANSI((char *, int, int));
-void Bind_rules_to_targets ANSI((int));
-int Set_group_attributes ANSI((char *));
-DFALINKPTR Match_dfa ANSI((char *));
-void Check_circle_dfa ANSI(());
-void Add_nfa ANSI((char *));
-char *Exec_function ANSI((char *));
-time_t seek_arch ANSI((char *, char *));
-int touch_arch ANSI(( char *, char *));
-void void_lcache ANSI(( char *, char *));
-int If_root_path ANSI((char *));
-void Remove_prq ANSI((CELLPTR));
-int runargv ANSI((CELLPTR, int, int, t_attr, char **));
-int Wait_for_child ANSI((int, int));
-void Clean_up_processes ANSI(());
-time_t CacheStat ANSI((char *, int));
-
-#endif
diff --git a/dmake/unix/sysvr3/make.sh b/dmake/unix/sysvr3/make.sh
deleted file mode 100644
index adbf1672b..000000000
--- a/dmake/unix/sysvr3/make.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-mkdir objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O infer.c
-mv infer.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O make.c
-mv make.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O stat.c
-mv stat.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O expand.c
-mv expand.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O dmstring.c
-mv dmstring.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O hash.c
-mv hash.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O dag.c
-mv dag.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O dmake.c
-mv dmake.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O path.c
-mv path.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O imacs.c
-mv imacs.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O sysintf.c
-mv sysintf.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O parse.c
-mv parse.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O getinp.c
-mv getinp.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O quit.c
-mv quit.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O state.c
-mv state.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O dmdump.c
-mv dmdump.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O macparse.c
-mv macparse.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O rulparse.c
-mv rulparse.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O percent.c
-mv percent.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O function.c
-mv function.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/arlib.c
-mv arlib.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/dirbrk.c
-mv dirbrk.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/rmprq.c
-mv rmprq.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/ruletab.c
-mv ruletab.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/runargv.c
-mv runargv.o objects
-gcc -c -I. -Iunix -Iunix/sysvr3 -O unix/dcache.c
-mv dcache.o objects
-gcc -O -o dmake objects/infer.o objects/make.o objects/stat.o objects/expand.o \
-objects/dmstring.o objects/hash.o objects/dag.o objects/dmake.o objects/path.o \
-objects/imacs.o objects/sysintf.o objects/parse.o objects/getinp.o \
-objects/quit.o objects/state.o objects/dmdump.o objects/macparse.o \
-objects/rulparse.o objects/percent.o objects/function.o objects/arlib.o \
-objects/dirbrk.o objects/rmprq.o objects/ruletab.o objects/runargv.o objects/dcache.o
-cp unix/sysvr3/template.mk startup/config.mk
diff --git a/dmake/unix/sysvr3/public.h b/dmake/unix/sysvr3/public.h
deleted file mode 100644
index 7d4a4b145..000000000
--- a/dmake/unix/sysvr3/public.h
+++ /dev/null
@@ -1,167 +0,0 @@
-/* RCS $Id: public.h,v 1.9 2007-10-15 15:56:41 ihi Exp $
--- WARNING -- This file is AUTOMATICALLY GENERATED DO NOT EDIT IT
---
---
--- SYNOPSIS
--- Local functions exported to be visible by others.
---
--- DESCRIPTION
--- This file is generated by 'genpub'. Function declarations
--- that appear in this file are extracted by 'genpub' from
--- source files. Any function in the source file whose definition
--- appears like:
---
--- PUBLIC return_type
--- function( arg_list );
--- type_expr1 arg1;
--- ...
---
--- has its definition extracted and a line of the form:
---
--- return_type function ANSI((type_expr1,type_expr2,...));
---
--- entered into the output file.
---
--- AUTHOR
--- Dennis Vadura, dvadura@dmake.wticorp.com
---
--- WWW
--- http://dmake.wticorp.com/
---
--- COPYRIGHT
--- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
---
--- This program is NOT free software; you can redistribute it and/or
--- modify it under the terms of the Software License Agreement Provided
--- in the file <distribution-root>/readme/license.txt.
---
--- LOG
--- Use cvs log to obtain detailed change logs.
-*/
-
-#ifndef _DMAKE_PUBLIC_h
-#define _DMAKE_PUBLIC_h
-
-#ifdef EXTERN
-#undef EXTERN
-#endif
-#if defined(DEFINE_DMAKE_VARIABLES)
-#define EXTERN
-#else
-#define EXTERN extern
-#endif
-
-/***** genpub: Begin list of generated function headers */
-void Infer_recipe ANSI((CELLPTR, CELLPTR));
-int Make_targets ANSI(());
-int Make ANSI((CELLPTR, CELLPTR));
-int Exec_commands ANSI((CELLPTR));
-void Print_cmnd ANSI((char *, int, int));
-int Push_dir ANSI((char *, char *, int));
-void Pop_dir ANSI((int));
-void Append_line ANSI((char *, int, FILE *, char *, int, int));
-void Stat_target ANSI((CELLPTR, int, int));
-char *Expand ANSI((char *));
-char *Apply_edit ANSI((char *, char *, char *, int, int));
-void Map_esc ANSI((char *));
-char* Apply_modifiers ANSI((int, char *));
-char* Tokenize ANSI((char *, char *, char, int));
-char* ScanToken ANSI((char *, char **, int));
-char *DmStrJoin ANSI((char *, char *, int, int));
-char *DmStrAdd ANSI((char *, char *, int));
-char *DmStrApp ANSI((char *, char *));
-char *DmStrDup ANSI((char *));
-char *DmStrDup2 ANSI((char *));
-char *DmStrPbrk ANSI((char *, char *));
-char *DmStrSpn ANSI((char *, char *));
-char *DmStrStr ANSI((char *, char *));
-char *DmSubStr ANSI((char *, char *));
-uint16 Hash ANSI((char *, uint32 *));
-HASHPTR Get_name ANSI((char *, HASHPTR *, int));
-HASHPTR Search_table ANSI((HASHPTR *, char *, uint16 *, uint32 *));
-HASHPTR Push_macro ANSI((HASHPTR));
-HASHPTR Pop_macro ANSI((HASHPTR));
-HASHPTR Def_macro ANSI((char *, char *, int));
-CELLPTR Def_cell ANSI((char *));
-LINKPTR Add_prerequisite ANSI((CELLPTR, CELLPTR, int, int));
-void Clear_prerequisites ANSI((CELLPTR));
-int Test_circle ANSI((CELLPTR, int));
-STRINGPTR Def_recipe ANSI((char *, STRINGPTR, int, int));
-t_attr Rcp_attribute ANSI((char *));
-int main ANSI((int, char **));
-FILE *Openfile ANSI((char *, int, int));
-FILE *Closefile ANSI(());
-FILE *Search_file ANSI((char *, char **));
-char *Filename ANSI(());
-int Nestlevel ANSI(());
-FILE *TryFiles ANSI((LINKPTR));
-void Fatal ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void Error ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void Warning ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void No_ram ANSI(());
-void Usage ANSI((int));
-void Version ANSI(());
-char *Get_suffix ANSI((char *));
-char *Basename ANSI((char *));
-char *Filedir ANSI((char *));
-char *Build_path ANSI((char *, char *));
-void Make_rules ANSI(());
-void Create_macro_vars ANSI(());
-time_t Do_stat ANSI((char *, char *, char **, int));
-int Do_touch ANSI((char *, char *, char **));
-void Void_lib_cache ANSI((char *, char *));
-time_t Do_time ANSI(());
-void Do_profile_output ANSI((char *, uint16, CELLPTR));
-int Do_cmnd ANSI((char **, int, int, CELLPTR, t_attr, int));
-char ** Pack_argv ANSI((int, int, char **));
-char *Read_env_string ANSI((char *));
-int Write_env_string ANSI((char *, char *));
-void ReadEnvironment ANSI(());
-void Catch_signals ANSI((void (*)(int)));
-void Clear_signals ANSI(());
-void Prolog ANSI((int, char* []));
-void Epilog ANSI((int));
-char *Get_current_dir ANSI(());
-int Set_dir ANSI((char*));
-char Get_switch_char ANSI(());
-FILE* Get_temp ANSI((char **, char *));
-FILE *Start_temp ANSI((char *, CELLPTR, char **));
-void Open_temp_error ANSI((char *, char *));
-void Link_temp ANSI((CELLPTR, FILE *, char *));
-void Close_temp ANSI((CELLPTR, FILE *));
-void Unlink_temp_files ANSI((CELLPTR));
-void Handle_result ANSI((int, int, int, CELLPTR));
-void Update_time_stamp ANSI((CELLPTR));
-int Remove_file ANSI((char *));
-void Parse ANSI((FILE *));
-int Get_line ANSI((char *, FILE *));
-char *Do_comment ANSI((char *, char **, int));
-char *Get_token ANSI((TKSTRPTR, char *, int));
-void Quit ANSI((int));
-void Read_state ANSI(());
-void Write_state ANSI(());
-int Check_state ANSI((CELLPTR, STRINGPTR *, int));
-void Dump ANSI(());
-void Dump_recipe ANSI((STRINGPTR));
-int Parse_macro ANSI((char *, int));
-int Macro_op ANSI((char *));
-int Parse_rule_def ANSI((int *));
-int Rule_op ANSI((char *));
-void Add_recipe_to_list ANSI((char *, int, int));
-void Bind_rules_to_targets ANSI((int));
-int Set_group_attributes ANSI((char *));
-DFALINKPTR Match_dfa ANSI((char *));
-void Check_circle_dfa ANSI(());
-void Add_nfa ANSI((char *));
-char *Exec_function ANSI((char *));
-time_t seek_arch ANSI((char *, char *));
-int touch_arch ANSI(( char *, char *));
-void void_lcache ANSI(( char *, char *));
-int If_root_path ANSI((char *));
-void Remove_prq ANSI((CELLPTR));
-int runargv ANSI((CELLPTR, int, int, t_attr, char **));
-int Wait_for_child ANSI((int, int));
-void Clean_up_processes ANSI(());
-time_t CacheStat ANSI((char *, int));
-
-#endif
diff --git a/dmake/unix/sysvr3/pwd/config.mk b/dmake/unix/sysvr3/pwd/config.mk
deleted file mode 100644
index 86c535a64..000000000
--- a/dmake/unix/sysvr3/pwd/config.mk
+++ /dev/null
@@ -1,20 +0,0 @@
-# This is the Sys VR3 PWD configuration file. It configures SysvR3 unix
-# versions of dmake to use a provided version of getcwd rather than the
-# standard library version that uses popen to capture the output of pwd.
-#
-
-osredir := $(OS)$(DIRSEPSTR)$(OSRELEASE)$(DIRSEPSTR)$(OSENVIRONMENT)
-
-# The following are required sources
-OSRESRC := getcwd.c
-
-.IF $(OSRESRC)
- SRC += $(OSRESRC)
- .SETDIR=$(osredir) : $(OSRESRC)
-.END
-
-.SOURCE.h : $(osredir)
-
-# Local configuration modifications for CFLAGS, there's local SysV includes
-# too.
-CFLAGS += -I$(osredir)
diff --git a/dmake/unix/sysvr3/pwd/getcwd.c b/dmake/unix/sysvr3/pwd/getcwd.c
deleted file mode 100644
index 5c5b84711..000000000
--- a/dmake/unix/sysvr3/pwd/getcwd.c
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- getcwd -- get pathname of current working directory
-
- public-domain implementation
-
- last edit: 03-Nov-1990 Gwyn@BRL.MIL
-
- complies with the following standards:
- IEEE Std 1003.1-1988
- SVID Issue 3
- X/Open Portability Guide Issue 2 (when "XPG2" is defined)
- X/Open Portability Guide Issue 3
-
- This implementation of getcwd() can be used to replace the UNIX
- System V library routine (which uses popen() to capture the output of
- the "pwd" command). Once that is done, "pwd" can be reimplemented as
- just puts(getcwd((char*)0,0)), assuming "XPG2" is defined below.
-
- This implementation depends on every directory having entries for
- "." and "..". It also depends on the internals of the <dirent.h>
- data structures to some degree.
-
- I considered using chdir() to ascend the hierarchy, followed by a
- final chdir() to the path being returned by getcwd() to restore the
- location, but decided that error recovery was too difficult that way.
- The algorithm I settled on was inspired by my rewrite of the "pwd"
- utility, combined with the dotdots[] array trick from the SVR2 shell.
-*/
-#define XPG2 /* define to support obsolete XPG2-mandated feature */
-
-
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#ifdef M_XENIX
-# include <sys/ndir.h>
-# define dirent direct
-#else
-# include <dirent.h>
-#endif
-
-#include <errno.h>
-#include <string.h>
-
-typedef char *pointer; /* (void *) if you have it */
-
-extern void free();
-extern pointer malloc();
-extern int fstat(), stat();
-
-extern int errno; /* normally done by <errno.h> */
-
-#ifndef NULL
-#define NULL 0 /* amorphous null pointer constant */
-#endif
-
-#ifndef NAME_MAX
-#define NAME_MAX 255 /* maximum directory entry size */
-#endif
-
-
-char *
-getcwd( buf, size ) /* returns pointer to CWD pathname */
- char *buf; /* where to put name (NULL to malloc) */
- int size; /* size of buf[] or malloc()ed memory */
- {
- static char dotdots[] =
-"../../../../../../../../../../../../../../../../../../../../../../../../../..";
- char *dotdot; /* -> dotdots[.], right to left */
- DIR *dirp; /* -> parent directory stream */
- struct dirent *dir; /* -> directory entry */
- struct stat stat1,
- stat2; /* info from stat() */
- struct stat *d = &stat1; /* -> info about "." */
- struct stat *dd = &stat2; /* -> info about ".." */
- register char *buffer; /* local copy of buf, or malloc()ed */
- char *bufend; /* -> buffer[size] */
- register char *endp; /* -> end of reversed string */
- register char *dname; /* entry name ("" for root) */
- int serrno = errno; /* save entry errno */
-
- if ( buf != NULL && size <= 0
-#ifndef XPG2
- || buf == NULL
-#endif
- ) {
- errno = EINVAL; /* invalid argument */
- return NULL;
- }
-
- buffer = buf;
-#ifdef XPG2
- if ( buf == NULL /* wants us to malloc() the string */
- && (buffer = (char *) malloc( (unsigned) size )) == NULL
- /* XXX -- actually should probably not pay attention to "size" arg */
- ) {
- errno = ENOMEM; /* cannot malloc() specified size */
- return NULL;
- }
-#endif
-
- if ( stat( ".", dd ) != 0 ) /* prime the pump */
- goto error; /* errno already set */
-
- endp = buffer; /* initially, empty string */
- bufend = &buffer[size];
-
- for ( dotdot = &dotdots[sizeof dotdots]; dotdot != dotdots; )
- {
- dotdot -= 3; /* include one more "/.." section */
- /* (first time is actually "..") */
-
- /* swap stat() info buffers */
- {
- register struct stat *temp = d;
-
- d = dd; /* new current dir is old parent dir */
- dd = temp;
- }
-
- if ( (dirp = opendir( dotdot )) == NULL ) /* new parent */
- goto error; /* errno already set */
-
- if ( fstat( dirp->dd_fd, dd ) != 0 )
- {
- serrno = errno; /* set by fstat() */
- (void)closedir( dirp );
- errno = serrno; /* in case closedir() clobbered it */
- goto error;
- }
-
- if ( d->st_dev == dd->st_dev )
- { /* not crossing a mount point */
- if ( d->st_ino == dd->st_ino )
- { /* root directory */
- dname = "";
- goto append;
- }
-
- do
- if ( (dir = readdir( dirp )) == NULL )
- {
- (void)closedir( dirp );
- errno = ENOENT; /* missing entry */
- goto error;
- }
- while ( dir->d_ino != d->st_ino );
- }
- else { /* crossing a mount point */
- struct stat t; /* info re. test entry */
- char name[sizeof dotdots + 1 + NAME_MAX];
-
- (void)strcpy( name, dotdot );
- dname = &name[strlen( name )];
- *dname++ = '/';
-
- do {
- if ( (dir = readdir( dirp )) == NULL )
- {
- (void)closedir( dirp );
- errno = ENOENT; /* missing entry */
- goto error;
- }
-
- (void)strcpy( dname, dir->d_name );
- /* must fit if NAME_MAX is not a lie */
- }
- while ( stat( name, &t ) != 0
- || t.st_ino != d->st_ino
- || t.st_dev != d->st_dev
- );
- }
-
- dname = dir->d_name;
-
- /* append "/" and reversed dname string onto buffer */
- append:
- if ( endp != buffer /* avoid trailing / in final name */
- || dname[0] == '\0' /* but allow "/" when CWD is root */
- )
- *endp++ = '/';
-
- {
- register char *app; /* traverses dname string */
-
- for ( app = dname; *app != '\0'; ++app )
- ;
-
- if ( app - dname >= bufend - endp )
- {
- (void)closedir( dirp );
- errno = ERANGE; /* won't fit allotted space */
- goto error;
- }
-
- while ( app != dname )
- *endp++ = *--app;
- }
-
- (void)closedir( dirp );
-
- if ( dname[0] == '\0' ) /* reached root; wrap it up */
- {
- register char *startp; /* -> buffer[.] */
-
- *endp = '\0'; /* plant null terminator */
-
- /* straighten out reversed pathname string */
- for ( startp = buffer; --endp > startp; ++startp )
- {
- char temp = *endp;
-
- *endp = *startp;
- *startp = temp;
- }
-
- errno = serrno; /* restore entry errno */
- /* XXX -- if buf==NULL, realloc here? */
- return buffer;
- }
- }
-
- errno = ENOMEM; /* actually, algorithm failure */
-
- error:
- if ( buf == NULL )
- free( (pointer)buffer );
-
- return NULL;
- }
-
diff --git a/dmake/unix/sysvr3/pwd/make.sh b/dmake/unix/sysvr3/pwd/make.sh
deleted file mode 100644
index 514fde77f..000000000
--- a/dmake/unix/sysvr3/pwd/make.sh
+++ /dev/null
@@ -1,62 +0,0 @@
-mkdir objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O infer.c
-mv infer.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O make.c
-mv make.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O stat.c
-mv stat.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O expand.c
-mv expand.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O dmstring.c
-mv dmstring.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O hash.c
-mv hash.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O dag.c
-mv dag.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O dmake.c
-mv dmake.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O path.c
-mv path.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O imacs.c
-mv imacs.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O sysintf.c
-mv sysintf.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O parse.c
-mv parse.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O getinp.c
-mv getinp.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O quit.c
-mv quit.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O state.c
-mv state.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O dmdump.c
-mv dmdump.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O macparse.c
-mv macparse.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O rulparse.c
-mv rulparse.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O percent.c
-mv percent.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O function.c
-mv function.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/arlib.c
-mv arlib.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/dirbrk.c
-mv dirbrk.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/rmprq.c
-mv rmprq.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/ruletab.c
-mv ruletab.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/runargv.c
-mv runargv.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/dcache.c
-mv dcache.o objects
-cc -c -I. -Iunix -Iunix/sysvr3 -Iunix/sysvr3/pwd -O unix/sysvr3/pwd/getcwd.c
-mv getcwd.o objects
-cc -O -o dmake objects/infer.o objects/make.o objects/stat.o objects/expand.o \
-objects/dmstring.o objects/hash.o objects/dag.o objects/dmake.o objects/path.o \
-objects/imacs.o objects/sysintf.o objects/parse.o objects/getinp.o \
-objects/quit.o objects/state.o objects/dmdump.o objects/macparse.o \
-objects/rulparse.o objects/percent.o objects/function.o objects/arlib.o \
-objects/dirbrk.o objects/rmprq.o objects/ruletab.o objects/runargv.o objects/dcache.o objects/getcwd.o
-cp unix/sysvr3/pwd/template.mk startup/config.mk
diff --git a/dmake/unix/sysvr3/pwd/public.h b/dmake/unix/sysvr3/pwd/public.h
deleted file mode 100644
index 916c629fe..000000000
--- a/dmake/unix/sysvr3/pwd/public.h
+++ /dev/null
@@ -1,167 +0,0 @@
-/* RCS $Id: public.h,v 1.9 2007-10-15 15:57:06 ihi Exp $
--- WARNING -- This file is AUTOMATICALLY GENERATED DO NOT EDIT IT
---
---
--- SYNOPSIS
--- Local functions exported to be visible by others.
---
--- DESCRIPTION
--- This file is generated by 'genpub'. Function declarations
--- that appear in this file are extracted by 'genpub' from
--- source files. Any function in the source file whose definition
--- appears like:
---
--- PUBLIC return_type
--- function( arg_list );
--- type_expr1 arg1;
--- ...
---
--- has its definition extracted and a line of the form:
---
--- return_type function ANSI((type_expr1,type_expr2,...));
---
--- entered into the output file.
---
--- AUTHOR
--- Dennis Vadura, dvadura@dmake.wticorp.com
---
--- WWW
--- http://dmake.wticorp.com/
---
--- COPYRIGHT
--- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
---
--- This program is NOT free software; you can redistribute it and/or
--- modify it under the terms of the Software License Agreement Provided
--- in the file <distribution-root>/readme/license.txt.
---
--- LOG
--- Use cvs log to obtain detailed change logs.
-*/
-
-#ifndef _DMAKE_PUBLIC_h
-#define _DMAKE_PUBLIC_h
-
-#ifdef EXTERN
-#undef EXTERN
-#endif
-#if defined(DEFINE_DMAKE_VARIABLES)
-#define EXTERN
-#else
-#define EXTERN extern
-#endif
-
-/***** genpub: Begin list of generated function headers */
-void Infer_recipe ANSI((CELLPTR, CELLPTR));
-int Make_targets ANSI(());
-int Make ANSI((CELLPTR, CELLPTR));
-int Exec_commands ANSI((CELLPTR));
-void Print_cmnd ANSI((char *, int, int));
-int Push_dir ANSI((char *, char *, int));
-void Pop_dir ANSI((int));
-void Append_line ANSI((char *, int, FILE *, char *, int, int));
-void Stat_target ANSI((CELLPTR, int, int));
-char *Expand ANSI((char *));
-char *Apply_edit ANSI((char *, char *, char *, int, int));
-void Map_esc ANSI((char *));
-char* Apply_modifiers ANSI((int, char *));
-char* Tokenize ANSI((char *, char *, char, int));
-char* ScanToken ANSI((char *, char **, int));
-char *DmStrJoin ANSI((char *, char *, int, int));
-char *DmStrAdd ANSI((char *, char *, int));
-char *DmStrApp ANSI((char *, char *));
-char *DmStrDup ANSI((char *));
-char *DmStrDup2 ANSI((char *));
-char *DmStrPbrk ANSI((char *, char *));
-char *DmStrSpn ANSI((char *, char *));
-char *DmStrStr ANSI((char *, char *));
-char *DmSubStr ANSI((char *, char *));
-uint16 Hash ANSI((char *, uint32 *));
-HASHPTR Get_name ANSI((char *, HASHPTR *, int));
-HASHPTR Search_table ANSI((HASHPTR *, char *, uint16 *, uint32 *));
-HASHPTR Push_macro ANSI((HASHPTR));
-HASHPTR Pop_macro ANSI((HASHPTR));
-HASHPTR Def_macro ANSI((char *, char *, int));
-CELLPTR Def_cell ANSI((char *));
-LINKPTR Add_prerequisite ANSI((CELLPTR, CELLPTR, int, int));
-void Clear_prerequisites ANSI((CELLPTR));
-int Test_circle ANSI((CELLPTR, int));
-STRINGPTR Def_recipe ANSI((char *, STRINGPTR, int, int));
-t_attr Rcp_attribute ANSI((char *));
-int main ANSI((int, char **));
-FILE *Openfile ANSI((char *, int, int));
-FILE *Closefile ANSI(());
-FILE *Search_file ANSI((char *, char **));
-char *Filename ANSI(());
-int Nestlevel ANSI(());
-FILE *TryFiles ANSI((LINKPTR));
-void Fatal ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void Error ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void Warning ANSI((ARG (char *,fmt),ARG (va_alist_type, va_alist)));
-void No_ram ANSI(());
-void Usage ANSI((int));
-void Version ANSI(());
-char *Get_suffix ANSI((char *));
-char *Basename ANSI((char *));
-char *Filedir ANSI((char *));
-char *Build_path ANSI((char *, char *));
-void Make_rules ANSI(());
-void Create_macro_vars ANSI(());
-time_t Do_stat ANSI((char *, char *, char **, int));
-int Do_touch ANSI((char *, char *, char **));
-void Void_lib_cache ANSI((char *, char *));
-time_t Do_time ANSI(());
-void Do_profile_output ANSI((char *, uint16, CELLPTR));
-int Do_cmnd ANSI((char **, int, int, CELLPTR, t_attr, int));
-char ** Pack_argv ANSI((int, int, char **));
-char *Read_env_string ANSI((char *));
-int Write_env_string ANSI((char *, char *));
-void ReadEnvironment ANSI(());
-void Catch_signals ANSI((void (*)(int)));
-void Clear_signals ANSI(());
-void Prolog ANSI((int, char* []));
-void Epilog ANSI((int));
-char *Get_current_dir ANSI(());
-int Set_dir ANSI((char*));
-char Get_switch_char ANSI(());
-FILE* Get_temp ANSI((char **, char *));
-FILE *Start_temp ANSI((char *, CELLPTR, char **));
-void Open_temp_error ANSI((char *, char *));
-void Link_temp ANSI((CELLPTR, FILE *, char *));
-void Close_temp ANSI((CELLPTR, FILE *));
-void Unlink_temp_files ANSI((CELLPTR));
-void Handle_result ANSI((int, int, int, CELLPTR));
-void Update_time_stamp ANSI((CELLPTR));
-int Remove_file ANSI((char *));
-void Parse ANSI((FILE *));
-int Get_line ANSI((char *, FILE *));
-char *Do_comment ANSI((char *, char **, int));
-char *Get_token ANSI((TKSTRPTR, char *, int));
-void Quit ANSI((int));
-void Read_state ANSI(());
-void Write_state ANSI(());
-int Check_state ANSI((CELLPTR, STRINGPTR *, int));
-void Dump ANSI(());
-void Dump_recipe ANSI((STRINGPTR));
-int Parse_macro ANSI((char *, int));
-int Macro_op ANSI((char *));
-int Parse_rule_def ANSI((int *));
-int Rule_op ANSI((char *));
-void Add_recipe_to_list ANSI((char *, int, int));
-void Bind_rules_to_targets ANSI((int));
-int Set_group_attributes ANSI((char *));
-DFALINKPTR Match_dfa ANSI((char *));
-void Check_circle_dfa ANSI(());
-void Add_nfa ANSI((char *));
-char *Exec_function ANSI((char *));
-time_t seek_arch ANSI((char *, char *));
-int touch_arch ANSI(( char *, char *));
-void void_lcache ANSI(( char *, char *));
-int If_root_path ANSI((char *));
-void Remove_prq ANSI((CELLPTR));
-int runargv ANSI((CELLPTR, int, int, t_attr, char **));
-int Wait_for_child ANSI((int, int));
-void Clean_up_processes ANSI(());
-time_t CacheStat ANSI((char *, int));
-
-#endif
diff --git a/dmake/unix/sysvr3/pwd/template.mk b/dmake/unix/sysvr3/pwd/template.mk
deleted file mode 100644
index fa6b4aa6b..000000000
--- a/dmake/unix/sysvr3/pwd/template.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-# ** Default build configuration for dmake.
-# ** DO NOT PLACE LOCAL DEFINITIONS INTO THIS FILE IT IS AUTO GENERATED
-# ** USE "startup/local.mk" for those.
-
- OS *:= unix
- OSRELEASE *:= sysvr3
- OSENVIRONMENT *:= pwd
diff --git a/dmake/unix/sysvr3/stdlib.h b/dmake/unix/sysvr3/stdlib.h
deleted file mode 100644
index 84b1d8dee..000000000
--- a/dmake/unix/sysvr3/stdlib.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* RCS $Id: stdlib.h,v 1.1.1.1 2000-09-22 15:33:35 hr Exp $
---
--- SYNOPSIS
--- stdlib interface
---
--- DESCRIPTION
--- Specially needed pieces of interface to the standard C lib.
---
--- AUTHOR
--- Dennis Vadura, dvadura@dmake.wticorp.com
---
--- WWW
--- http://dmake.wticorp.com/
---
--- COPYRIGHT
--- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
---
--- This program is NOT free software; you can redistribute it and/or
--- modify it under the terms of the Software License Agreement Provided
--- in the file <distribution-root>/readme/license.txt.
---
--- LOG
--- Use cvs log to obtain detailed change logs.
-*/
-
-#ifndef _STDLIB_INCLUDED_
-#define _STDLIB_INCLUDED_
-
-#ifndef _AIX
-extern /*GOTO*/ _exit();
-extern /*GOTO*/ exit();
-extern /*GOTO*/ abort();
-extern int system();
-extern char *getenv();
-extern char *calloc();
-extern char *malloc();
-extern char *realloc();
-
-/* The AIX compiler dies on illegal redefinition of free */
-extern free();
-#endif
-
-/* AIX doesn't use NAME_MAX anylonger... */
-#ifdef _AIX
-#include <unistd.h>
-#define NAME_MAX pathconf("/dev/null",_PC_NAME_MAX)
-#endif
-
-extern int errno;
-
-#ifndef EIO
-# include <errno.h>
-#endif
-
-#endif /* _STDLIB_INCLUDED_ */
diff --git a/dmake/unix/sysvr3/template.mk b/dmake/unix/sysvr3/template.mk
deleted file mode 100644
index 3cb518671..000000000
--- a/dmake/unix/sysvr3/template.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-# ** Default build configuration for dmake.
-# ** DO NOT PLACE LOCAL DEFINITIONS INTO THIS FILE IT IS AUTO GENERATED
-# ** USE "startup/local.mk" for those.
-
- OS *:= unix
- OSRELEASE *:= sysvr3
- OSENVIRONMENT *:=
diff --git a/dmake/unix/sysvr3/time.h b/dmake/unix/sysvr3/time.h
deleted file mode 100644
index 6e1dbcd57..000000000
--- a/dmake/unix/sysvr3/time.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* RCS $Id: time.h,v 1.1.1.1 2000-09-22 15:33:35 hr Exp $
---
--- SYNOPSIS
--- time_t
---
--- DESCRIPTION
--- Properly define time_t.
---
--- AUTHOR
--- Dennis Vadura, dvadura@dmake.wticorp.com
---
--- WWW
--- http://dmake.wticorp.com/
---
--- COPYRIGHT
--- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
---
--- This program is NOT free software; you can redistribute it and/or
--- modify it under the terms of the Software License Agreement Provided
--- in the file <distribution-root>/readme/license.txt.
---
--- LOG
--- Use cvs log to obtain detailed change logs.
-*/
-
-#ifndef TIME_h
-#define TIME_h
-
-typedef long time_t; /* this is the thing we use */
-
-#endif TIME_h
-