aboutsummaryrefslogtreecommitdiff
path: root/lib/System/Unix/Path.cpp
AgeCommit message (Collapse)Author
2005-01-09Rename Unix/*.cpp and Win32/*.cpp to have a *.inc suffix so that the sillyReid Spencer
gdb debugger doesn't get confused on which file it is reading (the one in lib/System or the one in lib/System/{Win32,Unix}) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19426 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-27For PR351:Reid Spencer
* Ensure #includes are wrapped with appropriate HAVE_ guards * Ensure variations in "dirent" structure are accounted for. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19158 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-24For PR351:Reid Spencer
Merge implementations of isValid and GetTemporaryDirectory into this file. There is not any point having the operating system specific files for such little variation between the Unix family of systems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19134 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-21Put the CopyFile function explicitly in the sys namespace.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19079 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-20* Use "" for LLVM include files, not <>Misha Brukman
* llvm/Config/alloca.h already #includes config.h * Minor readability/stylistic changes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19048 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-15Change the signatures of the destroyFile and destroyDirectory methods toReid Spencer
const because they affect the file system, not the Path object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18973 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-15Remove automatic insertion of CFE's lib directory into the bytecode pathReid Spencer
because LLVM should be agnostic to the needs of specific front ends. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18968 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-15Fix a file overwrite bug in llvm-ar introduced by changes toReid Spencer
createTemporaryFile semantics where it doesn't create a fully unique name if the basename doesn't exist. This functionality is now optionally provided by the boolean reuse_current parameter to createTemporaryFile and makeUnique. The default values differ because of the way these functions are used in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18961 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-15For PR351:Reid Spencer
* Fix implementation and documentation about LLVMGCCDIR/bytecode-libs * Add the makeUnique method, replacement for getUniqueFilename in Support. * Add the sys::CopyFile function, replacement for CopyFile in Support. * Move GetLLVMConfigDir() into generic code area since its generic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18947 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13For PR351:Reid Spencer
Implement three new functions to allow setting access/permission bits on the file referenced by a path. The makeReadable and makeExecutable methods replace the FileUtilities MakeFileReadable and MakeFileExecutable functions. The makeWritable function is new and provided for consistency since Path has a writable() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18907 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13Remove an always false clause from an if statement.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18885 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13Fix a bug where directory names of length one or less where not setAlkis Evlogimenos
properly (examples: "", ".", "a"). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18883 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13* Add a std::ostream inserter for sys::PathReid Spencer
* Correct the std::string constructor to take a const reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18877 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-13For PR351: \Reid Spencer
* Remove IsLibrary and GetLibraryPath, replaced by FindLibrary in ../Path.cpp \ * Implement GetSystemLibraryPaths and GetBytecodeLibraryPaths, instead of the \ GetSystemLibraryPath1 and GetSystemLibraryPath2 methods git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18862 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-11Path::get -> Path::toStringReid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18785 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02Fix seriously broken implementation of GetMagicNumber.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18422 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16* Use low-level unix I/O interface since we're on Unix.Reid Spencer
* Don't use variable length arrays (replaced with alloca) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17901 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-16Per code review:Reid Spencer
* Clean up the StatusInfo constructor to construct all members and give them reasonable values. * Get rid of the Vector typedef and make the interface to getDirectoryContent use a std::set instead of a std::vector so the dir content is sorted. * Make the getStatusInfo method const and not return a useless boolean. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17872 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14Implement functionality suggested from code review: getStatusInfo shouldReid Spencer
returnn false if the file doesn't exist rather than throw ane exception. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17809 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-14* Implement getDirectoryContents * Implement getStatusInfo * Implement ↵Reid Spencer
setStatusInfo * Implement renameFile git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17780 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-09* Implement getStatusInfo for getting stat(2) like informationReid Spencer
* Implement createTemporaryFile for mkstemp(3) functionality * Fix isBytecodeFile to accept llvc magic # (compressed) as bytecode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17654 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05Stop propagating method names that violate the coding standardReid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17498 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-18Get rid of file descriptor leak in create_file.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16395 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-16Allow "bc" as suffix for bytecode files.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16381 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-14Implement the GetLibraryPath function.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16323 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-11Implemented support for detecting file types by magic number, strippingReid Spencer
path and suffix to leave basename, and getting the DLL suffix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16289 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-01Changes For Bug 352Reid Spencer
Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-30Move the GetTemporaryDirectory function from "generic Unix" to platformReid Spencer
specific. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16119 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-29Revise the design of the Path concept per peer review. Too many changes toReid Spencer
note individually but these essence of it is to not derive from std::string, clarify the interface, and provide better documentation. There is now also (untested) implementations for AIX, Darwin, and SunOS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16078 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-25Initial implementation of the Path operating system concept.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16048 91177308-0d34-0410-b5e6-96231b3b80d8