-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Revert "[clang-doc] Add --asset option to clang-doc" #96354
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This reverts commit 724d903.
@llvm/pr-subscribers-clang-tools-extra Author: Paul Kirth (ilovepi) ChangesReverts llvm/llvm-project#94717 This breaks on some buildbots: http://45.33.8.238/linux/141118/step_7.txt Full diff: https://github.com/llvm/llvm-project/pull/96354.diff 2 Files Affected:
diff --git a/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp b/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
index 5a43c70a5ebc3..5517522d7967d 100644
--- a/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+++ b/clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
@@ -81,12 +81,6 @@ static llvm::cl::list<std::string> UserStylesheets(
llvm::cl::desc("CSS stylesheets to extend the default styles."),
llvm::cl::cat(ClangDocCategory));
-static llvm::cl::opt<std::string> UserAssetPath(
- "asset",
- llvm::cl::desc("User supplied asset path to "
- "override the default css and js files for html output"),
- llvm::cl::cat(ClangDocCategory));
-
static llvm::cl::opt<std::string> SourceRoot("source-root", llvm::cl::desc(R"(
Directory where processed files are stored.
Links to definition locations will only be
@@ -133,86 +127,16 @@ std::string getFormatString() {
// GetMainExecutable (since some platforms don't support taking the
// address of main, and some platforms can't implement GetMainExecutable
// without being given the address of a function in the main executable).
-std::string getExecutablePath(const char *Argv0, void *MainAddr) {
+std::string GetExecutablePath(const char *Argv0, void *MainAddr) {
return llvm::sys::fs::getMainExecutable(Argv0, MainAddr);
}
-llvm::Error getAssetFiles(clang::doc::ClangDocContext &CDCtx) {
- using DirIt = llvm::sys::fs::directory_iterator;
- std::error_code FileErr;
- llvm::SmallString<128> FilePath(UserAssetPath);
- for (DirIt DirStart = DirIt(UserAssetPath, FileErr),
- DirEnd;
- !FileErr && DirStart != DirEnd; DirStart.increment(FileErr)) {
- FilePath = DirStart->path();
- if (llvm::sys::fs::is_regular_file(FilePath)) {
- if (llvm::sys::path::extension(FilePath) == ".css")
- CDCtx.UserStylesheets.insert(CDCtx.UserStylesheets.begin(),
- std::string(FilePath));
- else if (llvm::sys::path::extension(FilePath) == ".js")
- CDCtx.FilesToCopy.emplace_back(FilePath.str());
- }
- }
- if (FileErr)
- return llvm::createFileError(FilePath, FileErr);
- return llvm::Error::success();
-}
-
-llvm::Error getDefaultAssetFiles(const char *Argv0,
- clang::doc::ClangDocContext &CDCtx) {
- void *MainAddr = (void *)(intptr_t)getExecutablePath;
- std::string ClangDocPath = getExecutablePath(Argv0, MainAddr);
- llvm::SmallString<128> NativeClangDocPath;
- llvm::sys::path::native(ClangDocPath, NativeClangDocPath);
-
- llvm::SmallString<128> AssetsPath;
- AssetsPath = llvm::sys::path::parent_path(NativeClangDocPath);
- llvm::sys::path::append(AssetsPath, "..", "share", "clang");
- llvm::SmallString<128> DefaultStylesheet;
- llvm::sys::path::native(AssetsPath, DefaultStylesheet);
- llvm::sys::path::append(DefaultStylesheet,
- "clang-doc-default-stylesheet.css");
- llvm::SmallString<128> IndexJS;
- llvm::sys::path::native(AssetsPath, IndexJS);
- llvm::sys::path::append(IndexJS, "index.js");
-
- llvm::outs() << "Using default asset: " << AssetsPath << "\n";
-
- if (!llvm::sys::fs::is_regular_file(IndexJS))
- return llvm::createStringError(llvm::inconvertibleErrorCode(),
- "default index.js file missing at " +
- IndexJS + "\n");
-
- if (!llvm::sys::fs::is_regular_file(DefaultStylesheet))
- return llvm::createStringError(
- llvm::inconvertibleErrorCode(),
- "default clang-doc-default-stylesheet.css file missing at " +
- DefaultStylesheet + "\n");
-
- CDCtx.UserStylesheets.insert(CDCtx.UserStylesheets.begin(),
- std::string(DefaultStylesheet));
- CDCtx.FilesToCopy.emplace_back(IndexJS.str());
-
- return llvm::Error::success();
-}
-
-llvm::Error getHtmlAssetFiles(const char *Argv0,
- clang::doc::ClangDocContext &CDCtx) {
- if (!UserAssetPath.empty() &&
- !llvm::sys::fs::is_directory(std::string(UserAssetPath)))
- llvm::outs() << "Asset path supply is not a directory: " << UserAssetPath
- << " falling back to default\n";
- if (llvm::sys::fs::is_directory(std::string(UserAssetPath)))
- return getAssetFiles(CDCtx);
- return getDefaultAssetFiles(Argv0, CDCtx);
-}
-
int main(int argc, const char **argv) {
llvm::sys::PrintStackTraceOnErrorSignal(argv[0]);
std::error_code OK;
const char *Overview =
- R"(Generates documentation from source code and comments.
+ R"(Generates documentation from source code and comments.
Example usage for files without flags (default):
@@ -258,9 +182,23 @@ Example usage for a project using a compile commands database:
{"index.js", "index_json.js"}};
if (Format == "html") {
- if (auto Err = getHtmlAssetFiles(argv[0], CDCtx)) {
- llvm::outs() << "warning: " << toString(std::move(Err)) << "\n";
- }
+ void *MainAddr = (void *)(intptr_t)GetExecutablePath;
+ std::string ClangDocPath = GetExecutablePath(argv[0], MainAddr);
+ llvm::SmallString<128> NativeClangDocPath;
+ llvm::sys::path::native(ClangDocPath, NativeClangDocPath);
+ llvm::SmallString<128> AssetsPath;
+ AssetsPath = llvm::sys::path::parent_path(NativeClangDocPath);
+ llvm::sys::path::append(AssetsPath, "..", "share", "clang");
+ llvm::SmallString<128> DefaultStylesheet;
+ llvm::sys::path::native(AssetsPath, DefaultStylesheet);
+ llvm::sys::path::append(DefaultStylesheet,
+ "clang-doc-default-stylesheet.css");
+ llvm::SmallString<128> IndexJS;
+ llvm::sys::path::native(AssetsPath, IndexJS);
+ llvm::sys::path::append(IndexJS, "index.js");
+ CDCtx.UserStylesheets.insert(CDCtx.UserStylesheets.begin(),
+ std::string(DefaultStylesheet));
+ CDCtx.FilesToCopy.emplace_back(IndexJS.str());
}
// Mapping phase
diff --git a/clang-tools-extra/test/clang-doc/single-source-html.cpp b/clang-tools-extra/test/clang-doc/single-source-html.cpp
deleted file mode 100644
index 32f232b9c45a0..0000000000000
--- a/clang-tools-extra/test/clang-doc/single-source-html.cpp
+++ /dev/null
@@ -1,2 +0,0 @@
-// RUN: clang-doc --format=html --executor=standalone %s -output=%t/docs | FileCheck %s
-// CHECK: Using default asset: {{.*}}{{[\/]}}share{{[\/]}}clang
\ No newline at end of file
|
PeterChou1
added a commit
to PeterChou1/llvm-project
that referenced
this pull request
Jun 21, 2024
)" This reverts commit bf824d9.
AlexisPerry
pushed a commit
to llvm-project-tlp/llvm-project
that referenced
this pull request
Jul 9, 2024
Reverts llvm#94717 This breaks on some buildbots: http://45.33.8.238/linux/141118/step_7.txt
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reverts #94717
This breaks on some buildbots: http://45.33.8.238/linux/141118/step_7.txt