14887Schin /* 24887Schin * CDDL HEADER START 34887Schin * 44887Schin * The contents of this file are subject to the terms of the 54887Schin * Common Development and Distribution License (the "License"). 64887Schin * You may not use this file except in compliance with the License. 74887Schin * 84887Schin * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 94887Schin * or http://www.opensolaris.org/os/licensing. 104887Schin * See the License for the specific language governing permissions 114887Schin * and limitations under the License. 124887Schin * 134887Schin * When distributing Covered Code, include this CDDL HEADER in each 144887Schin * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 154887Schin * If applicable, add the following below this CDDL HEADER, with the 164887Schin * fields enclosed by brackets "[]" replaced with your own identifying 174887Schin * information: Portions Copyright [yyyy] [name of copyright owner] 184887Schin * 194887Schin * CDDL HEADER END 204887Schin */ 214887Schin 224887Schin /* 23*12068SRoger.Faulkner@Oracle.COM * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. 244887Schin */ 254887Schin 268462SApril.Chin@Sun.COM #ifndef _SOLARIS_KSH_CMDLIST_H 278462SApril.Chin@Sun.COM #define _SOLARIS_KSH_CMDLIST_H 284887Schin 294887Schin #ifdef __cplusplus 304887Schin extern "C" { 314887Schin #endif 324887Schin 334887Schin /* 344887Schin * List builtins for Solaris. 354887Schin * The list here is partially autogenerated and partially hand-picked 364887Schin * based on compatibility with the native Solaris versions of these 374887Schin * tools 384887Schin */ 394887Schin 404887Schin /* 414887Schin * Commands which are 100% compatible with native Solaris versions (/bin is 428462SApril.Chin@Sun.COM * a softlink to ./usr/bin, ksh93 takes care about the lookup) 434887Schin */ 448462SApril.Chin@Sun.COM #define BINCMDLIST(f) \ 458462SApril.Chin@Sun.COM { "/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 468462SApril.Chin@Sun.COM #define USRBINCMDLIST(f) \ 478462SApril.Chin@Sun.COM { "/usr/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 488462SApril.Chin@Sun.COM #define SBINCMDLIST(f) \ 498462SApril.Chin@Sun.COM { "/sbin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 508462SApril.Chin@Sun.COM #define SUSRBINCMDLIST(f) \ 518462SApril.Chin@Sun.COM { "/usr/sbin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 52*12068SRoger.Faulkner@Oracle.COM /* POSIX compatible commands */ 53*12068SRoger.Faulkner@Oracle.COM #define XPG6CMDLIST(f) \ 54*12068SRoger.Faulkner@Oracle.COM { "/usr/xpg6/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 55*12068SRoger.Faulkner@Oracle.COM #define XPG4CMDLIST(f) \ 56*12068SRoger.Faulkner@Oracle.COM { "/usr/xpg4/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 57*12068SRoger.Faulkner@Oracle.COM #ifdef SHOPT_USR_GNU_BIN_BUILTINS 58*12068SRoger.Faulkner@Oracle.COM /* GNU coreutils compatible commands */ 59*12068SRoger.Faulkner@Oracle.COM #define GNUCMDLIST(f) \ 60*12068SRoger.Faulkner@Oracle.COM { "/usr/gnu/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 61*12068SRoger.Faulkner@Oracle.COM #else 62*12068SRoger.Faulkner@Oracle.COM #define GNUCMDLIST(f) 63*12068SRoger.Faulkner@Oracle.COM #endif 648462SApril.Chin@Sun.COM /* 658462SApril.Chin@Sun.COM * Make all ksh93 builtins accessible when /usr/ast/bin was added to 668462SApril.Chin@Sun.COM * /usr/xpg6/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/bin:/bin:/opt/SUNWspro/bin 678462SApril.Chin@Sun.COM */ 688462SApril.Chin@Sun.COM #define ASTCMDLIST(f) \ 698462SApril.Chin@Sun.COM { "/usr/ast/bin/" #f, NV_BLTIN|NV_BLTINOPT|NV_NOFREE, bltin(f) }, 704887Schin 714887Schin /* undo ast_map.h #defines to avoid collision */ 724887Schin #undef basename 734887Schin #undef dirname 7410898Sroland.mainz@nrubsig.org #undef mktemp 754887Schin 764887Schin /* Generated data, do not edit. */ 77*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(basename) 78*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(basename) 794887Schin XPG4CMDLIST(basename) 80*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(cat) 814887Schin BINCMDLIST(cat) 824887Schin ASTCMDLIST(chgrp) 83*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(chgrp) 844887Schin ASTCMDLIST(chmod) 85*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(chown) 86*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(chown) 874887Schin BINCMDLIST(chown) 88*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(cksum) 8910898Sroland.mainz@nrubsig.org BINCMDLIST(cksum) 90*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(cksum) 91*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(cmp) 9210898Sroland.mainz@nrubsig.org BINCMDLIST(cmp) 93*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(comm) 9410898Sroland.mainz@nrubsig.org BINCMDLIST(comm) 95*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(comm) 964887Schin ASTCMDLIST(cp) 97*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(cp) 984887Schin ASTCMDLIST(cut) 99*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(cut) 100*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(cut) 1014887Schin ASTCMDLIST(date) 102*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(date) 1034887Schin ASTCMDLIST(dirname) 104*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(dirname) 105*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(dirname) 10610898Sroland.mainz@nrubsig.org ASTCMDLIST(egrep) 107*12068SRoger.Faulkner@Oracle.COM XPG4CMDLIST(egrep) 1084887Schin ASTCMDLIST(expr) 109*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(expr) 110*12068SRoger.Faulkner@Oracle.COM XPG6CMDLIST(expr) 1114887Schin ASTCMDLIST(fds) 11210898Sroland.mainz@nrubsig.org ASTCMDLIST(fgrep) 113*12068SRoger.Faulkner@Oracle.COM XPG4CMDLIST(fgrep) 1144887Schin ASTCMDLIST(fmt) 1154887Schin ASTCMDLIST(fold) 116*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(fold) 117*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(fold) 11810898Sroland.mainz@nrubsig.org ASTCMDLIST(grep) 119*12068SRoger.Faulkner@Oracle.COM XPG4CMDLIST(grep) 120*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(head) 1214887Schin BINCMDLIST(head) 122*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(id) 1234887Schin XPG4CMDLIST(id) 124*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(join) 12510898Sroland.mainz@nrubsig.org BINCMDLIST(join) 126*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(join) 1274887Schin ASTCMDLIST(ln) 128*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(ln) 1294887Schin ASTCMDLIST(logname) 130*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(logname) 131*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(logname) 13210898Sroland.mainz@nrubsig.org ASTCMDLIST(md5sum) 1334887Schin ASTCMDLIST(mkdir) 134*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(mkdir) 135*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(mkdir) 1364887Schin ASTCMDLIST(mkfifo) 137*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(mkfifo) 138*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(mkfifo) 13910898Sroland.mainz@nrubsig.org ASTCMDLIST(mktemp) 140*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(mktemp) 141*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(mktemp) 1424887Schin ASTCMDLIST(mv) 143*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(mv) 144*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(paste) 14510898Sroland.mainz@nrubsig.org BINCMDLIST(paste) 146*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(paste) 147*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(pathchk) 14810898Sroland.mainz@nrubsig.org BINCMDLIST(pathchk) 149*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(pathchk) 15010898Sroland.mainz@nrubsig.org ASTCMDLIST(readlink) 151*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(rev) 1528462SApril.Chin@Sun.COM BINCMDLIST(rev) 153*12068SRoger.Faulkner@Oracle.COM ASTCMDLIST(rm) 1544887Schin XPG4CMDLIST(rm) 1554887Schin ASTCMDLIST(rmdir) 156*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(rmdir) 157*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(rmdir) 158*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(sleep) 1594887Schin ASTCMDLIST(stty) 160*12068SRoger.Faulkner@Oracle.COM // XPG4CMDLIST(stty) 1618462SApril.Chin@Sun.COM ASTCMDLIST(sum) 162*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(sum) 1638462SApril.Chin@Sun.COM ASTCMDLIST(sync) 164*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(sync) 165*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(sync) 166*12068SRoger.Faulkner@Oracle.COM SBINCMDLIST(sync) 167*12068SRoger.Faulkner@Oracle.COM SUSRBINCMDLIST(sync) 1684887Schin ASTCMDLIST(tail) 169*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(tail) 170*12068SRoger.Faulkner@Oracle.COM XPG4CMDLIST(tail) 1714887Schin ASTCMDLIST(tee) 172*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(tee) 173*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(tee) 1744887Schin ASTCMDLIST(tty) 175*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(tty) 176*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(tty) 1774887Schin ASTCMDLIST(uname) 1784887Schin ASTCMDLIST(uniq) 179*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(uniq) 180*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(uniq) 1814887Schin ASTCMDLIST(wc) 182*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(wc) 183*12068SRoger.Faulkner@Oracle.COM GNUCMDLIST(wc) 18410898Sroland.mainz@nrubsig.org ASTCMDLIST(xgrep) 185*12068SRoger.Faulkner@Oracle.COM BINCMDLIST(xgrep) 1864887Schin 1874887Schin /* Mandatory for ksh93 test suite and AST scripts */ 1884887Schin BINCMDLIST(getconf) 1894887Schin 1904887Schin #ifdef __cplusplus 1914887Schin } 1924887Schin #endif 1934887Schin 1948462SApril.Chin@Sun.COM #endif /* !_SOLARIS_KSH_CMDLIST_H */ 195