Merge commit 'c9b86876044cdce95730ea2c6a2af65e06a86125' as 'cde/programs/dtksh/ksh93'
This commit is contained in:
106
cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile
Normal file
106
cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile
Normal file
@@ -0,0 +1,106 @@
|
||||
info mam static 00000 1994-07-17 make (AT&T Research) 5.7 2012-06-20
|
||||
note *
|
||||
note * This build file is in the Make Abstract Machine (MAM) language. It was
|
||||
note * first generated by nmake, but in the ksh 93u+m distribution we maintain
|
||||
note * it manually because nmake had too many problems to keep using. The
|
||||
note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added
|
||||
note * support for indentation to improve readability. The language is
|
||||
note * documented in Glenn Fowler's paper "A Make Abstract Machine":
|
||||
note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html
|
||||
note *
|
||||
setv INSTALLROOT ../../..
|
||||
setv PACKAGE_ast_INCLUDE ${INSTALLROOT}/include/ast
|
||||
setv PACKAGE_ast_LIB ${INSTALLROOT}/lib
|
||||
setv PACKAGE_cmd ${INSTALLROOT}
|
||||
setv PACKAGE_cmd_INCLUDE ${PACKAGE_cmd}/include
|
||||
setv PACKAGE_cmd_LIB ${PACKAGE_cmd}/lib
|
||||
setv PACKAGEROOT ../../../../..
|
||||
setv AR ${mam_cc_AR} ${mam_cc_AR_ARFLAGS}
|
||||
setv ARFLAGS rc
|
||||
setv AS as
|
||||
setv ASFLAGS
|
||||
setv CC cc
|
||||
setv mam_cc_FLAGS
|
||||
setv KSH_RELFLAGS
|
||||
setv CCFLAGS ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${mam_cc_OPTIMIZE}?}
|
||||
setv CCLDFLAGS ${-strip-symbols?1?${mam_cc_LD_STRIP}??}
|
||||
setv COTEMP $$
|
||||
setv CPIO cpio
|
||||
setv CPIOFLAGS
|
||||
setv CPP "${CC} -E"
|
||||
setv F77 f77
|
||||
setv HOSTCC ${CC}
|
||||
setv IFFEFLAGS
|
||||
setv IGNORE
|
||||
setv LD ld
|
||||
setv LDFLAGS
|
||||
setv LEX lex
|
||||
setv LEXFLAGS
|
||||
setv LPR lpr
|
||||
setv LPRFLAGS
|
||||
setv M4FLAGS
|
||||
setv NMAKE nmake
|
||||
setv NMAKEFLAGS
|
||||
setv PR pr
|
||||
setv PRFLAGS
|
||||
setv SHELL /bin/sh
|
||||
setv SILENT
|
||||
setv TAR tar
|
||||
setv YACC yacc
|
||||
setv YACCFLAGS -d
|
||||
make ${PACKAGEROOT}/lib/package/ast.lic
|
||||
done ${PACKAGEROOT}/lib/package/ast.lic
|
||||
make .INIT
|
||||
make ${PACKAGE_ast_INCLUDE}/cmdlist.h
|
||||
make ${PACKAGE_ast_INCLUDE}/prototyped.h implicit
|
||||
done ${PACKAGE_ast_INCLUDE}/prototyped.h dontcare
|
||||
done ${PACKAGE_ast_INCLUDE}/cmdlist.h
|
||||
exec - sed -e '/^CMDLIST(.*)$/!d' -e 's/CMDLIST(\(.*\))/\1/' -e '/^getconf$/d' -e '/^ln$/d' -e '/^mv$/d' -e '/^md5sum$/d' -e '/^sum$/d' ${PACKAGE_ast_INCLUDE}/cmdlist.h
|
||||
bind -lcmd
|
||||
done .INIT dontcare virtual
|
||||
make install
|
||||
make pty
|
||||
make pty.o
|
||||
make pty.c
|
||||
make FEATURE/pty implicit
|
||||
meta FEATURE/pty features/%>FEATURE/% features/pty pty
|
||||
make features/pty
|
||||
done features/pty
|
||||
exec - iffe ${IFFEFLAGS} -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} -lm' ref ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libast} ${mam_libcmd} : run features/pty
|
||||
done FEATURE/pty generated
|
||||
make ${PACKAGE_ast_INCLUDE}/ast_time.h implicit
|
||||
done ${PACKAGE_ast_INCLUDE}/ast_time.h
|
||||
prev ${PACKAGE_ast_INCLUDE}/vmalloc.h implicit
|
||||
prev ${PACKAGE_ast_INCLUDE}/regex.h implicit
|
||||
make ${PACKAGE_ast_INCLUDE}/proc.h implicit
|
||||
prev ${PACKAGE_ast_INCLUDE}/ast.h implicit
|
||||
prev ${PACKAGE_ast_INCLUDE}/prototyped.h implicit
|
||||
done ${PACKAGE_ast_INCLUDE}/proc.h
|
||||
prev ${PACKAGE_ast_INCLUDE}/error.h implicit
|
||||
prev ${PACKAGE_ast_INCLUDE}/cmd.h implicit
|
||||
done pty.c
|
||||
meta pty.o %.c>%.o pty.c pty
|
||||
prev pty.c
|
||||
setv CMD_STANDALONE -DCMD_STANDALONE="b_pty"
|
||||
setv LICENSE -DLICENSE="since=2001,author=gsf+dgk"
|
||||
exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -I. -I${PACKAGE_ast_INCLUDE} -DERROR_CATALOG=\""builtin"\" -D_PACKAGE_ast -DCMD_STANDALONE=b_pty -DUSAGE_LICENSE=\""[-author?Glenn Fowler <gsf@research.att.com>][-author?David Korn <dgk@research.att.com>][-copyright?Copyright (c) 2001-2012 AT&T Intellectual Property][-license?http://www.eclipse.org/org/documents/epl-v10.html][--catalog?builtin]"\" -c pty.c
|
||||
done pty.o generated
|
||||
bind -lutil dontcare
|
||||
setv CMD_STANDALONE -DCMD_STANDALONE="b_pty"
|
||||
exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS} -lm ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o pty pty.o ${mam_libutil} ${mam_libast} ${mam_libcmd}
|
||||
done pty generated
|
||||
make ${INSTALLROOT}/bin
|
||||
exec - if silent test ! -d ${INSTALLROOT}/bin
|
||||
exec - then mkdir -p ${INSTALLROOT}/bin
|
||||
exec - fi
|
||||
done ${INSTALLROOT}/bin generated
|
||||
make ${INSTALLROOT}/bin/pty
|
||||
prev pty
|
||||
exec - test '' = 'pty' || ${STDCMP} 2>/dev/null -s pty ${INSTALLROOT}/bin/pty || { ${STDMV} ${INSTALLROOT}/bin/pty ${INSTALLROOT}/bin/pty.old 2>/dev/null || true; ${STDCP} pty ${INSTALLROOT}/bin/pty ;}
|
||||
done ${INSTALLROOT}/bin/pty generated
|
||||
make ${INSTALLROOT}/bin
|
||||
exec - if silent test ! -d ${INSTALLROOT}/bin
|
||||
exec - then mkdir -p ${INSTALLROOT}/bin
|
||||
exec - fi
|
||||
done ${INSTALLROOT}/bin virtual
|
||||
done install virtual
|
||||
10
cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE
Normal file
10
cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE
Normal file
@@ -0,0 +1,10 @@
|
||||
12-02-28 pty.c: change --verbose[=level] to --debug=level
|
||||
12-01-26 pty.c: fix --man docs
|
||||
10-06-21 pty.c: add 4 sec timeout for initial handshake -- fix me!!
|
||||
10-04-12 pty: fix sfpoll() result read/write bug
|
||||
10-04-01 pty: add --tty='stty-settings'
|
||||
10-03-19 pty: add --dialogue
|
||||
10-03-15 pty: fix select() fd management
|
||||
09-03-31 features/pty,Makefile: add pty.h and -lutil refs for linux -- great, another util library
|
||||
09-01-30 pty.c: add <ast_time.h> (for fd_set!! on mvs.390)
|
||||
06-07-20 pty.c: add
|
||||
60
cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty
Executable file
60
cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty
Executable file
@@ -0,0 +1,60 @@
|
||||
set prototyped
|
||||
|
||||
header sys/types.h
|
||||
header pty.h
|
||||
header libutil.h
|
||||
header sys/pty.h
|
||||
header sys/ptyio.h
|
||||
header sys/vty.h
|
||||
header sys/ioctl.h
|
||||
header stropts.h
|
||||
|
||||
lib openpty,_getpty,ptsname -lutil
|
||||
lib grantpt,unlockpt,posix_openpt stdlib.h
|
||||
lib cfmakeraw termios.h
|
||||
|
||||
tst - output{
|
||||
#include <fcntl.h>
|
||||
#if _lib_ptsname
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#include <unistd.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sfio.h>
|
||||
int main()
|
||||
{
|
||||
int i;
|
||||
struct stat statb;
|
||||
static char* pty[] = { "/dev/ptyp0000", "/dev/ptym/ptyp0", "/dev/ptyp0" };
|
||||
#if _lib_ptsname
|
||||
int fd;
|
||||
static char* ptc[] = { "/dev/ptmx", "/dev/ptc", "/dev/ptmx_bsd" };
|
||||
|
||||
for (i = 0; i < sizeof(ptc) / sizeof(ptc[0]); i++)
|
||||
if((fd = open(ptc[i], 2))>=0)
|
||||
{
|
||||
if (ptsname(fd))
|
||||
{
|
||||
sfprintf(sfstdout, "#define _pty_clone\t\"%s\"\n", ptc[i]);
|
||||
close(fd);
|
||||
break;
|
||||
}
|
||||
close(fd);
|
||||
}
|
||||
#endif
|
||||
for (i = 0;; i++)
|
||||
if(i >= (sizeof(pty) / sizeof(pty[0]) - 1) || stat(pty[i], &statb)>=0)
|
||||
{
|
||||
sfprintf(sfstdout, "#define _pty_first\t\"%s\"\n", pty[i]);
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}end fail{
|
||||
echo '#error The output block in src/cmd/builtin/features/pty failed to compile. Rebuild with IFFEFLAGS=-d1 to debug.'
|
||||
}end
|
||||
|
||||
extern _getpty char* (int*, int, mode_t, int)
|
||||
extern openpty int (int*, int*, char*, struct termios*, struct winsize*)
|
||||
extern ptsname char* (int)
|
||||
1124
cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c
Normal file
1124
cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user