For PR351:
authorReid Spencer <rspencer@reidspencer.com>
Fri, 24 Dec 2004 06:29:28 +0000 (06:29 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Fri, 24 Dec 2004 06:29:28 +0000 (06:29 +0000)
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

lib/System/AIX/Path.cpp [deleted file]
lib/System/Cygwin/Path.cpp [deleted file]
lib/System/Darwin/Path.cpp [deleted file]
lib/System/FreeBSD/Path.cpp [deleted file]
lib/System/Interix/Path.cpp [deleted file]
lib/System/Linux/Path.cpp [deleted file]
lib/System/SunOS/Path.cpp [deleted file]

diff --git a/lib/System/AIX/Path.cpp b/lib/System/AIX/Path.cpp
deleted file mode 100644 (file)
index 56a006d..0000000
+++ /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 (file)
index b159b54..0000000
+++ /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 (file)
index d34ad80..0000000
+++ /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 (file)
index 837f830..0000000
+++ /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 (file)
index 4fb38cb..0000000
+++ /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 (file)
index d0eccb7..0000000
+++ /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 (file)
index 346615d..0000000
+++ /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