diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-12-24 06:29:28 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-12-24 06:29:28 +0000 |
commit | f77bdc489216d4f6e5a21eaa6efbedc99c879285 (patch) | |
tree | e2dab9690368f703a92c2edd57c616d5144c8ff5 | |
parent | dafe55f64b038445adce31fe884e453db859194c (diff) | |
download | external_llvm-f77bdc489216d4f6e5a21eaa6efbedc99c879285.zip external_llvm-f77bdc489216d4f6e5a21eaa6efbedc99c879285.tar.gz external_llvm-f77bdc489216d4f6e5a21eaa6efbedc99c879285.tar.bz2 |
For PR351:
This implementation is no longer needed, its been merged to Unix/Path.cpp since
there is such little variation between the platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19133 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/System/AIX/Path.cpp | 53 | ||||
-rw-r--r-- | lib/System/Cygwin/Path.cpp | 52 | ||||
-rw-r--r-- | lib/System/Darwin/Path.cpp | 48 | ||||
-rw-r--r-- | lib/System/FreeBSD/Path.cpp | 50 | ||||
-rw-r--r-- | lib/System/Interix/Path.cpp | 50 | ||||
-rw-r--r-- | lib/System/Linux/Path.cpp | 50 | ||||
-rw-r--r-- | lib/System/SunOS/Path.cpp | 52 |
7 files changed, 0 insertions, 355 deletions
diff --git a/lib/System/AIX/Path.cpp b/lib/System/AIX/Path.cpp deleted file mode 100644 index 56a006d..0000000 --- a/lib/System/AIX/Path.cpp +++ /dev/null @@ -1,53 +0,0 @@ -//===- llvm/System/AIX/Path.cpp - AIX Path Implementation -------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the AIX-specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -// Include the generic unix implementation -#include "../Unix/Path.cpp" -#include <sys/stat.h> - -namespace llvm { -using namespace sys; - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only AIX specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -bool -Path::isValid() const { - if (path.empty()) - return false; - if (path.length() >= MAXPATHLEN) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char pathname[MAXPATHLEN]; - strcpy(pathname, "/tmp/llvm_XXXXXX"); - // AIX does not have a mkdtemp(), so we emulate it as follows: - // mktemp() returns a valid name for a _file_, not a directory, but does not - // create it. We assume that it is a valid name for a directory. - char *TmpName = mktemp(pathname); - if (!mkdir(TmpName, S_IRWXU)) - ThrowErrno(std::string(TmpName) + ": Can't create temporary directory"); - Path result; - result.setDirectory(TmpName); - assert(result.isValid() && "mkdtemp didn't create a valid pathname!"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/Cygwin/Path.cpp b/lib/System/Cygwin/Path.cpp deleted file mode 100644 index b159b54..0000000 --- a/lib/System/Cygwin/Path.cpp +++ /dev/null @@ -1,52 +0,0 @@ -//===- Cygwin/Path.cpp - Cygwin Path Implementation -------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the Cygwin specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only Cygwin specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic Unix implementation -#include "Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - char pathname[MAXPATHLEN]; - if (0 == realpath(path.c_str(), pathname)) - if (errno != EACCES && errno != EIO && errno != ENOENT && errno != ENOTDIR) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char* pathname = tempnam(0,"llvm_"); - if (0 == pathname) - ThrowErrno(std::string("Can't create temporary directory name")); - Path result; - result.setDirectory(pathname); - free(pathname); - assert(result.isValid() && "tempnam didn't create a valid pathname!"); - if (0 != mkdir(result.c_str(), S_IRWXU)) - ThrowErrno(result.toString() + ": Can't create temporary directory"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/Darwin/Path.cpp b/lib/System/Darwin/Path.cpp deleted file mode 100644 index d34ad80..0000000 --- a/lib/System/Darwin/Path.cpp +++ /dev/null @@ -1,48 +0,0 @@ -//===- llvm/System/Darwin/Path.cpp - Linux Path Implementation --*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the Darwin specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only Darwin specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic unix implementation -#include "../Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - if (path.length() >= MAXPATHLEN) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char pathname[MAXPATHLEN]; - strcpy(pathname,"/tmp/llvm_XXXXXX"); - if (0 == mkdtemp(pathname)) - ThrowErrno(std::string(pathname) + ": Can't create temporary directory"); - Path result; - result.setDirectory(pathname); - assert(result.isValid() && "mkdtemp didn't create a valid pathname!"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/FreeBSD/Path.cpp b/lib/System/FreeBSD/Path.cpp deleted file mode 100644 index 837f830..0000000 --- a/lib/System/FreeBSD/Path.cpp +++ /dev/null @@ -1,50 +0,0 @@ -//===- FreeBSD/Path.cpp - FreeBSD Path Implementation -----------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the FreeBSD specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only FreeBSD specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic Unix implementation -#include "../Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - char pathname[MAXPATHLEN]; - if (0 == realpath(path.c_str(), pathname)) - if (errno != EACCES && errno != EIO && errno != ENOENT && errno != ENOTDIR) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char pathname[MAXPATHLEN]; - strcpy(pathname,"/tmp/llvm_XXXXXX"); - if (0 == mkdtemp(pathname)) - ThrowErrno(std::string(pathname) + ": Can't create temporary directory"); - Path result; - result.setDirectory(pathname); - assert(result.isValid() && "mkdtemp didn't create a valid pathname!"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/Interix/Path.cpp b/lib/System/Interix/Path.cpp deleted file mode 100644 index 4fb38cb..0000000 --- a/lib/System/Interix/Path.cpp +++ /dev/null @@ -1,50 +0,0 @@ -//===- Interix/Path.cpp - Interix Path Implementation -----------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the Interix specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only Interix specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic Unix implementation -#include "../Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - char pathname[MAXPATHLEN]; - if (0 == realpath(path.c_str(), pathname)) - if (errno != EACCES && errno != EIO && errno != ENOENT && errno != ENOTDIR) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char pathname[MAXPATHLEN]; - strcpy(pathname,"/tmp/llvm_XXXXXX"); - if (0 == mkdtemp(pathname)) - ThrowErrno(std::string(pathname) + ": Can't create temporary directory"); - Path result; - result.setDirectory(pathname); - assert(result.isValid() && "mkdtemp didn't create a valid pathname!"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/Linux/Path.cpp b/lib/System/Linux/Path.cpp deleted file mode 100644 index d0eccb7..0000000 --- a/lib/System/Linux/Path.cpp +++ /dev/null @@ -1,50 +0,0 @@ -//===- llvm/System/Linux/Path.cpp - Linux Path Implementation ---*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the Linux specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only Linux specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic Unix implementation -#include "../Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - char pathname[MAXPATHLEN]; - if (0 == realpath(path.c_str(), pathname)) - if (errno != EACCES && errno != EIO && errno != ENOENT && errno != ENOTDIR) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char pathname[MAXPATHLEN]; - strcpy(pathname,"/tmp/llvm_XXXXXX"); - if (0 == mkdtemp(pathname)) - ThrowErrno(std::string(pathname) + ": Can't create temporary directory"); - Path result; - result.setDirectory(pathname); - assert(result.isValid() && "mkdtemp didn't create a valid pathname!"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab diff --git a/lib/System/SunOS/Path.cpp b/lib/System/SunOS/Path.cpp deleted file mode 100644 index 346615d..0000000 --- a/lib/System/SunOS/Path.cpp +++ /dev/null @@ -1,52 +0,0 @@ -//===- llvm/System/SunOS/Path.cpp - SunOS Path Implementation ---*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by Reid Spencer and is distributed under the -// University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides the SunOS specific implementation of the Path class. -// -//===----------------------------------------------------------------------===// - -//===----------------------------------------------------------------------===// -//=== WARNING: Implementation here must contain only SunOS specific code -//=== and must not be generic UNIX code (see ../Unix/Path.cpp) -//===----------------------------------------------------------------------===// - -// Include the generic Unix implementation -#include "../Unix/Path.cpp" - -namespace llvm { -using namespace sys; - -bool -Path::isValid() const { - if (path.empty()) - return false; - char pathname[MAXPATHLEN]; - if (0 == realpath(path.c_str(), pathname)) - if (errno != EACCES && errno != EIO && errno != ENOENT && errno != ENOTDIR) - return false; - return true; -} - -Path -Path::GetTemporaryDirectory() { - char* pathname = tempnam(0,"llvm_"); - if (0 == pathname) - ThrowErrno(std::string("Can't create temporary directory name")); - Path result; - result.setDirectory(pathname); - free(pathname); - assert(result.isValid() && "tempnam didn't create a valid pathname!"); - if (0 != mkdir(result.c_str(), S_IRWXU)) - ThrowErrno(result.toString() + ": Can't create temporary directory"); - return result; -} - -} - -// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab |