| /*===- SysUtils.h - Utilities to do low-level system stuff -------*- C -*--===*\ |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file was developed by the LLVM research group and is distributed under |
| // the University of Illinois Open Source License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| * * |
| * This file contains functions used to do a variety of low-level, often * |
| * system-specific, tasks. * |
| * * |
| \*===----------------------------------------------------------------------===*/ |
| |
| #ifndef SYSUTILS_H |
| #define SYSUTILS_H |
| |
| struct stat; |
| |
| /* |
| * isExecutable - This function returns true if given struct stat describes the |
| * file as being executable. |
| */ |
| unsigned isExecutable(const struct stat *buf); |
| |
| /* |
| * isExecutableFile - This function returns true if the filename specified |
| * exists and is executable. |
| */ |
| unsigned isExecutableFile(const char *ExeFileName); |
| |
| /* |
| * FindExecutable - Find a named executable in the path. |
| */ |
| char *FindExecutable(const char *ExeName); |
| |
| /* |
| * This method finds the real `execve' call in the C library and executes the |
| * given program. |
| */ |
| int |
| executeProgram(const char *filename, char *const argv[], char *const envp[]); |
| |
| #endif |