da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/*
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * CDDL HEADER START
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin *
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * The contents of this file are subject to the terms of the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Common Development and Distribution License (the "License").
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * You may not use this file except in compliance with the License.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin *
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * or http://www.opensolaris.org/os/licensing.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * See the License for the specific language governing permissions
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * and limitations under the License.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin *
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * When distributing Covered Code, include this CDDL HEADER in each
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * If applicable, add the following below this CDDL HEADER, with the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * fields enclosed by brackets "[]" replaced with your own identifying
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * information: Portions Copyright [yyyy] [name of copyright owner]
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin *
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * CDDL HEADER END
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/*
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#ifndef _SOLARIS_KSH_CMDLIST_H
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define _SOLARIS_KSH_CMDLIST_H
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#ifdef __cplusplus
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinextern "C" {
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/*
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * List builtins for Solaris.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * The list here is partially autogenerated and partially hand-picked
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * based on compatibility with the native Solaris versions of these
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * tools
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/*
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Commands which are 100% compatible with native Solaris versions (/bin is
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * a softlink to ./usr/bin, ksh93 takes care about the lookup)
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define BINCMDLIST(f) \
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin { "/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define USRBINCMDLIST(f) \
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin { "/usr/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SBINCMDLIST(f) \
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin { "/sbin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define SUSRBINCMDLIST(f) \
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin { "/usr/sbin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner/* POSIX compatible commands */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define XPG6CMDLIST(f) \
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner { "/usr/xpg6/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define XPG4CMDLIST(f) \
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner { "/usr/xpg4/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#ifdef SHOPT_USR_GNU_BIN_BUILTINS
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner/* GNU coreutils compatible commands */
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define GNUCMDLIST(f) \
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner { "/usr/gnu/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#else
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#define GNUCMDLIST(f)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner#endif
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin/*
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * Make all ksh93 builtins accessible when /usr/ast/bin was added to
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin * /usr/xpg6/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/bin:/bin:/opt/SUNWspro/bin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin */
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#define ASTCMDLIST(f) \
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin { "/usr/ast/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) },
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/* undo ast_map.h #defines to avoid collision */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#undef basename
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#undef dirname
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland Mainz#undef mktemp
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/* Generated data, do not edit. */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(basename)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(basename)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(basename)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(cat)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(cat)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(chgrp)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(chgrp)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(chmod)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(chown)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(chown)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(chown)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(cksum)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(cksum)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(cksum)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(cmp)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(cmp)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(comm)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(comm)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(comm)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(cp)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(cp)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(cut)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(cut)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(cut)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(date)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(date)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(dirname)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(dirname)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(dirname)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(egrep)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(egrep)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(expr)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(expr)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG6CMDLIST(expr)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(fds)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(fgrep)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(fgrep)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(fmt)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(fold)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(fold)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(fold)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(grep)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(grep)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(head)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(head)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(id)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(id)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(join)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(join)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(join)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(ln)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(ln)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(logname)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(logname)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(logname)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(md5sum)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(mkdir)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(mkdir)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(mkdir)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(mkfifo)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(mkfifo)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(mkfifo)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(mktemp)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(mktemp)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(mktemp)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(mv)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(mv)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(paste)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(paste)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(paste)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(pathchk)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(pathchk)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(pathchk)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(readlink)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(rev)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(rev)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(rm)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(rm)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(rmdir)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(rmdir)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(rmdir)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(sleep)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(stty)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner// XPG4CMDLIST(stty)
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinASTCMDLIST(sum)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(sum)
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinASTCMDLIST(sync)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(sync)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(sync)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerSBINCMDLIST(sync)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerSUSRBINCMDLIST(sync)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(tail)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(tail)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerXPG4CMDLIST(tail)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(tee)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(tee)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(tee)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(tty)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(tty)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(tty)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(uname)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(uniq)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(uniq)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(uniq)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinASTCMDLIST(wc)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(wc)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerGNUCMDLIST(wc)
34f9b3eef6fdadbda0a846aa4d68691ac40eace5Roland MainzASTCMDLIST(xgrep)
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. FaulknerBINCMDLIST(xgrep)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin/* Mandatory for ksh93 test suite and AST scripts */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinBINCMDLIST(getconf)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#ifdef __cplusplus
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin}
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#endif
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#endif /* !_SOLARIS_KSH_CMDLIST_H */