diff --git a/llvm/README.md b/llvm/README.md new file mode 100644 --- /dev/null +++ b/llvm/README.md @@ -0,0 +1,14 @@ +# The LLVM Compiler Infrastructure + +This directory and its subdirectories contain source code for LLVM, +a toolkit for the construction of highly optimized compilers, +optimizers, and runtime environments. + +LLVM is open source software. You may freely distribute it under the terms of +the license agreement found in [LICENSE](/LICENSE.TXT). + +Please see the documentation provided in [docs](/docs/) for further +assistance with LLVM, and in particular [Getting Started](/docs/GettingStarted.rst for getting started with LLVM and [README](/docs/README.md) for an overview of LLVM's documentation setup. + +If you are writing a package for LLVM, see [Packaging](/docs/Packaging.rst) for our +suggestions. diff --git a/llvm/README.txt b/llvm/README.txt deleted file mode 100644 --- a/llvm/README.txt +++ /dev/null @@ -1,17 +0,0 @@ -The LLVM Compiler Infrastructure -================================ - -This directory and its subdirectories contain source code for LLVM, -a toolkit for the construction of highly optimized compilers, -optimizers, and runtime environments. - -LLVM is open source software. You may freely distribute it under the terms of -the license agreement found in LICENSE.txt. - -Please see the documentation provided in docs/ for further -assistance with LLVM, and in particular docs/GettingStarted.rst for getting -started with LLVM and docs/README.txt for an overview of LLVM's -documentation setup. - -If you are writing a package for LLVM, see docs/Packaging.rst for our -suggestions. diff --git a/llvm/docs/README.txt b/llvm/docs/README.md rename from llvm/docs/README.txt rename to llvm/docs/README.md --- a/llvm/docs/README.txt +++ b/llvm/docs/README.md @@ -1,69 +1,75 @@ -LLVM Documentation -================== - -LLVM's documentation is written in reStructuredText, a lightweight -plaintext markup language (file extension `.rst`). While the -reStructuredText documentation should be quite readable in source form, it -is mostly meant to be processed by the Sphinx documentation generation -system to create HTML pages which are hosted on and -updated after every commit. Manpage output is also supported, see below. - -If you instead would like to generate and view the HTML locally, install -Sphinx and then do: - - cd - cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_HTML=true - make -j3 docs-llvm-html - $BROWSER /docs/html/index.html - -The mapping between reStructuredText files and generated documentation is -`docs/Foo.rst` <-> `/docs//html/Foo.html` <-> `https://llvm.org/docs/Foo.html`. - -If you are interested in writing new documentation, you will want to read -`SphinxQuickstartTemplate.rst` which will get you writing documentation -very fast and includes examples of the most important reStructuredText -markup syntax. - -Manpage Output -=============== - -Building the manpages is similar to building the HTML documentation. The -primary difference is to use the `man` makefile target, instead of the -default (which is `html`). Sphinx then produces the man pages in the -directory `/docs/man/`. - - cd - cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_MAN=true - make -j3 docs-llvm-man - man -l /docs/man/FileCheck.1 - -The correspondence between .rst files and man pages is -`docs/CommandGuide/Foo.rst` <-> `/docs//man/Foo.1`. -These .rst files are also included during HTML generation so they are also -viewable online (as noted above) at e.g. -`https://llvm.org/docs/CommandGuide/Foo.html`. - -Checking links -============== - -The reachability of external links in the documentation can be checked by -running: - - cd llvm/docs/ - sphinx-build -b linkcheck . _build/lintcheck/ - # report will be generated in _build/lintcheck/output.txt - -Doxygen page Output -============== - -Install doxygen and dot2tex . - - cd - cmake -DLLVM_ENABLE_DOXYGEN=On - make doxygen-llvm # for LLVM docs - make doxygen-clang # for clang docs - -It will generate html in - - /docs/doxygen/html # for LLVM docs - /tools/clang/docs/doxygen/html # for clang docs +# LLVM Documentation + +LLVM's documentation is written in `reStructuredText`, a lightweight +plaintext markup language (file extension `.rst`). While the +`reStructuredText` documentation should be quite readable in source form, it +is mostly meant to be processed by the Sphinx documentation generation +system to create HTML pages which are hosted [here](https://llvm.org/docs/) and +updated after every commit. Manpage output is also supported, see below. + +If you instead would like to generate and view the HTML locally, install +[Sphinx](http://sphinx-doc.org/) and then do: + + cd + cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_HTML=true + make -j3 docs-llvm-html + $BROWSER /docs/html/index.html + +The mapping between `reStructuredText` files and generated documentation is:
+ +`docs/Foo.rst` <-> `/docs//html/Foo.html` <-> `https://llvm.org/docs/Foo.html`. + +If you are interested in writing new documentation, you will need to read +`SphinxQuickstartTemplate.rst` which will get you writing documentation +very fast and includes examples of the most important `reStructuredText` +markup syntax. + +# Manpage Output + +Building the manpages is similar to building the HTML documentation. The +primary difference is to use the `man` makefile target, instead of the +default (which is `html`). Sphinx then produces the man pages in the +directory `/docs/man/`. + +``` + cd + cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_MAN=true + make -j3 docs-llvm-man + man -l /docs/man/FileCheck.1 +``` + +The correspondence between .rst files and man pages is:
+`docs/CommandGuide/Foo.rst` <-> `/docs//man/Foo.1`. + +These `.rst` files are also included during HTML generation so they are also +viewable online at e.g. + +`https://llvm.org/docs/CommandGuide/Foo.html`. + +# Checking links + +The reachability of external links in the documentation can be checked by +running: +``` + cd llvm/docs/ + sphinx-build -b linkcheck . _build/lintcheck/ + # report will be generated in _build/lintcheck/output.txt +``` +# Doxygen page output + +Install [doxygen](https://www.doxygen.nl/download.html) and [dot2tex](https://dot2tex.readthedocs.io/en/latest). + +``` + cd + cmake -DLLVM_ENABLE_DOXYGEN=On + make doxygen-llvm # for LLVM docs + make doxygen-clang # for clang docs +``` + +It will generate html in:
+
+**1. For LLVM Docs** +- /docs/doxygen/html + +**2. For Clang Docs** +- /tools/clang/docs/doxygen/html diff --git a/llvm/utils/wciia.py b/llvm/utils/wciia.py --- a/llvm/utils/wciia.py +++ b/llvm/utils/wciia.py @@ -98,7 +98,7 @@ return onames -# now lest try to find the owner of the file or folder +# now let's try to find the owner of the file or folder import sys if len(sys.argv) < 2: