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 24namespace llvm::MachO { 25 26using 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. 32void replace_extension(SmallVectorImpl<char> &Path, const Twine &Extension); 33} // namespace llvm::MachO 34#endif // LLVM_TEXTAPI_UTILS_H 35