1 //===- llvm/TextAPI/Utils.h - TAPI Utils -----------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // Helper functionality used for Darwin specific operations. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #ifndef LLVM_TEXTAPI_UTILS_H 14 #define LLVM_TEXTAPI_UTILS_H 15 16 #include "llvm/ADT/Twine.h" 17 #include "llvm/Support/FileSystem.h" 18 #include "llvm/Support/Path.h" 19 20 #if !defined(PATH_MAX) 21 #define PATH_MAX 1024 22 #endif 23 24 namespace llvm::MachO { 25 26 using PathSeq = std::vector<std::string>; 27 28 /// Replace extension considering frameworks. 29 /// 30 /// \param Path Location of file. 31 /// \param Extension File extension to update with. 32 void replace_extension(SmallVectorImpl<char> &Path, const Twine &Extension); 33 } // namespace llvm::MachO 34 #endif // LLVM_TEXTAPI_UTILS_H 35